最近システムにKali Linuxをインストールしました。 Iceweaselがプリインストールされています。しかし、Iceweaselの代わりにfirefoxをインストールしたかったので このガイド に従い、Firefoxを正常にインストールしました。
今度はapt-get
を呼び出すたびに、「自動的にインストールされ、不要になった」として多くのプリインストールパッケージが表示されます。
abhishek@ab-linux:~$ Sudo apt-get install
[Sudo] password for abhishek:
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
empathy empathy-common fonts-cantarell gcalctool gnome-backgrounds
gnome-dictionary gnome-font-viewer gnome-icon-theme-extras gucharmap
libavahi-gobject0 libcaribou-gtk-module libcaribou-gtk3-module
libchamplain-0.12-0 libchamplain-gtk-0.12-0 libgdict-1.0-6 libgdict-common
libgeocode-glib0 libtelepathy-farstream2 nautilus-sendto-empathy
sound-theme-freedesktop telepathy-gabble telepathy-logger telepathy-salut
vino
Use 'apt-get autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 35 not upgraded.
abhishek@ab-linux:~$
Linuxバージョン
abhishek@ab-linux:~$ uname -a
Linux ab-linux 3.7-trunk-AMD64 #1 SMP Debian 3.7.2-0+kali8 x86_64 GNU/Linux
これらのパッケージを重要かつ必須としてマークするにはどうすればよいですか?
間違いなく何も壊れていません。パッケージがインストールされるとき、依存する他のパッケージがしばしばあります。これらは自動的にapt-get
によってインストールされます。以前は、これらのパッケージを追跡したい場合は別のプログラムを使用し、インストールした元のプログラムを削除した場合は削除する必要がありました。
現在、apt
はAuto-Installed
状態フラグを実装して、明示的にインストールされたことのないこれらのパッケージを追跡します。パッケージをアンインストールするときに、--auto-remove
オプションを追加して、Auto-Installed
フラグが設定されていて、そこに依存しているパッケージがなくなったパッケージを追加で削除できます(パッケージは、もう1つは、APT::AutoRemove::RecommendsImportant
およびAPT::AutoRemove::SuggestsImportant
構成オプションの値に応じてそれを提案または推奨します)。
パッケージのリストを見て、保持する価値があるかどうかを判断します。保持したいパッケージがデフォルトでAuto-Installed
とマークされている場合があります。 apt-cache show package_name
を実行すると、さまざまなパッケージの機能に関する情報を取得できます。一部を保持する場合は、apt-mark manual
に続けて、保持するパッケージの名前を指定できます。
通常、ライブラリパッケージ(lib
で始まるほとんどのパッケージ)をAuto-Installed
としてマークする必要があることに注意してください。これらのパッケージを独自にインストールする理由はいくつかあります。他のプログラムは通常、他のライブラリに実行しますが、それ自体ではほとんど役に立ちません。ライブラリ自体に依存する開発パッケージ(末尾が-dev
)が必要なため、ライブラリに対してソフトウェアをコンパイルする場合でも、ライブラリを明示的にインストールする必要はありません。
また、aptitude
を使用すると、コマンドラインからaptitude unmarkauto
を実行したり、cursesインターフェイス内で変更したりできます。インターフェイスのパッケージリスト内で、自動的にインストールされるすべてのパッケージの横にA
があります。この状態を変更するには、m
を使用して自動インストールパッケージを手動としてマークし、M
を使用して再度手動としてマークします(l
を使用して検索ダイアログを開き、Enter
をクリックしてパッケージの詳細を表示します)。
これらのすべてのパッケージにマークを付けて、それらが重要で削除されないようにするには、次のようにします。
apt-mark showauto | xargs Sudo apt-get -y install
基本的に、プログラムをインストールするようにapt
に指示することで、システムに永続的に残したいことを伝えます。
Apt-getによって提案されたコマンド、つまりapt-get autoremove
でそれらを削除しないのはなぜですか?
これらがデフォルトでKaliにインストールされ、以前のWebブラウザーで使用されていて、このブラウザーを削除したために使用されなくなった場合、問題はありません。
さらに、いずれかのパッケージが再び必要になった場合は、apt-get
を使用して明示的にインストールすると、「自動的にインストールされ、不要になった」と表示されなくなります。
他の解決策はそれらを手動でインストールすることかもしれません。それらはapt-getで「自動的にインストールされ、不要」とマークされなくなりますが、役に立たないパッケージがあり、これはIMOの最適なソリューションではありません。