Подключение флешки астра линукс

Обновлено: 04.07.2024

Данный сценарий недоспутимо применять в Astra Linux Special Edition одновременно с использованием учтенных носителей (см. Порядок работы с конфиденциальной информацией на учтенных USB носителях).

События udev возникают при изменении статуса подключенных устройств. Наиболее употребительные события:

  • подключение устройства (событие "add");
  • отключение устройства (событие "remove").

Перехват событий осуществлятся с помощью сценариев обработки. Файлы со сценариями - обработчиками событий udev располагаются в каталогах:

  • /lib/udev/rules.d/
  • /run/udev/rules.d/
  • /etc/udev/rules.d/

Каталоги обрабатываются в том порядке, в котором они перечислены. Перед выполнением файлы упорядочиваются по алфавиту. Файлы с одинаковыми именами - переписываются последним найденным файлом, т.е. файл, найденный в последнем каталоге (/etc/udev/rules.d/) заменит собой ранее найденный файл с таким же именем.

KERNEL=="sd[a-z]9", SUBSYSTEMS=="usb", ACTION=="add", RUN+="/bin/systemctl start usb-mount@%k.service"
KERNEL=="sd[a-z]3", SUBSYSTEMS=="usb", ACTION=="remove", RUN+="/bin/systemctl stop usb-mount@%k.service"

Этот перехватчик обрабатывает события подключения/отключения дисковых устройств с именами начинающимися с букв "sd", после которых следует одна любая строчная буква ([a-z]), после которой следует одна цифра (1).
Однако сам перехватчик не выполняет при этом прямых действий, а вызывает для выполнения этих действия системную службу usb-mount@%k.service, то есть вызывает сценарий обработки события как системную службу.

Обратите внимание на имя службы usb-mount@%k , которое имеет особый смысл:

    при выполнении правила обработки события служба udev вместо специальной переменной %k автоматически подставит имя устройства (полный список специальных переменных имеется в документации).
    Т.е. при подключении устройства, например, /dev/sdb1 будет выполняться команда /bin/systemctl start usb-mount@sdb1.service;

Как организовать обработку этого вызова и саму службу описано ниже.

Новые правила обработки регистрируются системой автоматически, принудительно обновить правила udev можно командой:

udevadm control --reload-rules

Итак, сценарий обработки вызывается как системная служба. Для вызова системных служб используются так называемые "юниты" (units), специальные сценарии запуска служб, расположенные в каталоге /etc/systemd/system/.

Пример обработчика вызова службы для вышеуказанного правила перехвата события udev разместим в файле /etc/systemd/system/usb-mount@.service:

[Unit]
Description=Mount USB Drive on %i
[Service]
Type=oneshot
RemainAfterExit=true
ExecStart=/usr/local/bin/usb-mount.sh add %i
ExecStop=/usr/local/bin/usb-mount.sh remove %i

Этот сценарий умеет обрабатывать две команды - start (параметр ExecStart) и stop (параметр ExecStop), но сам опять ничего не делает, а вызывает исполнимый файл сценария обработки события (для примера - /usr/local/bin/usb-mount.sh) , передавая ему нужные параметры, определяющие действие (в примере выше - add или remove) и специальный параметр %i - вместо него будет автоматически подставлена часть имени вызова службы, находящаяся после символа "@", т.е. в используемом примере - sdb1.

Сценарий обработки события в принципе может размещаться где угодно, для примера используем файл /usr/local/bin/usb-mount.sh

do_mount() if [[ -n $ ]]; then
echo "Предупреждение: $ уже смонтировано в $"
exit 1
fi

do_unmount() <
if [[ -z $ ]]; then
echo "Предупреждение: $ не смонтировано"
else
/bin/umount -l $
echo "**** Отмонтировано $"
fi

case "$" in
add) do_mount ;;
remove) do_unmount ;;
*) usage ;;
esac

Как примонтировать флешку в linux Astra через терминал


