
Linuxでは、ターミナルからプログラムをインストールするのは、コマンドをいくつか入力するだけで済むほど簡単な場合もあれば、適切なツールを知らないと大変な作業になる場合もあります。現在、APTとSnapは、従来のレポジトリソフトウェアから、すべての依存関係を含むパッケージ化されたアプリケーションまで、ほぼあらゆるニーズに対応できる最も実用的な組み合わせです。
このガイドでは、APT(およびAptitude)を使用して従来のパッケージを管理する方法と、Snapを使用して複数のディストリビューション間でシームレスに動作する自己完結型アプリを作成する方法の両方の利点を網羅しています。分かりやすい説明、実績のあるコマンド、よくあるエラーへの解決策を提供することで、依存関係やサービスの問題で時間を無駄にすることなく作業を進めることができます。
APTとSnapとは何か:異なる目的、補完的なツール
APT(Advanced Package Tool)は、Debian、Ubuntu、およびそれらの派生ディストリビューションで使用されている定番のパッケージマネージャーで、ディストリビューションのリポジトリからパッケージをインストール、更新、削除するために使用されます。システム依存関係に対応し、ディストリビューションと深く統合されているため、公式にメンテナンスされているほとんどのソフトウェアに最適です。
一方、SnapはCanonicalが開発したパッケージエコシステムであり、アプリケーションに必要なすべてのライブラリが含まれているため、互換性のあるあらゆるディストリビューションで動作します。これらの自己完結型パッケージは、厄介な「依存関係地獄」を軽減し、移植性を向上させます。
Snapの主な利点として、自己完結型、自動更新、分離性、互換性が挙げられます。
- 自己完結型: 各パッケージには独自の依存関係が含まれており、他のアプリとの競合が最小限に抑えられます。
- 自動更新snapd はバックグラウンドでパッケージを更新するので、介入なしで最新バージョンを入手できます。
- 分離とセキュリティ: サンドボックス内で実行されるため、保護の層がさらに強化されます。
- 相互互換性: 単一の Snap は、snapd をサポートする複数のディストリビューションで動作します。
実際には、システムソフトウェアや公式リポジトリにはAPTを使用し、最新バージョンやアプリをまとめて入手したい場合はSnapを使用します。どちらのマネージャーも競合することなく共存できます。
準備と前提条件
始める前に、お使いのコンピューターにsudo権限があり、インターネット接続が安定していることを確認してください。また、特にしばらくパッケージインデックスを更新していない場合は、インストール前にパッケージインデックスを更新することをお勧めします。
APTのインストールと使用:必須コマンド
APTはシンプルで信頼性が高いツールです。パッケージデータベースを最新の状態に保ち、システムアップデートを適用するには、以下の基本的なコマンドを使用します。必要に応じて`sudo`を付けて実行してください。
sudo apt update
sudo apt upgrade
APT を使用したパッケージのインストールと削除も同様に簡単です。以下に一般的な例をいくつか示します。
sudo apt install nombre_paquete
sudo apt remove nombre_paquete
apt-get から移行してきた方もご安心ください。apt は日常的に使える、より便利な「オールインワン」ツールです。apt -get の特定の機能が必要な場合を除き、apt を使用してください。
Aptitude: Debian/Ubuntu の高度な代替手段
DebianおよびUbuntuベースのシステムでは、より対話的な依存関係解決機能とテキストベースのインターフェースを提供するAptitudeを使用できます。インストールには次の2つのコマンドが必要です。
sudo apt update
sudo apt install aptitude
Aptitude の典型的なコマンド: APT と非常によく似ていますが、競合解決にいくつかの改善があります。
sudo aptitude update
sudo aptitude install unzip
sudo aptitude remove unzip
aptitude --version
APTとAptitude、どちらを選ぶべきか?ほとんどの場合、APTで十分ですが、複雑な依存関係に頻繁に遭遇する場合は、Aptitudeが非常に役立ちます。ワークフローに基づいて選択してください。
ディストリビューションに snapd (Snap) をインストールする
Snapdは、Snapのインストールと管理を可能にするサービスです。通常は最新のUbuntuにデフォルトで含まれていますが、それぞれのケースを見ていきましょう。
フリー誘導体
以下の環境で動作するか確認してください:
snap version
インストールされていない場合は、インストールしてセッションまたはシステムを再起動し、PATHとサービスが正しく適用されるようにしてください。以下の2つのコマンドで準備が整います。
sudo apt update
sudo apt install snapd
Debianの
一部のバージョンでは、設定によってSnapがブロックされる場合があります。ブロックを解除し、アップデートしてからインストールしてください。
sudo rm /etc/apt/preferences.d/nosnap.pref
sudo apt update
sudo apt install snapd
インストール後、ログアウトして再度ログインするか、コンピュータを再起動して、snapdが正しく起動することを確認してください。これにより、PATHエラーや非アクティブなサービスの発生を防ぐことができます。
Linux Mintは
Mintはデフォルトで設定によりSnapを無効にしています。これを削除して、Debianと同様の手順で進めてください。
sudo rm /etc/apt/preferences.d/nosnap.pref
sudo apt update
sudo apt install snapd
snapコマンドが表示されない場合は、セッションまたはシステムを再起動してください。これにより環境が再読み込みされます。
フェドーラ
Fedoraでは、snapdをインストールし、サービスソケットを有効にしてください。また、従来の互換性のためにシンボリックリンクを作成することをお勧めします。
sudo dnf install epel-release
sudo dnf install snapd
sudo systemctl enable --now snapd.socket
sudo ln -s /var/lib/snapd/snap /snap
それでもsnapを実行できない場合は、セッションを再起動してください。これは通常、シンボリックリンクを作成した後に必要になります。
アーチのLinux
公式リポジトリからsnapdをインストールし、ソケットを有効にします。次に、以下のクラシックリンクを追加します。
sudo pacman -S snapd
sudo systemctl enable --now snapd.socket
sudo ln -s /var/lib/snapd/snap /snap
snapコマンドが初回で認識されない場合は、セッションを再起動してください。ほとんどの場合、それで十分です。
Snapの使い方:検索、インストール、チャンネル
すべてが正常に動作していることを確認するには、snapとsnapdのバージョンを確認してください。両方が表示されていれば、正常に動作しています。
snap version
アプリを名前やキーワードで検索するのは簡単です。検索機能を使ってカタログを探索してください。
snap find nombre_aplicacion
インストールはアプリ名を指定するだけで簡単です。場合によっては、`--classic`フラグが必要になります(たとえば、Visual Studio Codeの場合)。
sudo snap install nombre_aplicacion
sudo snap install code --classic
アプリケーションによっては、複数のブランチまたはチャネル(安定版、候補版、ベータ版、エッジ版)が公開されている場合があります。インストール時にチャネルを指定できます。
sudo snap install nombre_aplicacion --channel=version/stable
インストールされているものとそのバージョンを教えてください。以下のコマンドで一覧表示と更新を行ってください。
snap list
sudo snap refresh
sudo snap refresh nombre_aplicacion
Snapをアンインストールするコマンドも同様に簡単です。これにより空き容量が増え、アップデートの受信も停止されます。
sudo snap remove nombre_aplicacion
デーモンによるサービスとスナップ
一部のSnapパッケージには、snapd自体から管理されるサービスが含まれています。これらのサービスの状態を確認し、必要に応じて開始または停止してください。
snap services
sudo snap start nombre_servicio
sudo snap stop nombre_servicio
特定のSnapサービスをインストールした後は、再起動することをお勧めします。これにより、初回起動時の予期せぬ動作を防ぐことができます。
Snapによる高度な管理:保留、取り消し、スケジュール
Snapは自動的にアップデートされますが、特定のパッケージのアップデートを一時停止することもできます。最新バージョンで問題が発生している場合に非常に便利です。
sudo snap refresh --hold nombre_aplicacion
sudo snap refresh --unhold nombre_aplicacion
アップデートが気に入らない場合は、以前にインストールしたバージョンのSnapに戻すことができます。復元は即座に行われます。
sudo snap revert nombre_aplicacion
システムがSnapを更新する時間帯と頻度を確認してください。これにより、最新の更新情報と次回の予定更新情報がわかります。
sudo snap refresh --time
snapdがコンピュータ上で行った操作を監査するには、変更履歴を確認してください。変更履歴には、操作、日付、およびステータスが表示されます。
snap changes
さらに詳細な診断が必要な場合は、デーモンのサービスとログを確認してください。これらは、何かが起動しない原因を理解するための鍵となります。
sudo systemctl status snapd
journalctl -u snapd
チャネル、サイズ、メタデータなどの情報を用いて、特定のパッケージについてさらに詳しく調べてみましょう。そうすることで、ニーズに合った最適なブランチを選択するのに役立ちます。
snap info nombre_aplicacion
.snapファイルはどこに保存されますか?デフォルトでは、 /var/lib/snapd/snaps/. 検査のためにリストすることができます:
ls /var/lib/snapd/snaps/
実行アクセスは通常、 /snap/bin/. たとえば、ブラウザをSnapバージョンで起動するには、/snap/bin/firefoxと入力します。.
一般的なエラーのトラブルシューティング
初めてのSnapのインストールが特に遅かったですか?これは通常、システムが基本ランタイム(コア)をダウンロードして構成しているためです。2回目以降のインストールははるかに速くなります。
エラー「snap: コマンドが見つかりません」。以下の手順をこの順序で試してください:システムの再起動、セッション環境の再読み込み、snapd がインストールされているかどうかの確認。便利なコマンド:
source /etc/profile
sudo apt install snapd
sudo systemctl status snapd
Fedora/Arch で問題が解決しない場合は、クラシックバインディングとソケットを確認してください。これは見落とされがちな手順です。
sudo ln -s /var/lib/snapd/snap /snap
sudo systemctl enable --now snapd.socket
Snapアプリが正常に動作していません。アプリの状態を確認し、アンインストールしてから再インストールし、ログを確認してください。これがアプリを正常に動作させるための最も迅速な方法です。
snap list nombre_aplicacion
sudo snap remove nombre_aplicacion && sudo snap install nombre_aplicacion
journalctl -u snapd
Snap Store からアプリをインストールする (グラフィカル インターフェース)
グラフィカルな操作を好む場合は、Snap Storeをインストールして、数回のクリックでアプリを管理できます。インストール方法は主に2つあります。
sudo apt install snap-store
# o
sudo snap install snap-store
インストールが完了したら、ストアを開き、目的のプログラムを検索して「インストール」をクリックします。ターミナル操作に慣れていないユーザーに最適です。
パフォーマンス、サイズ、統合に関する考慮事項
Snapパッケージは、特に初回起動時において、ネイティブリポジトリ版よりも起動に若干時間がかかる場合があります。これは、パッケージの封じ込めと移植性を確保するためのトレードオフです。
パッケージ内に依存関係が含まれているため、より多くの容量を消費します。その代わりに、競合を回避し、異なるディストリビューション間でも同じように動作します。
デスクトップ環境によっては、テーマや統合機能の使用時に軽微な表示の不整合が生じる場合があります。これは通常、テーマやSnapのアップデートによって改善されます。
Flatpakを2ストロークで:もう一つの普遍的な代替手段
ここではAPTとSnapに焦点を当てていますが、Flatpakもグラフィカルアプリケーション向けに同様のサンドボックス方式を提供しており、Flathubは非常に人気のあるリポジトリであることも注目に値します。両者を比較したい場合は、以下のコマンドが参考になるでしょう。
flatpak --version
sudo apt update
sudo apt install flatpak
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
Flatpakでは、識別子はドメインのような形式に従います。たとえば、 org.videolan.VLC VLC用。 このアプリIDはディストリビューション間の一意性を保証します.
これで、完全なロードマップが揃いました。システムベースとディストリビューションが管理するパッケージにはAPT、自己完結型アプリケーション、最新バージョン、ディストリビューション間での一貫したデプロイメントにはSnap、そしてターミナルを使わずに済むSnap Storeによるグラフィカルなオプションが用意されています。これら両方を使いこなせば、サードパーティに頼ることなく、インストール、アップデート、ロールバック、トラブルシューティングを完全に柔軟に行うことができます。
バイトの世界とテクノロジー全般についての情熱的なライター。私は執筆を通じて自分の知識を共有するのが大好きです。このブログでは、ガジェット、ソフトウェア、ハードウェア、技術トレンドなどについて最も興味深いことをすべて紹介します。私の目標は、シンプルで楽しい方法でデジタル世界をナビゲートできるよう支援することです。