Powielanie instalacji Linux opartej na Yum

20

Biorąc pod uwagę instalację opartą na Yum (szczególnie w moim przypadku, naukową instalację systemu Linux 5.1 x86_64), w jaki sposób powielę zainstalowane programy i narzędzia na nowej maszynie opartej na Fedorze Core x86_64? Sprzęt jest bardzo podobny, ale nie identyczny, i istnieje oczywista różnica, że ​​SL5 opiera się na EL, a nie na Fedorze; W dużej mierze zamierzam zduplikować wrażenia użytkownika z oryginalnego pudełka (SL) na nowe pudełko (FC).

Wesley Burr
źródło
Na marginesie tylko w przypadku, gdy nie wiem, to już: można uzyskać listę programów do zainstalowania na nowym systemie, a następnie skopiować ustawienia w katalogu domowym (pliki i katalogi, których nazwy zaczynają z .)
phunehehe
Uważaj tylko na niedopasowania wersji. Zniszczyłem ustawienia z powodu niezgodności konfiguracji w moim katalogu domowym. Zwykle działa poprawnie migracja do nowszych wersji, ale czasami występują trudności.
Matt Simmons,

Odpowiedzi:

18

Możesz utworzyć listę zainstalowanego oprogramowania za pomocą:

$ rpm -qa > installed-software.log

Ponieważ są oparte na różnych dystrybucjach, nie jestem pewien, jak zrobiłbyś instalację.

Gdybym kopiował go do nowej instalacji tej samej dystrybucji, uruchomiłbym następującą komendę jako root

# yum -y install $(cat /home/user/installed-software.log)
Steve Burdine
źródło
8

Pobierz listę zainstalowanych RPM na swoim urządzeniu RHEL:

yum list installed |tail -n +3|cut -d' ' -f1 > installed_packages.txt

Zainstaluj pakiety w Fedorze:

yum -y install $(cat installed_packages.txt)

Uwaga: Fedora jest projektem badawczo-rozwojowym dla RHEL i powinieneś być w stanie zainstalować większość tych pakietów w Fedorze.

Metoda Stevesa wyświetla numery wersji i chcesz tego uniknąć.

Dejan
źródło
Fedora jest dystrybucją na własnych warunkach, z agresywną postawą bycia pierwszym z najlepszym oprogramowaniem open source / wolnym oprogramowaniem. Red Hat Enterprise Linux to bardzo konserwatywna dystrybucja, prawie opozycja dimetral. Red Hat pobiera (wybrane pakiety) wersję Fedory i po stabilizacji i kontroli jakości odcina od niej Red Hat Enterprise Linux. Nazwanie Fedory „projektem badawczo-rozwojowym” jest równie błędne, jak stwierdzenie, że Debian wykonuje prace badawczo-rozwojowe dla Fedory (tak, Fedora pobiera łaty, a nawet kompletne pakiety z Debiana i viceversa).
vonbrand
2

Możesz wypróbować Kickstart lub skonfigurować serwer instalacyjny / rozruchowy PXE dla wielu dystrybucji. Lub jeśli niektóre z twoich maszyn są bezdyskowe, możesz wypróbować metodę LTPS (jest to tak zwane - cienki klient - IIRC), patrz również tutaj

EDYCJA: Jeśli tak jest, zobacz to

bitek
źródło
1
Myślę, że pytaniem było raczej pytanie o to, jak uzyskać listę zainstalowanych aplikacji na jednym pudełku / dystrybucji i zainstalować je na innym pudełku / dystrybucji, niż zautomatyzowany sposób przeprowadzania instalacji.
Frozenskys,
To drugie jest poprawne i było dokładnie tym, czego potrzebowałem.
Wesley Burr,
0

Wierzę, że odpowiedź Dejana /unix//a/25729/346788 jest najlepsza dla yumsystemu bazującego. Jednak może nie działać, gdy ssh na serwerze ze względu na bufor. Szczegóły na temat Jak uzyskać wynik `yum list`, aby pozostać w jednym wierszu podczas otrzymywania wyniku za pomocą zdalnego polecenia ssh?

Dlatego, aby nieco poprawić, aby uzyskać pełną listę pakietów:

yum list installed | xargs -n3 | column -t  | tail -n +3 |cut -d' ' -f1

Aby uzyskać listę zainstalowanych pakietów z rpm:

yum list installed | xargs -n3 | column -t | grep -v "@" | tail -n +3 |cut -d' ' -f1

Aby uzyskać listę zainstalowanych pakietów z yum:

yum list installed | xargs -n3 | column -t | grep "@" | tail -n +3 |cut -d' ' -f1
Han Luo
źródło
Chociaż tak jest - myślę? - przydatny dodatek do odpowiedzi Dejana na to pytanie, nie jest to odpowiedź na to pytanie. Być może możesz napisać pytanie, które odpowiada powyższemu postowi, a następnie przesłać (tj. Zapytać) jako nowe pytanie. Również tego typu odpowiedzi powinny wyjaśniać, co robią (i jak) oraz przykładowe wyniki.
G-Man mówi „Przywróć Monikę”