12/16/2016

VirtualBoxで、LubuntuゲストにGuestAdditionsを追加

Linuxの場合は、Windowsゲストのように自動でIOSイメージをマウントしてくれないようです。

忘れっぽいので、すでに忘れかけていますが、Windowsホストにて、Oracle VM VirtualBox-GustAdditionをLubuntu16.04ゲストに追加手順を書き留めました。もし、お役に立てば幸いです。

① 使用中VirtualBoxと同じバージョンのGuestAdditionsを正規サイトよりダウンロード

② ダウンロードしたファイルをダブルクリックして、VirtualBox自体にインストール

③ ゲストVMのSetting>Storage>Optical Drive>にて、
C:\Program Files\Oracle\VirtualBox\VBoxGuestAdditions.isoを選択



④ ゲストを起動後、build-essentialとmodule-assistantパッケージをインストール
コマンド例:sudo apt update && sudo apt install build-essential module-assistant

⑤ OpticalDriveがどのパスにマントされたか知る
マウント・パス例:/media/<ユーザー名>/VBOXADDITIONS_5.1.10_11202

⑥ OpticalDrive上のVBoxLinuxAdditions.runを実行で、インストール完了
コマンド例: sudo sh /media/<ユーザー名>/VBOXADDITIONS_5.1.10_11202/VBoxLinuxAdditions.run

⑦ ゲストOS再起動後、インストール済成功を確認

以上、だったと思います。すでに記憶があいまいで申し訳ない。


12/15/2016

OSXでVirtualBox 仮想ディスク(VDI)拡張試してみる

失敗しないので、という方にも、万一に備えて、VMファイルを含む、VMsフォルダーまるごとバックアップをおすすめいたします。

バックアップが完了したら、VirtualBox Managerを開いて、
VirtualBox Manager

ディスク拡張しようとしている、
VMを選択
次に、Settingsアイコンをクリック
その後、Strageアイコンをクリックすると下のよううなダイアログになります。

そこで、拡張しようとしているVDIファイルを選択し、

Removeアイコンで設定削除し、OKボタンでSettitngsを保存後、Terminalを開く。


もし、VDIファイルがFixedだったら、拡張できないので、まず、CloneHDすることで、Dynamicタイプに変更後作業を継続してください。
VBoxManage clonehd ファイル名.VDI  新ファイル名.VDI --variant Standard
例:VBoxManage clonehd win10pro-64.vdi win10pro-64-clone.vdi --variant Standard

次のコマンドを実行。
VBoxManage modifyhd ファイルパス/ファイル名.vdi --resize サイズ(MB)

例えば、win10pro.vdi64000MB(約64GB)に拡張したい場合は、
VBoxManage modifyhd ~/VirtualBox VMs/win10pro/win10pro-64.vdi --resize 64000
を実行。

拡張が完了したら、先程と同じ要領で、VMのStrageダイアログを開き、

Adds Hard Diskアイコンをクリックし、




Choose existing diskボタンをクリック、
拡張済みVDIファイルを選択後、Settingsを保存。

VMをStartすると、VolumeをExpandできる状態になっていることを確認できれば成功です。

以上

12/08/2016

Windows10 PS/2キーボードが突然使用不能になったら

この手順で回復できました。
レジストリー変更はWindowsを壊してしまう恐れがあるので、細心の注意を払って、自己責任で変更お願いいたします。

①レジストリー[Key: HKLM\SYSTEM\CurrentControlSet\Services\i8042prt]
(Default)[REG_SZ]の値に何も設定されていないのが普通なのですが、緊急対処でこの値を1にして試してみて。

②次にレジストリー[Key: HKLM\SYSTEM\CurrentControlSet\Services\i8042prt\Enum]のCountを確認してください。(私の場合は1でした。)

③再起動、めでたくPS/2キーボードが使用可能にはなりれば。

④レジストリー[Key: HKLM\SYSTEM\CurrentControlSet\Services\i8042prt\Enum]のCountを再確認してください。

⑤Count値が増えていれば(私の場合は2)、先ほど変更した[Key: HKLM\SYSTEM\CurrentControlSet\Services\i8042prt](Default)を、以前の状態にもどした後、再起動してみてください。

⑥再起動、PS/2キーボードが正常に使用できれば、回復完了です。


レジストリー変更はWindowsを壊してしまう恐れがあるので、細心の注意を払って、自己責任で変更お願いいたします。


このPS/2用ドライバー情報は
https://msdn.microsoft.com/en-us/windows/hardware/drivers/hid/ps-2--i8042prt--driver
などを参考にしてください。


5/15/2013

PGSQLをMSSQL Serverにリンクする方法

Step1. 
System DSN としてPostgreに対するODBCシステムデータソースを作成
Postgresql ODBC data source in System.

Step2.
LinkedデーターベースをManagement Studioで作る 
Create Linked Database in MS SQL Server Management Studio

Step3.
Postgresql ユーザーとパスワードを設定
Set connection Login Name and Password


Step4.完了

Linked DB使用例


5/13/2013

How to install MegaRAID Storage Manager in Ubuntu

MegaRAID Storage Managerは、rpm形式でしか提供されていないので、単純にはUbuntu12.04環境にインストールできないのですが、次の手順でViewOnlyモードのみ使用可能。


1.alienをインストール
 sudo apt-get install alien 

2.GNU C++をインストール
 sudo apt-get install libstdc++5

3.Javaをインストール
 sudo apt-get install openjdk-6-jdk

4.lsi.comのサイトから、MEGARaid Storage Manager(13.01.04.00_Linux_x64_MSM.tar.gz)を取得
 download 13.01.04.00_Linux_x64_MSM.tar.gz

