今度は Raspberry Pi 用 OS、Pidora をインストールしてみた。
Pidora (パイドラ? ピドラ?)と言う Fedora系のLinux OS。
1.Pidora をインストール
http://www.raspberrypi.org/downloads/
ここから PIDORAのzip版をダウンロード。しようとしたが、途中でエラーになってしまう。
しょうがないので、Pidora-2014-R3.zip.torrent をダウンロードして、uTorrent で
Pidora-2014-R3.img ファイルをゲット。
ゲットしたら念のため MD5 をチェック。
Pidora-2014-R3.img ファイルのサイズは、2.01GB。
Raspbian の img ファイルのサイズは 3.05GB だったので、約1GB も Pidora の方が小さい。
Raspbian の時と同様に、Win32DiskImager と言うソフトを使って、imgファイルを microSD に展開。
2.無線LAN の設定
デスクトップの右上の所から WiFi の設定。
BUFFALO WLI-UC-GNM はRaspbian が対応してる物だったようで、使うネットワーク(SSID)を指定してパスワード(PINコードとかネットワークキーとか言うやつ)を入力するだけでつながっ ん、つながらない。
よく分からないが、何度か設定したらつながった。電波が悪かっただけ? かな?
3.Windows から TeraTerm、WinSCP で接続
IPアドレスを調べようと、ifconfig コマンドを打ってみたが、
-bash: ifconfig: command not found
と返ってくる。どうやらインストールされてないようだ。
インストールする。
[pi@pidora ~]$ sudo yum install net-tools
もう一度 ifconfig と打つ。だらだらっと表示され、wlan0 の所の項目でIPアドレスが分かった。
IP アドレスを指定して、ユーザ名: pi、パスフレーズ: raspberry (デフォルト)でログイン。
問題なく TeraTerm と WinSCP の両方でログインできた。
4. ソフトインストール
・Apache(Webサーバ)インストール
[pi@pidora ~]$ sudo yum install httpd
・PHP インストール
[pi@pidora ~]$ sudo yum install php
・PostgreSQL インストール
[pi@pidora ~]$ sudo yum install postgresql-server
・MySQL インストール
[pi@pidora ~]$ sudo yum install mysql
・Samba インストール
[pi@pidora ~]$ sudo yum install samba
・tightvncserver (VNCサーバ)インストール
[pi@pidora ~]$ sudo yum install tigervnc-server
・vim は入ってた。
・フォント(IPAフォント)をインストール
[pi@pidora ~]$ sudo yum install fonts-japanese
[pi@pidora ~]$ sudo yum install ipa-gothic-fonts ipa-pgothic-fonts
ipa-mincho-fonts ipa-pmincho-font
・日本語IMEをインストール
[pi@pidora ~]$ sudo yum install ibus-anthy
5. Apache設定
・設定ファイル(/etc/httpd/conf/httpd.conf)
これを見ると、デフォルトのドキュメントルートは “/var/www/html” となってる。
さらに見ていくと、phpの設定がないし、全体的に量が少ない感じがする。「自分で色々書かないといけないのか」と思っていたら、
Include conf.modules.d/*.conf
IncludeOptional conf.d/*.conf
と言う記述があった。conf.modules.d ディレクトリと conf.d ディレクトリの .confファイルを取り込むようになっているようで、2つのディレクトリを見たら php の設定ファイルもそちらにあった。
・サーバ起動
[pi@pidora ~]$ sudo service httpd start
sudo password for pi:
Redirecting to /bin/systemctl start httpd.service
・システム起動時に自動起動するように設定
[pi@pidora ~]$ sudo chkconfig httpd on
sudo password for pi:
Note: Forwarding request to 'systemctl enable httpd.service'.
ln -s '/usr/lib/systemd/system/httpd.service' '/etc/systemd/system/multi-user.target.wants/httpd.service'
・UserDirディレクティブ設定
/etc/httpd/conf.d/userdir.conf を編集する。
<IfModule mod_userdir.c>
#
# UserDir is disabled by default since it can confirm the presence
# of a username on the system (depending on home directory
# permissions).
#
UserDir disabled
#
# To enable requests to /~user/ to serve the user's public_html
# directory, remove the "UserDir disabled" line above, and uncomment
# the following line instead:
#
#UserDir public_html
</IfModule>
を
<IfModule mod_userdir.c>
#
# UserDir is disabled by default since it can confirm the presence
# of a username on the system (depending on home directory
# permissions).
#
#UserDir disabled
UserDir enabled pi
#
# To enable requests to /~user/ to serve the user's public_html
# directory, remove the "UserDir disabled" line above, and uncomment
# the following line instead:
#
UserDir public_html
</IfModule>
と設定して再起動。(「UserDir enable pi」で、ユーザ pi だけ有効にしてる。これはなくてもいいけど、全ユーザ有効になる)
[root@pidora conf.d]# service httpd restart
Redirecting to /bin/systemctl restart httpd.service
これでブラウザから http://192.168.xxx.xxx/~pi/ にアクセスすると、piユーザのホームディレクトリ(/home/pi/)の public_html ディレクトリにある index.html が表示されるはず。
されない。
You don’t have permission to access /~pi/ on this server.
と出る。権限がないとな。
ls コマンドで pi ディレクトリのパーミッションを見てみる。
[pi@pidora home]$ ls -l
total 4
drwx------ 18 pi pi 4096 Nov 6 01:57 pi
pi ディレクトリのパーミッションは、rwx—— になっている。
chmod コマンドでその他に実行権限を付けます。
[pi@pidora home]$ chmod o+x /home/pi/
[pi@pidora home]$ ls -l
total 4
drwx-----x 18 pi pi 4096 Nov 6 01:57 pi
もう一度、ブラウザから http://192.168.xxx.xxx/~pi/ にアクセス。
やりました。index.htmlファイルが表示されました。
6. PostgreSQL設定
・postgres のパスワード設定
PostgreSQL をインストールすると postgres と言うユーザが作られるのだが、
パスワードは不定だそうなので、passwd コマンドで postgres のパスワードを設定する。
sudo passwd postgres
・データベースシステムの初期化から接続まで
データベースの初期化(-D でデータベースクラスタを作るディレクトリを指定)
initdb --no-local -D /var/lib/pgsql/data/
サーバ起動(startの部分を stop、restart、reload にすると 停止、再起動、設定ファイル再読込ができる)
pg_ctl start -D /var/lib/pgsql/data/
サーバの状態を確認
pg_ctl status -D /var/lib/pgsql/data/
pg_ctl: server is running (PID: 3119) とか表示されたら起動してる。
サーバに接続
psql
プロンプトが以下のようになる。(postgresはユーザ名)
postgres=#
ここまで出来れば普通に使える状態。