Установите папку на диске в fstab. Переехать?

Я хотел бы внести временные изменения в файл fstab чтобы мой /home был на другом диске. Тем не менее, я не хочу, чтобы весь раздел был установлен, а просто папка («home») в этом разделе. Я в порядке, остальная часть данных недоступна.

Каков канонический способ выражения этого в fstab ? Я не могу придумать способ сделать это в одной команде (поскольку я не могу ссылаться на папку на файловой системе, которую я не смонтировал). Я думаю, что мне нужно сделать первый монтировку, а затем переместить папку в /home . Но я не знаю, могу ли я сделать шаг в fstab , не нашел его в man (и мне не хочется делать слепо, потому что у меня только ssh доступ к машине прямо сейчас).

На данный момент у меня есть привязка mount в fstab :

 /dev/sdd1 /mnt/temphome ntfs defaults,errors=remount-ro 0 2 /mnt/temphome/home /home none bind 

Однако это оставляет /dev/sdd1 установленным в обеих точках.

Обобщить:

  • могу ли я выполнить операцию перемещения в fstab и если да, то как?
  • что правильный подход, а если нет, то что?

Заранее спасибо.

2 Solutions collect form web for “Установите папку на диске в fstab. Переехать?”

Я не думаю, что вы можете выполнять действия из /etc/fstab . Если вы хотите это сделать, добавьте команду mount --move в /etc/rc.local . Это оставляет время в процессе загрузки, в течение которого домашние каталоги недоступны в конечном месте. Поскольку это домашние каталоги, они не должны использоваться много, если вообще при загрузке, так что все в порядке. Единственное, что я могу придумать, это директивы @reboot crontab. Если у вас есть какие-либо из них, то должны быть доступны домашние каталоги, поэтому вы должны добавить mount --move в нужное место в /etc/rc.sysinit вместо этого (сразу после mount -a ).

Однако использовать привязку привязки, вероятно, хорошо. Что может пойти не так, это в основном процессы, которые проходят весь диск, например резервные копии и updatedb. Выход из привязок в /etc/fstab является наименее рискованным вариантом, но вы должны настроить процессы обхода диска для пропуска /mnt/temphome/home .

Еще одна возможность – сделать /home символическую ссылку. Однако это может привести к тому, что некоторые программы будут записывать абсолютный путь к домашним каталогам пользователей, который будет /mnt/temphome/home/bob . У установки привязки или перемещения подпункта не возникает этой проблемы.

Нет, вы не можете делать то, что вы просите. Как вы уже отметили, вы не можете ссылаться на файл в файловой системе, которую вы еще не установили. [*]

Тем не менее, существует схема, которая может сработать для вас: файловая система в файле на донорном разделе, смонтированная с помощью устройства loop. Рассматривать:

 # cd /mnt/temphome # chmod 700 . # chown root.root . # dd if=/dev/zero of=temphome bs=4k count=1M # mke2fs -j temphome (answer yes to the annoying question) # mount temphome /home -o loop 

Это делает создание 4-гигабитной /home файловой системы, которая живет в файле в корне раздела /mnt/temphome . Вам все равно придется монтировать раздел-донор и оставить его установленным, но только root может его смонтировать или напрямую изменить его содержимое, включая установку /home через устройство loop. Однако, если вы установили новый /home , обычные пользователи могут писать в эту новую файловую систему, потому что они делают это через ядро, которое имеет силу сделать это, мощность, контролируемая разрешениями в файловой системе цикла .

Если по какой-то причине это все еще подвергает раздел /mnt/temphome большему риску, чем вы хотите принять, лучшей альтернативой, о которой я могу думать, является использование gparted для сжатия раздела доноров и использование пространства, открытого для создания нового временного /home раздел. Когда вы закончите использовать его, перейдите в gparted, удалите временный раздел и повторно разверните раздел-донор, чтобы использовать свободное пространство. У этого есть свои риски, хотя: изменение разделов не на 100% безопасно.


[*] Ну, это не совсем так. Иногда вы видите обман, связанный с информацией о точном расположении диска (сектор, голова, дорожка) файлов в других файловых системах. Это наиболее часто встречается в низкоуровневых действиях: спящий режим, своп, загрузка … Для этого вам нужен полностью непрерывный файл (т. Е. Без фрагментации), который никогда не перемещается, так что вы можете просто начать чтение и запись необработанных секторов из и к размонтированному разделу.

Если вы наблюдаете тенденцию таких вещей с течением времени, вы заметите, что они со временем становятся менее популярными из-за различных последствий. Во-первых, дефрагментаторы, как правило, нарушают такие схемы. Это одна из причин /boot и swap как правило, отдельные разделы под Linux.

  • Запрос загрузки для пароля ecryptfs
  • Как установить разрешения для пользователя на smb mount с помощью fstab?
  • Почему rootfs монтируется несколько раз?
  • Экспорт логического тома в Mac для использования в качестве привода Time Machine
  • Вариант «пользователь» работает для монтирования, а не для umount
  • Добавление нового жесткого диска как / home после установки
  • Linux Mint не загружается, если не удается смонтировать (совместно используемое) устройство, указанное в fstab
  • Как разрешить пользователю монтировать раздел Ubuntu на Arch Linux без проверки подлинности?
  • fstab монтируйте диск как мой / домашний
  • Linux Mint: изменение карты дисков при перезагрузке приводит к ошибке fstab
  • установка локальной сетевой папки в Ubuntu
  • MDADM: automount работает только с dev, а не с UUID
  • Interesting Posts

    Является «make: *** пустым именем переменной. Stop. "После настройки gcc ошибки пользователя или ошибки?

    Почему итерация по файлу в два раза быстрее, чем чтение в память и вычисление в два раза?

    Запустить скрипт после загрузки рабочего стола

    / dev / sda1 смонтирован; не будет создавать файловую систему здесь!

    Каковы преимущества использования Tmux в любое время?

    Остановить все процессы пользователем: дети супервизора все еще работают

    Измените запрос Korn, чтобы показать более короткий путь для рабочего каталога

    Как де-разархивировать, де-tar -xvf – de-unarchive в беспорядочной папке?

    Паника в ядре после установки Gentoo – невозможно открыть корневое устройство

    Значки приложений не отображаются в системном трее в Linux Mint 17.3

    Проигрыватель веб-VLC-плейера с usb.hdd через 192.168.xx: 8090

    Правильный путь для динамического переноса портов ssh

    Почему мой процессор никогда не получает 60-70% использования процессора? Где узкое место?

    UFW Предотвращение веб-браузера

    Преобразование изображений в avi с помощью малины Pi

    Linux и Unix - лучшая ОС в мире.