标签: package-management

如何判断一个包是否通过 yum 安装在 bash 脚本中?

我正在尝试编写一个安装包的脚本,但如果它在稍后的任何时候失败,脚本会回滚它安装的任何内容。当然,如果用户之前已经安装了一个包,我不想从他们下面卸载它。我的脚本如何判断一个包以前是否通过 yum 安装过?

bash yum shell-script package-management

84
推荐指数
3
解决办法
14万
查看次数

如何使用 pacman 强制删除 Arch 中的软件包?

我如何强制删除 Arch 中的一个包,pacman而其他包仍然依赖它。

pacman -R perl-libwww                                                               
checking dependencies...
error: failed to prepare transaction (could not satisfy dependencies)
:: perl-app-cpanminus: requires perl-libwww>=5.828
:: perl-app-pmuninstall: requires perl-libwww
:: perl-app-sd: requires perl-libwww
:: perl-catalyst-action-rest: requires perl-libwww>=2.033 
:: perl-catalyst-runtime: requires perl-libwww>=1.64
:: perl-cpan: requires perl-libwww
:: perl-cpan-mini: requires perl-libwww
:: perl-cpan-uploader: requires perl-libwww
:: perl-feed-find: requires perl-libwww
:: perl-http-body: requires perl-libwww
:: perl-http-request-ascgi: requires perl-libwww
:: perl-module-cpants-analyse: requires perl-libwww
:: perl-module-install: requires perl-libwww>=5.812
:: perl-net-trac: requires perl-libwww
:: perl-net-whois-raw: requires perl-libwww
:: …
Run Code Online (Sandbox Code Playgroud)

arch-linux pacman package-management

75
推荐指数
1
解决办法
12万
查看次数

在 Yum 中列出依赖于另一个已安装包的包

我正在尝试在 RHEL5 上安装一个 3rd-party RPM 包,它依赖于 sqlite 3.4 版。根据 Yum 我已经安装了 3.3.6。

有没有办法列出依赖于 sqlite 3.3.6 的已安装包?

yum rhel package-management

68
推荐指数
4
解决办法
8万
查看次数

如果出现问题,我可以回滚 apt-get 升级吗?

在启动aptitude upgradeor之前,有没有办法apt-get upgrade设置一些东西,以便您可以“轻松”将系统回滚到实际升级之前的“apt”状态,如果出现问题?

即,例如,重新安装在此过程中升级的旧版本软件包。

(编辑)一些提示:我知道etckeeper例如使用一些钩子,apt以便在apt安装或卸载软件包时通知它。我想可能有某种脚本可以保存新安装的软件包列表及其以前的版本号,以便能够从apt缓存 ( /var/cache/apt/archives) 中重新安装它们。还有checkinstall哪些可以跟踪文件修改...

有关如何正确实现这一目标的任何详细信息?

aptitude debian apt upgrade package-management

67
推荐指数
2
解决办法
12万
查看次数

如何删除 pacman 在 Arch Linux 中安装的旧包?

我最近安装了 Arch Linux,发现我正在以相对较快的速度消耗大量存储空间。无论出于何种原因,我已经在大约 2 周内使用了 17GB。我没有安装很多软件,所以我相信所有旧包都在某处维护。

为了支持这一点,我注意到如果我安装了一个软件包,删除该软件包,然后重新安装它,pacman 只需解压缩并重新安装软件,而无需重新下载它。

在我安装了我的基本系统之后,在额外的软件之前,我使用了大约 2GB 左右。从那以后,我只安装了 Matlab、Skype、Wine 和其他一些小程序。当然,我也安装了缺少的库等,但价值不到 15GB。

我在这里完全错了还是 Arch 在下载/升级到新版本时从不删除旧包?

如果是这样,我如何删除这些未使用的包?

另外,当我删除已安装的软件包时,我使用 pacman -R ...

arch-linux pacman package-management

67
推荐指数
4
解决办法
11万
查看次数

未找到命令:CentOS 7 上的 netstat、nmap

我正在使用以下 CentOS:

$ cat /etc/centos-release 
CentOS Linux release 7.0.1406 (Core) 
Run Code Online (Sandbox Code Playgroud)

命令nmap,netstatlsof在 CentOS7 上找不到。为什么?

$ type -a nmap
bash: type: nmap: not found

$ type -a netstat
bash: type: netstat: not found

$ type -a lsof   
bash: type: lsof: not found
Run Code Online (Sandbox Code Playgroud)

我应该怎么做才能使它们工作?

centos package-management

67
推荐指数
5
解决办法
27万
查看次数

列出显式安装的软件包

在 Gentoo 中有/var/lib/portage/world一个包含我明确安装的包的文件。明确我的意思是,我选择的包,不包括默认安装的任何东西,或由依赖项引入的。

是否有类似的文件或命令可以在 Ubuntu 中查找该信息?

ubuntu package-management

57
推荐指数
5
解决办法
3万
查看次数

非根包管理器

从我的研究中,我似乎注意到所有包管理器都坚持被用作特权用户,并且必须安装到/.

通常,我喜欢做的是创建一个一次性帐户,编译一些软件,然后$HOME为该帐户安装。我可以尝试各种设置,然后当我完成后,只需销毁帐户。

然而,编译软件变得乏味。

我的经验是真的只是限于yum,但我不明白为什么我会无法回购文件拖放到~/etc/yum.repos.d并已百胜一切安装到主账户。

是否有任何理由必须将包管理器用作特权用户来安装软件?

yum root not-root-user package-management

56
推荐指数
5
解决办法
2万
查看次数

我应该使用“apt-get remove”还是“apt-get purge”?

对于卸载应用程序(或包),我应该使用apt-get remove package-name还是apt-get purge package-name

它们中的任何一个相对于另一个有什么优势?

apt package-management

54
推荐指数
2
解决办法
9万
查看次数

Fedora 相当于“apt-get purge”是什么?

在 Debian 中,至少有两种方法可以删除软件包:

  • apt-get remove pkgname
  • apt-get purge pkgname

第一个保留系统范围的配置文件(即那些在“ /etc ”中找到的文件),而第二个则没有。

Fedora 与第二种形式的等价物是purge什么?或者也许我应该问是否yum remove pkgname真的保留了配置文件。

yum fedora apt package-management

53
推荐指数
2
解决办法
17万
查看次数