Решение проблем с монтированием домашнего каталога home

Сначала проверь fstab. Один лишний пробел, неверный UUID, несуществующий mountpoint – и всё. Система не поднимет окружение. Строка для домашнего раздела должна быть строго валидна. Например:

UUID=3b4f02c8-09a6-4c3e-99d8-77e8e33c57fa /home ext4 defaults 0 2

Проверьте существование директории /home до монтирования. Если она была удалена, система смонтирует раздел в корень, и вы не заметите это сразу. Всё будет выглядеть корректно, но на самом деле – катастрофа.

Внимание! При использовании логического тома, убедитесь, что LVM активен до монтирования. Особенно при использовании custom initramfs.

Следующий шаг – проверка SELinux. Red OS включён по умолчанию. Неправильный контекст – и пользователь не сможет войти. Проверьте:

ls -Z /home

Контекст должен быть unconfined_u:object_r:home_root_t:s0. Не так? Исправьте:

restorecon -Rv /home

Тяжелее – если используется autofs. Тогда нужно копать в /etc/auto.master и /etc/auto.home. Пример строки:

/home /etc/auto.home --timeout=60

И в auto.home:

user1 -fstype=nfs,rw server:/export/user1

В логах – правда. journalctl -xb даст ключ к разгадке. Часто ошибка прямо в лоб: permission denied, fsck failure, missing device. Игнорировать нельзя.

Важно помнить: если используется systemd-монтирование, проверьте юниты в /etc/systemd/system/home.mount. Неверный After или отсутствие Requires – и порядок инициализации рушится.

И наконец: не используйте команду mount /home вручную в постоянной работе. Это костыль, не решение. Правьте конфигурации, не симптомы.

Если всё выше проверено, а окружение не стартует – подозревайте повреждение файловой системы. Используйте:

fsck.ext4 /dev/mapper/vg-home

Только в режиме single-user. Только с полной резервной копией.

Red OS не прощает лени. Всё должно быть чётко. Точно. Предсказуемо.

Проверка корректности записи в /etc/fstab для каталога /home

Сначала – открой /etc/fstab. Не редактором. Смотри глазами. Ищи строку, связанную с точкой подключения /home.

Типовой формат строки:

/dev/mapper/vg0-home  /home  xfs  defaults  0  2

Проверь шесть полей. Жёстко.

  • 1 – устройство: /dev/sdXn, UUID=... или LVM (/dev/mapper/...). Не должно быть орфографических фантазий. Проверь lsblk, blkid, vgs/lvs.
  • 2 – точка подключения: должна быть строго /home. Ни /home/, ни //home. В конце без косых.
  • 3 – тип ФС: xfs, ext4 или btrfs. Что реально есть на разделе, смотри через lsblk -f или blkid.
  • 4 – параметры: минимум defaults. Или прописывай конкретные опции: noatime,nodiratime. Не пиши то, чего не понимаешь.
  • 5 – dump: почти всегда 0. Ставишь 1 – значит, хочешь участвовать в бэкапах через dump.
  • 6 – fsck: обычно 2. Если 0 – файловая система вообще не будет проверяться. Ставишь 1 – говоришь, что это корень. Ошибка.

Внимание! Одна опечатка – и система не поднимет пользовательские данные при старте. Проверяй каждую букву.

Журнал – твой друг: journalctl -xb. Там всё. Ошибки загрузки, сбои монтирования, жалобы на UUID.

Важно помнить: /etc/fstab – не место для экспериментов. Указал UUID? Убедись, что он существует. И что он указывает на нужный раздел, а не на старую флешку, которую когда-то монтировал вручную.

Проверь SELinux-контекст. Да, это Red OS. Команда: ls -Zd /home. Должно быть system_u:object_r:home_root_t:s0. Если не так – restorecon -Rv /home.

Права? ls -ld /home должен показывать drwxr-xr-x. Владелец – root. Если не так – исправляй: chown root:root /home, chmod 755 /home.

Дополнительная проверка для фанатов: findmnt /home. Видишь, что надо? Значит, всё смонтировано, как прописано.

Читайте также:  Настройка кэша Nginx FastCGI для снижения времени отклика сервера WordPress

Если запись в fstab верна, ошибок в журнале нет, точка подключения доступна – забудь об этом файле до следующего обновления ядра или смены дисков.

Анализ ошибок при загрузке, связанных с монтированием /home

Открой /etc/fstab. Если там указан UUID, а он не распознается системой – всё, стоп. Проверь его через blkid. Если UUID не совпадает – записан несуществующий или диск подменён. Замени на актуальный.

blkid
lsblk -f
cat /etc/fstab

Не помогает? Проверь вручную: mount /dev/sdXY /mnt. Если ошибка – файловая система мертва. fsck.ext4 /dev/sdXY – твой единственный друг. Только с флагом -y не увлекайся. Лучше вручную, внимательно.

Внимание! Используй fsck только на размонтированных разделах. Не на корневом в live-системе – сожжёшь всё подчистую.

Шифрование? Смотри cryptsetup luksOpen и ls /dev/mapper. Если ничего не появилось – ключ не сработал или отсутствует модуль в initrd. Проверяй crypttab. Указан неправильный путь? Всё, завязка.

