Как перенести персональные настройки в новую систему?

Аватар пользователя birukoff

С натупившим Новым Годом всех!

Думаю, многих будет интересовать вопрос сабжа после выхода 11 версии. Я имею ввиду настройки почты, закладки браузеров, плагины и все такое.

1.Как корректнее и правильнее сделать перенос? Подробная информация многим поможет избежать проблем и сохранить время.
2.В режиме обновления система сама решит эту задачу? Имеет ли смысл обновлять с точки зрения объема на диске, то есть при обновлении система уберет старый мусор (старые пакеты и все, что с ними связано) самостоятеьно, или нет?

Аватар пользователя DRVTiny

Re: Как перенести персональные настройки в новую систему?

Тема очень интересная, это точно! Только Вы суть вопроса с ног на голову поставили: проблема не в том, что настройки, сделанные Вами ранее, могут не сохраниться (хотя, безусловно, Ваши настройки в /etc так или иначе будут загублены), а в том, как с этими настройками будут работать обновлённые программы. Опять же, следует учитывать то, что разработчики ещё и постоянно меняют название каталогов, в которых их программы хранят свои настройки или - что не легче - меняется структура вложенных подкаталогов, переименовываются и перемещаются конфигурационные файлы, при этом ещё и меняя свой формат (постоянно "совершенствовать" внутреннюю организацию конфигурационных файлов, к сожалению, уже чуть ли доброй традицией стало в мире OpenSource).
Так что... советую чётко разделить в своём домашнем каталоге данные и настройки (к примеру, у меня данные вообще не на разделе /home находятся: доступ к ним осуществляется через символическую ссылку $HOME/Desktop, указывающую на /home/AllUsers/Desktop/DRVTiny), а из настроек сохранить только самое необходимое, после чего удалить из $HOME все каталоги и файлы и начать установку новой версии дистрибутива.

Аватар пользователя birukoff

Re: Как перенести персональные настройки в новую систему?

Давайте подробнее обсудим это в контексте новой версии, начиная с настроек, хранящихся в /home, и кончая системными.

Аватар пользователя woodoo

Re: Как перенести персональные настройки в новую систему?

Цитата:
birukoff писал:
Давайте подробнее обсудим это в контексте новой версии, начиная с настроек, хранящихся в /home, и кончая системными.

Можно и подробнее. ;-)
/home - на отдельном разделе?

Аватар пользователя DRVTiny

Re: Как перенести персональные настройки в новую систему?

Вот моя схема:
/home/USER - отдельный раздел, в нём преимущественно настройки, но также есть каталоги apps для тяжеловесных "комплектов" софта (OpenOffice.org, AMAYA, Unreal Tournament 2004 и ещё много всего) и bin - в основном для моих bash-скриптов и небольших бинарников, сюда же ведут ссылки на программы из apps
В /home/USER устанавливается ссылка Desktop на /home/AllUsers/Desktop/USER. /home/AllUsers - у меня точка монтирования раздела с пользовательскими данными (специально установлен noexec при монтировании, поскольку кроме данных там ничего быть не должно). По возможности в /home/USER/Desktop переносим все личные данные (закладки, архив переписки в Mail), оставляя в /home/USER только ссылки на них

Перед установкой из /home/USER удаляем все каталоги настроек, сохраняя в архивах (tar.bz2, например) лишь особо ценные индвидиуальные настройки, создающие привычное окружение, своеобразный "микроклимат" для workplace'а, после чего переносим архивы в /home/USER/Desktop, а после установки нового дистрибутива возвращаем всё на свои места.

Ну вот и всё вроде бы... Конечно, было бы неплохо, если бы стандарт LFS изначально предусматривал разделение дрмашней папки пользователя на составляющие, и тогда, возможно, в /home/USER мы видели бы не свалку, в которой чёрт ногу сломит (и никакие точки в начале имён файлов от этого не спасут), а после любой переустановки/обновления вообще полный хаос воцаряется, но простую и логичную структуру: например, /home/USER/etc - пользовательские настройки, /home/USER/Desktop - данные (в том числе /home/Desktop/Mail - почтовый ящик), /home/USER/bin - бинарники, видимые из $PATH, /home/USER/opt - большие программные пакеты, создающие собственную структуру каталогов и адресующие собственные компоненты по относительным ссылкам и т.д., но... как говорится, об этом приходится только мечтать, так что пока линуксоид должен быть кузнецом собственного счастья, самостоятельно занимающимся организацией своих личных данных таким образом, чтобы потом "не было мучительно больно".

