お知らせ

  • 利用規約を守って投稿してください。また、よくある質問および投稿の手引きも参照してください。
  • メッセージの投稿にはアカウントが必要です。未登録の方は、ユーザ登録ページからアカウントを作成することができます。

#1 2010-07-18 16:25:51

upick
メンバ
登録日: 2010-01-10

不要なパッケージから一部のパッケージを除外するには?

APTで不要と判断されたパッケージには、sudo apt-get autoremove --purgeで削除することができますが、
その中に必要なパッケージが一つ入っていました。
ですので、そのパッケージだけ不要と判断されないようにしたいのですが、どうすればいいのでしょうか。
よろしくお願いします。

Ubuntu 10.04
APT 0.7.25.3ubuntu9

オフライン

 

#2 2010-07-18 16:42:28

Templer
メンバ
登録日: 2009-07-08

Re: 不要なパッケージから一部のパッケージを除外するには?

「recommend」依存でインストールされたものでしたら、手動でインストールすれば "手動でインストールした" ことにされ、不要なものとは判断されなくなったように思います。
削除前でもインストールを試みればそのような表記が現れると思いますので、そのパッケージのインストールを試みてください。

オフライン

 

#3 2010-07-18 16:43:14

koisan1949
メンバ
From: Hyogo, Japan
登録日: 2007-11-11

Re: 不要なパッケージから一部のパッケージを除外するには?

apt-get updateの結果から、確かに不要なので削除すればよいとのシステムからの提示がよく出ます。

私の経験からですが、よほどHDDに余裕がなくなれば別ですが、普通は一切無視しています。

貴君の言われている様に、中には個人的に必要なパッケージ群がよく含まれています。
このautoremove操作を実行すると、逆に不具合に遭遇する確率が大きくなります。
だから、敢えて私は極力この操作は実行していません。
~$ sudo apt-get update と ~$ sudo apt-get upgrade
これらのコマンドには派生はしませんので、私の場合、一切問題ないと考えています。

他の方の対処の仕方も、逆に私の場合、参考として聞きたいです。

オフライン

 

#4 2010-07-19 11:10:49

koisan1949
メンバ
From: Hyogo, Japan
登録日: 2007-11-11

Re: 不要なパッケージから一部のパッケージを除外するには?

以下のパッケージが自動でインストールされましたが、もう必要とされていません:
......
これらを削除するには 'apt-get autoremove' を利用してください。
Ubuntu10.04環境での事例です。

実行したら、とんでもないことになるので、私は無視してます。

コード:

~$ sudo apt-get install ntp
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています                
状態情報を読み取っています... 完了
以下のパッケージが自動でインストールされましたが、もう必要とされていません:
  plasma-dataengines-workspace kdepim-runtime libprocessui4 libtaskmanager4
  libqimageblitz4 libkscreensaver5 libsolidcontrolifaces4
  plasma-widgets-workspace mysql-client-core-5.1 libaccess-bridge-java-jni
  libaccess-bridge-java libplasma-geolocation-interface4 python2.5
  mysql-server-core-5.1 libksgrd4 kdebase-workspace-bin libplasmagenericshell4
  libkfontinst4 xfonts-wqy linux-rt-headers-2.6.31-10 ttf-arphic-ukai
  kdebase-workspace-data ksysguardd libplasmaclock4 libweather-ion4
  kdebase-workspace-kgreet-plugins libsolidcontrol4 akonadi-server
  ca-certificates-java libplasma-applet-system-monitor4 libprocesscore4
  libfaad0
これらを削除するには 'apt-get autoremove' を利用してください。
提案パッケージ:
  ntp-doc
以下のパッケージが新たにインストールされます:
  ntp
アップグレード: 0 個、新規インストール: 1 個、削除: 0 個、保留: 3 個。
517kB のアーカイブを取得する必要があります。
この操作後に追加で 1,323kB のディスク容量が消費されます。
取得:1 http://jp.archive.ubuntu.com/ubuntu/ lucid/main ntp 1:4.2.4p8+dfsg-1ubuntu2 [517kB]
517kB を 0s で取得しました (713kB/s)
未選択パッケージ ntp を選択しています。
(データベースを読み込んでいます ... 現在 330174 個のファイルとディレクトリがインストールされています。)
(.../ntp_1%3a4.2.4p8+dfsg-1ubuntu2_i386.deb から) ntp を展開しています...
man-db のトリガを処理しています ...
ureadahead のトリガを処理しています ...
ureadahead will be reprofiled on next reboot
ntp (1:4.2.4p8+dfsg-1ubuntu2) を設定しています ...
設定ファイル /etc/apparmor.d/tunables/ntpd を新規にインストールしています ...
 * Starting NTP server ntpd         OK

オフライン

 

#5 2010-08-01 16:34:01

Templer
メンバ
登録日: 2009-07-08

Re: 不要なパッケージから一部のパッケージを除外するには?

ちょっと認識の誤りがあったので訂正いたします。

Templer による投稿:

「recommend」依存でインストールされたものでしたら、手動でインストールすれば "手動でインストールした" ことにされ、不要なものとは判断されなくなったように思います。

と、「recommend」依存でインストールされたものと書きましたが、recommendとかは関係なかったようです。
確信とまではいかないのですが、直接指定インストールしたパッケージと、「Section」が「metapackages」や「translations」(他にもある?)となっているパッケージにより直に依存でインストールされたもの、以外でインストールされたものが「extended_states」ファイルに「Auto-Installed: 1」として記されるようになっているようです(と思えます)。

それから言い忘れましたが、GUIのパッケージ管理ソフトでは既にインストールされているパッケージはインストール項目がグレーアウトされてしまいインストール指定できませんので、コマンド(sudo apt-get install )で行わないと「Auto-Installed: 1」を「手動でインストールした(Auto-Installed: 0)」とすることはできません。(どうやら再インストール指定ではダメなようです)
※ なお、「extended_states」ファイルは直接操作しないでください。


ちなみに私の場合は、ソフトを試すときは依存でインストールされるものも含めてパッケージ情報を控えておきます。
そうしておけば、不要と判断したときにまとめて削除することができますし、削除しようとした時の個数がインストール時の個数と一致しなければ別でインストールした何かが依存しているということもわかりますし、autoremoveの対象になっても必要なものなのか不要なものなのかの判断もできたりします。
このような経緯から、私の環境ではautoremoveの対象になるものといえば、依存関係の変更で宙ぶらりんになったパッケージ(カーネルヘッダーなど)くらいだったりします。

オフライン

 

#6 2010-08-01 23:13:28

upick
メンバ
登録日: 2010-01-10

Re: 不要なパッケージから一部のパッケージを除外するには?

autoremoveに頼るよりも自分で記録して削除した方が確実ということですね。
元々の質問とは少しずれた内容ですが、参考になりました。ありがとうございます。

オフライン

 

#7 2010-08-07 11:03:57

koisan1949
メンバ
From: Hyogo, Japan
登録日: 2007-11-11

Re: 不要なパッケージから一部のパッケージを除外するには?

質問に対する正確な回答を求められたので、敢えて調べてみました。

技術評論社で発売されている やまだ あきら著 「入門 Debianパッケージ」に記載されています。
P.162〜P.163
不要なパッケージを探す。
  deborphanパッケージを利用する方法です。

~$ sudo apt-get install deborphan
  note: deborphanパッケージを導入してください。
....
~$ deborphan
  note: 依存関係による判断となるが、不要と思われるパッケージリストを標準出力してくれます。
~$ deborphan --all-packages
  note: ライブラリー以外についても検索するとき、このオプションを指定します。
    そこで、要望されている特定のパッケージを不要とみなさないようにするには、
    --add-keep パッケージ名 と指定します。
    事例
~$ sudo deborphan --add-keep libdns45
  note: あくまで事例です、必要と指定するパッケージ名に置き換えてください。

蛇足、
指定を解除するには ~$ sudo deborphan --del-keep パッケージ名 です。

他に、P.164にも 興味あるパッケージがありました。
apt-getと連携して、スリムにするために利用するのだそうです。
これも、~$ sudo apt-get install debfoster で導入できます。
なお 関心がある方は、導入してみてください。Helpで必要な情報が得られます。

オフライン

 

#8 2010-08-07 13:58:40

upick
メンバ
登録日: 2010-01-10

Re: 不要なパッケージから一部のパッケージを除外するには?

ありがとうございます!

オフライン

 

Board footer

Powered by FluxBB