Обратите внимание, что КАЖДОЕ подключенное устройство хранения данных в Linux прописывается в системе уникальным кодом, в данном случае в папке /dev/ устройство sdb1. Это наименование еще нам пригодится. В графике все просто посмотреть. А терминале, чтобы увидеть все подключенные к системе устройства нужно воспользоваться командой fdisk:

Система выдает список томов жесткого диска и чуть погодя подключенные флешку диск:


Для монтирования понадобится имя нужного устройства, которое мы только что узнали.

Как примонтировать диск, том в Linux Astra через терминал?

Сначала нужно выбрать каталог, куда нужно смонтировать флешку или диск. Или точку монтирования. Можно создать новый каталог или выбрать существующий. Для наглядности откроем в терминале Midniht Commander:

По умолчанию точки монтирования создаются в файловой системе, папка /mnt


Внутри этой папки можно создать каталог прямо в MC (через клавишу F7) либо через терминал

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


При правильных действиях получите список содержимого примонтированного устройства. После окончания работы отмонтировать устройство нужно командой umount

sudo umount /dev/sdb1 /mnt

Как примонтировать Iso образ в Linux Astra или привод CD/DVD в терминале?

Иногда нужно срочно примонтировать привод CD/DVD для копирования содержимого настоящего компакт диска. Давайте с этого и начнем. Чтобы определить, под каким именем в системе прописано устройство для чтения компакт дисков введем команду lsblk


Затем создаем точку монтирования:

C iso файлами все чуть проще. Нужно знать папку где лежит iso файл и папку, в которой он будет смонтирован.

sudo mount /папка где лежит образ/orel-current.iso /mnt -t iso9660 -o loop

Размонтировать образ можно так:

sudo umount /папка где лежит iso файл/orel-current.iso /mnt

Как примонтировать сетевую папку или сетевой диск в Linux Astra?

Насущной необходимостью является подключение общих папок и ресурсов. Дополнительные права доступа к папкам сети Windows, брандмауэр должны быть настроены корректно.

Сетевой доступ к общим папкам настраивается с учетом режима работы, обычный или без графики. В последнем случае настройки сделанные в среде рабочего стола работать не будут и монтировать, настраивать автозагрузку сетевых папок нужно будет в терминале.

Требуется установить пакет cifs-utils:

sudo apt install cifs-utils

Монтирование осуществляется командой (простой пример):

Для того, чтобы сетевой ресурс монтировался при загрузке системы, необходимо в конфигурационный файл /etc/fstab добавить строчку вида:

//10.0.10.201/share /mnt cifs credentials=/root/.smbclient,rw,nosharesock,vers=1.0,soft,noperm 0 0 Монтированию сетевых папок из Windows, защищенных паролями будет посвящена отдельная статья, потому как через терминал приходится делать много дополнительных настроек. В графическом режиме все проще и быстрее. Сначала установим графический вариант samba для рабочего стола:


Осталось создать сетевое место и дать ему название. На некоторых версиях Windows server этот способ не срабатывает.


Как примонтировать внешний жесткий диск в Астра Линукс и добавить точку в автозагрузку по сценарию?

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


mount /dev/sdc1 /media/superuser/reserv

Файл сохраняем в удобном месте с расширением .sh , и добавляем в автозагрузку:


Не забываем сделать файл исполняемым для пользователя. Теперь при загрузке (только в графическом режиме и под конкретным пользователем) будет происходить монтирование тома. Более совершенный вариант монтирование сетевой папки при запуске подробно описан здесь Проверяем. Всем успехов!

Монтируем флешку в Linux

Монтирование носителя при помощи udisksctl

Вывод был следующий:

sdb 8:16 0 596,2G 0 disk
├─sdb2 8:18 0 5,9G 0 part
├─sdb3 8:19 0 561G 0 part /mnt/5b4d2ffa-cfa0-4419-8736-3c5e97cf1073
└─sdb1 8:17 0 29,3G 0 part
sr0 11:0 1 1024M 0 rom
sdc 8:32 1 7,5G 0 disk
└─sdc1 8:33 1 7,5G 0 part
sda 8:0 0 465,8G 0 disk
├─sda2 8:2 0 92,9G 0 part /home
├─sda3 8:3 0 344,1G 0 part /mnt/938eb7e4-1e03-48c9-a9d2-4b7a5f263b01
└─sda1 8:1 0 28G 0 part /
sr1 11:1 1 1024M 0 rom

