Монтирование файловых систем.

Установка, настройка, эксплуатация.

Модератор: ROOT

Монтирование файловых систем.

Сообщение ROOT » 27 июн 2017, 13:54

Оглавление


 Темы 
 Монтирование Samba в fstab 
 Монтирование разделов ntfs 
 Монтирование разделов fat32 
 Работа с образом ISO 
 Опции команды mount 
 Ошибки при монтировании 
 Network File System 
Дополнительные материалы файловых систем
Samba — Доступ к сетевым дискам и принтерам по протоколу SMB
XFS: Файловая система
Перенос системы на другой диск (xfs_copy)
Перенос системы на другой диск (rsync)
Convert MBR to GPT
Fedora на ZFS
Исправляем нумерацию разделов на диске
LUKS: Шифруем данные
Гибернация — режим сна


 Монтирование Samba в fstab 
Код: выделить все
//195.0.1.3/D$       /mnt/sergey    cifs    rw,exec,user,suid,noauto,username=sergey,password=Pa$$w0rd 0 0
//inext/C          /mnt/mediaplayer        cifs    rw,exec,user,suid,noauto,users,username=guest,password="",vers=1.0     0  0

Пример монтирования для IPv4
Код: выделить все
mount -t cifs //195.0.1.3/SEVEN -o username="ssergey",password="Pa$$w0rd" /mnt/sergey

Пример монтирования для IPv6
Код: выделить все
mount -t cifs //fec0:128::10:18:2:182/SEVEN /mnt/sergey -o username="sergey",password="Pa$$w0rd"

Пример обращения к ресурсу SAMBA по IPv6 из Windows
Код: выделить все
\\fe80--922b-34ff-fe93-7b5d.ipv6-literal.net\

Для наделения пользователей правом монтировать и демонтировать файловые системы назначаем на утилиты SUID-бит
Код: выделить все
chmod u+s /usr/sbin/mount.cifs
chmod u+s /bin/umount
chmod u+s /bin/mount
Последний раз редактировалось ROOT 28 мар 2026, 13:06, всего редактировалось 1 раз.
Администрирование Fedora Linux + настройка сети и прочая IT-Ботва


Для желающих поддержать
Карта SB: 2202 2083 5115 2302


Лучше ужасный конец, чем ужас без конца!
Аватар пользователя
ROOT
Администратор
 
Сообщений: 474
Зарегистрирован: 01 авг 2011, 09:36
Откуда: Моск. обл., г. Железнодорожный

Сообщение ROOT » 09 апр 2022, 19:09



 Монтирование разделов ntfs 
Активация EPEL репозитория
Код: выделить все
dnf install epel-release

Установка ntfs-3g
Код: выделить все
dnf install ntfs-3g

Добавляем нужного пользователя в только что созданную группу
Код: выделить все
usermod -a -G disk sergey

Назначаем права доступа группе disk (для каталогов куда смонтированы разделы NTFS). Права доступа для FAT, FAT32 и NTFS систему назначаются при помощи gid и uid.
Код: выделить все
chgrp disk /mnt/d
chgrp disk /mnt/f

Изменение прав доступа к каталогам в которые будут монтироваться файловые системы носит информативный характер
Узнаем ID группы disk
Код: выделить все
cat /etc/group |grep disk
disk:x:6:sergey

или
Код: выделить все
getent group disk
disk:x:6:sergey


Правим fstab
e /etc/fstab
Код: выделить все
/dev/sdb2                       /mnt/d                  ntfs-3g                 gid=6,umask=0002,defaults  0 0
/dev/sdb3                       /mnt/f                  ntfs-3g                 gid=6,umask=0002,defaults  0 0


user - означает, что любой пользователь сможет монтировать и размонтировать раздел /dev/sdX.
rw - дает доступ на чтение-запись;
umask - убирает указанные права — например, umask=111 удаляет права на выполнение.
Проблема в том, что права на "выполнение" также удаляются у каталогов, поэтому
мы должны исправить это при помощи параметра dmask=000 (подробности смотрите на странице Umask).


для определения UUID используем
blkid |grep ntfs
Код: выделить все
/dev/sdb2: LABEL="DATA" UUID="6410E97E10E95796" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="6601d667-91e7-4ad9-a35d-9d5c0eff80d1"
/dev/sdb3: LABEL="VIDEO" UUID="769A0B3E9A0AFA7F" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="0b68b0fb-bda1-4950-877e-4f8ec3655514"



