自宅サーバー(CentOS6)によるWebページの公開を停止し、共用サーバー(お名前.com SD-11)に切り替えた。
・SSL対応が、当たり前になってきた。SSL証明書の入手は個人サーバーでもできるようだが、結構面倒なようだ。その点共用サーバーでは楽に処理できそう。
・現在よく使用されているWordPressでサイト作成をやってみたかった。
(ホームページV4よりWordPressの方が操作性が良さそう)
・現状のサーバー機では、CentOS6-32bitが限界で、それ以上のVersionには対応できない。
もちろんサーバー機を買い替えてCentOS7で運用する手もあったが、技術力的にも、予算的にも目途立たず。
一方、監視カメラ、人工知能ロボットなどで使ってきた何台かのRaspberryPiに余裕が出てきた。
また、32ビット版ながらCentOS7がRaspberyyPiで動くそうだ、との情報をキャッチ。
サーバーとして使用可能か試してみる気になった。
1.CentOS7サーバー製作(失敗)
1-1目標
RaspberryPi+USB-HDDの構成で、HDDからの起動とする。
サーバーとしては、Webサーバー、ファイルサーバー(NAS)、等を稼働させる。
1-2使用ハード・ソフト
Raspberry Pi 3B
USB-HDD Buffalo HD-LCU3(3TB)
microSDHC 16GB
HDMIディスプレイ HDMI-RGB変換アダプター+NEC LCD72VM-R
USBキーボード・マウス(無線式) Logicool MK245nWH+無線マウス
LANケーブル
CentOS-Userland-7-armv7hl-RaspberryPi-Minimal-1810-sda-raw.xz …CentOS7,32bit版
最終的には、運用を断念せざるを得なかったので、作業内容を以下に簡単に記す。
(microSDHCのみ接続状態にて)
1-3作業経過…基本的作業
1.OSソースを入手
上記のOSを入手する。
CentOS公式ページ⇒Get CentOS Now⇒alternative downloads⇒AltArch Releasesの項目にarmhfp用としてMinimal image for RaspberryPi 2/3があり、上記OSの入手先サイト一覧が示されている。
2.OSをmicroSDに書き込む balenaEtcherを使用
3.RaspberryPiの起動
microSD、HDMIディスプレイ、USBキーボード・マウス、LANケーブル、をセットし、電源を入れる。
CentOSが立ち上がる。…localhost login:
ID=root、PW=centos でログインできる。
4.基本的な設定
・sshdが動作しているようなので、以後はSSH接続で作業。(TeraTerm)
・#ip addr でDHCPでの接続IPアドレスを知る。
・ファイルシステムの拡張 # /usr/bin/root/fs-expand
#df -h で、/dev/root のサイズがmicroSDの全容量近くになっていることを確認。
・ユーザー関係の設定
root:パスワード変更
通常ユーザー作成:takasan パスワード設定:XXXXXXXX
・ネットワーク関連設定
ホスト名:web1
IPV4のアドレス固定化:# nmtui
*設定方法・設定内容の詳細は省略
*設定方法の参考サイト
Raspberry Pi3にCentOS7を入れてみた時にやったこと
http://tech.godpress.net/?p=740
設定完了後、ネットワークマネージャを再起動、またはシステムの再起動
5,ファームウェア、OSのアップデート
#rpi-update
#yum update
6.タイムゾーンと時刻同期
・タイムゾーンをAsia/Tokyoにする
・日本標準時を使う
(詳細省略)
*参考サイト けーさんのブログ CentOS7でのntpの簡単な設定
https://blog.k-san.info/set-ntp-on-centos7
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
(USB-HDDを接続状態にて)
1-4作業経過…サーバーとしての設定
1.USB-HDDの接続、パーティションの作成・フォーマット
RaspberryPi(Raspbian)に接続してNASとして使用していたUSB-HDD(ext4フォーマット)を接続する。
パーティションの切り直しに結構手間取ったが、最終下記の2つに分割。
/dev/sda1 約2.7TB ext4 (フォーマット:# mkfs.ext4 /dev/sda1)
/dev/sda2 約2,5GB linux-swap (フォーマット:# mkswap /dev/sda3)
2.microSDCardからUSB-HDDにコピー(/の部分、/dev/mmcblkOp3)
# dd if=/dev/mmcblk0p3 of=/dev/sda1 bs=32M conv=noerror,sync
3.コピー結果のチェック
# e2fsck -f /dev/sda1
4.ディスクのリサイズ…/dev/sda1パーミッションの全領域を使えるようにする
# resize2fs /dev/sda1
5.マウントして確認する /mnt
# mkdir /mnt/hdd1
# mount -t ext4 -o defaults /dev/sda1 /mnt/hdd1
# mount
6.システムの起動をUSB-HDDのルートディレクトリからに変更
# nano /boot/cmdline.txt
console=ttyAMA0,115200 console=tty1 root=/dev/sda1 rootfstype=ext4elevator=deadline rootwait
7.システム起動時HDDの自動マウント /etc/fstabに記入
# nano /mnt/hdd1/etc/fstab
編集前
UUID=eb4fd0d6-9eb4-4203-a5c6-21c706c88588 / ext4 defaults,noatime 00
UUID=6938-F4F2 /boot vfat defaults,noatime 0 0
UUID=7b023084-7822-49c4-9762-4ad9594c0f44 swap swap defaults,noatime 0 0
編集後
UUID=eb4fd0d6-9eb4-4203-a5c6-21c706c88588 /mnt/hdd1 ext4 defaults,nofail 0 0
UUID=6938-F4F2 /boot vfat defaults,noatime 0 0
UUID=7b023084-7822-49c4-9762-4ad9594c0f44 swap swap defaults,noatime 0 0
*参考サイト
centos7HDD接続-ラズパイ(linux)メモ
http://npp-com.net/memos/2017/10/25/centos7-hdd接続
トニーさんの備忘録 日々の作業で忘れやすい事を記録
https://ameblo.jp/tony1124/entry-12149357121.html
*操作上の失敗、問題点、等
USB-HDDを未接続の段階
①IPV4のアドレス固定で、nmtuiを使用。プロファイル名がeth0でなく少し手間取ったが、参考サイトに記載の内容等を参考に設定できた。
USB-HDDを接続後
①USB-HDDのパーティションを切る操作がうまくいかなかった。(コマンド等操作に不慣れ)
②microSDCardからUSB-HDDへのコピー
・操作コマンドの文字間違い⇒動作がストップ⇒コマンド動作の中止方法わからず、HDDの電源を断⇒HDDの状態が不安定(壊れた?)⇒HDDのセクターチェック(2日もかかった)良⇒パーティションを切り直す。
③コピー結果のチェックがなかなかパスせず。パーティションの設定し直しからのやり直しも!(3,4回)
チェック5回目ぐらいでやっと合格も
④USB-HDDのマウントが、システム起動後解除されてしまう。
microSDHCのLinuxシステムをHDDにコピーするせいか、UUIDが同一になる。HDDの/dev/sda1のUUIDを変更してfstabの記述を変えたりしてみたが、ダメだった。
結局、USB-HDDからの起動ができないのであれば、Serverとしての使用は難しい。ということで断念した。