保守・運用この記事ではapt-getのサブコマンドのdist-upgradeのでOSのバージョンを上げる方法と、再起動前にチェックしておく箇所について解説しています。コマンド一発でraspiのOSのアップデートは可能ですが、前準備と後処理を怠ると今まで通り動かなくなってしまうので注意する必要があります。今回はStretchからBusterへ(9系から10系へ)更新してみます。Pi(RaspbianやDebian)のOSを最新にアップグレードすることができます。手元のPCも最新のバージョンに保ちましょう!実行前にいくつかチェックしてバックアップなどをとっておきましょう。/etc/,/home/のバックアップ、または万全を期すためにはSDカードごと丸まるバックアップをとっておくといいです。バックアップ方法については以下の記事を参照してください。lsb_releaseコマンド以下コマンドを実行することで現在のOSのバージョンを確認することができます。stretchCodenameなどの部分に現在のDebianのコードネームが表示されます。最新にアップグレードした場合はここも変更されます。自動起動するプロセス変更されることはないと思われますが、ここもチェックしておきます。Pi起動時に自動的に立ち上がるサービスとなっています。install時に自動で設定されたものも含む)などの一覧を確認しておき、OS更新後に差異が無いがチェックします。あわせて/etc/rc.localに追加した処理もチェックしておきましょう。私の場合はnodejsのこまごましたサーバー系はここに追記したりしています。Piの場合以下となります。0ネットワーク設定のバックアップ別記事でWiFiの設定や固定IPアドレスの設定を行っていますが、それらの設定ファイルもバックアップしておきます。上書き・削除されることはまずあり得ないはずですが、もし今までの設定から変更されてしまうと、ネットワーク越しにターミナルからアクセスすることができなくなります!本体にキーボードとHDMIを挿して。設定を直すのは面倒ですよね。/etc/dhcpcd.confファイルのバックアップをとります。固定IPアドレスの設定をしている場合はこのファイルを編集していますね。/etc/dhcpcd.conf.bk20191210日付が分かるような被らない名前にしておきましょう。次にWiFiの設定をしている/etc/wpa_supplicant/wpa_supplicant.confファイルをバックアップします。/etc/wpa_supplicant/wpa_supplicant.conf.bk20191210パッケージリスト取得先を変更これを変更しないと新たなバージョンになりません。(自動で変更してくれると思っていたのですが、私の環境では手動で変えないとダメでした。vimなどで/etc/apt/sources.listを開き、修正します。rpi現在のOSがStretchの場合、busterの部分がstretchとなっています。これを対象の新しいOSのコードネーム(執筆時ならbuster)に変更します。stableとなっている場合はそのままで問題ないです。コマンド実行では、いよいよアップグレード実行です。以下のコマンド1行だけでOKです。apt-getコマンドは管理者権限が必要なのでsudoと一緒に実行します。[Y/n]かなり時間がかかりますが辛抱強く待ちましょう。Newsのような画面が表示されたり設定を求められることがありますが、各環境によってまちまちなのでよくわからなければ随時Googleで表示されている文字列を検索してみるしかないです。あるのは「新しい設定用のファイルを作成するけど、既存のものと置き換える?」みたいな感じのものなので、問題なければyesを選択して進めていきます。アップグレードが完了したら次に進みます。再起動前に先ほどバックアップしたファイルが元のままかチェックします。バックアップファイルを作成しているのでdiffコマンドを使うことで差分を簡単にチェックすることができます。-aを実行してアップグレードできているか確認してみましょう。数分経って確実に起動してからsshなどで接続してみます。ここで接続できない場合は起動がうまくいっていないかネットワーク周りで問題が起きている・更新前の設定と異なっていることが主な原因かと思います。本体に直接接続してログインのプロンプトが表示されているか確認します。表示されずに起動段階でエラーとなっている場合は更新前に作成したバックアップから復元して、再度いろんな方法で更新を試すのが手っ取り早いです。(なぜエラーとなったかの原因を握りつぶすのはあまりよくないですが、、、)ログインできる状態であれば上記の固定IPアドレス設定ファイルとWiFi設定ファイル、および各サーバー・デーモンが起動しているかチェックします。startなどで起動します。最後に今まで自動起動していたサービスをチェックします。apache2でWebサーバーが今まで自動起動していたのであれば、(上でも同じようなことをしていますが)以下のコマンドを実行することで起動状態を確認することができます。enabledであれば自動起動設定されているが手っ取り早く簡潔です。以下のサイトの情報を引用・参考にしました。インストールできるパッケージを検索するapt-cacheコマンドの基本的な使い方について。背景を元に戻すAdsはてなブログをはじめよう!ibuquicalligさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。