2-3.OMVの設定 のバックアップの現在との差分(No.12)
OpenMediaVaultの設定
extrasプラグイン
http://omv-extras.org/simple/index.php?id=how-to-install-omv-extras-plugin
にある"From OMV web interface"を使うと原因不明で進まず、はまる。
"From command line as root"を使えば分かるのだが、apt-transport-httpsが入っていないせいで
"dpkg -i openmediavault-omvextrasorg_latest_all.deb"が上手くいかない。
私は
apt-get install apt-transport-https
でインストール出来たと思うのだが、Webでぐぐると、
apt-get -f install apt-transport-https
でないとインストールできないとある。もはやどっちが正しいかを確かめる術なし。
データディスクのマウント
とにもかくにもデータディスクをマウントしよう。システム領域とスワップだけだと、ログにrrdirectあたりのエラーが出続けることになる。
nginx
設定はそれほど難しくない。基本OMVの中で設定できるが、設定できるルートはOMVで設定した共有フォルダに限られる。つまり/に余裕があるから/www作ってここを公開するっていうのはできない。
共有フォルダの作成
アクセス権の管理→共有フォルダ→共有フォルダタブ→+追加
名前、ボリューム、パス、パーミッション、コメントを適当に。
サービスの起動
サービス→Nginx(Websites)→設定タブ→有効化
サービス→Nginx(Websites)→プールタブ→+追加
サービス→Nginx(Websites)→サーバタブ→+追加
xcahce
PHP Version 5.4.45-0+deb7u2なので、OPCacheが入っていない。
PHP Version 5.4.45-0+deb7u2なので、OPCacheが入っていない。(OPCacheは5.5+から)
apt-cache search OPCacheすると、PHP5-xcacheパッケージは入れられるようだ。
apt-get install php5-xcache cd 公開ディレクトリ mkdir xcache cd xcache cp -r /usr/share/xcache/admin .
その前に
vi /etc/php5/conf.d/20-xcache.ini
して、
[xcache.admin] ;xcache.admin.enable_auth = On xcache.admin.user = "xcache" ; xcache.admin.pass = md5($your_password) xcache.admin.pass = "asbdefghijklm"
して、ちゃんとuserとパスワード設定しないとweb interface出てこない。
パスワードのところは、
% echo -n "typeyourpassword" | md5sum % abcdefghijklm
して入れる文字を取得する。
http://forums.openmediavault.org/index.php/Thread/11579-Modify-the-80-threshold-filesystem-notification/
http://forums.openmediavault.org/index.php/Thread/12718-SOLVED-80-Resource-limit-warning-for-space-on-filesystem/
http://forums.openmediavault.org/index.php/Thread/12313-User-home-directory-filesystem-mounted-noexec-incorrectly/
data cacheの方はどうする?APCu?
http://www.atmarkit.co.jp/ait/articles/1602/25/news017.html
うーん、ここはOMVや採用debianのバージョンアップ待ちでいいかな。いずれPHP5.6+ +OPCache +APCuだろう。
nginx-cgi
phpはOMV-webuiから設定可能だが、その他のcgiはsshでターミナル開いて作業する必要あり。
apt-get install fcgiwrap spawn-fcgi
すると、/etc/init.d/fcgiwrapもsocket使うほうで準備してくれる。だからOMVのnginxのサーバタブの編集→追加オプションのエリアで、以下を加えれば良い。
location ~ \.cgi$ { include /etc/nginx/fastcgi_params; fastcgi_pass unix:/var/run/fcgiwrap.socket; fastcgi_index index.cgi; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; }
ただし、noexecの罠に注意。
noexecの罠
OMVで設定すると、fstabにはnoexecが付いている。perlのcgiとかは注意しとかないと。最初に/etc/default/openmediavaultの下の
OMVで設定したディスク(パーティション)をfstabで確認するとnoexecが付いている。perlのcgiを置く場所にnoexecが付いていると動かない。最初に/etc/default/openmediavaultの下の
OMV_FSTAB_MNTOPS_EXT3
OMV_FSTAB_MNTOPS_EXT4
OMV_FSTAB_MNTOPS_JFS
OMV_FSTAB_MNTOPS_XFS
等を編集しておくといいかも。既に/etc/openmediavault/config.xmlで設定済みの場合には、//system/fstab/mntentの<opt>フィールドを変更する。
等を編集しておくと、OMVで設定したディスクでもnoexec付かないようにすることができる。しかしディスクフォーマットタイプ毎の設定になる。あまり頻繁にディスクの設定を変えないようなら、既/etc/openmediavault/config.xmlの/system/fstab/mntentの<opt>フィールドを変更し、かつ/etc/fstabも変えておけばいい。
nginx-cgi
phpはOMV-webuiから設定可能。
bittorrent client
openmediavault-transmissionbtはあるのだが、ラベルが使えなかったりいろいろ不自由。替わりにXS35と同じようにutorrentをいれた方がいい。
http://www.utorrent.com/intl/ja/downloads/linux ここからDevian 7.0 32bitをダウンロード。 libssl0.9.8も入れる。(今回はdpkg -i libssl0.9.8_0.9.8o-4squeeze14_i386.debで入れたが、正しくはapt-get install libssl0.9.8:i386)
tar -xvzf utserver.tar.gz -C /root/opt chmod -R 755 /root/opt/utorrent-server-alpha-v3_3
そしてLinux Mintで使った以下のスクリプトを/root/binにでもおいておき、再起動時にstartするようにOMVの上で設定する。
webで設定しようとすると、公開するディレクトリには制限があって、データフォルダだけになる。
/に、/home/www作って公開しようとしてもできない。/homeをマウントすればできるが、するとnoexecになる。
以下file "/root/bin/utorrent"
#!/bin/sh # # uTorrent start stop service script # # copy to /etc/init.d # run "update-rc.d utorrent defaults" to install # run "update-rc.d utorrent remove" to remove # # @author FanFan Huang ([email protected]) # # # BEGIN CONFIGURATION SECTION #################################### # Path were you extracted utorrent server UTORRENT_PATH=/root/opt/utorrent-server-alpha-v3_3 # Path where you want store the log file # (default recommended) LOGFILE=$UTORRENT_PATH/utorrent.log # Path for the PID file where the process id is stored # (default is for debian and ubuntu systems) PIDFILE=$UTORRENT_PATH/utorrent.pid # Nice value NICE=15 # END CONFIGURATION SECTION ##################################### uTorrentServer() { nice -n $NICE $UTORRENT_PATH/utserver -settingspath $UTORRENT_PATH -daemon -logfile $1 -pidfile $2 } case "$1" in start) isAlive=`ps -ef | grep utserver | grep -v grep | wc -l` if [ $isAlive = 1 ]; then echo "uTorrent is already running please terminate first" else if [ -e "$PIDFILE" ]; then rm $PIDFILE rm $LOGFILE fi echo "uTorrent starting" uTorrentServer $LOGFILE $PIDFILE while [ ! -e $LOGFILE ]; do sleep 1 #Wait for file to be generated done while [ "" = "$(cat $LOGFILE|grep 'IPv6 is installed')" ]; do #wait until utorrent has finished bootup echo -n ".$(cat $LOGFILE|grep 'IPv6 is installed')" sleep 1 done RESULT=$(cat $LOGFILE|grep 'bind failed') if [ -n "$RESULT" ]; then echo "Port bind failure detected uTorrent may have limited functionality" else echo "uTorrent started successfully" fi fi ;; stop) if [ -e "$PIDFILE" ]; then echo -n "uTorrent is shutting down" PID=$(cat $PIDFILE) kill $PID while [ -n "$(pidof "utserver")" ]; do echo -n "." sleep 1 done echo "uTorrent Service Terminated" rm $PIDFILE rm $LOGFILE else echo "Service is not currently running!" fi ;; status) if [ -e "$PIDFILE" ]; then PID=$(cat $PIDFILE) echo "uTorrent running pid: $PID" else echo "uTorrent not running" fi ;; restart) $0 stop $0 start ;; log) if [ -e "$LOGFILE" ]; then LOG=$(cat $LOGFILE) echo "$LOG" else echo "uTorrent is not running no active log file" fi ;; *) echo "Usage {start|stop|restart|status|log}" exit esac exit 0
mysql
サービス→MySQLタブから設定。有効にするにはデータディレクトリに空の共有フォルダする指定必要がある。パスワードリセットすればroot/パスワード無しでSQLウェブインターフェースにアクセスできる。/etc/mysql/conf.d/openmediavault-mysql.confに反映される。
テーブルの種類。
MyISAM
【メリット】
・過去にupdateもdeleteもしたことがないテーブルに対するinsert操作が高速になっている。
・起動・停止が高速。
・テーブルの移動や名前変更がファイルシステム操作で直接できるなど、DBの運用が容易
【デメリット】
・トランザクション機能がない。
・update,delete,insertがテーブルロックになるので、更新が多い用途には不利である。
InnoDB
【メリット】
・トランザクションに対応する、異常終了した時のリカバリ機能。
【デメリット】
・起動・停止がデータ量によっては数分単位かかる。
・テーブル操作はすべてDB経由で行わないといけない。
Certificacates
オレオレSSL証明書作成。Key sizeのデフォルト4096bだとCommunication Errorで進まなかった。2048b, 5年 ON, OEは適当、City, 国、Emailを入れてSave。
owncloud
/var/www/owncloud/config/config.php
'dbtype' => 'mysql', に変更 'default?language' => 'ja_JP',
eXtplorer
Q:こいつでシステムファイル編集できないの(今はRead Only)?SSHで入ると日本語が入ったファイルがうまく表示できなかったりして、もしeXtplorerで編集できるようになると便利なんだけど。
A:できねーよ。そういうもん。http://forums.openmediavault.org/index.php/Thread/5101-File-manger-for-v1-0-6-extplorer/ 読んどけ。SSHで日本語交じりの設定ファイルをきちんと扱えるようにしなきゃだね。