Tôi không biết có cách nào tốt hơn (có lẽ là có), nhưng tùy thuộc vào quy mô bạn cần, bạn có thể sử dụng tính năng tìm kiếm của aptitude cho một phần của máy móc. Nó cho phép bạn tìm kiếm các gói phù hợp với một mẫu. Vì vậy, aptitude search '~i'
cung cấp cho bạn tất cả các gói cài đặt
Chúng ta cần phải đi một bước xa hơn, mặc dù. Người quản lý gói muốn biết gói nào được bạn yêu cầu trực tiếp và gói nào được kéo vào vì các gói khác. Không có thông tin đó, những thứ xấu xí có thể xảy ra. Vì vậy, chúng tôi có thể mở rộng trên mẫu tìm kiếm đó để chọn các gói không được cài đặt tự động:aptitude search '!~M ~i'
Tính năng tìm kiếm được trình bày chi tiết trong hướng dẫn tham khảo của Aptitude .
Bây giờ, bạn có danh sách các gói để cài đặt. Bạn có thể định dạng đầu ra khi cần thiết bằng cách chuyển cờ -F đến lệnh đó, như -F '% p' để nhận danh sách chỉ với tên gói.
Ví dụ: bạn có thể chạy cái này trên máy 1 :
aptitude -F "%c %p" --disable-columns search '!~M ~i' | awk -F " " '{ print "apt-get -y install " $2 }' > aptshell.sh
Sau đó sao chép aptshell.sh
tệp vừa tạo vào máy 2 và sử dụng lệnh này trên máy 2 để chạy ở đó:
sudo sh aptshell.sh
Sau đó lặp lại quá trình này, với bản gốc máy 2 như mới máy 1 , và bản gốc máy 1 như mới máy 2 . Bây giờ mỗi máy có tất cả các gói mà trước đây chỉ có trên các gói khác.