#####################################
≪追記 2008/02/14≫
wiki に情報をまとめました。
#####################################
ゲストOSからホストOSのファイルが見えるようにする共有フォルダ。OSE版にはその機能が無いらしい。私が使ってるのはクローズドソース版なのでどうでもいいんですけど。仮に無くてもSambaでファイル共有できるだろうし。
もしかして共有の設定はVirtualBoxのウィンドウからできない? コマンドを叩くしかない? まあいいや、とりあえずホストOSの設定
Windows hostの場合
コマンドプロンプトを起動して
> cd "C:\Program Files\InnoTek VirtualBox"
> VBoxManage.exe sharedfolder add "VM name" -name "sharename" -hostpath "C:\test"
Linux hostの場合
$ VBoxManage sharedfolder add "VM name" -name "sharename" -hostpath "/home/test"
"VM name"は仮想マシンに付けた名前。"sharename"は共有名(なんでもいい)。-hostpath は共有したいフォルダ。どれも日本語を入れると不都合が出る可能性大。
次はゲストOSで割り当て作業
Windows guestの場合
コマンドプロンプトを起動して
> net use x: \\vboxsvr\sharename (x:は割り当てるドライブ名)
Linux guestの場合
# mount -t vboxsf [-o OPTIONS] sharename /mnt/hostfs
(ファイル名が文字化けするなら -o iocharset=euc-jp で直る?)
前回の Fedora Core 6 + Windows 2000 で動作確認。ネットワークドライブとして認識されました。Fedora の SELinux が有効だと無理かも。そもそもSELinux環境でもVirtualBoxは動くのかね?
selinuxを有効にして
$ VirtualBox
/opt/VirtualBox-1.3.2/VirtualBox: error while loading shared libraries: /opt/VirtualBox-1.3.2/VBoxVMM.so: cannot restore segment prot after reloc: Permission denied
起動しない…
→ 続き?
VirtualBox : Linux guest(ID:1171266700)≪追記≫ Windows hostならOS標準の共有機能を使った方が楽ですね。ホストのフォルダで共有を有効にすれば、ゲストから「\\10.0.2.2」でアクセスできるみたい。
≪追記≫ ver-1.4.0 からホストの共有フォルダの設定は、コマンドラインからではなく、マウスでちょいちょい設定できるようになりました。ゲストからはコマンドが必要ですけど。
上の記事に対するコメントです
1. makihara 2007/09/26 15:32
自分のサイトでは
if(!$id){$id=0;)
if(!$nxt_id){$nxt_id=0;)
の様にしたところエラーは出なくなりました。
2. makihara 2007/09/26 16:02
if(!$nxt_id){$nxt_id=0;)
は
if(!$id){$id=0;}
if(!$nxt_id){$nxt_id=0;}
の間違いでした。
3.
Sawa 2007/09/26 19:07
error_reporting(E_ALL ^ E_NOTICE);
の状態でも Warning が出なくなりました。
0を代入しておいても普通に動くようですし、嬉しいです。
4. yamazon (Website) 2010/04/12 20:27
expects parameter というエラーが出て調べていました。
参考になりました!ありがとうござました!
5.
Sawa 2010/04/12 22:29
この記事は全くPHPを知らない時に書いた物で、今見ると恥ずかしいです。
結局のところ、dateの中身が空だったりすると文句を言われるので
(!empty($i) && date('Ymd', $i)
とかでお茶を濁せば、大抵の場合うまくいくようです