visudo
Код: выделить все
## Allows user to mount and unmount the ntfs partitions as root
User_Alias NTFS = sergey
Cmnd_Alias POINTS = /usr/bin/mount,/usr/bin/umount,/mnt/cdrom,/mnt/c,/mnt/d,/mnt/f
NTFS ALL = NOPASSWD:POINTS

Для монтирования общих папок cifs, от пользователя, в файловую систему нужен SUID-ный бит на файле mount.cifs
Код: выделить все
chmod 4755 /usr/sbin/mount.cifs

Так же может потребоваться установить SUID-ный бит на файлы:
Код: выделить все
chown root:disk $(which mount)
chown root:disk $(which ntfs-3g)
chmod 4750 $(which mount)
chmod 4750 $(which ntfs-3g)
Администрирование Fedora Linux + настройка сети и прочая IT-Ботва


Для желающих поддержать
Карта SB: 2202 2083 5115 2302


Лучше ужасный конец, чем ужас без конца!
Аватар пользователя
ROOT
Администратор
 
Сообщений: 474
Зарегистрирован: 01 авг 2011, 09:36
Откуда: Моск. обл., г. Железнодорожный

Сообщение ROOT » 09 апр 2022, 19:10



 Монтирование разделов fat32 
Код: выделить все
# Монтирование флешек Для root и группы disk устанавливаем полные права(0),
# а всех остальных пользователей лишаем прав (7)
/dev/sdd1                                   /mnt/flash      auto    user,rw,umask=0007,gid=6,noauto,iocharset=utf8 0   0
# Конкретная флешка для root и группы disk
UUID=d27b489d-87d1-455f-8099-bf3085a9c1e1   /mnt/adm_flash  xfs     user,rw,umask=0007,gid=6,noauto,iocharset=utf8 0 0

Для FAT, FAT32 и NTFS права на файловую систему назначаются при помощи gid и uid. Таким образом изменяется владелец и группа владельца на смонтированной системе.
Администрирование Fedora Linux + настройка сети и прочая IT-Ботва


Для желающих поддержать
Карта SB: 2202 2083 5115 2302


Лучше ужасный конец, чем ужас без конца!
Аватар пользователя
ROOT
Администратор
 
Сообщений: 474
Зарегистрирован: 01 авг 2011, 09:36
Откуда: Моск. обл., г. Железнодорожный

Сообщение ROOT » 09 апр 2022, 19:11



 Работа с образом ISO 
Монтирование ISO-образа
Код: выделить все
mount -o loop /home/sergey/Загрузки/Fedora-KDE-Live-x86_64-25-1.3.iso /media

Определяем имя устройства флешки
Код: выделить все
lsblk

Ориентируемся по объёму носителя
Записать образ на флешку можно так:
Код: выделить все
dd if=/home/sergey/name.iso of=/dev/sdd bs=4M status=progress && sync

bs - размер данных операции чтения/записи за раз. После записи обязательно делаем sync, чтобы избежать неполной записи на устройство.
Администрирование Fedora Linux + настройка сети и прочая IT-Ботва


Для желающих поддержать
Карта SB: 2202 2083 5115 2302


Лучше ужасный конец, чем ужас без конца!
Аватар пользователя
ROOT
Администратор
 
Сообщений: 474
Зарегистрирован: 01 авг 2011, 09:36
Откуда: Моск. обл., г. Железнодорожный

Сообщение ROOT » 09 апр 2022, 19:11



 Опции команды mount 
