Как да възстановите фабричното състояние на Ubuntu

How Reset Ubuntu Factory State



Ако сте потребител на Linux, има вероятност в даден момент да сте счупили операционната система (OS) на вашата дистрибуция. Нещата, които се объркват по време на компилирането на код, инсталирането на зависимости, инсталирането на пакети на трети страни или ръчното редактиране на конфигурационни файлове, не са нечувани.

По -специално Ubuntu няма официален начин за възстановяване на операционната система до състояние по подразбиране, за разлика от Windows 10, който идва с дял за възстановяване или външно устройство за възстановяване. Има обаче неофициални начини да направите това в Ubuntu, въпреки че тези методи не са толкова ефективни, колкото изпълнението на Windows.







Възстановяването на Ubuntu до фабрично състояние може да бъде разделено главно на две части: намиране и инсталиране на липсващ софтуер, доставен с операционната система, и връщане на работния плот към настройките по подразбиране. Този урок ще обясни двата метода, първият ще работи с Ubuntu и всички негови производни, докато вторият ще работи само с Ubuntu и други GNOME базирани производни като Ubuntu MATE. И двата метода имат някои предупреждения, които са обяснени по -долу.



Инсталиране на липсващи пакети, доставени с операционната система

За да намерите и инсталирате липсващи пакети по подразбиране, отново ще ви е необходим инсталационният ISO образ. Ако имате инсталирано някъде инсталационно изображение или имате достъп до предварително направени инсталационни носители, той ще свърши работа. В противен случай ще трябва да изтеглите нов ISO от уебсайта на дистрибуцията.



Сега въпросът е: защо отново се нуждаем от ISO? Отговорът е прост, имаме нужда от начин да разберем какви пакети са изпратени по подразбиране. Всеки ISO на Ubuntu съдържа няколко файла с манифест. Тези файлове на манифеста казват на инсталатора по подразбиране кои пакети да инсталират и кои да премахнат, след като инсталацията за първото стартиране приключи.





Разликата между тези файлове на манифеста (diff) ще ни даде точно това, от което се нуждаем: списък на пакетите по подразбиране за текущата инсталирана версия на Ubuntu. Преди да продължим напред, обърнете внимание на следното:

Вашият ISO образ трябва да има същата версия и архитектура като вашата инсталирана операционна система, в противен случай грешен избор може допълнително да наруши системата ви. За 64-битов работен плот трябва да имате 64-битов ISO образ. Пример: 64-битова инсталация на Ubuntu 19.10 ще изисква само Ubuntu 19.10 64-битов ISO.



За да създадете различен списък, извлечете Ubuntu ISO образ с помощта на файлов или архивен мениджър. В извлечената папка ще намерите a Каспър директория, която съдържа необходимите ни файлове с манифести. Тези файлове са:

  • файлова система.манифест
  • filesystem.manifest-remove

Създайте работеща директория на проекта с име опаковчик .

Копирайте ръчно двата файла с манифест: файлова система.манифест и filesystem.manifest-remove да се опаковчик папка.

Стартирайте терминал вътре опаковчик директория и изпълнете командата по -долу, за да създадете различен файл:

присъединяване -v 1 <(видфайлова система.манифест) <(видfilesystem.manifest-remove) >
diff.txt

Използвайки diff.txt файл, получен от горе, сега най -накрая можем да изпълним команда, която намира и инсталира липсващи пакети по подразбиране:

sudoподходящИнсталирай коткаdiff.txt| захващане -или '^ S*'

В идеалния случай фабричното нулиране трябва да преинсталира липсващите и да понижи всички пакети до версии, доставени на склад. Опитах се да направя това, като манипулирам горния diff.txt файл, но процесът се проваля, когато необходимата версия на пакета просто не съществува в онлайн архива. Изглежда, че Ubuntu понякога премахва най -старата версия на пакет от архива, когато се натрупат твърде много версии или когато остареят. Понижаването на всички пакети до стокови версии също може да причини множество конфликти на зависимости. Така че е безопасно да се каже, че връщането на всеки пакет към версия по подразбиране не е възможно в Ubuntu понастоящем.

Връщане на работния плот на Ubuntu към настройките по подразбиране

Както бе посочено по -рано, този метод ще работи само с настолни среди, базирани предимно на GTK и GNOME. Следващата команда ще върне всички gsettings до техните стойности по подразбиране:

dconf нулиране-f /

Gsettings работи подобно на Windows Registry, действа като централизиран магазин за настройки на приложенията. Аз лично съм тествал тази команда със стоков Ubuntu (GNOME Shell) и Ubuntu MATE (MATE Desktop). Работи като чар и на двете.

Приложенията, използващи други методи за съхраняване на настройки, няма да бъдат засегнати от горната команда. Например, много приложения на трети страни съхраняват конфигурационни файлове в .config или домашна директория. И двете настолни среди са изцяло GTK3, а настройките за стокови приложения се съхраняват само в gsettings. Значи сте покрити.

Последната инстанция

Докато описаните по -горе методи помагат за отстраняване на счупване на системата, някои части винаги остават. Единственият надежден начин за фабрично нулиране на Ubuntu е да направите нова инсталация. Просто архивирайте домашната си папка и други необходими файлове, направете стартиращ USB и сте готови за работа. Преинсталирането на Ubuntu вероятно ще бъде много по -бързо, отколкото да кажем, че Windows 10 прави фабрично нулиране, което може да продължи с часове.

Потребителите на Linux обаче се нуждаят от по -лесен и безпроблемен начин за възстановяване на фабричните настройки или връщане на устройствата обратно. Файловите системи като BTRFS и ZFS имат функции за моментна снимка и връщане назад (донякъде подобни на System Restore в Windows, но по -сложни). Ubuntu 19.10 добави ZFS на root като опция за експериментален инсталатор за настолни компютри, но все още не се очаква широко разпространение както за BTRFS, така и за ZFS.