udisksctl mount -b /dev/sdc1

После этого видим примерно такой вывод:

==== AUTHENTICATING FOR org.freedesktop.udisks2.filesystem-mount-other-seat ===
Для монтирования UFD 2.0 Silicon-Power8G (/dev/sdc1) требуется подтверждение подлинности пользователя
Authenticating as: dm. (dm)

Вводим пароль и видим, что наш носитель появился в каталоге /media

==== AUTHENTICATION COMPLETE ===
Mounted /dev/sdc1 at /media/dm/Flash_Drive

После монтирования устройства можно работать с ним как обычно, удалять, перемещать и копировать файлы. Если нужно отмонтировать устройство, то выполните команду:

udisksctl unmount -b /dev/sdc1

Монтирование устройств при помощи mount

Точки монтирования нужно создавать в каталогах /mnt либо /media. Для этого выполним команду:

sudo mkdir /mnt/usb

Теперь дадим этому каталогу права доступа для простых пользователей:

sudo chmod 777 /mnt/usb

Далее определим имя монтируемого устройства и тип файловой системы командой:

Часть вывода команды:

Устр-во Загрузочный Start Конец Секторы Size Id Тип
/dev/sdc1 2048 15730687 15728640 7,5G 7 HPFS/NTFS/exFAT

sudo mount -t vfat -o rw /dev/sdc1 /mnt/usb

Для NTFS соответственно:

sudo mount -t ntfs -o rw /dev/sdc1 /mnt/usb

Также иногда будет полезно добавить следующие параметры:

Команда будет иметь следующий вид:

sudo mount -t ntfs -o rw,iocharset=utf8,codepage=866 /dev/sdc1 /mnt/usb

Вся команда будет иметь следующий вид:

sudo mount -t ntfs -o force /dev/sdc1 /mnt/usb

Чтобы отмонтировать устройство выполните:

sudo umount /mnt/usb

Для монтирования CD/DVD дисков нужно выполнить команду:

sudo mount -t iso9660 -o ro /dev/cdrom /cd

sudo mkdir /mnt/cd

Для монтирования образа диска ISO выполним команду:

sudo mount -t iso9660 -o loop

/image.iso — образ ISO

Как дать пользователям домена возможность монтировать USB-накопители, отформатированные в NTFS, без предоставления прав суперпользователя? Вариант с FAT32 не интересует, там всё работает, однако, часто портятся имена файлов. Нужно решение именно для NTFS.


Добавь пользователя в группу disk.


регистрацию носителей в нулевом контексте делали?


А эти пользователи не смогут затем сделать fdisk любому диску? Или dd if=/dev/zero of=/dev/sda

The disk device nodes are group accessible to disk so that programs that need access to them will set their group ID to be disk. This group has write access to all the raw disk devices (/dev/hd* and /dev/sd*), so assigning users to group disk is both dangerous and a security risk.

greenman ★★★★★ ( 07.07.16 21:41:37 )
Последнее исправление: greenman 07.07.16 21:50:12 (всего исправлений: 2)

Права доступа на файл самого диска в dev выставляет root. Я бы на твоём месте просто проверил на тестовой машине.


Как нибудь в другой раз


Господа, проблема решена благодаря специалисту из РУСБИТЕХа.

Примечание: права на доступ к устройствам ОС получает в момент авторизации пользователя. После изменения настроек в домене нужно перелогиниться, тогда все заработает.

Примечание 2: Лучше вообще не использовать носители с не-EXT'овыми ФС.

". каждому пользователю нужно явно задать нижний мандатный уровень как нулевой. Да, в утилите fly-admin-smc он и так показывает, что у пользователя нижняя метка нулевая, но всё равно эту операцию нужно проделать вручную. "

Читайте также: