Мой первый вопрос о неисправности сервера. В спешке я установил локальный сервер с Centos 6.2 и позволил программе установки Centos обрабатывать разделы.
Я знаю, это большая ошибка.
В любом случае, единственная проблема, с которой я столкнулся, заключается в том, что большая часть места на жестком диске была выделена для точки монтирования / home. Мы не собираемся использовать это ... мы собираемся использовать / var. Я попытался изменить точку монтирования раздела, смонтированного в / home, чтобы смонтировать в / var ... но, как я уверен, вы уже смеетесь про себя, да, это помешало моей системе загрузиться. Оказывается, / var важен;)
Я не полный идиот, поэтому я смог загрузить консоль восстановления и вернуть ее обратно. Вот почему я пришел к вам, ребята.
Как я могу изменить точку монтирования на / var, но при этом сохранить работающую систему? Я предполагаю, что мне нужно как-то скопировать содержимое / var в / home, но я не уверен, с чего начать.
Ваше описание немного сбивает с толку, но похоже, что у вас есть раздел / var и раздел / home.
Вы хотите сохранить разрешения при копировании - это критический!
Если вы хотите просто смонтировать / home как / var, я бы сделал это в исходной среде:
# rsync -Wav /var/ /home
Это воссоздает такие каталоги, как / var / lib, / var / tmp и другие в / home. После этого / home будет выглядеть примерно так (пример подделки вывода):
# ls -m /home
agentx, backups, cache, charlie, crash, lib, local, lock, log, louie, mail, opt,
run, spool, tina, tmp, www
Обратите внимание на три (подделанных) домашних каталога: / home / charlie / home / louie / home / tina.
Вы должны иметь возможность удалить все домашние каталоги без серьезных проблем, если только нет демона, который ожидает настоящий домашний каталог. В любом случае, чтобы их сохранить (на всякий случай), я бы сделал это перед копированием / var:
# cd /home
# mkdir .sav
# mv charlie tina louie .sav
Это переместит выбранные домашние каталоги в сторону, но сохранит их на будущее.
Кроме того, когда вы перемещаете / home в / var, это означает, что теперь / home нужно будет создать в / (root). После загрузки с новой настройкой (с перемещением / home в / var) выполните следующие действия:
# mkdir /home
# chmod 755 /home
Обязательно создайте любые нужные каталоги / home - или скопируйте их из каталога /var/.sav. Чтобы сделать последнее, сделайте это в своем новый Окружающая среда:
# rsync -Wav /var/.sav/ /home
Также обратите внимание, что исходный / var все еще будет там. Если он находится в смонтированной файловой системе, он будет скрыт, но все равно будет занимать место.
ОБНОВИТЬ: В ответ на вопросы ниже, вот несколько мыслей о том, как освободить место из /var
:
Вероятно, вам не следует удалять файлы, пока вы не поработаете какое-то время с измененной средой, и от старой среды ничего не потребуется. Это просто ради безопасности.
Также в целях безопасности вам, вероятно, следует сделать две вещи. В старой среде сделайте следующее:
# touch /var/var.old
# touch /home/var.new
Это позволит вам увидеть два почти одинаковых крепления, но сразу определить, что есть что.
Чтобы удалить данные, вам необходимо иметь доступ к данным в старом /var
. Эти данные не будут доступны напрямую в /var
как только вы смонтируете новый раздел.
Есть два способа сделать это:
В исходной среде создайте жесткую ссылку на / var (ln /var
/var.old
), а затем в новой среде выполните rm -rf /var.old/*
. Я не пробовал, но с жесткой ссылкой вам следует по-прежнему доступ к старому /var
а не новый. Подтвердите поиском var.old
(Если ты видишь var.new
тогда это не сработало).
В оболочке восстановления выполните mkdir /var.old ; mv /var/* /var.old
. После загрузки в новую среду откройте данные в /var.old
.
Обратите внимание, что оба они сохраняют /var
каталог, необходимый для монтирования.