КомандаОписание
asyncВесь ввод-вывод в файловую систему должен производиться асинхронно
autoФайловая система может монтироваться командой mount c опцией -a
defaultsИспользовать набор опций, задаваемый по умолчанию: rw, suid, dev, exec, auto, nouser, async
devФайлы байт-ориентированных и блок-ориентированных устройств в файловой системе интерпретируются как специальные файлы
noautoФайловая система может монтироваться только явно. Опция -a не приведет к монтированию файловой системы
execРазрешает выполнение двоичных файлов
remountПозволяет перемонтировать уже смонтированную файловую систему. Обычно используется для изменения опций монтирования файловой системы, особенно для того, чтобы расширить права доступа (вместо прав только на чтение установить права на чтение/запись)
roМонтирует файловую систему только на чтение
rwМонтирует файловую систему для чтения и записи
suidПозволяет задействовать биты смены идентификатора пользователя и смены идентификатора группы
syncВесь ввод-вывод в файловую систему должен производиться синхронно
nodevФайлы байт-ориентированных и блок-ориентированных устройств в файловой системе не интерпретируются как специальные файлы
nosuidНе позволяет задействовать биты смены идентификатора пользователя и смены идентификатора группы
user, nouserОпция mount «user» для Linux позволяет обычным пользователям монтировать устройство, тогда как опция монтирования «nouser» для Linux позволяет только суперпользователю (root) монтировать устройство. «nouser» - это опция монтирования по умолчанию. Для таких пользователей монтирование всегда выполняется с опциями noexec, nosuid, nodev
vers=argВерсии протокола SMB. Допустимые значения:
  • 1.0 — Классический протокол CIFS/SMBv1.
  • 2.0 — Протокол SMB v2.002. Первоначально это было введено в Windows Vista с пакетом обновления 1 (SP1) и Windows Server 2008. Обратите внимание, что начальная версия Windows Vista говорила на немного другом диалекте (2.000), который не поддерживается.
  • 2.1 - Протокол SMBv2.1, который был представлен в Microsoft Windows 7 и Windows Server 2008R2.
  • 3.0 - Протокол SMBv3.0, который был представлен в Microsoft Windows 8 и Windows Server 2012.
  • 3.1.1 or 3.11 - Протокол SMBv3.1.1, который был представлен в Microsoft Windows Server 2016.
Администрирование Fedora Linux + настройка сети и прочая IT-Ботва


Для желающих поддержать
Карта SB: 2202 2083 5115 2302


Лучше ужасный конец, чем ужас без конца!
Аватар пользователя
ROOT
Администратор
 
Сообщений: 474
Зарегистрирован: 01 авг 2011, 09:36
Откуда: Моск. обл., г. Железнодорожный

Сообщение ROOT » 24 фев 2023, 12:08

 Ошибки при монтировании 
При повторном использовании дисков из ZFS RAID наткнулся на ошибку монтирования следующего вида:
Код: выделить все
mount: /dev/sdb1: more filesystems detected. This should not happen, use -t  to explicitly specify the filesystem type or
use wipefs(8) to clean up the device.

Ещё одно из проявлений проблемы заключается в отказе монтирования корневой файловой системы, без указания типа FS, при старте без параметра
Код: выделить все
rootfstype=xfs

При дальнейших разбирательствах в ситуации выяснилось, утилиты lsblk и blkid не могут получить никакой информации о разделе.
Для начала смотрим какие сигнатуры файловых систем присутствуют на проблемном разделе
Код: выделить все
wipefs /dev/sdb1

Затем как определились с ненужной сигнатуры, можно удалить конкретную:
Код: выделить все
wipefs -o /0x000001fe dev/sdb1

Если необходимо избавиться от большого количества ненужных сигнатур, можно удалить почистить следующей командой:
Код: выделить все
wipefs -a -t zfs_member /dev/sdb1

Так же можно очистить весь имеющиеся список
Код: выделить все
wipefs -a /dev/sdb1

wipefs может работать не только с разделами /dev/sdb1, но и дисками /dev/sdb
Последний раз редактировалось ROOT 28 мар 2026, 13:34, всего редактировалось 1 раз.
Администрирование Fedora Linux + настройка сети и прочая IT-Ботва


Для желающих поддержать
Карта SB: 2202 2083 5115 2302


Лучше ужасный конец, чем ужас без конца!
Аватар пользователя
ROOT
Администратор
 
Сообщений: 474
Зарегистрирован: 01 авг 2011, 09:36
Откуда: Моск. обл., г. Железнодорожный

Re: Монтирование файловых систем.

Сообщение ROOT » Вчера, 13:25

 Network File System 
Сервер
Устанавливаем пакет NFS. И Сервер и Клиент устанавливается одним пакетом nfs-utils.
Код: выделить все
dnf install nfs-utils

