web-dev-qa-db-ja.com

'zypper'を正しく使用していますか?

私は比較的新しいOpenSuseユーザーであり、Ubuntuで数年働いています。 Ubuntuでは、アップデートマネージャーがときどきポップアップし、インストールするものがあったときに通知してくれました。手動で更新を確認したい場合は、Sudo apt-get update。 OpenSuseではGUIアップデーターを入手できないので、覚えているときはいつでもSudo zypper updateそして私は決して多くを得ることがありません。しかし、今日私はこれを取得します:

Loading repository data...
Reading installed packages...

The following package updates will NOT be installed:
  amarok choqok curl digikam digikam-lang DirectFB DirectFB-Mesa ecj ecj-bootstrap gstreamer-0_10 gstreamer-0_10-fluendo-mp3 
  jpackage-utils k3b kipi-plugins kipi-plugins-acquireimage ksshaskpass ktorrent ladspa lame libcurl4 libcurl4-32bit libdca0 
  libdvbpsi6 libfaac0 libfaad2 libgstreamer-0_10-0 libgstreamer-0_10-0-32bit libktorrent3 liblash1 libmad0 libmp3lame0 libmpeg2-0 
  libopencore-amrnb0 libopencore-amrwb0 libopencv2_2 libproxy1 libqjson0 libSDL-1_2-0 libSDL_image-1_2-0 libshout3 libtag-extras1 
  libtheora0 libtwolame0 libvlc5 libvlccore4 libxine1 libxine1-gnome-vfs libxine1-Pulse libxvidcore4 oxygen-gtk python-numpy 
  shared-desktop-ontologies skanlite virtualbox-guest-kmp-desktop virtualbox-guest-tools virtualbox-guest-x11 vlc vlc-aout-Pulse 
  vlc-gnome vlc-noX vlc-qt xalan-j2 xerces-j2 xerces-j2-xml-apis 

Nothing to do.

では、これらのパッケージを更新する必要がありますか、それとも不要ですか?彼らが私の注意を必要としないのに、なぜzypperはそれらについて私に話すのでしょうか?ソースからものをビルドしようとしましたが、gccなどでエラーが発生するためです(インストールされていることがわかっている場合、これはまったく別の問題である可能性があります)。

また、Ubuntuのように更新を半自動にする方法はありますか?

編集:(YASTを介して)ソフトウェアマネージャを調べましたが、パッケージの更新が表示されません。

5
n0pe

私はそれを解決しました。

リポジトリのYASTで「自動更新」オプションを削除したことがわかりました。更新するように設定すると、問題は自動的に解決され、「Sudozypperupdate」を正常に実行できました。

0
n0pe

これはすべてリポジトリに関するものです。 zypperを使用して更新すると、有効になっているすべてのリポジトリが確認されます。ただし、一部のソフトウェアパッケージは複数のリポジトリに表示されます。たとえば、「Suseupdate」リポジトリと「Packman」リポジトリの両方がアクティブになっているとします。次に、zypperは両方でgstreamerなどの更新を見つける可能性があります。それで、それは何をするのですか?それは、現在インストールされているリポジトリを「認識」しているため、gstreamerが(Suse updateなど)からのものであるため、そのSuseリポジトリからの更新のみがインストールされます。ただし、更新前に、Packmanリポジトリでgstreamerの更新も検出されたが、使用されないことが通知されます。これが、「インストールされない」もののリストを取得する理由です。

したがって、実際には問題ではありません。同じパッケージの複数のバージョンが異なるリポジトリにあるだけです。上記の例では、Packmanリポジトリを無効にすると、「インストールされません」というメッセージが表示されなくなります。

すべてを整頓するには、アクティブなリポジトリの数を必要最小限に抑える必要があります。

6
Fred Jones

また、インストールされているすべてのパッケージを一度に更新する最善の方法は、yastでソフトウェアのインストールを開き、[パッケージ]メニュー、[すべてのパッケージ]の順に移動して、新しいバージョンが利用可能な場合は更新することです。これにより、インストールするすべての更新済みパッケージが選択されます。 Yastインストールを開くと、ソフトウェアは通常、自動更新に設定されている場合、リポジトリを更新します。

0
alpha1