Как переместить srv каталог в другой раздел?

При установке Ubuntu (10.04) я выбрал / домой, чтобы быть установленным в отдельном разделе. Я теперь хотел бы переместить/srv каталог в тот же раздел.

Проблема, которую я нашел, состоит в том, что Ubuntu не сделала / корневой каталог в самом разделе. Это просто помещает каталоги учетной записи в раздел и монтирует его к / домой. Таким образом, я не могу только легко переместить/srv папку в раздел.

Как может я:

  1. Переместите те каталоги учетной записи в домашнюю папку в разделе
  2. Сделайте ту новую домашнюю папку значением по умолчанию / домашняя папка.
  3. так же с/srv папкой или любым я выбираю в будущем.
3
задан 28.06.2010, 06:56

3 ответа

Однажды /home был смонтирован, можно сделать, связывание монтируется для монтирования, например. /home/srv на /srv.

mount --bind /home/srv /srv

В этом случае те же файлы появятся под /home/srv и /srv.

Или можно сделать, перемещение монтируется для перемещения /home/srv кому: /srv.

mount --move /home/srv /srv

В этом случае, /home/srv больше не будет существовать после монтирования. Размонтирование /srv сделает /home/srv появитесь снова.

4
ответ дан 07.12.2019, 23:29

Если я понимаю правильно, что Вы пытаетесь сделать, это не точно возможно - монтирование не прокладывает себе путь. (Хотя Вы можете вид фальшивки это, как объяснено в, например, ответа Ignacio),

Можно думать о каждом разделе как о его собственной файловой системе. Так, например, скажем, у Вас есть раздел sda1 то, что Вы собираетесь использовать для корня полной файловой системы, и sda2 то, что Вы собираетесь использовать для содержания корневых каталогов. Поскольку Вы теперь знаете, файловая система на sda1 содержит каталоги верхнего уровня bin, lib, usr, home, и т.д., и файловая система на sda2 содержит каталоги верхнего уровня user1, user2, и т.д. (или независимо от того, что корневые каталоги Ваших пользователей называют). Иерархия могла бы быть похожей на это:

sda1
|-bin
| |- (programs)
|-home
|-lib
| |- (libraries)
|-usr
| |-bin
| |-lib
| |-share

sda2
|-user1
| |-Documents
|-user2
| |-Documents

И также как Вы знаете для монтирования файловой системы, необходимо указать файловую систему (конечно), и каталог, точку монтирования. Когда Вы делаете это, каталог, который Вы указываете, становится названием корня файловой системы раздела. Например, одна из первых вещей, которые делает ОС, когда запуск является монтированием sda1 (в этом примере) на каталоге /. Это делает / название корня файловой системы на sda1. Можно теперь обратиться к bin каталог на sda1 как /bin, например. Позже в процессе начальной загрузки, ОС монтируется sda2 на /home/, что означает это /home/ название корня sda2 файловая система. Относиться к user1 каталог на sda2, можно записать /home/user1. И так далее.

Теперь это походит на то, что Вы имели в виду, присваивал имя (как /srv/) к некоторому подкаталогу в файловой системе раздела, а не корню той файловой системы. Но mount не прокладывает себе путь. Я не уверен, существует ли техническая причина этого, или это было просто проектное решение специалистами по обслуживанию ядра Linux. Нижняя строка, чтобы иметь что-либо на доступном разделе, необходимо присвоить имя к корню файловой системы. Но после того как Вы делаете это, можно сделать подкаталоги в файловой системе раздела доступными под другими именами с помощью --bind опция к mount, и это - вероятно, Ваш наилучший вариант.

2
ответ дан 07.12.2019, 23:29

в Вашем случае, / домой считается "точкой монтирования", имя точки монтирования может измениться путем редактирования/etc/fstab

1
ответ дан 07.12.2019, 23:29

Теги

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