GNU/Linux >> Linux の 問題 >  >> Linux

SUSE Linux でパッケージを管理する 20 の Zypper コマンドの例

yum は CentOS および Redhat 用です。

apt-get は Debian および Ubuntu 用です。

同様に、zypper は SUSE Linux 用です。

Zypper は、OpenSUSE および SUSE Enterprise Linux プラットフォームでパッケージを管理するためのコマンド ライン ツールです。

大まかに言うと、zypper コマンドを使用して 2 つの異なるものを管理できます。

<オール>
  • パッケージの管理:Zypper を使用して、ローカルまたはリモート メディアのソフトウェア パッケージをインストール、削除、更新、クエリします。
  • リポジトリの管理:Zypper には、リポジトリを操作する機能もあります。コマンドラインからリポジトリを追加、削除、有効化、または無効化できます。また、インストール プロセス中にリポジトリに優先順位を付ける機能もあります。
  • I. Zypper を使用してパッケージを管理

    1. zypper を使用してパッケージをインストール

    zypper コマンドを使用してパッケージをインストールするには、次の構文を使用します:

    zypper install <package Name>

    たとえば、Mozilla Firefox とそのすべての依存関係をインストールするには、次のコマンドを実行します:

    # zypper install MozillaFirefox
    Loading repository data...
    Reading installed packages...
    Resolving package dependencies...
    The following NEW packages are going to be installed:
      MozillaFirefox MozillaFirefox-branding-SLED
    The following packages are not supported by their vendor:
      MozillaFirefox MozillaFirefox-branding-SLED
    2 new packages to install.
    Overall download size: 964.0 KiB. After the operation, additional 3.4 MiB will be used.
    Continue? [y/n/?] (y): y
    Retrieving package MozillaFirefox-3.6.16-0.2.1.x86_64 (1/2), 949.0 KiB (3.4 MiB unpacked)
    Retrieving: MozillaFirefox-3.6.16-0.2.1.x86_64.rpm [done]
    Installing: MozillaFirefox-3.6.16-0.2.1 [done]
    Retrieving package MozillaFirefox-branding-SLED-3.5-1.1.5.x86_64 (2/2), 15.0 KiB (34.0 KiB unpacked)
    Retrieving: MozillaFirefox-branding-SLED-3.5-1.1.5.x86_64.rpm [done]
    Installing: MozillaFirefox-branding-SLED-3.5-1.1.5 [done]

    2.ソースパッケージをインストール

    ソース パッケージをリポジトリにインストールするには、以下に示すように source-install オプションを使用します。

    # zypper source-install apache2-mod_nss
    Reading installed packages...
    Loading repository data...
    Resolving package dependencies...
    Retrieving package mozilla-nss-devel-3.12.8-1.2.1.x86_64 (2/3), 473.0 KiB (2.6 MiB unpacked)
    Retrieving: mozilla-nss-devel-3.12.8-1.2.1.x86_64.rpm [done]
    Installing: mozilla-nss-devel-3.12.8-1.2.1 [done]
    Retrieving: apache2-mod_nss-1.0.8-17.5.src.rpm [done]

    3.パッケージを更新

    パッケージがインストールされると、以下に示すように更新コマンドを使用して、利用可能になったときに新しいバージョンにアップグレードできます。

    以下は MozillaFirefox パッケージのみをアップグレードします。

    zypper update MozillaFirefox

    以下は、システム上のすべてのパッケージを最新バージョンにアップグレードします。

    zypper update

    以下に示すように、list-updates オプションを使用して、利用可能なすべての更新を表示することもできます。

    zypper list-updates

    4.システム全体の完全配布アップグレード

    システムで完全なディストリビューション アップグレードを実行するには、以下に示すように zypper と一緒に dup オプションを使用します:

    # zypper dup
    Warning: You are about to do a distribution upgrade with all enabled repositories. Make sure these repositories are compatible before you continue. See 'man zypper' for more information about this command.
    Loading repository data...
    Reading installed packages...
    Computing distribution upgrade...
    
    The following NEW packages are going to be installed:
      drbd-xen libsoftokn3-32bit mozilla-nspr-32bit mozilla-nss-32bit mozilla-nss-certs-32bit suseRegister xen yast2-registration
      yast2-registration-branding-SLE
    The following packages are going to be upgraded:
      libfreebl3-32bit libnsssharedhelper0 libnsssharedhelper0-32bit
    The following packages are going to change vendor:
      libfreebl3-32bit           SUSE LINUX Products GmbH, Nuernberg, Germany -> openSUSE Build Service
      libnsssharedhelper0        SUSE LINUX Products GmbH, Nuernberg, Germany -> openSUSE Build Service
      libnsssharedhelper0-32bit  SUSE LINUX Products GmbH, Nuernberg, Germany -> openSUSE Build Service

    5.パッケージを削除

    パッケージを削除するには、以下に示すように remove オプションを使用します。これにより、すべての依存関係も削除されます。

    # zypper remove MozillaFirefox
    Loading repository data...
    Reading installed packages...
    Resolving package dependencies...
    The following packages are going to be REMOVED:
      MozillaFirefox MozillaFirefox-branding-SLED
    2 packages to remove.
    After the operation, 3.4 MiB will be freed.
    Continue? [y/n/?] (y): y
    Removing MozillaFirefox-branding-SLED-3.5-1.1.5 [done]
    Removing MozillaFirefox-3.6.16-0.2.1 [done]

    6.特定のパッケージを検索

    リポジトリからパッケージを検索するには、次のコマンドを使用します。キーワードにワイルド カードを使用することもできます。

    この例では、キーワード「usb」で始まるすべてのパッケージを検索します。

    # zypper search usb*
    Loading repository data...
    Reading installed packages...
    S | Name           | Summary                                                        | Type
    --+----------------+----------------------------------------------------------------+--------
      | usb_modeswitch | A mode switching tool for controlling multiple-device USB gear | package
    i | usbutils       | Tools and libraries for USB devices                            | package

    7.パッケージの詳細を表示

    特定のパッケージに関する情報を表示するには、以下に示すように、zypper で info オプションを使用します。

    # zypper info usbutils
    Loading repository data...
    Reading installed packages...
    Information for package usbutils:
    Repository: @System
    Name: usbutils
    Version: 0.73-38.19
    Arch: x86_64
    Vendor: SUSE LINUX Products GmbH, Nuernberg, Germany
    Support Level: unknown
    Installed: Yes
    Status: up-to-date
    Installed Size: 461.0 KiB
    Summary: Tools and libraries for USB devices
    Description:
    This package contains a utility for inspecting devices connected to USB
    ports.
    It requires kernel version 2.3.99-pre7 or newer, or the USB backport
    which was introduced in 2.2.18 (supporting the /proc/bus/usb
    interface).

    8. Zypper を使用してパッチをインストール

    zypper を使用してシステムにパッチをインストールすることもできます。

    まず、以下に示すように、パッチ オプションを使用して、利用可能なすべてのパッチを表示します。

    zypper patches

    次に、以下に示すように patch オプションを使用して、上記の出力から特定のパッチをインストールできます。

    zypper patch <patch name>

    9.特定のパッケージをロックする

    パッケージ ロックは、システム上のパッケージへの変更を防ぎます。このロックが設定されると、パッケージを削除したり、アップグレードしたりすることはできません。

    次の例は、パッケージ ロックを設定し、必要に応じて削除する方法を示しています。

    「al」オプションを使用して、ypbind パッケージにパッケージ ロックを追加します。 al は「Add Lock」の略です

    # zypper al ypbind
    Specified lock has been successfully added.

    ロックされているすべてのパッケージを表示するには、「ll」オプションを使用します。 ll は「リスト ロック」の略です。次の出力は、「ypbind」パッケージが現在ロックされており、このパッケージを削除またはアップグレードできないことを示しています。

    # zypper ll
    # | Name   | Type    | Repository
    --+--------+---------+-----------
    1 | ypbind | package | (any)

    10.パッケージからロックを解除

    「rl」オプションを使用して、ypbind パッケージからパッケージ ロックを削除します。 rl は「ロック解除」の略です

    # zypper rl ypbind
    Loading repository data...
    Reading installed packages...
    1 lock has been successfully removed.

    以下に示すように、現在ロックされているパッケージはありません。

    # zypper ll
    There are no package locks defined.

    II. Zypper を使用してリポジトリを管理する

    11. Zypper を使用してリポジトリを追加

    http URI を使用してリポジトリを追加するための一般的な構文は次のとおりです:

    zypper addrepo <options> <URI> <alias>

    たとえば、URI を使用してリポジトリを追加するには、次のようにします:

    # zypper addrepo --check --refresh --name "Mozilla-repo" http://download.opensuse.org/repositories/mozilla/SLE_11/ "Mozillarepo"
    Adding repository 'Mozilla-repo' [done]
    Repository 'Mozilla-repo' successfully added
    Enabled: Yes
    Autorefresh: Yes
    URI: http://download.opensuse.org/repositories/mozilla/SLE_11/

    12.ローカル リポジトリを作成する

    次の構文を使用して、すべての rpm ファイルを含むサーバー上のローカル ディレクトリからローカル リポジトリを作成することもできます。

    zypper addrepo <Path_to_dir> <Repo Name>

    たとえば、すべての rpm を含むローカル ディレクトリに myrepo というリポジトリを追加するには、次のコマンドを使用します。

    # zypper addrepo /var/stormgt/dsminst mylocalrepo
    Adding repository 'mylocalrepo' [done]
    Repository 'mylocalrepo' successfully added
    Enabled: Yes
    Autorefresh: No
    URI: dir:///var/stormgt/dsminst
    # zypper search --repo mylocalrepo
    Loading repository data...
    Reading installed packages...
    S | Name        | Summary                                 | Type
    --+-------------+-----------------------------------------+--------
    i | TIVsm-API   | the API                                 | package
    i | TIVsm-API64 | the API                                 | package
    i | TIVsm-BA    | the Backup Archive Client               | package
    i | gskcrypt32  | IBM GSKit Cryptography Runtime          | package
    i | gskcrypt64  | IBM GSKit Cryptography Runtime          | package
    i | gskssl32    | IBM GSKit SSL Runtime With Acme Toolkit | package
    i | gskssl64    | IBM GSKit SSL Runtime With Acme Toolkit | package

    上記のコマンドを使用して、リポジトリに NFS または FTP の場所を追加することもできます。

    13.リポジトリを見る

    次の zypper コマンドを使用して、すべてのリポジトリを表示できます:

    # zypper lr
    # | Alias                                            | Name                                             | Enabled | Refresh
    --+--------------------------------------------------+--------------------------------------------------+---------+--------
    1 | Mozillarepo                                      | Mozilla-repo                                     | Yes     | Yes
    2 | SUSE-Linux-Enterprise-Server-11-SP1 11.1.1-1.152 | SUSE-Linux-Enterprise-Server-11-SP1 11.1.1-1.152 | Yes     | Yes

    リポジトリの完全な URI を表示するには、次を使用します:

    # zypper lr --uri
    # | Alias                                            | Name                                             | Enabled | Refresh | URI
    --+--------------------------------------------------+--------------------------------------------------+---------+---------+----------------------------------------------------------
    1 | Mozillarepo                                      | Mozilla-repo                                     | Yes     | Yes     | http://download.opensuse.org/repositories/mozilla/SLE_11/
    2 | SUSE-Linux-Enterprise-Server-11-SP1 11.1.1-1.152 | SUSE-Linux-Enterprise-Server-11-SP1 11.1.1-1.152 | Yes     | Yes     | http://19.106.65.64/FUSELinux/600RC0

    14.リポジトリ内のパッケージを検索

    特定のリポジトリからすべてのパッケージを一覧表示するには、次のコマンドを使用します:

    # zypper search --repo Mozillarepo
    Loading repository data...
    Reading installed packages...
    
    S | Name                                 | Summary                                                                 | Type
    --+--------------------------------------+-------------------------------------------------------------------------+-----------
    i | MozillaFirefox                       | Mozilla Firefox Web Browser                                             | package
    i | MozillaFirefox-branding-SLED         | SLED branding of MozillaFirefox                                         | package  
      | MozillaFirefox-branding-openSUSE     | openSUSE branding of MozillaFirefox                                     | package
      | MozillaFirefox-branding-openSUSE     | openSUSE branding of MozillaFirefox                                     | srcpackage

    15.リポジトリの名前を変更

    リポジトリの名前を変更するには、renamerepo オプションを使用します。

    この例では、レポ名「mylocalrepo」が「LOCALRPM-Repo」に名前変更されています

    # zypper renamerepo mylocalrepo LOCALRPM-Repo
    Repository 'mylocalrepo' renamed to 'LOCALRPM-Repo'.

    16.リポジトリを削除

    リポジトリを削除するには、次に示すように removerepo オプションを使用します。

    # zypper removerepo LOCALRPM-Repo
    Removing repository 'mylocalrepo' [done]
    Repository 'mylocalrepo' has been removed.

    17.リポジトリのバックアップ

    以下に示すように、エクスポート オプションを使用して、リポジトリのリストを含むリポジトリ ファイルをバックアップできます。これにより、リポジトリ リストが backup.repo ファイルに保存されます。

    # zypper lr --export /var/tmp/backup.repo
    Repositories have been successfully exported to /var/tmp/backup.repo.

    18.バックアップからリポジトリを追加

    以前にエクスポートしたリポジトリ ファイルがある場合は、それを使用して、以下に示すように addrepo コマンドを使用して新しいリポジトリを追加できます。

    zypper addrepo /var/tmp/backup.rep

    19.リポジトリを無効または有効にする

    リポジトリを無効にするには、以下に示すように -d フラグを指定してリポジトリの変更オプションを使用します。これにより、Mozilla リポジトリが無効になります。

    # zypper modifyrepo -d Mozillarepo
    Repository 'Mozillarepo' has been successfully disabled.

    以前に無効化されたリポジトリを有効化するには、以下に示すように -e フラグを modifyrepo オプションとともに使用します。

    # zypper modifyrepo -e Mozillarepo
    Repository 'Mozillarepo' has been successfully enabled.

    20.リポジトリを更新

    リポジトリが古くなった場合、リポジトリを更新することは非常に重要です。以下の例に示すように手動で更新するか、必要に応じて自動的に更新するように設定できます。

    # zypper refresh Mozillarepo
    Repository 'Mozilla-repo' is up to date.
    Specified repositories have been refreshed.

    特定のリポジトリの自動更新オプションを設定するには、以下の例に示すようにコマンドを使用してください:

    # zypper modifyrepo --refresh mylocalrepo
    Autorefresh has been enabled for repository 'mylocalrepo'.

    Linux
    1. Linux での sa コマンドの例

    2. Linux での ac コマンドの例

    3. Linux での df コマンドの例

    1. Linuxでaptコマンドを使用してパッケージを管理する方法

    2. 7 Linux df コマンドの例

    3. Linux での du コマンドの例

    1. 8 Linux TR コマンドの例

    2. Linux でのパッケージ管理のための 15 の aptitude コマンドの例

    3. Linux での rm コマンドの例