「システムメンテナンス」の版間の差分
(パッケージマネージャーを使用してソフトウェアをインストールするの項目を翻訳して追加) |
(→パッケージ関連の作業: 英語版と同期して古くなった項目を翻訳して更新) |
||
64行目: | 64行目: | ||
[https://wiki.archlinux.jp/index.php/Rsync_%E3%81%AB%E3%82%88%E3%82%8B%E3%83%95%E3%83%AB%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0%E3%83%90%E3%83%83%E3%82%AF%E3%82%A2%E3%83%83%E3%83%97 システムバックアップ] を参照してください。 |
[https://wiki.archlinux.jp/index.php/Rsync_%E3%81%AB%E3%82%88%E3%82%8B%E3%83%95%E3%83%AB%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0%E3%83%90%E3%83%83%E3%82%AF%E3%82%A2%E3%83%83%E3%83%97 システムバックアップ] を参照してください。 |
||
− | == |
+ | == システムのアップグレード == |
+ | [https://wiki.archlinux.jp/index.php/Pacman#.E3.83.91.E3.83.83.E3.82.B1.E3.83.BC.E3.82.B8.E3.81.AE.E3.82.A2.E3.83.83.E3.83.97.E3.82.B0.E3.83.AC.E3.83.BC.E3.83.89 パッケージのアップグレード] を介して定期的にシステム全体のアップグレードを実行し、最新のバグ修正とセキュリティ更新の両方を楽しんだり、一度に手動で介入する必要のあるパッケージのアップグレードが多すぎたりしないようにすることをお勧めします。コミュニティにサポートを要求する場合、通常、システムは最新であると見なされます。 |
||
− | === システムの定期的なアップグレード === |
||
+ | 更新後に問題が発生した場合にシステムを簡単に救出できるように、Archインストールメディアまたは別の Linux ''ライブ'' CD/USB を用意してください。 Arch を実稼働環境で実行している場合、または何らかの理由でダウンタイムを許容できない場合は、最初に、重要ではない複製システムで構成ファイルの変更とソフトウェアパッケージの更新をテストします。その後、問題が発生しない場合は、本番システムに変更をロールアウトします。 |
||
− | 最新のバグフィックスとセキュリティアップグレードを享受するために、また、一度に多数のパッケージの更新に対処することに迫られないように、最低でも一週間ごとくらいに、定期的なフルシステムアップグレードを行うことを推奨します。 |
||
+ | システムに [[AUR]] のパッケージがある場合は、それらすべてを慎重にアップグレードしてください。 |
||
− | 稀に [[SysVinit|SysV]] から [[systemd]] への移行のようなクリティカルな変更が Arch Linux に起こることがあります: このようなケースではコミュニティの人々が同時に対処するのが重要になります。問題が起こった時にドキュメントやヘルプを見つけやすくなるからです。 |
||
+ | ''pacman'' は強力なパッケージ管理ツールですが、すべてのケースを処理しようとするわけではありません。ユーザーは用心深く、自分のシステムを維持する責任を負わなければなりません。 |
||
− | 詳しくは [[Pacman#パッケージのアップグレード]] を参照。 |
||
− | + | === システムをアップグレードする前に読んでください === |
|
+ | アップグレードする前に、ユーザーは [https://www.archlinux.org/ Arch Linuxホームページ] にアクセスして最新ニュースを確認するか、[https://www.archlinux.org/feeds/news RSS フィードを購読する必要があります] または [https://mailman.archlinux.org/mailman/listinfo/arch-announce/arch-announce メーリングリスト] 更新に通常とは異なるユーザーの介入が必要な場合 (''pacman'' の指示に従うだけで処理できる以上の) 適切なニュース投稿が行われます。 |
||
− | {{Note|システムのアップデートに関するベストプラクティスは [[Arch Linux の安定化#システムをアップグレードする前に読むもの]]の記事に載っています。}} |
||
+ | 基本的なソフトウェア ([カーネル]、 [[xorg]]、 [[systemd]]、 {{Pkg|glibc}} など)を新しいバージョンにアップグレードする前に、適切な [https://bbs.archlinux.org/forum] で、問題が報告されているかどうかを確認します。 |
||
− | === ミラーリストの更新 === |
||
+ | ユーザーは、パッケージをアップグレードすると、即時の介入が必要になる可能性のある ''予期しない'' 問題が発生する可能性があることにも同様に注意する必要があります。したがって、重要なタスクを実行するために必要になる直前に、安定したシステムをアップグレードすることはお勧めしません。アップグレード後の問題に対処できるように、代わりに十分な時間をとって待つことをお勧めします。 |
||
− | ミラーの質は段々と変わっていくことがあり、オフラインになったりダウンロードの速度が落ちたりすることがあるので、pacman のミラーリストは最新に保って下さい。 |
||
+ | {{Tip|{{aur|informant}} のような pacman フックを使用すると、前回の更新の実行以降に読んでいない新しい ArchNews がある場合に更新できなくなります。}} |
||
− | 詳しくは[[ミラー]]を参照。 |
||
+ | === 特定の pacman コマンドを避けてください === |
||
− | === 孤児になったパッケージの削除 === |
||
+ | [[#部分的なアップグレードはサポートされていません|部分的なアップグレード]] は避けてください。つまり、 {{ic|pacman -Sy}} を実行しないでください。代わりに、常に {{ic|pacman -Syu}} を使用してください。 |
||
− | 無駄にディスク容量を浪費しないように孤児になった不必要なパッケージは削除します。 |
||
+ | 通常、pacman で {{ic|--overwrite}} オプションを使用することは避けてください。 {{ic|--overwrite}} オプションは、 glob を含む引数を取ります。 pacman を使用すると、globに一致するファイルのファイル競合チェックがバイパスされます。適切に保守されたシステムでは、Arch 開発者によって明示的に推奨された場合にのみ使用する必要があります。 [[システムをアップグレードする前に読んでください]] セクションを参照してください。 |
||
− | 詳しくは [[Pacman ヒント#孤立したパッケージの削除]] を参照。 |
||
+ | pacman で {{ic|-d}} オプションを使用することは避けてください。 {{ic|pacman -Rdd ''package''}} は、パッケージの削除中に依存関係のチェックをスキップします。その結果、重大な依存関係を提供するパッケージが削除され、システムが破損する可能性があります。 |
||
− | === 使用してないパッケージの削除 === |
||
− | |||
− | ディスク容量を開けてメンテナンスを簡単にするために、使用していない、古いパッケージはシステムから削除します。 |
||
− | |||
− | 詳しくは [[Pacman ヒント#使用していないパッケージの削除]] を参照。 |
||
− | |||
− | === パッケージキャッシュの掃除 === |
||
− | |||
− | ディスク容量を増やすために {{ic|/var/cache/pacman/pkg/}} から無駄な {{ic|.pkg}} ファイルは削除します。 |
||
− | |||
− | 詳しくは [[Pacman#パッケージキャッシュの削除]] を見て下さい。 |
||
− | |||
− | この作業は [[systemd/タイマー]] を使うことで自動化できます。 |
||
− | |||
− | === pacman データベースの最適化 === |
||
− | |||
− | pacman データベースへのアクセスを最適化することで pacman の操作を高速化できます。 |
||
− | |||
− | [[Pacman のパフォーマンスの向上#データベースのアクセス速度を向上させる]]を見て下さい。 |
||
− | |||
− | この作業は [[systemd/タイマー]] を使うことで自動化できます。 |
||
== パッケージマネージャーを使用してソフトウェアをインストールする == |
== パッケージマネージャーを使用してソフトウェアをインストールする == |
2020年12月26日 (土) 19:26時点における版
関連記事
長期にわたって Arch を適切に機能させるには定期的なシステムメンテナンスが不可欠です。暇があるときにメンテナンスするのは多くのユーザーの習慣となっています。
目次
エラーの確認
systemd サービスの失敗
systemd サービスが failed 状態になってないか確認:
$ systemctl --failed
詳しくは Systemd#システムの状態を分析する を参照。
ログファイル
/var/log
/var/log
にあるログファイルにエラーが出てないか調べる。
Systemd journal
systemd の journal に優先度が高いエラーが出てないか確認:
# journalctl -p 3 -xb
詳しくは Systemd#Journal を見て下さい。
Xorg のエラーについては Xorg#トラブルシューティングを見てください。
バックアップ
重要なデータのバックアップを定期的に作成します。ケースにより適した多くの代替アプリケーションについては、同期およびバックアッププログラム を参照してください。その他の興味深い記事については カテゴリ:システムリカバリ を参照してください。
バックアップは systemd/タイマー で自動化できます。
構成ファイル
構成ファイルを編集する前に、問題が発生した場合に作業バージョンに戻すことができるようにバックアップを作成してください。 vim や emacs のようなエディターはこれを自動的に行うことができ、 etckeeper のようなツールは /etc
を バージョン管理システム (VCS) に保持します。 :詳細については、 gitignore を使う を参照してください。
インストールされているパッケージのリスト
インストールされているすべてのパッケージのリストを維持して、完全な再インストールが避けられない場合に、元の環境を簡単に再作成できるようにします。
詳しくは リストからパッケージをインストールする をご覧ください。
Pacman データベース
pacman データベースをバックアップ を参照してください。
暗号化メタデータ
Backup for disk encryption scenarios を参照してください。
システムおよびユーザーデータ
システムバックアップ を参照してください。
システムのアップグレード
パッケージのアップグレード を介して定期的にシステム全体のアップグレードを実行し、最新のバグ修正とセキュリティ更新の両方を楽しんだり、一度に手動で介入する必要のあるパッケージのアップグレードが多すぎたりしないようにすることをお勧めします。コミュニティにサポートを要求する場合、通常、システムは最新であると見なされます。
更新後に問題が発生した場合にシステムを簡単に救出できるように、Archインストールメディアまたは別の Linux ライブ CD/USB を用意してください。 Arch を実稼働環境で実行している場合、または何らかの理由でダウンタイムを許容できない場合は、最初に、重要ではない複製システムで構成ファイルの変更とソフトウェアパッケージの更新をテストします。その後、問題が発生しない場合は、本番システムに変更をロールアウトします。
システムに AUR のパッケージがある場合は、それらすべてを慎重にアップグレードしてください。
pacman は強力なパッケージ管理ツールですが、すべてのケースを処理しようとするわけではありません。ユーザーは用心深く、自分のシステムを維持する責任を負わなければなりません。
システムをアップグレードする前に読んでください
アップグレードする前に、ユーザーは Arch Linuxホームページ にアクセスして最新ニュースを確認するか、RSS フィードを購読する必要があります または メーリングリスト 更新に通常とは異なるユーザーの介入が必要な場合 (pacman の指示に従うだけで処理できる以上の) 適切なニュース投稿が行われます。
基本的なソフトウェア ([カーネル]、 xorg、 systemd、 glibc など)を新しいバージョンにアップグレードする前に、適切な [1] で、問題が報告されているかどうかを確認します。
ユーザーは、パッケージをアップグレードすると、即時の介入が必要になる可能性のある 予期しない 問題が発生する可能性があることにも同様に注意する必要があります。したがって、重要なタスクを実行するために必要になる直前に、安定したシステムをアップグレードすることはお勧めしません。アップグレード後の問題に対処できるように、代わりに十分な時間をとって待つことをお勧めします。
特定の pacman コマンドを避けてください
部分的なアップグレード は避けてください。つまり、 pacman -Sy
を実行しないでください。代わりに、常に pacman -Syu
を使用してください。
通常、pacman で --overwrite
オプションを使用することは避けてください。 --overwrite
オプションは、 glob を含む引数を取ります。 pacman を使用すると、globに一致するファイルのファイル競合チェックがバイパスされます。適切に保守されたシステムでは、Arch 開発者によって明示的に推奨された場合にのみ使用する必要があります。 システムをアップグレードする前に読んでください セクションを参照してください。
pacman で -d
オプションを使用することは避けてください。 pacman -Rdd package
は、パッケージの削除中に依存関係のチェックをスキップします。その結果、重大な依存関係を提供するパッケージが削除され、システムが破損する可能性があります。
パッケージマネージャーを使用してソフトウェアをインストールする
Pacman は、ファイルを追跡する上であなたよりもはるかに優れた仕事をします。手動でインストールすると、遅かれ早かれ、何をしたかを忘れたり、インストールした場所を忘れたり、競合するソフトウェアをインストールしたり、間違った場所にインストールしたりします。
- パッケージのインストール セクションの方法を使用して公式リポジトリからパッケージをインストールします。
- ご希望のプログラムがない場合は、 AUR で誰かがパッケージを作成していないか確認してください。その記事の方法に従ってインストールしてください。
- 最後に、必要なプログラムが公式リポジトリまたは AUR にない場合は、そのプログラムのパッケージの作成方法を学習してください。
不適切にインストールされたファイルをクリーンアップするには、ファイルがどのパッケージにも含まれていないことを確認を参照してください。
オープンソースドライバーを選択してください
プロプライエタリドライバに頼る前に、常にオープンソースドライバを試してください。ほとんどの場合、オープンソースドライバーはプロプライエタリドライバーよりも安定していて信頼性があります。オープンソースドライバーのバグは、より簡単かつ迅速に修正されます。プロプライエタリドライバーはより多くの機能を提供できますが、これには安定性が犠牲になる可能性があります。このジレンマを回避するには、完全な機能を備えた成熟したオープンソースドライバーをサポートしていることがわかっているハードウェアコンポーネントを選択してみてください。オープンソースのLinuxドライバーを備えたハードウェアに関する情報は、 linux-drivers.org で入手できます。
非公式パッケージに注意してください
AUR または 非公式ユーザーリポジトリ のパッケージを使用する場合は注意が必要です。ほとんどは通常のユーザーによって提供されているため、公式リポジトリの標準と同じ基準ではない場合があります。 AUR パッケージのインストールを自動化する AUR ヘルパー は避けてください。 常にパッケージをビルドおよび/またはインストールする前に、 PKGBUILD の正常性、間違いまたは悪意のあるコードの兆候を確認してください。
メンテナンスを簡素化するために、使用する非公式パッケージの量を制限してください。実際に使用されているものを定期的にチェックし、他のものを削除(または公式の対応物と交換)します。便利なコマンドについては、 Pacman メンテナンス を参照してください。
ミラーリストを更新します
ミラーの品質は時間の経過とともに変化する可能性があり、一部がオフラインになったり、ダウンロード速度が低下したりする可能性があるため、pacmanのミラーリストを更新してください。
詳細については、 ミラー を参照してください。
ファイルシステムの掃除
削除するファイルを探すときは、一番ディスク容量を取っているファイルを見つけるのが重要です。この作業に役立つプログラムは以下に載っています:
どのパッケージにも含まれてないファイルの確認
pacman データベースに載っていない不要なファイルを削除します。これを行う理由は様々です。
Pacman ヒント#ファイルがどのパッケージにも所有されていないことを確認を見て下さい。
/var の掃除
/var
の古いファイルを削除してディスク容量を増やします。/var
はログやその他の不変のデータを保存するディレクトリです。
詳しくは Arch ファイルシステム階層#/var: 可変ファイル を見て下さい。
ホームディレクトリの掃除
$HOME
ディレクトリの古いファイルを削除して設定やその他の有用なファイルを探しやすくします。以下のフォルダを確認してください:
~/.config/
-- アプリケーションが設定を保存するフォルダ~/.cache/
-- プログラムのキャッシュによって巨大化することがあります~/.local/share/
-- 古いファイルがここに保存されていることがあります
詳しくは Arch ファイルシステム階層#/home: ユーザーディレクトリ を見て下さい。
ホームディレクトリの掃除を長い目で考えると、定期的に必要ないファイルをリストアップして削除するのが良いでしょう。助けになるスクリプト rmshit.py が存在します。
rmlintAUR を使用して、重複ファイル、空のファイル、再帰的な空のディレクトリ、および壊れたシンボリックリンクを検索し、オプションで削除することもできます。
壊れたシンボリックリンク
古い、壊れたシンボリックリンクがシステムの周りにある可能性があります。 それらを削除する必要があります。 これを達成するための例は、 こちら および こちら ただし、壊れたシンボリックリンクはすべて目的を果たしているため、やみくもに削除しないでください [2]
システムの壊れたシンボリックリンクをすべてすばやく一覧表示するには、次を使用します。
# find / -xtype l -print
次に、このリストから不要なエントリを調べて削除します。
ヒントとテクニック
以下のヒントは通常は必要ありませんが、特定のユーザーはそれらが役立つと感じるかもしれません。
実績のあるソフトウェアパッケージを使用する
Arch のローリングリリースは、最新の機能を試し、できるだけ早くアップストリームの更新を取得したいユーザーにとっては朗報ですが、システムのメンテナンスをより困難にする可能性もあります。メンテナンスを簡素化し、安定性を向上させるには、最先端のソフトウェアを避け、成熟した実績のあるソフトウェアのみをインストールするようにしてください。このようなパッケージは、主要な構成の変更や機能の削除など、難しいアップグレードを受け取る可能性が低くなります。問題が発生した場合のサポートを簡素化するために、強力で活発な開発コミュニティと多数の有能なユーザーがいるソフトウェアを優先します。
テストからの個々のパッケージであっても、テストリポジトリの使用は避けてください。これらのパッケージは実験的なものであり、安定したシステムには適していません。同様に、アップストリームの開発ソースから直接ビルドされたパッケージは避けてください。これらは通常 AUR にあり、dev、devel、svn、cvs、git などの名前が付いています。
linux-lts パッケージをインストールします
linux-lts パッケージは代替の Arch カーネルパッケージであり、 core リポジトリで入手できます。この特定のカーネルバージョンには、セキュリティ修正や一部の機能バックポートなど、アップストリームからの長期サポート (LTS) があります。頻度の低いカーネル更新と安定性が必要な場合、または新しいカーネルバージョンで問題が発生した場合に備えて、フォールバックカーネルが必要な場合に役立ちます。
ブートオプションとして使用できるようにするには、 ブートローダ の構成ファイルを更新して LTS カーネルと RAM ディスクを使用する必要があります: vmlinuz-linux-lts
と initramfs -linux-lts.img