Создаем папки (/srv/nfs4, /srv/nfs4/data, /srv/nfs4/backup) и правим /etc/exports.
Код: выделить все
mkdir -p /srv/nfs4/{backup,data}
??? chown -R nobody:nogroup /srv/nfs4/data
??? chown -R nobody:nogroup /srv/nfs4/backup
chmod -R 777 /srv/nfs4/data
chmod -R 777 /srv/nfs4/backup

Откроем файл /etc/exports для редактирования и добавим следующие строки:
Код: выделить все
# Корневая директория для NFSv4, fsid=0 помечает её как корень.
/srv/nfs4       192.168.1.0/24(rw,sync,fsid=0,no_subtree_check,crossmnt)
#Наши реальные шары. Они "видны" как /data и /backup относительно корня.
/srv/nfs4/data  192.168.1.0/24(rw,sync,no_subtree_check,no_hide)
/srv/nfs4/backup 192.168.1.0/24(rw,sync,no_subtree_check,no_hide)

И перезапускаем сервер
Код: выделить все
systemctl restart nfs-server

Смотрим какие шары экспортировались
Код: выделить все
exportfs -av

Правим /etc/idmapd.conf. Это критично для NFSv4, чтобы правильно отображать имена пользователей и групп. Отредактируем тот же файл и на клиенте:
Код: выделить все
[General]
Domain = free-adm.ru

после правки /etc/idmapd.conf
Код: выделить все
systemctl restart nfs-idmapd

Настраиваем SELinux (если путь нестандартный). Если NFS не видит файлы, нужно навесить правильный контекст:
Код: выделить все
semanage fcontext -a -t nfs_t "/srv/nfs4/data(/.*)?"
semanage fcontext -a -t nfs_t "/srv/nfs4/backup(/.*)?"
restorecon -Rv /srv/nfs4/data
restorecon -Rv /srv/nfs4/backup

Если semanage не найден, то устанавливаем пакет
Код: выделить все
dnf install policycoreutils-python-utils

Включаем сервис NFS
Код: выделить все
systemctl enable --now nfs-server

Важно для NFSv4: включаем также сервисы для уведомления о монтировании и RPC-связки
systemctl enable --now rpcbind.service nfs-mountd.service
Настраиваем FirewallD
Код: выделить все
firewall-cmd --permanent --add-service=nfs && firewall-cmd --reload

Разрешаем NFS (сервис) для внутренней зоны (обычно это зона для локальной сети)
Код: выделить все
firewall-cmd --permanent --add-service=nfs

Или если нужно совсем точно ограничить для сети (замени сеть на свою):
Код: выделить все
firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.1.0/24" service name="nfs" accept'
firewall-cmd --reload



Клиент
Устанавливаем тот же самый пакет NFS, что и для Сервера
Код: выделить все
dnf install nfs-utils

Правим /etc/idmapd.conf. Проверь, что на сервере в /etc/idmapd.conf прописан точно такой же Domain
Код: выделить все
[General]
Domain = free-adm.ru

Правим /etc/fstab и монтируешь (mount -a).
Код: выделить все
<IP-сервера>:/data      /mnt/nfs_data      nfs4    rw,hard,intr,noatime,vers=4.2,timeo=600,rsize=1048576,wsize=1048576   0   0
<IP-сервера>:/backup   /mnt/nfs_backup      nfs4    rw,hard,intr,noatime,vers=4.2,timeo=600,rsize=1048576,wsize=1048576   0   0

После изменения fstab нужно обновить конфигурацию systemd
Код: выделить все
systemctl daemon-reload

проверяем монтирование проходит без ошибок
Код: выделить все
mount -a

убеждаемся, что всё примонтировалось
Код: выделить все
df -h | grep nfs
Последний раз редактировалось ROOT 28 мар 2026, 17:42, всего редактировалось 5 раз(а).
Администрирование Fedora Linux + настройка сети и прочая IT-Ботва


Для желающих поддержать
Карта SB: 2202 2083 5115 2302


Лучше ужасный конец, чем ужас без конца!
Аватар пользователя
ROOT
Администратор
 
Сообщений: 474
Зарегистрирован: 01 авг 2011, 09:36
Откуда: Моск. обл., г. Железнодорожный


Вернуться в Fedora

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3

cron