Chcę migrować konfigurację pulpitu Ubuntu do nowego urządzenia z innym sprzętem. Jak najłatwiej to zrobić? / etc / zawiera ustawienia specyficzne dla maszyny i sprzętu, więc nie mogę po prostu skopiować go na ślepo. Podobny problem istnieje w przypadku zainstalowanych pakietów.
edycja: Jest to przejście z x86 na x86-64.
Odpowiedzi:
Po pierwsze, jeśli zamierzasz nadal uruchamiać 32-bitowe pliki binarne, tak naprawdę nie zmieniasz architektury procesora: nadal będziesz działał na procesorze x86, nawet jeśli jest on również w stanie robić inne rzeczy. W takim przypadku zalecam klonowanie instalacji lub po prostu przeniesienie dysku twardego, jak opisano w Przenoszenie instalacji linuksowej na nowy komputer .
Z drugiej strony, jeśli chcesz mieć system 64-bitowy (w ujęciu Ubuntu:
amd64
architektura), musisz ponownie zainstalować, ponieważ nie możesz instalowaćamd64
pakietów wi386
systemie i odwrotnie. ( Zmieni się to, gdy pojawi się Multiarch ).Wiele dostosowań znajduje się w twoim katalogu domowym i możesz skopiować to na nowe urządzenie. Ustawienia systemu nie mogą być kopiowane tak łatwo ze względu na zmianę architektury procesora.
W systemie Ubuntu 10.10 i nowszych wypróbuj OneConf .
Jedną z głównych rzeczy, które chcesz odtworzyć w nowej instalacji, jest zestaw zainstalowanych pakietów. W przypadku dystrybucji opartych na APT możesz użyć
aptitude-create-state-bundle
polecenia (częściaptitude
pakietu), aby utworzyć archiwum zawierające listę zainstalowanych pakietów i ich konfiguracji debconf orazaptitude-run-state-bundle
na nowym komputerze. (Dzięki intuicyjnemu za poinformowanie mnie o tymaptitude-create-state-bundle
.) Zobacz także listę wyraźnie zainstalowanych pakietów Ubuntu oraz cytowane tam pytania Super User i Zadaj Ubuntu, zwłaszcza odpowiedź Telemachusa na temat ręcznego wykonywania tej części.W przypadku rzeczy, które zmieniłeś
/etc
, musisz je przejrzeć. Wiele ma związek z konkretnymi ustawieniami sprzętu lub sieci i nie należy ich kopiować. Inni mają do czynienia z osobistymi preferencjami - ale w miarę możliwości powinieneś ustawiać osobiste preferencje dla poszczególnych użytkowników, aby ustawienia były zapisywane w katalogu domowym.Jeśli planujesz z wyprzedzeniem, możesz użyć etckeeper, aby przejąć
/etc
kontrolę wersji ( szybki start etckeeper ). Nie musisz wiedzieć nic o kontroli wersji, aby korzystać z etckeeper, musisz tylko zacząć uczyć się, jeśli chcesz z niego skorzystać, aby robić wymyślne rzeczy.źródło
/home
,/etc
,/var
,/usr
i wszystko) i wystarczy zmienić kilka plików wetc
tej edycji potrzebie. To nie jest opcja, jeśli przechodzisz na inną architekturę, ponieważ musisz ponownie zainstalować wszystkie pakiety binarne./etc
osobno za pomocą znaczącego komunikatu zatwierdzenia (w przeciwieństwie do polegania na hakach automatycznego zatwierdzania) i zatwierdzać zmiany specyficzne dla komputera w innej gałęzi niż preferencje sysadmin lub konfiguracja w całej witrynie. Ale nawet podstawowe użycie pomaga śledzić zmiany, które wprowadziłeś/etc
, abyś mógł je replikować na nowym komputerze.aptitude-create-state-bundle
?aptitude-create-state-bundle
. Dzięki, jest to automatyczny sposób odtwarzania stanu zarządzanego przez APT (lepszy niż sposób ręczny, który nie odtwarzał źródeł APT ani ustawień debconf). Możesz także dodać odpowiedź na powiązane pytania .Oto jak uzyskać wszystko oprócz tego, co ręcznie skonfigurowałeś:
Edytuj te pliki, jeśli to konieczne, do wszystkiego, co zależy od łuku (np. Obraz linux), ale nie sądzę, że będzie ich wiele.
Skopiuj te pliki do nowego systemu, a następnie uruchom:
Będziesz także chciał skopiować (najlepiej z rsync) / home i inne katalogi danych do nowego systemu.
Pozostaną tylko pliki konfiguracyjne z głównych pakietów (np. Apache, bind, cronjobs i in.).
źródło
aptitude search '~i !~M'
do zapisywania listy ręcznie zainstalowanych pakietów; zobacz tę odpowiedź, aby uzyskać więcej informacji.Naprawdę wiele Windows voodoo dotyczących sterowników, rejestru i wrażliwości na zmiany płyty głównej jest mniej dotkliwe w Linuksie, jeśli używasz ogólnego jądra ze wszystkimi sterownikami jako modułami, co jest typową sytuacją w Ubuntu. Są to jedyne rzeczy w / etc, które zależą od znanego mi sprzętu:
Jeśli GPU jest taki sam, kontroler napędu jest tego samego typu i nie masz wielu domowych skryptów zależnych od nazw interfejsów sieciowych, nie przewiduję poważnych problemów.
źródło
/etc/default/grub
jako, jako wartośćGRUB_CMDLINE_LINUX_DEFAULT
) należy dodać do tej listy.[dodając do tej doskonałej odpowiedzi ]
Widzę, że wspominasz o trosce o zainstalowane pakiety. Rozumiem przez to, że masz zamiar przenosić dysk z jednej maszyny na drugą. Zakładając, że twoje dwa komputery mają architekturę x86, jedynym problemem, jaki mogę wymyślić, może się zdarzyć, jeśli twoja instalacja jest 64-bitowa, a twój nowy komputer nie. Jeśli wokół jest coś innego, nie powinno być problemu.
źródło