Jesienne migracje pakietów

Proza dnia codziennego co krok udowadnia nam, że najprostsze rozwiązania częstą są tymi najlepszymi. Bo oto, jakimi wyszukanymi sposobami można przeprowadzić klonowanie zainstalowanych programów pomiędzy kilkoma komputerami w obrębie tej samej dystrybucji? Okazuje się, że wystarczy nam stary, dobry Synaptic, który pomimo pojawienia Centrum Oprogramowania Ubuntu, nadal bezstresowo obsługuje instalację i deinstalację pakietów.

Instalator pakietów – Synaptic

Nim zwolennicy terminala i komendy dpkg wyklną mnie od czci i wiary, napomknę, że taka migracja listy zainstalowanych programów jest możliwa do przeprowadzenia również w trybie tekstowym. Lecz w obliczu XXI wieku, wypada znać również rozwiązania ‚klikalne’. Za pomocą Synaptica operacja wygląda niewyobrażalnie prosto:

  • po uruchomieniu programu (jeżeli go nie mamy – instalujemy), udajemy się do Plik -> Zapisz zaznaczenia
  • w oknie dialogowym wybieramy nazwę i miejsce dla listy, oraz zaznaczamy na samym dole opcję ‚Zapisz pełny stan (nie tylko zmiany)
  • tak przygotowany plik przenosimy na docelowy komputer, gdzie też za pomocą Synaptica odczytujemy listę Plik -> Odczytaj zaznaczenia

W całej metodzie tkwi jeden szkopuł. Jeżeli mamy zainstalowane programy spoza głównych repozytoriów (np. z PPA), musimy również pamiętać o przeniesieniu listy tych repozytoriów – tego Synaptic za nas nie zrobi.

cp -ar /etc/apt/sources.list.d ~/sources.list.d.kopia

… i zawartość tego katalogu kopiujemy na docelowej maszynie do /etc/apt/sources.list.d/.

Ku uciesze pewnej części gawiedzi, uciekliśmy się do użycia terminala i polecenia ‚cp’ – czy wobec tego nie lepiej od razu wykonać całość pracy w terminalu? (zza monitora dobiega pomruk tłumu ‚a nie mówiliśmy…’). Oczywiście, jest to możliwe i jeżeli ktoś nie cierpi na terminalofobię, to za pomocą wspomnianego dpkg może wygenerować listę pakietów:

dpkg --get-selections > moja_lista.txt

… by następnie na innej maszynie nakarmić nią system:

dpkg --set-selections < moja_lista.txt

(należy pamiętać by wykonywać to polecenie z prawami roota - czyli w Ubuntu dodać na samym początku sudo).

Jak rozsądnie zauważą niektórzy, to tematu nie wyczerpuje. Terminal ma jeszcze w zanadrzu np. polecenie apt-mark bądź aptitude. Ale tajemne moce drzemiące w tych komendach pozostawiam do samodzielnego przetestowania.
 

0