Pydio in Arch
オープンソースのファイル共有・同期ソフトウェア「Pydio 6.0」がリリース | OSDN Magazine
Pydioなるファイル共有ソフトウェアがとても面白そうなので、 我が家のサーバー機で運用してみることにした
サーバー機は台座 pic.twitter.com/nXYOAAMGTj
— むに (@munisystem) 2015, 2月 5
すでにCentOSがインストールされておりapache等の設定も済んでいたのだが、普段開発環境として使用しているArchlinuxのリポジトリ内にpydioを発見したため、これを機にサーバー機のOSをArchlinuxに移行させることにした実際のところアップデートをかけたらすぐ死ぬようなArchlinuxでサーバーを運用させるのはどうかと思うし、インストールに時間をかけている暇があったらほかのことに時間を費やしたほうが断然いいというのはごもっともである
@nomuken あのな、インストールに時間かけてる暇あったらちゃちゃっとCentOSでサーバー組めばいいんやで(尻にブーメランが刺さって死)
— むに (@munisystem) 2015, 2月 11
が、ぶっちゃけ暇だったので構わないこの記事は
- 最低限必要なサーバーの設定
- Pydioが実際に使用できる
上記2点について言及する
記事にわざわざする必要がない部分が多いので、リンク多め
OSのインストール
今回はUEFIbootをさせることにした
普段使いのArch Linux: Arch Linux インストール (OSインストール編) | UEFI, GPT, GRUB, 2014.02.01でインストール
が今思えばここが最大のハマりポインツだった
自分があほだっただけだが、DVDをUEFIでbootさせていなかったためインストールしても起動しなかった
電源つけたらdel連打してちゃんと確認してからインストールしましょう終わり
サーバー機のディスク構成は
- 64GB SSD
/dev/sda1 512MB FAT32 /boot/efi
/dev/sda2 100MB ext4 /boot
/dev/sda3 REST ext4 /
- 2TB HDD
/dev/sdb1 ALL ext4 /subdisk
HDDはインストール後にマウントした
普段使いのArch Linux: Arch LinuxでHDDを新たに追加 | gptパーティショニング、ext4フォーマット
ここでdefaultsをdefaultに書き間違えたため、bootしなくなる
しょうがないのでDVD突っ込んで
#mount /dev/sda3 /mnt #vi /etc/fstab #umount /mnt
でfstabを書き直した
SSHの設定
まずは固定IP化
オンボードのLANとintelのNICがあるため、NICの名前をわかりやすいものに変えた
#lspci -v (モジュール名の確認) #dmesg grep | modulename (デバイス名の確認) #ip a (MACアドレスの確認) #vi /etc/udev/rules.d/10-network.rules (名前の設定) ----- [/etc/udev/rules.d/10-network.rules] SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="(MACAdress)", NAME="9301ct(私の場合)"
今回はnetctlでIPの設定を行う
[Raspberry Pi][Arch Linux] 初期設定 « 備忘録
SSHの設定に関しては各々でだいぶ変わってくると思うので一例のみ
入門OpenSSH / 第5章 より安全に運用するために
#useradd -m -g users -G wheel -s /bin/bash user (作業用のユーザーの生成) #passwd user #vi /etc/ssh/sshd_config ----- [/etc/ssh/sshd_config] PermitRootLogin no (rootでのログインを制限)
NTPの設定
#su - #pacman -S ntp #vim /etc/ntp.conf ----- [/etc/ntp.conf] logfile /var/log/ntp.log (logファイルの生成先ディレクトリの指定) ----- #systemctl start ntpd.service #systemctl enable ntpd.service
Pydioのインストール
Pydioを動かすのに最低限必要なもの
データベースを使わなくてもPydioを運用することはできるが、挙動が安定しないので選択肢には入らないと思う
Apacheのインストール
Apache HTTP Server - ArchWiki
これ見れば何とかなる
PHPのインストール
PHP - ArchWiki
これも基本的にWikiで何とかなる
Pydioはmcryptを使用するためインストールしておく
ハマリポインツはphpとの連携の際にlibphp5.soが使用できない点
よく見なくともWikiにはちゃんと書いてあるから確認しよう
#pacman -S php php-apache php-mcrypt #vim /etc/php/php.ini ----- [/etc/php/php.ini] extension=gd.so extension=mcrypt.so mbstring.detect_order = auto (uncomment) expose_php=OFF file_uploads = ON upload_tmp_dir = お好きなところで upload_max_filesize = 2000M (Pydioのアップロード上限に関わる) ----- #vim /etc/httpd/conf/httpd.conf ----- [/etc/httpd/conf/httpd.conf] LoadModule mpm_prefork_module modules/mod_mpm_prefork.so (要Wiki) Include conf/extra/php5_module.conf -----
MariaDBのインストール
Arch LinuxにLAMP環境を導入する方法
記事の通りだとうまくいかないのでphp.iniを修正
#vim /etc/php/php.ini ----- [/etc/php/php.ini] extension=pdo_mysql.so extension=mysqli.so extension=mysql.so (追加) (uncomment) -----
MariaDBインストール後はPydioで使用するユーザーとデータベースの生成
#mysql -u root -p #grant all privileges on pydio.* to username@localhost identified by 'password'; #exit #mysql -u username -ppassword (生成したユーザーでのログイン) #create database pydio; (Pydio用のデータベースの生成) #exit #systemctl start mysqld.service #systemctl enable mysqld.service
Pydioのインストール
#yaourt -S pydio (AURから引っ張ってくる)
/shr/share/webapps/pydio/index.php がそれっぽいのでhttpd.confで公開設定を行う
#vim /etc/httpd/conf/httpd.conf ----- [/etc/httpd/conf/httpd.conf] ServerName hogehoge.com:80 (グローバルIPアドレスとかドメインとか) DocumentRoot "/usr/share/webapps/pydio" (公開するディレクトリ) <Directory "/usr/share/webapps/pydio"> AllowOverride All (Pydioで必要) Options Indexes FollowSymLinks (Pydioで必要) <IfModule dir_module> DirectoryIndex index.html index.php (index.phpの有効化) </IfModule> ----- #systemctl restart httpd.service
設定を終えたらローカルIPでサーバーにアクセスする
(192.168.1.2/index.phpみたいな)
この時に
- 403が出る
→公開設定がミスっているので設定を見直す
- 真っ白
→ディレクトリへのアクセス権限がない
#chmod 777 /usr/share/webapps/pydio
それでもうまくいかない場合はapacheのログを見る
#cat /var/log/httpd/error_log
設定が済んでいる場合OKとかERRORとかWARNIGとか書かれた項目が出るはず
http://blog.negabaro.com/1072.html
Pydioをさくらにインストールする - ふたりはララベル (Laravel PHP Framework)
あとは記事の通りに進めれば設定は終了
お疲れ様でした