Удалите / раздел var и замените его / var в / (корневой) раздел

~/.config каталог .config в рамках Вашего корневого каталога (~ сокращение от того каталога).

4
14.11.2012, 16:48
3 ответа

Можно загрузить машину с живым CD ОС. Это позволит Вам перемещаться /var не повреждая ОС.
Я сделал это в другом направлении с /tmp, /var, /opt, и /usr на установке SLES. Я думаю, что это работало бы над дистрибутивами других.

  1. Загрузите живой CD
  2. Смонтируйте старое /var раздел в /mnt/var
  3. Смонтируйте реальный корневой каталог в /mnt/root
  4. Корректный /mnt/root/etc/fstab
  5. Удалите старую точку монтирования с rmdir /mnt/root/var
  6. Выполненный a cp -a /mnt/var /mnt/root/var
  7. Загрузите реальную ОС
8
27.01.2020, 20:49
  • 1
    У Вас все еще будет раздел, который был /var но можно использовать менеджера по разделу, чтобы зафиксировать тот –  Yuugian 14.11.2012, 16:31
  • 2
    Могли Вы объяснять, как исправить /etc/fstab? –  Bakuriu 14.11.2012, 16:36
  • 3
    в /mnt/root/etc/fstab (перед перезагрузкой) удалите строку, которая выглядит подобной /dev/sdb1 /var –  Yuugian 14.11.2012, 16:44
  • 4
    у меня нет строки, которая запускается с /dev/sd* но у меня есть строка, которая запускается с UUID=5ebc2009-3089-4f5b-ac93-d8d4738913b3 /var ext4 defaults то, которому я верю, относится к /var раздел. Таким образом, я просто удаляю это, не изменяя ничто больше? –  Bakuriu 14.11.2012, 16:47
  • 5
    , я думаю, что рецепт выше не будет работать без дополнительного шага. Внутри /mnt/root будет a var каталог для служения в качестве точки монтирования для / раздела var. По-видимому, это будет пусто. Это должно быть удалено перед шагом 5, еще cp команда скопирует /mnt/var каталог в /mnt/root/var/, вместо того, чтобы делать копию из него как /mnt/root/var, как желаемый. (Я предложил редактирование с этой целью, но оно было отклонено.) –  dubiousjim 14.11.2012, 17:32

Ответ Yuugian является определенно безопасным и надлежащим способом пойти. Но для некоторых людей, могло бы быть хорошо знать, что можно на самом деле сделать это, даже не закрывая рабочую систему. Можно рассматривать этот ответ как учебное или последнее средство в ситуациях, где начальная загрузка от liveCD не является опцией.

Отказ от ответственности: Эта процедура не рекомендуется для пользователей новичка. Если Вы не помещаете достаточно внимания к шагу 1, Ваша система могла бы отказать, в то время как Вы выполняете следующие шаги, и можно испытать неожиданное поведение различных приложений после перезагрузки. Перед попыткой этого необходимо проверить, что Вы знакомы с /var описание на tldp и Ваших определенных для распределения отклонениях от этого.

  1. Близкие программы, которые имеют открытые файлы под /var. Запустите путем переключения на консоль (один из "реальных" ttys) и закрытия X-сервера, а также среды рабочего стола (kdm/gdm/lightdm/...) при использовании того. Если Вы не знаете, как сделать это или что это означает, НЕ продолжайте - возможности, что Вы могли бы повредить Вас, система слишком высока, и существует только слишком много возможностей покрыть в пошаговой процедуре здесь - извините!

    Использовать lsof или fuser найти остающиеся программы, которые имеют файлы, открытые под /var. Заметьте, что, если программа была запущена как системная служба, всегда лучше остановить сервис, вместо того, чтобы уничтожить задачу. Если существуют некоторые программы/сервисы, слишком упрямые для контакта с этим путем, Вы могли бы также попытаться переключиться на однопользовательский режим (init уровень 1) - если это приемлемо для Вас. В большинстве случаев было бы нормально иметь несколько (!) файлов, все еще открываются под /var - например, изодромные с предварением файлы под /var/run, в случае, если Ваша система использует то местоположение.

  2. Смонтируйте свой корневой раздел (во второй раз). Просто выберите любой пустой каталог в качестве временной точки монтирования для того - я буду использовать /mnt/tmp как пример. Обычно mount команда (без параметров) не отобразит название физического устройства позади Вашего корневого раздела, необходимо будет проверить, какой - это (если Вы не знаете наверняка). Можно обычно получать информацию любой от lsblk (если у Вас есть он в Вашей системе), или конфигурация загрузчика, или cat /proc/cmdline, или путем идентификации раздела размером, о котором сообщают fdisk.

  3. Копия /var содержание. После того как Вы нашли раздел и смонтировали его, скопируйте содержание /var к Вашему rootfs (смонтированный в новом месте), с помощью cp -ad, такой как: cp -ad /var /mnt/tmp/.Примечание: если Ваш дистрибутив все еще справляется /var/run и /var/lock каталоги вместо недавно представленного /run/, необходимо пропустить содержание этих двух каталогов. Если extglob включен в Вашей оболочке, можно сделать то использование cp -ad /var/!(run|lock) /mnt/tmp/var/ - или используйте cpio вместо этого. Только создать эти два каталога под /mnt/tmp/var/ и набор их полномочия правильно после копирования.

  4. Удалите старый /var запись в fstab. Безопасный путь состоит в том, чтобы прокомментировать его, конечно.

  5. Перезагрузка

2
27.01.2020, 20:49
  • 1
    Офлайновый или однопользовательский режим путь является самым безопасным - только стоит попытаться делать попытку живого переключения, если уменьшение времени простоя важно. –  jw013 14.11.2012, 21:58

Под корнем:

cp -rf /var /var-new && umount /var && mv /var /var-old && mv /var-new /var

впоследствии удалите или прокомментируйте / точку монтирования var от/etc/fstab и перезагрузки

-1
27.01.2020, 20:49
  • 1
    я сильно сомневаюсь относительно этого, работает. По крайней мере, читая ответ @rozcietrzewiacz я полагаю, что это повредит Вашу систему. –  Bakuriu 14.11.2012, 21:37

Теги

Похожие вопросы