Opensuse
如何使用 zypper 從列表中安裝軟體包?
**結束狀態。**我想重新格式化我的 / 分區,重新安裝 opensuse tumbleweed,然後安裝與現在相同的軟體包。
**問題。**我做了一個看起來很糟糕的選擇,將根文件系統格式化為 btrfs。我之前擁有的 20 GB 空間已經足夠了,比如 ext3,但我無法跟上 tumbleweed 進行大量更新的 snapper 快照管理。
**部分成功。**我可以使用 導出我的儲存庫列表
sudo zypper lr -u --export repo.list
,然後使用sudo zypper addrepo repo.list
.sudo zypper search --installed-only > installed.packages
我可以使用或導出已安裝包的列表rpm -qa | sort
。但我不知道如何從列表中安裝軟體包,或者生成可在分發安裝時由 opensuse 使用的軟體包列表。
編輯:autoyast可能是要走的路,但比我想要的更重量級。
用於
--queryformat
列出沒有版本的包名rpm -qa --qf "%{NAME}\n" > installed_pkgs.txt
要安裝,請將文件的內容通過管道傳輸到
xargs
cat installed_pkgs.txt | xargs sudo zypper install
它可能很慢,但您可以使用這個 bash 腳本:
IFS=$'\n' for package in `cat installed.packages`; do zypper install $package done