Аватар пользователя birukoff

Re: Как перенести персональные настройки в новую систему?

Да, /home у меня на отдельном разделе. Наверное, так делают в большинстве случаев.

Аватар пользователя sergeil

Re: Как перенести персональные настройки в новую систему?

Цитата:
birukoff писал:
Да, /home у меня на отдельном разделе. Наверное, так делают в большинстве случаев.

IMHO, перенос настроек весьма нежелателен и сопряжен с риском. Скажу больше, попытка перенести настройки может спровацировать странные глюки и даже выпадание программ в "core" при старте.

Мой Вам совет: Начните с чистого листа и настройте все по-новой.
Не думаю, что это займет у Вас много времени.

Аватар пользователя lystor

Re: Как перенести персональные настройки в новую систему?

Цитата:
sergeil писал:
IMHO, перенос настроек весьма нежелателен и сопряжен с риском. Скажу больше, попытка перенести настройки может спровацировать странные глюки и даже выпадание программ в "core" при старте.

Мой Вам совет: Начните с чистого листа и настройте все по-новой.
Не думаю, что это займет у Вас много времени

+1

Аватар пользователя DRVTiny

Re: Как перенести персональные настройки в новую систему?

Но не может же он вообще всё снести: у любого пользователя Linux, как основной ОС, в $HOME даже за очень короткое время может накопиться уйма персональных данных и уникальных настроек, восстанавливать которые потом "с нуля" будет очень нелегко, а с другой стороны, в $HOME программы сохраняют своё состояние в конфиг-файлах, от присутствия/отсутствия которых в общем ни тепло, ни холодно, поскольку эти настройки и эти данные нужны только программам для собственных сугубо утилитарных нужд.

Аватар пользователя woodoo

Re: Как перенести персональные настройки в новую систему?

Цитата:
birukoff писал:
Да, /home у меня на отдельном разделе. Наверное, так делают в большинстве случаев.

