ついに重い腰を上げて、自宅サーバにCentOS Stream 9をインストールすることにしました。
少し前までは、CentOSの移行先としてAlmaLinuxが良いと言われていましたが、最近RedHat社がRHELのソースコードを公開しなくなったため、AlmaLinuxの今後の動きが見えなくなってきました。
RHELが無くなることは無いと思うので、今回もCentOSをインストールすることとしました。
この記事では、準備からバックアップまでのメモをします。今回の移行方針
今回は、単純にCentOS Stream 9をHDDに再インストールする訳ではなく、SATA SSDにインストールすることにしました。
SSDもかなり壊れにくくなってきているようですし、マシンスペック的にもSSDにした方がパフォーマンスが上がると考えています。
以前、MySQLとDockerのデータを古いSSDに移行しても問題が無かったこともあります。
あとは、HDDをSambaのファイル格納専用にします。
これは、今後OSを再インストールする際に楽にしたいという狙いもあります。
今回はSambaのファイルを一旦退避するために、別途M.2 SSDを購入したりもしています。
他にも、HDDアクセスが減り、消費電力が減るかもしれません。
逆に、HDDのスピンダウン・アップが増えて故障しやすいということも考えられますが…。
とりあえずこの方針でやっていきます。
バックアップ
バックアップするファイル
必要なファイルをすべてを網羅するのは大変です。
ブログにある程度書き残していますが、書いていない対応の方が多いとも考えられます。
重要なファイル順で考えるとこうなります。
- Sambaのファイル(ファイルサーバの中身)
- Nextcloudのファイル
- 自分で作ったスクリプトなど
- PKI
- /etcなど色々なところに散りばめられた設定ファイル(これの網羅が難しい)
- Zabbixのデータベース
- Tiny Tiny RSSのデータベース
- 5chのdatファイル
これらのファイルを頑張って、WinSCPで母艦に控えておきます。
忘れやすい物やWinSCPだけでは出来ない物を以降に記載します。
Samba
Sambaのユーザ・パスワードのファイルが忘れやすいです。
systemdのファイルは、sambaに入っていないため控えます。
/usr/local/samba/etc/smb.conf
/usr/local/samba/private/passdb.tdb
/usr/local/samba/private/secrets.tdb
/etc/systemd/system/nmb.service
/etc/systemd/system/smb.service
MySQLのバックアップ
使っているデータベースをダンプして控えておきます。
# mysqldump --single-transaction -u root -p nextcloud > nextcloud.dump # mysqldump --single-transaction -u root -p zabbix > zabbix.dump
Docker版 Tiny Tiny RSSのバックアップ
週一回に自動でバックアップされていますが、手動で実行します。
# docker-compose exec backups /bin/sh / # ./etc/periodic/weekly/backup db:5432 - accepting connections backing up tt-rss database to /backups/ttrss-backup-20230908.sql.gz... backing up tt-rss local directories to /backups/ttrss-backup-20230908.tar.gz... tar: removing leading '/' from member names cleaning up... done. / #
あとはホスト側でファイルを控えておきます。
ls /var/lib/docker/volumes/ttrss-docker_backups/_data/ ttrss-backup-20230908.sql.gz ttrss-backup-20230908.tar.gz
2chproxy + p2-php(rep2)
これらを丸ごと控える。
/usr/local/2chproxy.pl/
/var/www/html/p2-php/