DAY 08: ソフトウェアの管理者

LinuxBeginner
オンラインで実践に進む

はじめに

ようこそ、ソフトウェアの管理者(Software Steward)!あなたは急成長中のテック系スタートアップに、初の専任システム管理者として採用されました。最初の任務は、開発チームが共同で管理してきた(そして混沌としている)重要な開発サーバーを引き継ぐことです。サーバー内は散らかっており、古くなっている可能性も高く、しっかりとした管理が必要です。

あなたの使命は、秩序を確立することです。システムのソフトウェアソースを更新し、チームから要望のあった必須ツールをインストールし、すべてが正しくインストールされているかを確認し、不要なソフトウェアを削除して、全体的なクリーンアップを行う必要があります。これは、あなたの価値を証明し、会社のインフラにプロフェッショナルな安定性と効率性をもたらす絶好の機会です。チームはあなたを頼りにしています。サーバーを整えましょう!

重要なお知らせ
このチャレンジの内容は、Quick Start with Linux コースの範囲を超える場合があります。
チャレンジ中に困難に直面した場合:
  1. 一時的にこのチャレンジをスキップし、Linux 学習パス の後続のガイド付き実験(Guided Labs)を進めてください。
  2. Labby に相談するか、解決策(Solution)を確認してください。

システムパッケージリポジトリの更新

ソフトウェア管理者としての最初のタスクは、サーバーのパッケージマネージャーが利用可能なソフトウェアに関する最新情報を持っていることを確認することです。パッケージリストが古いと、インストールエラーやセキュリティの脆弱性の原因になります。ローカルのパッケージインデックスを中央リポジトリと同期させる必要があります。

タスク

  • 設定されているすべてのソースから、利用可能なパッケージのリストを更新してください。

要件

  • 更新には Advanced Package Tool (apt) を使用してください。
  • コマンドは管理者権限で実行する必要があります。

パッケージリポジトリの更新に成功すると、パッケージリストがリフレッシュされたことを示す出力が表示されます。通常、アップグレード可能なパッケージに関する情報が表示され、更新が成功したことが確認できます。

ヒント

  • パッケージソースの更新のようなシステム全体に影響する変更には、昇格した権限(管理者権限)が必要であることを忘れないでください。
  • apt コマンドには、ローカルパッケージインデックスをリフレッシュするための特定のサブコマンドがあります。

必須ソフトウェアパッケージのインストール

パッケージリストが更新されたので、開発チームからのリクエストに応えましょう。彼らは、システム情報を視覚的に分かりやすく表示する便利なコマンドラインツール neofetch を必要としています。あなたのタスクは、これをインストールすることです。

タスク

  • neofetch ソフトウェアパッケージをインストールしてください。

要件

  • パッケージのインストールには apt コマンドを使用してください。
  • パッケージ名は neofetch です。
  • インストールコマンドは管理者権限で実行してください。

インストールが成功すると、ターミナルで neofetch コマンドが使用可能になります。コマンドを実行すると、オペレーティングシステム、カーネルバージョン、ハードウェアの詳細など、システム情報がカラフルに表示されるはずです。

ヒント

  • パッケージをインストールするための apt コマンドは非常によく使われます。実行したいアクション「インストール(install)」を考えてみてください。
  • sudo を使うのを忘れないでください。

インストール済みパッケージのバージョンの確認

無事に neofetch がインストールされました。チームに報告する前に、インストールを確認し、バージョン番号を控えておくのが良い習慣です。これにより、タスクが完了したことを確認でき、ドキュメント作成やトラブルシューティングに役立つ情報が得られます。

タスク

  • バージョン番号を含む neofetch パッケージの詳細情報を表示してください。

要件

  • インストール済みパッケージの詳細についてパッケージデータベースに問い合わせることができるコマンドを使用してください。

パッケージ情報を照会すると、パッケージ名、現在のバージョン、インストール状態、その他のメタデータを含む詳細な出力が表示されます。この情報により、パッケージが正しくインストールされていることが確認でき、チームに報告するためのバージョン番号が得られます。

ヒント

  • apt ツールには、パッケージに関する情報を「表示(show)」するサブコマンドがあります。
  • あるいは、-s フラグを付けた dpkg コマンドを使用してパッケージの状態を確認することもできます。

不要なソフトウェアパッケージの削除

サーバーを点検していると、かつての単発プロジェクトで使用され、現在は不要になった figlet というパッケージが見つかりました。システムをクリーンで安全に保つために、不要なソフトウェアは削除すべきです。

タスク

  • システムから figlet パッケージをアンインストールしてください。

要件

  • パッケージの削除には apt コマンドを使用してください。
  • 削除するパッケージは figlet です。
  • ソフトウェアのアンインストールには管理者権限を使用する必要があります。

パッケージの削除に成功すると、システムで figlet コマンドが利用できなくなります。実行しようとしたり状態を確認しようとしたりすると、パッケージがインストールされていないことが示されるはずです。

ヒント

  • パッケージを削除するための apt サブコマンドは非常に直感的です。「インストール(install)」の反対を考えてみてください。
  • sudo を使うのを忘れないでください。

パッケージの依存関係の管理

ソフトウェアを削除した後、依存関係としてインストールされた一部のパッケージが、他のどのプログラムからも必要とされなくなることがあります。これらは「孤立した(orphaned)」依存関係と呼ばれ、無駄にディスク容量を消費します。優れた管理者は、常に後片付けを怠りません。

タスク

  • システム上のどのパッケージからも必要とされなくなった、自動インストール済みの依存関係をすべて削除してください。

要件

  • 未使用の依存関係をクリーンアップするために設計された特定の apt コマンドを使用してください。
  • この操作には管理者権限が必要です。

クリーンアップコマンドを実行すると、依存関係として自動的にインストールされたものの、現在は不要になったパッケージがスキャンされます。孤立したパッケージが見つかった場合はリストアップされて削除され、システムのクリーンさと効率性の維持に役立ちます。

ヒント

  • apt には、不要なパッケージを「自動的に削除(automatically removes)」する便利なコマンドがあります。
  • いつも通り、このシステム全体の変更には sudo が必要です。

まとめ

おめでとうございます、ソフトウェアの管理者!開発サーバーを無事に管理下に置くことができました。このチャレンジでは、Debian ベースの Linux システムにおけるソフトウェア管理の完全なライフサイクルを実践しました。

  • apt update でパッケージリポジトリを更新しました。
  • apt install で新しいソフトウェアをインストールしました。
  • apt show でインストールを確認しました。
  • apt remove で不要なパッケージを削除しました。
  • apt autoremove で未使用の依存関係をクリーンアップしました。

これらは、Linux 管理者やパワーユーザーにとって基本的かつ日常的なスキルです。これらをマスターすることで、システムを最新かつ安全で、整理された状態に保つことができます。あなたは自分の能力を証明し、適切に管理されたインフラの基礎を築きました。

✨ 解答を確認して練習✨ 解答を確認して練習✨ 解答を確認して練習✨ 解答を確認して練習✨ 解答を確認して練習