О, задача значительно облегчается. )
Делаю ~так:
1. Перехожу текстовую консоль, login root, runlevel 3.
2. Перемещаю все $HOME's в каталоги с суффиксом *.old. С некоторой достаточно высокой вероятностью uid пользователя в новой системе изменится - а логин в $HOME пользователя без полных прав доступа крайне нежелателен.
3. Копирую в /home/zip: /etc/*, /usr/local/*, /opt/*, /var/ftp/*, /var/mail/* и т.д. при необходимости.
4. Переустанавливаю систему БЕЗ ФОРМАТИРОВАНИЯ раздела и подключения его в качестве /home. Пользователей тоже не создаю. В новой системе /home пустой.
5. Настройка под рутом. Монтирую старый раздел /home в fstab.
6. По одному последовательно восстанавливаю сервисы и остальные настройки системы. Предпочитаю начинать с сети и системы разрешения имен.
7. Создаю заново пользователей.
8. Перемещаю в их новые $HOME рабочие файлы. При изменении локали проблема кодировок нелатинских символов в файловой системе решается с помощью convmv - обнаружил такой пакет в 11 версии.
9. Так как операции выполнял под root - восстанавливаю права пользователя на $HOME и $HOME.old.


10. Дальнейшие операции по переносу настроек желательно выполнять под пользователем.
10а. Не советую оставлять старый $HOME/.kde. Слишком много компонентов начинает "глючить" даже при "подбрасывании" старых файлов настроек.
10б. Каждый компонент, которым пользуется пользователь, лучше настраивать в его присутствии по очереди и приоритету. imho, лучше пусть приложение вообще не будет настроено, чем будет "подглючивать" в процессе использования. ;)
Аватар пользователя DRVTiny

Re: Как перенести персональные настройки в новую систему?

Woodoo, вот интересно, а откуда Вы узнаёте, какие настройки можно преносить в новую систему, а какие нет? И зачем вообще постоянно таскать за собой кучу всякого хлама, если можно просто сразу отделить мух от котлет и не хранить свою переписку с Господом Богом в одной куче-мале с временными файлами кэша браузера, дампами и логами? Опять же, хоть убейте, но не могу я понять, зачем нужно куда-то копировать каталоги /usr/local, var/ftp/mail и т.д., если их можно просто изначально вынести на отдельный раздел, а в соотвествующие места файловой системы просто символических ссылок понатыкать.
Зачем нужен /opt, если есть /usr/local?

Цитата:
По одному последовательно восстанавливаю сервисы

Это при полной переустановке дистрибутива, а мы вроде бы про установку в режиме обновления говорили... А откуда у Вас эти особо ценные сервисы взялись? Сами написали? Ну так, опять же, разве нельзя их хранить где-нибудь в "тёплом, прохладном месте", так, чтобы в свежеустановленном дистрибутиве для получения доступа к ним было бы достаточно просто подмонтировать раздел, на котором лежит всё созданное собственными руками, можно сказать - нажитое непосильным трудом. Или Вы символическими и жёсткими ссылками по каким-то принципиальным соображениям не пользуетесь?

Аватар пользователя woodoo

Re: Как перенести персональные настройки в новую систему?

Цитата:
DRVTiny писал:
Woodoo, вот интересно, а откуда Вы узнаёте, какие настройки можно преносить в новую систему, а какие нет?

В большинстве случаев - просто. Давайте не забывать, что мы даем советы людям, которые могут не всегда помнить, где и что *нужно* спасти. На советчиках всегда лежит одна обязанность - прежде всего предостеречь от непоправимых ошибок. В данном случае - потерь информации.

Цитата:
И зачем вообще постоянно таскать за собой кучу всякого хлама, если можно просто сразу отделить мух от котлет и не хранить свою переписку с Господом Богом в одной куче-мале с временными файлами кэша браузера, дампами и логами?

Не вижу причин для раздражения. Разве оно того стоит, только лишь по причине незамеченной репризы "...при необходимости..."? Не нужно нам решать/догадываться, где человек делал свои настройки. Например, мне в некоторых случаях было *больно* забыть скопировать логи с "временного прокси". ;-)

Цитата:
Опять же, хоть убейте, но не могу я понять, зачем нужно куда-то копировать каталоги /usr/local

/usr/local/src - *все* ПО, установленное из исходников.
var/ftp/mail - более, чем важно. mail - это еще и *права* пользователей на соответствующие файлы. Если есть гарантия, что uid сохранятся - welcome.

Цитата:
и т.д., если их можно просто изначально вынести на отдельный раздел, а в соотвествующие места файловой системы просто символических ссылок понатыкать.

Разумеется, можно. Но было ли это сделано в данном случае? Человек, который это сделал - сам великолепно об этом помнит.

Цитата:
Зачем нужен /opt, если есть /usr/local?

Некоторые статически слинкованные бинарники, завернутые в rpm, устанавливаются в /opt. И обновляются "туда же". И там же держат свои "наработки". Т.е. (по идеологии RedHat и поддерживающих эту идеологию производителей ПО) /opt - их штатное место. При чем здесь какой-то /usr/local? ;-)
Hint: где нужно, лично у меня - /opt вынесен отдельно.

Цитата:
По одному последовательно восстанавливаю сервисы
Это при полной переустановке дистрибутива, а мы вроде бы про установку в режиме обновления говорили...

В режиме обновления академически не нужно $subj.

Цитата:
А откуда у Вас эти особо ценные сервисы взялись? Сами написали? Ну так, опять же, разве нельзя их хранить где-нибудь в "тёплом, прохладном месте", так, чтобы в свежеустановленном дистрибутиве для получения доступа к ним было бы достаточно просто подмонтировать раздел, на котором лежит всё созданное собственными руками, можно сказать - нажитое непосильным трудом.

Угу, в /etc. Большинство сервисов (старт/стоп скриптов) у меня еще и настрены "по-своему". Но в "новой" системе *может* измениться идеология конфигурации того или иного сервиса - поэтому я предпочитаю не восстанавливать весь /etc (или symlink на него), а только отдельные файлы конфигурации (внимание: ПРИ НЕОБХОДИМОСТИ). В случае с /etc алгоритм проще:
- сохранить все
- восстановить необходимое, сохранить копию
- убедиться в течение некоторого периода, что все работает и ничего не забыл
- удалить старую копию

Цитата:
Или Вы символическими и жёсткими ссылками по каким-то принципиальным соображениям не пользуетесь?

Только, если это целесообразно.

RSS-материал