5.ファイルを解凍
 mkdir temp
 mv 13.01.04.00_Linux_x64_MSM.tar.gz temp
 tar xzvf 13.01.04.00_Linux_x64_MSM.tar.gz


6.rpmからdebに変換 (convert rpm to deb)
 sudo alien --scripts *.rpm

7.変換したdebで、MegaRAIDをインストール
 sudo dpkg --install lib-utils2_1.00-6_all.deb
 sudo dpkg --install megaraid-storage-manager_13.01.04-1_all.deb


8.ScriptをBash用に改良
 sudo nano /etc/init.d/vivaldiframework
      置換(replace)
          for (i=0, i < 20, i++)
     を(with)
          for i in `seq 0 19`  
 sudo nano  /usr/local/MegaRAID_Storage_Manager/Framework/startupui.sh
       削除(remove)  :/opt/lsi/Apache

9.MegaRAID Storage Managerの起動
 /usr/local/MegaRAID_Storage_Manager/Framework/startupui.sh



 以上
動作の保証はしませんが、私の場合は今のところ特に問題は無さそうです。

5/02/2013

ラズベリー・パイ(Raspberry Pi Model B hynix)でOracle Java試す。

ラズベリー・パイ(Raspberry Pi Model B hynix)でOracle Java試す。

オラクルのARM用のJavaを動かしてみたくなり、ラズベリー・パイを購入。
OSイメージは、ここからSOFT-FLOAT版をダウンロード。インストール 手順はこのリンクに従った
今回SDカードは8GBを使用し、dd時にbs=4Mでやりました。
 sudo dd bs=4M if=2012-08-08-wheezy-armel.img of=/dev/mmcblk0
多少gpartd時のイメージが前出のブログとちがったので、SDカードにイメージを焼いた直後のGpartd画面を参考に載せます。



で、RPiが起動しない。ボードが壊れているのか!?(少々あせる)

ネット検索で原因らしきものを2、3見つける。
要するに「ハイニックス(Hynix)チップセットのボードの場合は、soft-float版正式イメージ(2012-08-08)では、起動できないようだ」


正式版のイメージ作成日から推測するに新しいHynix使用ボードに対応していないのだなと、みょうに納得、でも、Javaを動かしたい。

さらにネットを検索で、最新のhard-floatのブートイメージを使えば起動可能らしいと知り、
hard-float版イメージからのbootcode.binstart.elfでsoft-floatのものを置き換えると起動できました。

これ手間ですね。

誰かsoft-floatもHynixで起動できるようにか、hard-floatでJava使えるように早くして下さい。
お願いします。

その後、オラクルサイトのブログにしたがって、ついに目的達成。
 
 以上、
最後にOpenJDKならhard-float版でも動作します。単に"sudo apt-get install openjdk-7-jre"を実行するだけでJavaが使用可能です。
どうしてもオラクルJREを使いたい人の参考になれば幸いです。

5/01/2013

SSLって、なぜ安全なの?

SSLって、安全な通信という漠然としたイメージがあるのですが、どの程度安全といえるのか気になりませんか。
いきなりですがSSL(初期バージョンはNetscapeCommunication社「なつかしい」1994年開発)は、すでに古い標準らしく、TLSTransport Layer Security : IETF1999年仕様策定)が今流なようです。
これからはSSLじゃなくてTLSと言わないといけないのかもしれません。

では本題、TLS(SSL)を使えばはどうして安全なのか。
TLS(SSL)通信ハンドシェーク時、次の事項などを取り決めて、それにしたがって通信を暗号化して行うから安全 ―「盗聴しても内容分らない」「データ改ざんを検出する」― とされています。
  1. TLS(SSL)のバージョン
  2. 公開キー交換アルゴリズム 
  3. データ通信用暗号アルゴリズム
  4. メッセージ認証時の一方向ハッシュ関数アルゴリズム
少し具体的には、
1.まずサポートするバージョンを通知する通常SSL3.0TLS1.1など。TLS1.2ならAPI便宜上、バージョンSSL3.3で通信するって感じらしい。
2.各種このセッションで使用する暗号たち、キー配布問題を減らすための公開キー暗号アルゴリズムも決める。公開キー交換では、RSAか、Diffie-Hellmanが一般的。**ここで一言、公開キー交換暗号の仕組みは離散対数・大きな素数の素因数分解を求める良い方法が未だに存在しないことを利用しているので、完全な安全性の証明は出来てないが、十分安全であることは証明されているようで、一安心。詳細は文末のリンクを参照ください。** ついでに証明書がどのアルゴリズムを使用しているかもやり取りする。RSAが多いが DSS(DSA)なども。
3.データの暗号化に使用するアルゴリズムを決める。RC4,3DES,AESなど。ブロック暗号(3DES,AES)であればモードはCBCで行うと思う。
4.メッセージ認証に使用する一方向ハッシュを決める。MD5SHA-1など。TLS1.2では、SHA-2 (SHA-256....)もサポートするようです。

ハンドシェーク後、3の方式でデータを暗号化し、4の方式でそのデータの正当性を検証しながら通信するので、盗聴されても心配ない、改竄のない安全な通信が実質行えることになる。
仕様的には、通信途中に暗号セットを変更することも可能なようです。

最後に、RSA公開キー・秘密キーは異なるキーと知っていましたが、どうして公開キーで暗号化したものが、公開キーでは簡単に複合できず、秘密キーが必要となるのかとくすぶっていた疑問がありましたが、やっと解消できました。詳しくはhttp://ja.wikipedia.org/wiki/公開暗号 を参照ください。