用于管理“Suse”Linux 包管理的 45 个 Zypper 命令
SUSE(Software and System Entwicklung(德国),英文意为“软件和系统开发”)Linux 位于 Novell 带来的 Linux 内核之上。 SUSE 有两包。其中之一称为OpenSUSE,它是免费的(就像在演讲中一样免费,就像在葡萄酒中一样免费)。它是一个社区驱动的项目,包含最新的应用程序支持,OpenSUSE Linux 的最新稳定版本是13.2。
另一个是SUSE Linux Enterprise,它是专门为企业和生产设计的商业Linux发行版。 SUSE Linux 企业版配备了多种适合生产环境的企业应用程序和功能,SUSE Linux 企业版的最新稳定版本是12。
您可以在以下位置查看 SUSE Linux Enterprise Server 的详细安装说明:
- SUSE Linux Enterprise Server 12 的安装
Zypper 和 YaST 是 SUSE Linux 的包管理器,它在RPM之上运行强>。
YaST 代表又一个设置工具,是一个可在 OpenSUSE 和 SUSE Enterprise 版本上进行管理的工具,设置和配置 SUSE Linux。
Zypper 是 ZYpp 软件包管理器的命令行界面,用于安装、删除和更新 SUSE。 ZYpp 是为 Zypper 和 YaST 提供支持的包管理引擎。
在本文中,我们将看到 Zypper 的实际应用,它将安装、更新、删除以及执行包管理器可以执行的所有其他操作。开始了…
重要:记住所有这些命令都是用于系统范围的更改,因此必须以 root 身份运行,否则命令将失败。
获取 Zypper 的基本帮助
1. 不带任何选项运行 zypper,将为您提供所有全局选项和命令的列表。
# zypper
Usage:
zypper [--global-options]
2. 要获取有关“in”(安装)的特定命令的帮助,请运行以下命令。
# zypper help in
OR
# zypper help install
install (in) [options] <capability|rpm_file_uri> ...
Install packages with specified capabilities or RPM files with specified
location. A capability is NAME[.ARCH][OP], where OP is one
of <, <=, =, >=, >.
Command options:
--from <alias|#|URI> Select packages from the specified repository.
-r, --repo <alias|#|URI> Load only the specified repository.
-t, --type Type of package (package, patch, pattern, product, srcpackage).
Default: package.
-n, --name Select packages by plain name, not by capability.
-C, --capability Select packages by capability.
-f, --force Install even if the item is already installed (reinstall),
downgraded or changes vendor or architecture.
--oldpackage Allow to replace a newer item with an older one.
Handy if you are doing a rollback. Unlike --force
it will not enforce a reinstall.
--replacefiles Install the packages even if they replace files from other,
already installed, packages. Default is to treat file conflicts
as an error. --download-as-needed disables the fileconflict check.
......
3. 在安装之前搜索软件包(例如 gnome-desktop)。
zypper se gnome-desktop
Retrieving repository 'openSUSE-13.2-Debug' metadata ............................................................[done]
Building repository 'openSUSE-13.2-Debug' cache .................................................................[done]
Retrieving repository 'openSUSE-13.2-Non-Oss' metadata ......................................................... [done]
Building repository 'openSUSE-13.2-Non-Oss' cache ...............................................................[done]
Retrieving repository 'openSUSE-13.2-Oss' metadata ..............................................................[done]
Building repository 'openSUSE-13.2-Oss' cache ...................................................................[done]
Retrieving repository 'openSUSE-13.2-Update' metadata ...........................................................[done]
Building repository 'openSUSE-13.2-Update' cache ................................................................[done]
Retrieving repository 'openSUSE-13.2-Update-Non-Oss' metadata ...................................................[done]
Building repository 'openSUSE-13.2-Update-Non-Oss' cache ........................................................[done]
Loading repository data...
Reading installed packages...
S | Name | Summary | Type
--+---------------------------------------+-----------------------------------------------------------+-----------
| gnome-desktop2-lang | Languages for package gnome-desktop2 | package
| gnome-desktop2 | The GNOME Desktop API Library | package
| libgnome-desktop-2-17 | The GNOME Desktop API Library | package
| libgnome-desktop-3-10 | The GNOME Desktop API Library | package
| libgnome-desktop-3-devel | The GNOME Desktop API Library -- Development Files | package
| libgnome-desktop-3_0-common | The GNOME Desktop API Library -- Common data files | package
| gnome-desktop-debugsource | Debug sources for package gnome-desktop | package
| gnome-desktop-sharp2-debugsource | Debug sources for package gnome-desktop-sharp2 | package
| gnome-desktop2-debugsource | Debug sources for package gnome-desktop2 | package
| libgnome-desktop-2-17-debuginfo | Debug information for package libgnome-desktop-2-17 | package
| libgnome-desktop-3-10-debuginfo | Debug information for package libgnome-desktop-3-10 | package
| libgnome-desktop-3_0-common-debuginfo | Debug information for package libgnome-desktop-3_0-common | package
| libgnome-desktop-2-17-debuginfo-32bit | Debug information for package libgnome-desktop-2-17 | package
| libgnome-desktop-3-10-debuginfo-32bit | Debug information for package libgnome-desktop-3-10 | package
| gnome-desktop-sharp2 | Mono bindings for libgnome-desktop | package
| libgnome-desktop-2-devel | The GNOME Desktop API Library -- Development Files | package
| gnome-desktop-lang | Languages for package gnome-desktop | package
| libgnome-desktop-2-17-32bit | The GNOME Desktop API Library | package
| libgnome-desktop-3-10-32bit | The GNOME Desktop API Library | package
| gnome-desktop | The GNOME Desktop API Library | srcpackage
4. 使用以下命令获取有关模式包(例如lamp_server)的信息。
zypper info -t pattern lamp_server
Loading repository data...
Reading installed packages...
Information for pattern lamp_server:
------------------------------------
Repository: openSUSE-13.2-Update
Name: lamp_server
Version: 20141007-5.1
Arch: x86_64
Vendor: openSUSE
Installed: No
Visible to User: Yes
Summary: Web and LAMP Server
Description:
Software to set up a Web server that is able to serve static, dynamic, and interactive content (like a Web shop). This includes Apache HTTP Server, the database management system MySQL,
and scripting languages such as PHP, Python, Ruby on Rails, or Perl.
Contents:
S | Name | Type | Dependency
--+-------------------------------+---------+-----------
| apache2-mod_php5 | package |
| php5-iconv | package |
i | patterns-openSUSE-base | package |
i | apache2-prefork | package |
| php5-dom | package |
| php5-mysql | package |
i | apache2 | package |
| apache2-example-pages | package |
| mariadb | package |
| apache2-mod_perl | package |
| php5-ctype | package |
| apache2-doc | package |
| yast2-http-server | package |
| patterns-openSUSE-lamp_server | package |
5. 要打开 zypper shell 会话,请运行以下命令。
# zypper shell
OR
# zypper sh
zypper> help
Usage:
zypper [--global-options]
注意:在 Zypper shell 上输入“help”以获取全局选项和命令的列表。
Zypper 存储库管理
列出定义的存储库
6. 使用zypper repos或zypper lr命令列出所有定义的存储库。
# zypper repos
OR
# zypper lr
| Alias | Name | Enabled | Refresh
--+---------------------------+------------------------------------+---------+--------
1 | openSUSE-13.2-0 | openSUSE-13.2-0 | Yes | No
2 | repo-debug | openSUSE-13.2-Debug | Yes | Yes
3 | repo-debug-update | openSUSE-13.2-Update-Debug | No | Yes
4 | repo-debug-update-non-oss | openSUSE-13.2-Update-Debug-Non-Oss | No | Yes
5 | repo-non-oss | openSUSE-13.2-Non-Oss | Yes | Yes
6 | repo-oss | openSUSE-13.2-Oss | Yes | Yes
7 | repo-source | openSUSE-13.2-Source | No | Yes
8 | repo-update | openSUSE-13.2-Update | Yes | Yes
9 | repo-update-non-oss | openSUSE-13.2-Update-Non-Oss | Yes | Yes
7. 在表中列出 zypper URI。
# zypper lr -u
| Alias | Name | Enabled | Refresh | URI
--+---------------------------+------------------------------------+---------+---------+----------------------------------------------------------------
1 | openSUSE-13.2-0 | openSUSE-13.2-0 | Yes | No | cd:///?devices=/dev/disk/by-id/ata-VBOX_CD-ROM_VB2-01700376
2 | repo-debug | openSUSE-13.2-Debug | Yes | Yes | http://download.opensuse.org/debug/distribution/13.2/repo/oss/
3 | repo-debug-update | openSUSE-13.2-Update-Debug | No | Yes | http://download.opensuse.org/debug/update/13.2/
4 | repo-debug-update-non-oss | openSUSE-13.2-Update-Debug-Non-Oss | No | Yes | http://download.opensuse.org/debug/update/13.2-non-oss/
5 | repo-non-oss | openSUSE-13.2-Non-Oss | Yes | Yes | http://download.opensuse.org/distribution/13.2/repo/non-oss/
6 | repo-oss | openSUSE-13.2-Oss | Yes | Yes | http://download.opensuse.org/distribution/13.2/repo/oss/
7 | repo-source | openSUSE-13.2-Source | No | Yes | http://download.opensuse.org/source/distribution/13.2/repo/oss/
8 | repo-update | openSUSE-13.2-Update | Yes | Yes | http://download.opensuse.org/update/13.2/
9 | repo-update-non-oss | openSUSE-13.2-Update-Non-Oss | Yes | Yes | http://download.opensuse.org/update/13.2-non-oss/
8.列出存储库优先级并按优先级列出。
# zypper lr -P
| Alias | Name | Enabled | Refresh | Priority
--+---------------------------+------------------------------------+---------+---------+---------
1 | openSUSE-13.2-0 | openSUSE-13.2-0 | Yes | No | 99
2 | repo-debug | openSUSE-13.2-Debug | Yes | Yes | 99
3 | repo-debug-update | openSUSE-13.2-Update-Debug | No | Yes | 99
4 | repo-debug-update-non-oss | openSUSE-13.2-Update-Debug-Non-Oss | No | Yes | 99
5 | repo-non-oss | openSUSE-13.2-Non-Oss | Yes | Yes | 85
6 | repo-oss | openSUSE-13.2-Oss | Yes | Yes | 99
7 | repo-source | openSUSE-13.2-Source | No | Yes | 99
8 | repo-update | openSUSE-13.2-Update | Yes | Yes | 99
9 | repo-update-non-oss | openSUSE-13.2-Update-Non-Oss | Yes | Yes | 99
刷新存储库
9. 使用命令zypper刷新或zypper ref刷新zypper存储库。
# zypper refresh
OR
# zypper ref
Repository 'openSUSE-13.2-0' is up to date.
Repository 'openSUSE-13.2-Debug' is up to date.
Repository 'openSUSE-13.2-Non-Oss' is up to date.
Repository 'openSUSE-13.2-Oss' is up to date.
Repository 'openSUSE-13.2-Update' is up to date.
Repository 'openSUSE-13.2-Update-Non-Oss' is up to date.
All repositories have been refreshed.
10. 要刷新特定存储库,请输入“repo-non-oss”:
# zypper refresh repo-non-oss
Repository 'openSUSE-13.2-Non-Oss' is up to date.
Specified repositories have been refreshed.
11. 要强制更新存储库,请输入“repo-non-oss”:
# zypper ref -f repo-non-oss
Forcing raw metadata refresh
Retrieving repository 'openSUSE-13.2-Non-Oss' metadata ............................................................[done]
Forcing building of repository cache
Building repository 'openSUSE-13.2-Non-Oss' cache ............................................................[done]
Specified repositories have been refreshed.
修改存储库
在这里,我们使用“zypper修改repo”或“zypper mr”命令来禁用、启用zypper存储库。
12. 在禁用存储库之前,您必须知道在 Zypper 中,每个存储库都有自己的唯一编号,用于禁用或启用存储库。
假设您想禁用存储库“repo-oss”,要禁用,您首先需要输入以下命令来获取其编号。
# zypper lr
| Alias | Name | Enabled | Refresh
--+---------------------------+------------------------------------+---------+--------
1 | openSUSE-13.2-0 | openSUSE-13.2-0 | Yes | No
2 | repo-debug | openSUSE-13.2-Debug | Yes | Yes
3 | repo-debug-update | openSUSE-13.2-Update-Debug | No | Yes
4 | repo-debug-update-non-oss | openSUSE-13.2-Update-Debug-Non-Oss | No | Yes
5 | repo-non-oss | openSUSE-13.2-Non-Oss | Yes | Yes
6 | repo-oss | openSUSE-13.2-Oss | No | Yes
7 | repo-source | openSUSE-13.2-Source | No | Yes
8 | repo-update | openSUSE-13.2-Update | Yes | Yes
9 | repo-update-non-oss | openSUSE-13.2-Update-Non-Oss | Yes | Yes
您是否在上面的输出中看到存储库“repo-oss”的编号为 6,要禁用此功能,您需要指定编号 6 以及以下命令。
# zypper mr -d 6
Repository 'repo-oss' has been successfully disabled.
13. 再次启用相同的存储库“repo-oss”,它出现在数字 6 处(如上例所示)。
# zypper mr -e 6
Repository 'repo-oss' has been successfully enabled.
14. 为存储库“repo-non-oss”启用自动刷新和 rpm 文件“缓存”,并将其优先级设置为“ 85。
# zypper mr -rk -p 85 repo-non-oss
Repository 'repo-non-oss' priority has been left unchanged (85)
Nothing to change for repository 'repo-non-oss'.
15. 禁用所有存储库的 rpm 文件缓存。
# zypper mr -Ka
RPM files caching has been disabled for repository 'openSUSE-13.2-0'.
RPM files caching has been disabled for repository 'repo-debug'.
RPM files caching has been disabled for repository 'repo-debug-update'.
RPM files caching has been disabled for repository 'repo-debug-update-non-oss'.
RPM files caching has been disabled for repository 'repo-non-oss'.
RPM files caching has been disabled for repository 'repo-oss'.
RPM files caching has been disabled for repository 'repo-source'.
RPM files caching has been disabled for repository 'repo-update'.
RPM files caching has been disabled for repository 'repo-update-non-oss'.
16. 为所有存储库启用 rpm 文件缓存。
# zypper mr -ka
RPM files caching has been enabled for repository 'openSUSE-13.2-0'.
RPM files caching has been enabled for repository 'repo-debug'.
RPM files caching has been enabled for repository 'repo-debug-update'.
RPM files caching has been enabled for repository 'repo-debug-update-non-oss'.
RPM files caching has been enabled for repository 'repo-non-oss'.
RPM files caching has been enabled for repository 'repo-oss'.
RPM files caching has been enabled for repository 'repo-source'.
RPM files caching has been enabled for repository 'repo-update'.
RPM files caching has been enabled for repository 'repo-update-non-oss'.
17. 禁用远程存储库的 rpm 文件缓存。
# zypper mr -Kt
RPM files caching has been disabled for repository 'repo-debug'.
RPM files caching has been disabled for repository 'repo-debug-update'.
RPM files caching has been disabled for repository 'repo-debug-update-non-oss'.
RPM files caching has been disabled for repository 'repo-non-oss'.
RPM files caching has been disabled for repository 'repo-oss'.
RPM files caching has been disabled for repository 'repo-source'.
RPM files caching has been disabled for repository 'repo-update'.
RPM files caching has been disabled for repository 'repo-update-non-oss'.
18. 为远程存储库启用 rpm 文件缓存。
# zypper mr -kt
RPM files caching has been enabled for repository 'repo-debug'.
RPM files caching has been enabled for repository 'repo-debug-update'.
RPM files caching has been enabled for repository 'repo-debug-update-non-oss'.
RPM files caching has been enabled for repository 'repo-non-oss'.
RPM files caching has been enabled for repository 'repo-oss'.
RPM files caching has been enabled for repository 'repo-source'.
RPM files caching has been enabled for repository 'repo-update'.
RPM files caching has been enabled for repository 'repo-update-non-oss'.
添加存储库
您可以使用这两个命令中的任何一个 - “zypper addrepo”或“zypper ar”。您可以使用repo url或别名来添加存储库。
19. 添加一个存储库,例如“http://download.opensuse.org/update/12.3/”。
# zypper ar http://download.opensuse.org/update/11.1/ update
Adding repository 'update' .............................................................................................................................................................[done]
Repository 'update' successfully added
Enabled : Yes
Autorefresh : No
GPG check : Yes
URI : http://download.opensuse.org/update/11.1/
20. 重命名存储库。它只会更改别名。您可以使用命令“zypper namerepo”或“zypper nr”。要将出现在编号 10 (zypper lr) 处的存储库重命名为 upd8,请运行以下命令。
# zypper nr 10 upd8
Repository 'update' renamed to 'upd8'.
删除存储库
21.删除存储库。它将从系统中删除存储库。您可以使用命令“zypper removerepo”或“zypper rr”。要删除存储库“upd8”,请运行以下命令。
# zypper rr upd8
Removing repository 'upd8' .........................................................................................[done]
Repository 'upd8' has been removed.
使用 Zypper 进行包管理
使用 Zypper 安装软件包
22.使用Zypper,我们可以根据功能名称安装软件包。例如,使用功能名称安装软件包(例如 Mozilla Firefox)。
# zypper in MozillaFirefox
Loading repository data...
Reading installed packages...
Resolving package dependencies...
The following 128 NEW packages are going to be installed:
adwaita-icon-theme at-spi2-atk-common at-spi2-atk-gtk2 at-spi2-core cantarell-fonts cups-libs desktop-file-utils fontconfig gdk-pixbuf-query-loaders gstreamer gstreamer-fluendo-mp3
gstreamer-plugins-base gtk2-branding-openSUSE gtk2-data gtk2-immodule-amharic gtk2-immodule-inuktitut gtk2-immodule-thai gtk2-immodule-vietnamese gtk2-metatheme-adwaita
gtk2-theming-engine-adwaita gtk2-tools gtk3-data gtk3-metatheme-adwaita gtk3-tools hicolor-icon-theme hicolor-icon-theme-branding-openSUSE libasound2 libatk-1_0-0 libatk-bridge-2_0-0
libatspi0 libcairo2 libcairo-gobject2 libcanberra0 libcanberra-gtk0 libcanberra-gtk2-module libcanberra-gtk3-0 libcanberra-gtk3-module libcanberra-gtk-module-common libcdda_interface0
libcdda_paranoia0 libcolord2 libdrm2 libdrm_intel1 libdrm_nouveau2 libdrm_radeon1 libFLAC8 libfreebl3 libgbm1 libgdk_pixbuf-2_0-0 libgraphite2-3 libgstapp-1_0-0 libgstaudio-1_0-0
libgstpbutils-1_0-0 libgstreamer-1_0-0 libgstriff-1_0-0 libgsttag-1_0-0 libgstvideo-1_0-0 libgthread-2_0-0 libgtk-2_0-0 libgtk-3-0 libharfbuzz0 libjasper1 libjbig2 libjpeg8 libjson-c2
liblcms2-2 libLLVM libltdl7 libnsssharedhelper0 libogg0 liborc-0_4-0 libpackagekit-glib2-18 libpango-1_0-0 libpciaccess0 libpixman-1-0 libpulse0 libsndfile1 libsoftokn3 libspeex1
libsqlite3-0 libstartup-notification-1-0 libtheoradec1 libtheoraenc1 libtiff5 libvisual libvorbis0 libvorbisenc2 libvorbisfile3 libwayland-client0 libwayland-cursor0 libwayland-server0
libX11-xcb1 libxcb-dri2-0 libxcb-dri3-0 libxcb-glx0 libxcb-present0 libxcb-render0 libxcb-shm0 libxcb-sync1 libxcb-util1 libxcb-xfixes0 libXcomposite1 libXcursor1 libXdamage1 libXevie1
libXfixes3 libXft2 libXi6 libXinerama1 libxkbcommon-0_4_3 libXrandr2 libXrender1 libxshmfence1 libXtst6 libXv1 libXxf86vm1 Mesa Mesa-libEGL1 Mesa-libGL1 Mesa-libglapi0
metatheme-adwaita-common MozillaFirefox MozillaFirefox-branding-openSUSE mozilla-nss mozilla-nss-certs PackageKit-gstreamer-plugin pango-tools sound-theme-freedesktop
The following 10 recommended packages were automatically selected:
gstreamer-fluendo-mp3 gtk2-branding-openSUSE gtk2-data gtk2-immodule-amharic gtk2-immodule-inuktitut gtk2-immodule-thai gtk2-immodule-vietnamese libcanberra0 libpulse0
PackageKit-gstreamer-plugin
128 new packages to install.
Overall download size: 77.2 MiB. Already cached: 0 B After the operation, additional 200.0 MiB will be used.
Continue? [y/n/? shows all options] (y): y
Retrieving package cantarell-fonts-0.0.16-1.1.noarch (1/128), 74.1 KiB (115.6 KiB unpacked)
Retrieving: cantarell-fonts-0.0.16-1.1.noarch.rpm .........................................................................................................................[done (63.4 KiB/s)]
Retrieving package hicolor-icon-theme-0.13-2.1.2.noarch (2/128), 40.1 KiB ( 50.5 KiB unpacked)
Retrieving: hicolor-icon-theme-0.13-2.1.2.noarch.rpm ...................................................................................................................................[done]
Retrieving package sound-theme-freedesktop-0.8-7.1.2.noarch (3/128), 372.6 KiB (460.3 KiB unpacked)
23. 使用版本安装软件包(例如gcc)。
# zypper in 'gcc<5.1'
Loading repository data...
Reading installed packages...
Resolving package dependencies...
The following 13 NEW packages are going to be installed:
cpp cpp48 gcc gcc48 libasan0 libatomic1-gcc49 libcloog-isl4 libgomp1-gcc49 libisl10 libitm1-gcc49 libmpc3 libmpfr4 libtsan0-gcc49
13 new packages to install.
Overall download size: 14.5 MiB. Already cached: 0 B After the operation, additional 49.4 MiB will be used.
Continue? [y/n/? shows all options] (y): y
24. 安装架构(例如i586)的软件包(例如gcc)。
# zypper in gcc.i586
Loading repository data...
Reading installed packages...
Resolving package dependencies...
The following 13 NEW packages are going to be installed:
cpp cpp48 gcc gcc48 libasan0 libatomic1-gcc49 libcloog-isl4 libgomp1-gcc49 libisl10 libitm1-gcc49 libmpc3 libmpfr4 libtsan0-gcc49
13 new packages to install.
Overall download size: 14.5 MiB. Already cached: 0 B After the operation, additional 49.4 MiB will be used.
Continue? [y/n/? shows all options] (y): y
Retrieving package libasan0-4.8.3+r212056-2.2.4.x86_64 (1/13), 74.2 KiB (166.9 KiB unpacked)
Retrieving: libasan0-4.8.3+r212056-2.2.4.x86_64.rpm .......................................................................................................................[done (79.2 KiB/s)]
Retrieving package libatomic1-gcc49-4.9.0+r211729-2.1.7.x86_64 (2/13), 14.3 KiB ( 26.1 KiB unpacked)
Retrieving: libatomic1-gcc49-4.9.0+r211729-2.1.7.x86_64.rpm ...............................................................................................................[done (55.3 KiB/s)]
25.安装特定架构(例如i586)和特定版本(例如<5.1)的软件包(例如gcc) >),
# zypper in 'gcc.i586<5.1'
Loading repository data...
Reading installed packages...
Resolving package dependencies...
The following 13 NEW packages are going to be installed:
cpp cpp48 gcc gcc48 libasan0 libatomic1-gcc49 libcloog-isl4 libgomp1-gcc49 libisl10 libitm1-gcc49 libmpc3 libmpfr4 libtsan0-gcc49
13 new packages to install.
Overall download size: 14.4 MiB. Already cached: 129.5 KiB After the operation, additional 49.4 MiB will be used.
Continue? [y/n/? shows all options] (y): y
In cache libasan0-4.8.3+r212056-2.2.4.x86_64.rpm (1/13), 74.2 KiB (166.9 KiB unpacked)
In cache libatomic1-gcc49-4.9.0+r211729-2.1.7.x86_64.rpm (2/13), 14.3 KiB ( 26.1 KiB unpacked)
In cache libgomp1-gcc49-4.9.0+r211729-2.1.7.x86_64.rpm (3/13), 41.1 KiB ( 90.7 KiB unpacked)
26. 从存储库 (amarok) 安装软件包(例如 libxine)。
# zypper in amarok upd:libxine1
Loading repository data...
Reading installed packages...
Resolving package dependencies...
The following 202 NEW packages are going to be installed:
amarok bundle-lang-kde-en clamz cups-libs enscript fontconfig gdk-pixbuf-query-loaders ghostscript-fonts-std gptfdisk gstreamer gstreamer-plugins-base hicolor-icon-theme
hicolor-icon-theme-branding-openSUSE htdig hunspell hunspell-tools icoutils ispell ispell-american kde4-filesystem kdebase4-runtime kdebase4-runtime-branding-openSUSE kdelibs4
kdelibs4-branding-openSUSE kdelibs4-core kdialog libakonadi4 l
.....
27. 使用名称 (-n) 安装软件包(例如 git)。
# zypper in -n git
Loading repository data...
Reading installed packages...
Resolving package dependencies...
The following 35 NEW packages are going to be installed:
cvs cvsps fontconfig git git-core git-cvs git-email git-gui gitk git-svn git-web libserf-1-1 libsqlite3-0 libXft2 libXrender1 libXss1 perl-Authen-SASL perl-Clone perl-DBD-SQLite perl-DBI
perl-Error perl-IO-Socket-SSL perl-MLDBM perl-Net-Daemon perl-Net-SMTP-SSL perl-Net-SSLeay perl-Params-Util perl-PlRPC perl-SQL-Statement perl-Term-ReadKey subversion subversion-perl tcl
tk xhost
The following 13 recommended packages were automatically selected:
git-cvs git-email git-gui gitk git-svn git-web perl-Authen-SASL perl-Clone perl-MLDBM perl-Net-Daemon perl-Net-SMTP-SSL perl-PlRPC perl-SQL-Statement
The following package is suggested, but will not be installed:
git-daemon
35 new packages to install.
Overall download size: 15.6 MiB. Already cached: 0 B After the operation, additional 56.7 MiB will be used.
Continue? [y/n/? shows all options] (y): y
28. 使用通配符安装软件包。例如,安装所有 php5 软件包。
# zypper in php5*
Loading repository data...
Reading installed packages...
Resolving package dependencies...
Problem: php5-5.6.1-18.1.x86_64 requires smtp_daemon, but this requirement cannot be provided
uninstallable providers: exim-4.83-3.1.8.x86_64[openSUSE-13.2-0]
postfix-2.11.0-5.2.2.x86_64[openSUSE-13.2-0]
sendmail-8.14.9-2.2.2.x86_64[openSUSE-13.2-0]
exim-4.83-3.1.8.i586[repo-oss]
msmtp-mta-1.4.32-2.1.3.i586[repo-oss]
postfix-2.11.0-5.2.2.i586[repo-oss]
sendmail-8.14.9-2.2.2.i586[repo-oss]
exim-4.83-3.1.8.x86_64[repo-oss]
msmtp-mta-1.4.32-2.1.3.x86_64[repo-oss]
postfix-2.11.0-5.2.2.x86_64[repo-oss]
sendmail-8.14.9-2.2.2.x86_64[repo-oss]
postfix-2.11.3-5.5.1.i586[repo-update]
postfix-2.11.3-5.5.1.x86_64[repo-update]
Solution 1: Following actions will be done:
do not install php5-5.6.1-18.1.x86_64
do not install php5-pear-Auth_SASL-1.0.6-7.1.3.noarch
do not install php5-pear-Horde_Http-2.0.1-6.1.3.noarch
do not install php5-pear-Horde_Image-2.0.1-6.1.3.noarch
do not install php5-pear-Horde_Kolab_Format-2.0.1-6.1.3.noarch
do not install php5-pear-Horde_Ldap-2.0.1-6.1.3.noarch
do not install php5-pear-Horde_Memcache-2.0.1-7.1.3.noarch
do not install php5-pear-Horde_Mime-2.0.2-6.1.3.noarch
do not install php5-pear-Horde_Oauth-2.0.0-6.1.3.noarch
do not install php5-pear-Horde_Pdf-2.0.1-6.1.3.noarch
....
29. 使用模式(软件包组)安装软件包(例如lamp_server)。
# zypper in -t pattern lamp_server
ading repository data...
Reading installed packages...
Resolving package dependencies...
The following 29 NEW packages are going to be installed:
apache2 apache2-doc apache2-example-pages apache2-mod_perl apache2-prefork patterns-openSUSE-lamp_server perl-Data-Dump perl-Encode-Locale perl-File-Listing perl-HTML-Parser
perl-HTML-Tagset perl-HTTP-Cookies perl-HTTP-Daemon perl-HTTP-Date perl-HTTP-Message perl-HTTP-Negotiate perl-IO-HTML perl-IO-Socket-SSL perl-libwww-perl perl-Linux-Pid
perl-LWP-MediaTypes perl-LWP-Protocol-https perl-Net-HTTP perl-Net-SSLeay perl-Tie-IxHash perl-TimeDate perl-URI perl-WWW-RobotRules yast2-http-server
The following NEW pattern is going to be installed:
lamp_server
The following 10 recommended packages were automatically selected:
apache2 apache2-doc apache2-example-pages apache2-mod_perl apache2-prefork perl-Data-Dump perl-IO-Socket-SSL perl-LWP-Protocol-https perl-TimeDate yast2-http-server
29 new packages to install.
Overall download size: 7.2 MiB. Already cached: 1.2 MiB After the operation, additional 34.7 MiB will be used.
Continue? [y/n/? shows all options] (y):
30. 一次性安装一个软件包(例如nano)并删除一个软件包(例如vi)。
# zypper in nano -vi
Loading repository data...
Reading installed packages...
'-vi' not found in package names. Trying capabilities.
Resolving package dependencies...
The following 2 NEW packages are going to be installed:
nano nano-lang
The following package is going to be REMOVED:
vim
The following recommended package was automatically selected:
nano-lang
2 new packages to install, 1 to remove.
Overall download size: 550.0 KiB. Already cached: 0 B After the operation, 463.3 KiB will be freed.
Continue? [y/n/? shows all options] (y):
...
31.安装rpm包(例如teamviewer)。
# zypper in teamviewer*.rpm
Loading repository data...
Reading installed packages...
Resolving package dependencies...
The following 24 NEW packages are going to be installed:
alsa-oss-32bit fontconfig-32bit libasound2-32bit libexpat1-32bit libfreetype6-32bit libgcc_s1-gcc49-32bit libICE6-32bit libjpeg62-32bit libpng12-0-32bit libpng16-16-32bit libSM6-32bit
libuuid1-32bit libX11-6-32bit libXau6-32bit libxcb1-32bit libXdamage1-32bit libXext6-32bit libXfixes3-32bit libXinerama1-32bit libXrandr2-32bit libXrender1-32bit libXtst6-32bit
libz1-32bit teamviewer
The following recommended package was automatically selected:
alsa-oss-32bit
24 new packages to install.
Overall download size: 41.2 MiB. Already cached: 0 B After the operation, additional 119.7 MiB will be used.
Continue? [y/n/? shows all options] (y):
..
使用 Zypper 删除包
32. 要删除任何软件包,您可以使用“zypper remove”或“zypper rm”命令。例如,要删除软件包(例如 apache2),请运行:
zypper remove apache2
Or
# zypper rm apache2
Loading repository data...
Reading installed packages...
Resolving package dependencies...
The following 2 packages are going to be REMOVED:
apache2 apache2-prefork
2 packages to remove.
After the operation, 4.2 MiB will be freed.
Continue? [y/n/? shows all options] (y): y
(1/2) Removing apache2-2.4.10-19.1 ........................................................................[done]
(2/2) Removing apache2-prefork-2.4.10-19.1 ................................................................[done]
使用 Zypper 更新包
33.更新所有软件包。您可以使用命令“zypper update”或“zypper up”。
# zypper up
OR
# zypper update
Loading repository data...
Reading installed packages...
Nothing to do.
34. 更新特定软件包(例如 apache2 和 openssh)。
# zypper up apache2 openssh
Loading repository data...
Reading installed packages...
No update candidate for 'apache2-2.4.10-19.1.x86_64'. The highest available version is already installed.
No update candidate for 'openssh-6.6p1-5.1.3.x86_64'. The highest available version is already installed.
Resolving package dependencies...
Nothing to do.
35. 如果未安装,请安装一个软件包(mariadb),如果已安装,请更新它。
# zypper in mariadb
Loading repository data...
Reading installed packages...
'mariadb' is already installed.
No update candidate for 'mariadb-10.0.13-2.6.1.x86_64'. The highest available version is already installed.
Resolving package dependencies...
Nothing to do.
安装源代码和构建依赖项
您可以使用“zypper source-install”或“zypper si”命令从源代码构建软件包。
36. 安装源包并为包构建其依赖项(例如 mariadb)。
zypper si mariadb
Reading installed packages...
Loading repository data...
Resolving package dependencies...
The following 36 NEW packages are going to be installed:
autoconf automake bison cmake cpp cpp48 gcc gcc48 gcc48-c++ gcc-c++ libaio-devel libarchive13 libasan0 libatomic1-gcc49 libcloog-isl4 libedit-devel libevent-devel libgomp1-gcc49 libisl10
libitm1-gcc49 libltdl7 libmpc3 libmpfr4 libopenssl-devel libstdc++48-devel libtool libtsan0-gcc49 m4 make ncurses-devel pam-devel readline-devel site-config tack tcpd-devel zlib-devel
The following source package is going to be installed:
mariadb
36 new packages to install, 1 source package.
Overall download size: 71.5 MiB. Already cached: 129.5 KiB After the operation, additional 183.9 MiB will be used.
Continue? [y/n/? shows all options] (y): y
37. 仅安装包的源代码(例如mariadb)。
zypper in -D mariadb
Loading repository data...
Reading installed packages...
'mariadb' is already installed.
No update candidate for 'mariadb-10.0.13-2.6.1.x86_64'. The highest available version is already installed.
Resolving package dependencies...
Nothing to do.
38. 仅安装包的构建依赖项(例如 mariadb)。
zypper si -d mariadb
Reading installed packages...
Loading repository data...
Resolving package dependencies...
The following 36 NEW packages are going to be installed:
autoconf automake bison cmake cpp cpp48 gcc gcc48 gcc48-c++ gcc-c++ libaio-devel libarchive13 libasan0 libatomic1-gcc49 libcloog-isl4 libedit-devel libevent-devel libgomp1-gcc49 libisl10
libitm1-gcc49 libltdl7 libmpc3 libmpfr4 libopenssl-devel libstdc++48-devel libtool libtsan0-gcc49 m4 make ncurses-devel pam-devel readline-devel site-config tack tcpd-devel zlib-devel
The following package is recommended, but will not be installed due to conflicts or dependency issues:
readline-doc
36 new packages to install.
Overall download size: 33.7 MiB. Already cached: 129.5 KiB After the operation, additional 144.3 MiB will be used.
Continue? [y/n/? shows all options] (y): y
脚本和应用程序中的 Zypper
39.无需用户交互即可安装软件包(例如mariadb)。
# zypper --non-interactive in mariadb
Loading repository data...
Reading installed packages...
'mariadb' is already installed.
No update candidate for 'mariadb-10.0.13-2.6.1.x86_64'. The highest available version is already installed.
Resolving package dependencies...
Nothing to do.
40. 无需用户交互即可删除软件包(例如 mariadb)。
# zypper --non-interactive rm mariadb
Loading repository data...
Reading installed packages...
Resolving package dependencies...
The following package is going to be REMOVED:
mariadb
1 package to remove.
After the operation, 71.8 MiB will be freed.
Continue? [y/n/? shows all options] (y): y
(1/1) Removing mariadb-10.0.13-2.6.1 .............................................................................[done]
41. 以 xml 形式输出 zypper。
# zypper --xmlout
Usage:
zypper [--global-options] <command> [--command-options] [arguments]
Global Options
....
42. 在安装时生成安静的输出。
# zypper --quiet in mariadb
The following NEW package is going to be installed:
mariadb
1 new package to install.
Overall download size: 0 B. Already cached: 7.8 MiB After the operation, additional 71.8 MiB will be used.
Continue? [y/n/? shows all options] (y):
...
43. 在 UN 安装时生成安静的输出。
# zypper --quiet rm mariadb
44. 自动同意许可/协议。
# zypper patch --auto-agree-with-licenses
Loading repository data...
Reading installed packages...
Resolving package dependencies...
Nothing to do.
清理 Zypper 缓存并查看历史记录
45. 如果您只想清理 zypper 缓存,可以使用以下命令。
# zypper clean
All repositories have been cleaned up.
如果您想立即清理元数据和包缓存,您可能需要使用 zypper as 传递 –all/-a 。
# zypper clean -a
All repositories have been cleaned up.
46. 要通过 zypper 查看任何已安装、更新或删除的软件包的日志,请记录在 /var/log/zypp/history 中。您可以使用 cat 来查看,也可以使用过滤器来获取自定义输出。
# cat /var/log/zypp/history
2015-05-07 15:43:03|install|boost-license1_54_0|1.54.0-10.1.3|noarch||openSUSE-13.2-0|0523b909d2aae5239f9841316dafaf3a37b4f096|
2015-05-07 15:43:03|install|branding-openSUSE|13.2-3.6.1|noarch||openSUSE-13.2-0|6609def94b1987bf3f90a9467f4f7ab8f8d98a5c|
2015-05-07 15:43:03|install|bundle-lang-common-en|13.2-3.3.1|noarch||openSUSE-13.2-0|ca55694e6fdebee6ce37ac7cf3725e2aa6edc342|
2015-05-07 15:43:03|install|insserv-compat|0.1-12.2.2|noarch||openSUSE-13.2-0|6160de7fbf961a279591a83a1550093a581214d9|
2015-05-07 15:43:03|install|libX11-data|1.6.2-5.1.2|noarch||openSUSE-13.2-0|f1cb58364ba9016c1f93b1a383ba12463c56885a|
2015-05-07 15:43:03|install|libnl-config|3.2.25-2.1.2|noarch||openSUSE-13.2-0|aab2ded312a781e93b739b418e3d32fe4e187020|
2015-05-07 15:43:04|install|wireless-regdb|2014.06.13-1.2|noarch||openSUSE-13.2-0|be8cb16f3e92af12b5ceb977e37e13f03c007bd1|
2015-05-07 15:43:04|install|yast2-trans-en_US|3.1.0-2.1|noarch||openSUSE-13.2-0|1865754e5e0ec3c149ac850b340bcca55a3c404d|
2015-05-07 15:43:04|install|yast2-trans-stats|2.19.0-16.1.3|noarch||openSUSE-13.2-0|b107d2b3e702835885b57b04d12d25539f262d1a|
2015-05-07 15:43:04|install|cracklib-dict-full|2.8.12-64.1.2|x86_64||openSUSE-13.2-0|08bd45dbba7ad44e3a4837f730be76f55ad5dcfa|
......
使用 Zypper 升级 Suse
47. 您可以使用 zypper 命令的“dist-upgrade”选项将当前的 Suse Linux 升级到最新版本。
# zypper dist-upgrade
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.
Building repository 'openSUSE-13.2-0' cache .....................................................................[done]
Retrieving repository 'openSUSE-13.2-Debug' metadata ............................................................[done]
Building repository 'openSUSE-13.2-Debug' cache .................................................................[done]
Retrieving repository 'openSUSE-13.2-Non-Oss' metadata ..........................................................[done]
Building repository 'openSUSE-13.2-Non-Oss' cache ...............................................................[done]
目前为止就这样了。希望这篇文章能帮助您管理SUSE系统和服务器,特别适合新手。如果您觉得我留下了某些命令(人类是错误的),您可以在评论中向我们提供反馈,以便我们更新文章。保持联系,保持评论,敬请关注。荣誉!