|
Модератор
|
||||||
Восстановление системы03.05.2014, 14:49. Показов 8476. Ответов 19
Метки нет (Все метки)
Здравствуйте, уважаемые форумчане!
Есть хорошая мысль создать систему восстановления. Есть мысли, как оно должно быть в итоге. В общем и целом, нужно просто переустановить весь список установленных пакетов пользовательского окружения. Но обо всём по порядку. Предыстория: на днях подключил репозиторий убунты (хотел оттуда поставить пакет приложения), обновил систему и при этом потерял часть пакетов и сломал некоторые зависимости. В целом, система осталась работать нормально. Попортились некоторые графические пакеты. И тогда мне пришла в голову мысль считать список установленных пакетов и сохранить их в файл, а потом, "в случае чего" просто переустановить их все оттуда. Но т.к при этом могут быть подключены сторонние репозитории, отключены те, что по умолчанию (хотя, вообще, по умолчанию в качестве репозитория указан сидюк), нужно восстанавливать и список реп. Отсюда имеем необходимость создания двух файлов в связке: список репозиториев и список установленных пакетов. Эти два файла можно получить, скопировав текущий /etc/apt/sources.list и выполнив
Но это для начала. Далее, хотелось бы его оформить в системное приложение, запускаемое и работающее из-под рута в init2 , то есть в однопользовательском режиме а-ля "Режим восстановления системы", запускаемый из второй строки (по умолчанию) в грубе. А ещё бы лучше - создать и пунктик в меню"Система>Администрирование" во всех графических оболочках (для "особо продвинутых" поколений), чтобы выглядело аналогично виндовому "Восстановлению системы". Есть мысль создать бинарник, запускающий и выполняющий все эти манипуляции, и прописать его в /sbin , т.к. в однопользовательском режиме приложения, находящиеся в /usr и поддиректориях попросту не работают. Строго не судите, но если есть полезные мысли, то прошу вас ими мне помочь.
0
|
||||||
| 03.05.2014, 14:49 | |
|
Ответы с готовыми решениями:
19
Восстановление системы из бэкапа Восстановление файловое системы через RescueMode Хочу отключить восстановление системных файлов (не восстановление системы) |
|
Заблокирован
|
|
| 03.05.2014, 15:02 | |
|
Не покатит так как версии итд меняются только в путь. А вот кэш всех скачанных пакетов для dpkg -i * вполне есть и им и рекомендуется пользоваться в таких случаях.
0
|
|
|
13440 / 7534 / 830
Регистрация: 09.09.2009
Сообщений: 29,554
|
|||||||||||
| 03.05.2014, 15:55 | |||||||||||
|
имхо,
1. создаем список установленных пакетов
1
|
|||||||||||
|
Модератор
|
|||||
| 04.05.2014, 00:35 [ТС] | |||||
|
Как создавать файл с текущими датой/временем в качестве имени? ![]() Наверное, тогда три файла, и в директории /var/recovery создавать уже не отдельные файлы, а сразу папку с датой/временем, а в ней уже - складывать по три файла: sources.list , ответ dpkg и файл настроек системы из /etc Джентльмены, могу я вас попросить написать, хотя бы примерно, скрипт? Ибо не умею сам. ![]() Добавлено через 2 минуты Подразумевается случай с крахом не до основания методом rm -rf, а именно криворукое вмешательство в aptitude или apt-get Добавлено через 7 минут Так ведь в зависимостях же прописаны и номера версий "от до" и apt по-любому будет ставить нужную, если указывать только имя пакета!
0
|
|||||
|
Заблокирован
|
|
| 04.05.2014, 00:41 | |
|
Тогда проще 1 строку записать и не страдать фигнёй. У меня есть свои для кучи ОС в духе pkg install, aptitude install, yum install, yast install итд...
0
|
|
|
13440 / 7534 / 830
Регистрация: 09.09.2009
Сообщений: 29,554
|
|
| 04.05.2014, 00:57 | |
|
0
|
|
|
Модератор
|
||
| 04.05.2014, 11:41 [ТС] | ||
|
Но вот сейчас я не вижу необходимости в обязаловке сохранять все конфиги, да и места займут, наверное, много (при учёте, что бэкап будет не один, а периодически, то куда сохранять? Никакой винт не резиновый.) Хотя, об этом стоит подумать. Итак, общий алгоритм действий пока такой: Сохранение: При первом запуске (или при установке ещё) создаём свою папку в /var . Пусть она называется /var/Recovery При запуске сохранения создаём подпапку с датой.временем. /var/Recovery/04.05.2014.11.20 В ней сохраним два файла sources.list и dpkg.list Всё - сохранение выполнено! Сообщим об этом пользователю через echo. Восстановление (Через echo честно предупредим, что восстанавливаем только набор пакетов приложений): Копируем sorces.list из /var/Recovery/04.05.2014.11.20 в /etc/apt , наличествующий там - удаляем. Вычитываем имена пакетов из dpkg.list и переустанавливаем их все по порядку (просто даём все их в качестве аргумента aptitude) Да, сохраниться - процесс почти мгновенный, а восстанавливаться по такому алгоритму - о-очень долгий: пока aptitude выкачает весь список пакетов системы из сети - вечность. Вопрос тут в другом: если пакет был установлен (и версия не изменена), то его можно и не переустанавливать, наверное? Или таки стоит? И ещё: для ранее установленного пакета нужно reinstall, а для отсутствующего - просто install. Как "на лету" их различить?
0
|
||
|
13440 / 7534 / 830
Регистрация: 09.09.2009
Сообщений: 29,554
|
||||||||
| 04.05.2014, 12:08 | ||||||||
единственное, про "контроль версий" мне сказать вообще нечего, этим вопросом никогда не интересовался.
1
|
||||||||
|
Заблокирован
|
|
| 04.05.2014, 12:12 | |
|
Мда, в общем вы ушли совсем в иную сторону, почему это неверно даже лень ещё раз повторять...
0
|
|
|
13440 / 7534 / 830
Регистрация: 09.09.2009
Сообщений: 29,554
|
|
| 04.05.2014, 12:13 | |
|
ЗЫ. и кстати, перед "изобретением собственного велосипеда" может имеет смысл изучить вопрос на тему "а что есть уже из числа готовых решений?"...
0
|
|
| 04.05.2014, 12:15 | |
|
0
|
|
| 04.05.2014, 12:17 | |
|
Не по теме: Ты нетрезв? Какой ещё воздух? Тут все пишут текстом, печатным...
0
|
|
| 04.05.2014, 12:22 | |
|
Не по теме: Dr_Quake, я не пью. З.Ы. Если хочешь сумничать - то хоть нормально это делай. Здесь, если уж на то дело пошло, не "пишут текстом" - как это вообще понимать? Печатают текст, можно сказать, набирают текст, но никак не "пишут", да еще и "текстом". Только все это не имеет никакого отношения - не "пиши текстом" бессмысленные сообщения, если не хочешь объяснять свою точку зрения.
0
|
|
|
Заблокирован
|
|
| 04.05.2014, 12:24 | |
|
Не по теме: KOPOJI, да, неудачно подобрал фразу. Точку я уже объяснил, зависимости косые, надо брать строго пакеты, либо класть на скачивание идти по списку того ЧТО НАДО, он очень небольшой, а всё остальное само по зависимостям вытянется. Под убунту кстати уже есть нечто в духе искомого - Aptik.
1
|
|
|
Модератор
|
||||||||||||
| 06.05.2014, 13:25 [ТС] | ||||||||||||
|
То бишь, как я понял, ничего подобного штатно-предусмотренному средству в виндовсах "Восстановление системы" (восстановление списка установленных пакетов) в линуксах не предусмотрено. Все варианты, которые я смог найти в интернетах подразумевают работу ручками-ручками в каждом случае необходимости отката назад - предлагается просто переустановить нужные пакеты и/или закатать их на флешку и оттуда бутиться и разбираться вручную в установленной на винте системе с многочисленными вариантами кастомизации. Всё это, конечно, неплохо, но это не совсем (правильнее даже "совсем не") то, что мне нужно. Я хочу сделать для пользователя простой в использовании инструмент для вероятного отката назад к прежней конфигурации, в случае, если пользователь, имея рутовые права, перемудрил с установщиками пакетов и/или репозиториями. Итак, используем первый скрипт Dmitry: Далее, создадим там же файл списка пакетов
2 Почему бы мне не сварганить свой велосипед? Хотя да, огромное вам спасибо - это как раз по теме. ![]() Добавлено через 1 минуту
0
|
||||||||||||
|
13440 / 7534 / 830
Регистрация: 09.09.2009
Сообщений: 29,554
|
|||
| 06.05.2014, 14:38 | |||
|
а по поводу 3 - повторюсь: инстлятор пакетов (тот же dpkg), найдя уже установленный пакет, просто сообщит, что тот уже установлен. т.е., допустим, имевшийся в списке /var/recovery/Date.Time/dpkg.list пакет ААА и бывший в нем самым первым, потребовал при установке, чтобы также был установлен пакет ХХХ, бывший в этом списке самым последним и при этом являвшийся зависимостью для пакета ААА. Инсталятор установит сразу и ААА и ХХХ. А когда он дойдет до конца списка, вычитает из него снова пакет ХХХ, то инсталятор ткнется и сообщит, что пакет ХХХ уже установлен.... Добавлено через 1 минуту
0
|
|||
|
Модератор
|
|||
| 06.05.2014, 18:10 [ТС] | |||
|
Добавлено через 7 минут И да, если оно так будет - замечательно: так сократится время на восстановление. Тут меня беспокоит несколько обратный вопрос: если пакет FFF был установлен по зависимости от DDD в прежней версии, что, собственно, и сломало систему, то таким методом доустановятся/установятся все остальные: AAA, BBB, CCC, EEE, GGG ...etc., а именно вот эти ненужные, если их только не выкинет конфликтами с NNN и KKK, останутся? То есть, как гарантированно удалить ненужные, которых нет в бэкап-списке? Добавлено через 5 минут То есть, наверное, есть смысл взять dpkg.list.now, сравнить его с dpkj.list.back, совпадения вычесть, а разницу - удалить и доустановить соответственно? Так будет и быстрее и точнее.
0
|
|||
|
Заблокирован
|
|
| 06.05.2014, 18:23 | |
|
<command> xorg wget wput x11vnc tightvnc icewm mc rsync echoping mping opera opera-linuxplugins wine wine-mono fping iconv mosh-term trafshow rar zip 3proxy chntpw webmin clamav istgt dd_rescue detach screen e2fsprogs subversion git termatrix ezjail elinks centerim weechat xorg icewm
Ну и всё собственно. Не надо изобретать велосипед, просто надо знать чего тебе надо. Названия итд отличаются от дистрибутива к дистрибутиву, но несильно.
1
|
|
|
Модератор
|
|
| 06.05.2014, 20:08 [ТС] | |
|
Dr_Quake, поймите меня правильно: мне не лень и сто раз запороть систему и по-новой установить и настроить.
Я не о своих проблемах в данном случае думаю, а о том, как сделать удобный и лёгкий тул для новичков в администрировании линуксов. Не по теме: Вы сами можете видеть, что я много ли мало, но таки понимаю уже что к чему и как этим пользоваться. Да, мне хотелось бы понимать больше, работать успешнее и быстрее, но, я думаю, что это ко мне придёт со временем. А вот тем, кто только начинает свой путь на этой ниве и стремится, как я несколько лет назад, объять необъятное, уже будет немного легче. Пусть они ломают ноги и приобретают свой опыт уже немного дальше на том проторённом мной пути и пройдут по моим стопам хоть чуть-чуть безболезненней и быстрее, чем я.
0
|
|
|
Заблокирован
|
|
| 06.05.2014, 20:18 | |
|
А я про что пишу? КАЖДЫЙ пункт надо понимать зачем и почему тебе нужен, можешь с пояснениями. Обычно список дополняется <removecommand> список что чистить.
1
|
|
| 06.05.2014, 20:18 | |
|
Помогаю со студенческими работами здесь
20
Windows 7 (Восстановление системы непредвиденная ошибка при восстановлении системы 0x80071a91) Проходит восстановление системы 100% ,далее на обновлении системы процесс зависает на 99% Восстановление ошибок, восстановление системы
Восстановление системы Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а привычная функция main(). . .
|
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net
REST сервисы временно не работают, только через Web.
Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
|
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
|
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
|
|
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма).
На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
|
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ *
Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи
и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
|
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым.
Но восстановить их можно так.
Для этого понадобится консольная утилита. . .
|
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
|