Od kilku miesięcy badam wiedzę na temat systemu Linux za pośrednictwem VirtualBox i zdecydowałem, że chcę ustawić go jako główny system operacyjny i zainstalować go na dysku twardym. Mam wiele plików, pakietów i ustawień (takich jak zmiany .bashrc), które chciałbym przynieść, instalując je bezpośrednio na dysku twardym, więc jak to zrobić? Ponadto, teraz uruchamiam Ubuntu, jeśli zdecyduję się przejść na podobny system Debian lub RPM, dystrybucja oparta na RHEL byłaby to ten sam proces? Jakie względy musiałbym wziąć pod uwagę, jeśli w ogóle?
16
Odpowiedzi:
Zarządzanie pakietami jest jednym z głównych wyróżników między dystrybucjami. Pomiędzy niepowiązanymi dystrybucjami nie będzie można nic robić automatycznie. Różne dystrybucje dzielą oprogramowanie na różne zestawy pakietów i używają różnych nazw.
Między maszynami z tą samą wersją tej samej dystrybucji można osiągnąć podobną instalację, odtwarzając listę zainstalowanych pakietów. W systemach używających
apt
, takich jak Debian i pochodne (Ubuntu, Mint,…), używajapt-clone
. Zobacz Jak replikować wybrane pakiety instalacyjne z jednego systemu Debian na inny? (Debian Wheezy) dla dokładnych poleceń. W skrócie, na starej maszynie:Skopiuj
foo.apt-clone.tar.gz
na nowy komputer i uruchomapt-clone
może działać między powiązanymi dystrybucjami, np. Debian i Ubuntu. Użyjrestore-new-distro
zamiastrestore
w tym przypadku. Jeśli to się nie powiedzie, użyj metody ręcznej przy pomocydpkg --get-selections
iapt-mark
, i majstruj przy liście pakietów, aż apt będzie zadowolony.W przypadku własnych ustawień jest to prostsze: wystarczy skopiować pliki kropek z katalogu domowego. Z reguły konfiguruj rzeczy niezwiązane ze sprzętem na koncie, a nie w całym systemie; ułatwi to skopiowanie ich na inny komputer.
źródło
foo.apt-clone.tar.gz
to skompresowana smoła wszystkich zainstalowanych plików binarnych. Nie zdawałem sobie sprawy, że to po prostu lista zainstalowanych pakietów. Czy obejmuje to również numery wersji z opóźnieniem?.... version mismatch: libgl1-mesa-dri, libmirprotobuf3, xserver-xorg-legacy, libgbm1, libmirclient9, xserver-common, libxatracker2, gnome-software, libmircommon7, libwayland-client0, mesa-vdpau-drivers, adobe-flash-properties-gtk, libwayland-server0, xserver-xorg-core, conky-all, libgles2-mesa, libmircore1, libosmesa6, x11proto-core-dev, dkms, libgl1-mesa-glx, adobe-flashplugin, libegl1-mesa, gnome-software-common, libglapi-mesa, libwayland-cursor0, ubuntu-software, libwayland-egl1-mesa Note that you can use --with-dpkg-repack to include those packges in the clone file.
Jeśli przebywasz w rodzinie Debiana, tak, możesz je bardzo łatwo przenieść. Po prostu wyświetl listę aktualnie zainstalowanych pakietów, zapisz je w pliku, a następnie przeczytaj ten plik, aby je ponownie zainstalować:
Zapisz zainstalowane pakiety w pliku
installed
:W nowo zainstalowanej dystrybucji opartej na Debianie zainstaluj zapisane pakiety:
Możesz też użyć do tego narzędzia GUI. Mięta ma bardzo ładny o nazwie
mintbackup
:Następnie z nowej instalacji:
źródło
dpkg --get-selections | awk '$2 == "install" {print $1}' > instlpkg
równoważny? A może skorzystasz z yum install alien na RHEL / Fedora / CentOS?apt-clone
teraz, który automatyzuje ten. Zobacz unix.stackexchange.com/questions/191662/...apt-clone
wyżej. 1/3 z tych błędów opublikowanych w komentarzu powyżej.Ustawienia są zwykle przechowywane w
/etc/
. etckeeper może się przydać. Jego głównym celem jest przekształcenie/etc/
się w repozytorium git, ale filtruje również niektóre części, których nie chciałbyś kopiować, jeśli dobrze rozumiem. Tak więc, jeśli jesteś zaznajomionygit
, być może lepiej będzie użyćetckeeper
scalenia zmian w nowej instalacji.źródło