Важно помнить: большинство сбоев загрузки связано не с диском, а с ошибками в конфигурации и неподготовленным initrd.

Если раздел монтируется вручную, но не при загрузке – логика systemd ломается на зависимостях. Используй systemctl list-dependencies local-fs.target. Бывает, home.mount стартует до cryptsetup. Замени точку монтирования с UUID на LABEL= или /dev/mapper/.

Автофайлы? Посмотри systemctl status home.mount и systemctl daemon-reexec после изменения конфигурации. Не помогло? systemctl disable home.mount и создай вручную единицу с нужными зависимостями.

Читайте также:  Какой шрифт используется в Linux Ред ОС - подробности

Ошибки в /etc/fstab? Они фатальны. Но поддающиеся. Используй nofail или x-systemd.automount, чтобы избежать падения загрузки.

Восстановление каталога /home с использованием LiveCD

Загрузи систему с LiveCD Red OS. Подключи основной диск, проверь его состояние:

lsblk
smartctl -a /dev/sdX

Проверь наличие раздела, предназначенного для пользовательских данных:

blkid | grep home

Если UUID есть, продолжай. Если файловая система повреждена – восстанавливай:

e2fsck -f /dev/sdXn

Файловая система XFS? Тогда используем:

xfs_repair /dev/sdXn

После восстановления смонтируй том временно в /mnt для анализа:

mount /dev/sdXn /mnt
ls -lah /mnt

Содержимое исчезло? Проверь, не форматировался ли раздел по ошибке. Используй testdisk или photorec для глубокого поиска. Да, будет долго. Но другого выхода нет.

Нужен доступ к LVM? Распознай группы томов:

vgscan
vgchange -ay
lvscan

Проверь, что том доступен. Только потом монтируй:

mount /dev/mapper/vgname-lvname /mnt

Важно: Никогда не монтируй автоматически в live-среде без проверки целостности. Один неверный шаг – потеря данных.

Содержимое в порядке? Сохрани резервную копию:

rsync -aAXv /mnt/ /backup/home_restore/

Теперь пересоздай точку подключения в основной системе. Отредактируй /etc/fstab:

UUID=твой_UUID /home ext4 defaults 0 2

Или для XFS:

UUID=твой_UUID /home xfs defaults 0 0

Сохрани, проверь UUID, отмонтируй, перезагрузи. Проверяй работу.

Внимание! Не используй LiveCD из сторонних источников. Только официальный ISO Red OS. Сомнительная сборка – риск компрометации.

Если LUKS? Открывай том:

cryptsetup luksOpen /dev/sdXn luks_home

После чего – как с обычным устройством. Главное – не пропусти момент и не форматируй шифрованный блок.

Читайте также:  Как установить TeamViewer на Fedora 36/35/34

Сложно? Да. Но восстановление требует аккуратности. Без спешки. Каждая команда – выстрел. Промах – потеря.

Настройка автоматического монтирования /home с использованием systemd

Создай unit-файл типа mount. Не трогай fstab. Пусть systemd работает напрямую.

Имя должно соответствовать точке подключения. Для /home – это home.mount. Хочешь подмонтировать что-то внутри? Название меняется: home-user.mount для /home/user.

Размести файл в /etc/systemd/system/. Пример конфигурации:

[Unit]
Description=Автоподключение /home
After=local-fs.target
[Mount]
What=/dev/mapper/vg0-home
Where=/home
Type=ext4
Options=defaults
[Install]
WantedBy=multi-user.target

Проверь корректность пути в What=. Это может быть UUID, LABEL или устройство LVM. Пиши точно. Ошибёшься – загрузка зависнет. Или хуже.

Активируй и запусти:

systemctl daemon-reexec
systemctl daemon-reload
systemctl enable home.mount
systemctl start home.mount

Проверь статус:

systemctl status home.mount

Важно! Никогда не указывай в этом unit-файле Before= для system targets. Пусть systemd сам решает порядок.

Если используется LUKS или LVM, убедись, что юниты cryptsetup.target и lvm2-monitor.service стартуют раньше. В противном случае точка подключения останется пустой.

Хотите проверить зависимость? Команда:

systemd-analyze critical-chain home.mount

Ищи задержки. Устраняй вручную. Тормоза на старте – симптом глубоких косяков в инициализации.

Для NFS, CIFS, tmpfs – отдельная песня. Не повторяй конфигурацию выше. Меняй Type, добавляй специфичные параметры в Options. Например:

Type=nfs
Options=vers=4,rsize=8192,wsize=8192,timeo=14

Внимание! Использование automount вместо mount даёт гибкость. Но не забывай: это костыль. Используй, только если точка подключения редко нужна.

Проверка после перезагрузки обязательна. Ни одному логам верить нельзя. Только ручная проверка:

mount | grep /home
ls /home

Если ничего нет – значит где-то недоглядел. Повторяй. Правь. Смотри логи:

journalctl -xe
dmesg | grep -i home

Работает? Закоммить в Git. Сохрани конфигурацию. Сделай снапшот. Потом забудешь – вспомнишь, когда будет поздно.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *