unionfs/nullfsの両方とも既存のファイルシステムを対象のディレクトリにマウントする。
unionfsは透過的にマウントするので、マウント先にファイルがあったら、それも見える。
nullfsは透過的では無いのでマウント先にファイルがあっても見えなくなる。
でjailにむけてやりたいこととして、ホストの/usrをjailの/usrで見えるようにしたい。だけど、jailの中で/usrのファイルを変更してもホスト側の/usrに影響が出ないようにする。
出てくるディレクトリは以下
・ /usr :ホストの/usr
・ /jail/root/jail1/ :jail1のrootディレクトリ。このディレクトリをrootとしてjailを起動する。
・ /jail/base/jail1/ :jail1の中で作成されたファイルが置かれる場所
mount -t nullfs -r /usr /jail/root/jail1/usr
mount -t unionfs /jail/base/jail1/usr /jail/root/jail1/usr
1行目で、/usrはリードオンリーで/jail/root/jail1/usrにマウントされるので、/usrが変更されることは無い。
2行目で、jailの中で/usrディレクトリに変更が入ると、変更内容は/jail/base/jail1/usrの反映される。
(ちょっとすごい)
・ unionfsでマウントした先(ここではjail/root/jail1/)でファイルを消したら、マウントの元ファイルも消える。ここまでは想像とおりですが、いったんunmountして、mountしなおしをしたら、/jail/root/jail1のファイルが見えるかと思ったら、消えたままだった。
→ umountして、/jail/base/jail1でファイルの作成・削除をした後、再度mountしたらファイルが復活していました。(その前に一度root/jail1にmountしたかも)
.....
てなことをしていたら、/jail配下でrm -rf * とかしてしまい、マウントしていたファイルもすべて消してしまった。。。。
・再インストール。
・freebsd-update fetch
・freebsd-update install
・pkg install virtualbox-ose-additions
・Xorg -configure
→できたxorg.conf.newのmouseの記載を変更。
・以下のpkgをインストール
- 基本ツール → zsh,sudo,
- xの起動で必要 → fvwm2,xterm
- xでkeyboardが使えない → x86-input-keyboard
- xでmouseが使えない
→ 特になしもしなくもmouseは動く(moused?)のだが、クリックができない。
理由はわからないが、handbookにしたがって、xorg.confの設定や、haldの設定をして、
vboxmouseを利用するように記載しても変わらず。
https://www.freebsd.org/doc/en/books/handbook/virtualization-guest.html
結局 xf86-input-mouse をインストールして使っている。たぶんvboxmouseではなく、通常のとおりの利用と思われる。
- xクライアントが飛ばせない。単なる認証系の問題。 → xauthをインストール
2016年4月16日土曜日
パッケージアップデート系メモ
ubuntu(apt系)
CentOS(yum系)
- 通常運用
- apt-get update パッケージ情報の更新
- apt-get upgrade パッケージのアップデート(新しいバージョンのインストール)
- apt-get dist-upgrade kernelの更新
- ubuntuのアップグレード
- do-release-upgrade
CentOS(yum系)
- 通常運用
- yum check-update 更新すべきファイルのチェック
- yum update パッケージのアップデート(新しいバージョンのインストール)
- yum upgrade
sysbench fileio
お名前VPSとさくらインターネットVPSとローカルにインストールしたVPSについて、それぞれをsysbenchによりIOのテストを実施
実施したコマンドは以下の3つ。prepareしてテスト用ファイルを作成、runでテスト実施、cleanupで作成したテスト用ファイルを削除。
% sysbench --test=fileio --file-total-size=1G prepare % sysbench --test=fileio --file-total-size=1G --file-test-mode=rndrw --init-rng=on --max-time=300 --max-requests=0 run % sysbench --test=fileio --file-total-size=1G cleanup結果:</ br>
onamae
Operations performed: 431040 Read, 287360 Write, 919496 Other = 1637896 Total Read 6.5771Gb Written 4.3848Gb Total transferred 10.962Gb (37.417Mb/sec) 2394.66 Requests/sec executed Test execution summary: total time: 300.0003s total number of events: 718400 total time taken by event execution: 11.2638 per-request statistics: min: 0.00ms avg: 0.02ms max: 1.54ms approx. 95 percentile: 0.03ms Threads fairness: events (avg/stddev): 718400.0000/0.00 execution time (avg/stddev): 11.2638/0.00
sakura
Operations performed: 339780 Read, 226520 Write, 724750 Other = 1291050 Total Read 5.1846Gb Written 3.4564Gb Total transferred 8.6411Gb (29.495Mb/sec) 1887.66 Requests/sec executed Test execution summary: total time: 300.0003s total number of events: 566300 total time taken by event execution: 7.1058 per-request statistics: min: 0.00ms avg: 0.01ms max: 2.96ms approx. 95 percentile: 0.02ms Threads fairness: events (avg/stddev): 566300.0000/0.00 execution time (avg/stddev): 7.1058/0.00
local vps
Operations performed: 2580 Read, 1720 Write, 5430 Other = 9730 Total Read 40.312Mb Written 26.875Mb Total transferred 67.188Mb (229.32Kb/sec) 14.33 Requests/sec executed Test execution summary: total time: 300.0145s total number of events: 4300 total time taken by event execution: 0.1086 per-request statistics: min: 0.02ms avg: 0.03ms max: 3.96ms approx. 95 percentile: 0.02ms Threads fairness: events (avg/stddev): 4300.0000/0.00 execution time (avg/stddev): 0.1086/0.00
ruby on rails をユーザ権限で動かしたい
ruby on rails をユーザ権限で動かしたい
ruby や gemそのものはシステムパッケージでインストール
ユーザ権限でrailsをインストール「.gemrc」に以下を記載。
----------------------------
install --user-install
----------------------------
これで~/.gem配下にインストールされる。 railsコマンドなどは~/.gem/ruby/[ver]/bin 配下にインストールされる。
railsアプリの準備
bundleでのインストールをrailsで作成したディレクトリに行う。 これで、インストール先のgemを利用してくれる。 bundle install --path=vendor/bundle --binstubs--binstubsはbinディレクトリを作成して、コマンドを配置してくれる。
2015年5月3日日曜日
VirtualBOXにFreeBSD10.0をインストール
Xまわり
VirtualBOXのウィンドウサイズの変更に追随して、FreeBSDonVirtualBOXのXのrootウィンドウサイズも自動的に変更されるようにしたい。でも、まだできていない。。。。
下記のページを参考にすすめました。
http://qiita.com/in_silico_/items/2ab6c37c14e777e6f48f
https://wiki.freebsd.org/VirtualBox
(参考:試行錯誤メモ)
VirtualBOXのウィンドウサイズの変更に追随して、FreeBSDonVirtualBOXのXのrootウィンドウサイズも自動的に変更されるようにしたい。でも、まだできていない。。。。
下記のページを参考にすすめました。
http://qiita.com/in_silico_/items/2ab6c37c14e777e6f48f
https://wiki.freebsd.org/VirtualBox
- ベースとして、「pkg install virtualbox-ose-additions」で大まかにX周りのパッケージがインストールされるので、お任せ
- 別途追加したのは以下
- mousedの起動
- pkg install xinit
- pkg install xf86-input-keyboard
- pkg install xf86-input-mouse
- pkg install dbus
- pkg install hal
(参考:試行錯誤メモ)
- xorg.confのInputDeviceセクションが有効になるように、ServerLayout もしくは、 ServerFlags セクションに「Option "AutoAddDevices" "false"」を追加。(引用 https://www.freebsd.org/doc/ja_JP.eucJP/books/handbook/x-config.html)。でもこれをするとXを起動したときにマウスが使えなくなってしまう。
- HandBookのコメントにあわせて、「/usr/local/etc/hal/fdi/policy/90-vboxguest.fdi」を作成してみたが、関係なさそう。
- Xの起動ログを見ると/dev/dri/display0が無いとエラーになっているので、/dev/driの作り方をかなり検索しまわった。結果としてvirtualbox-ose-additionsについてくるvboxvideo.koというカーネルモジュールを組み込めばOK。ただし、標準のvirtualbox-ose-additionsではvboxvideo.koが作られない。virtualbox-ose-additionsの構築オプションでOPENGLを有効にしてportsをmakeすればいける。エラーは出なくなるが、特に何かがよくなるわけでは無かった。。。。
2013年12月7日土曜日
ubuntu13へのアップデートがうまくいかず。。。
ubuntu13へのアップデートの途中でストールした。そのせいかOSが起動せず。kernelがうまくインストールされていなかったと思われる。
シングルユーザモード(?)で起動するので、困っていた。
結局以下で復活
% mount -o rw,remount /
% dpkg --configure -a % apt-get -f install
このあたりが参考になる。 https://forums.ubuntulinux.jp/viewtopic.php?id=8874
結局以下で復活
% mount -o rw,remount /
% dpkg --configure -a % apt-get -f install
このあたりが参考になる。 https://forums.ubuntulinux.jp/viewtopic.php?id=8874
2011年9月19日月曜日
rails3.1 on FreeBSD
rails3.1をインストールしてみるが、「Could not find a JavaScript runtime.」と出てしまう。
解決さくとして、Gemfileに「gem 'execjs'; gem 'therubyracer'」を入れて、bundle installすれば良いとあるが、
FreeBSDの場合 TheRubyRacerのインストールに失敗する。
原因は3つ
bundlerにて、gemインストール時に設定するオプションの付けかた。
mysqlのビルド時に--with-mysql-configを自動的に設定するやりかたです。
マニュアル(http://gembundler.com/rationale.html)に書いてありました。
原因は3つ
- libv8のインストールに失敗している
gem install therubyracerでlibv8が一緒にインストールされる。libv8は特にエラー無くインストールが終了するので、正常かと思ってしまうのだが、どうもインストールに失敗しているようす。以下のエラーが出る。
c++ -shared -o v8.so v8_v8.o v8_callbacks.o v8_weakref.o v8_date.o v8_context.o v8_handle.o v8_external.o rr.o v8_function.o v8_exception.o v8_try_catch.o v8_string.o v8.o v8_value.o v8_message.o v8_array.o v8_debug.o v8_locker.o v8_template.o v8_script.o v8_object.o -L/usr/home/seike/rails/r3.1.test/vendor/bundle/gems/libv8-3.3.10.2/lib/libv8/build/v8 -Wl,-R/usr/home/seike/rails/r3.1.test/vendor/bundle/gems/libv8-3.3.10.2/lib/libv8/build/v8 -L. -L/usr/local/lib -Wl,-R/usr/local/lib -L. -rpath=/usr/lib:/usr/local/lib -pthread -rdynamic -Wl,-soname,v8.so -Wl,-R -Wl,/usr/local/lib -L/usr/local/lib -lruby18 -lpthread -lcrypt -lm -L/usr/lib -rpath=/usr/lib:/usr/local/lib -pthread -lv8 /usr/bin/ld: cannot find -lv8 *** Error code 1
makeとgmakeの使い分けが出来ていないので、発生していると思われる。 libv8のディレクトリに移動して、gmakeと打ちましょう。% cd vendor/bundle/gems/libv8-3.3.10.2/lib/libv8 % gmake
libv8のコンパイルが始まります。
- execinfo.hが無いというエラーがでて、FreeBSDでは「libexecinfo」をインストールしろというtipsもある。
しかしながら、単純にインストールしても結局エラーになる。なので、bundle installを実行するときに「--with-opt-dir=/usr/local」が付与されるように、 以下の設定をしましょう。% vi ~/.bundle/config BUNDLE_BUILD__THERUBYRACER: --with-opt-include=/usr/local/include
- 実は上の「--with-opt-dir」をしても、作成されるv8.soが不十分。それはlibexecinfoがリンクされていないから。
そのためrake等を実行した場合エラーになる。libexecinfoをリンクされるように、無理矢理Makefileを修正して、v8.soを再作成する。
% cd vendor/bundle/ruby/1.8/gems/therubyracer-0.9.4/ext/v8 % vi Makefile LIBSの最後に「-lexeinfo」を追加。 LIBS = $(LIBRUBYARG_SHARED) -lpthread -lcrypt -lm -L/usr/lib -rpath=/usr/lib:/usr/local/lib -pthread -lv8 -lexecinfo % rm v8.so % make <- v8.soが再作成される。 % cp v8.so ../../lib/
bundlerにて、gemインストール時に設定するオプションの付けかた。
mysqlのビルド時に--with-mysql-configを自動的に設定するやりかたです。
% bundle config build.mysql --with-mysql-config=/usr/local/mysql/bin/mysql_config
マニュアル(http://gembundler.com/rationale.html)に書いてありました。
登録:
投稿 (Atom)