автоматическое_монтирование_флешек_без_systemd
Differences
This shows you the differences between two versions of the page.
| Next revision | Previous revision | ||
| автоматическое_монтирование_флешек_без_systemd [2023/12/06 15:43] – created uf4n | автоматическое_монтирование_флешек_без_systemd [2025/02/18 11:29] (current) – uf4n | ||
|---|---|---|---|
| Line 3: | Line 3: | ||
| Cоздать файл / | Cоздать файл / | ||
| - | SUBSYSTEM!=" | + | |
| - | KERNEL!=" | + | KERNEL!=" |
| - | ACTION==" | + | ACTION==" |
| - | ACTION==" | + | ACTION==" |
| - | LABEL=" | + | LABEL=" |
| --------------------------------------------------------------------- | --------------------------------------------------------------------- | ||
| - | Cоздать файл /usr/bin/mount_media | + | Cоздать файл /usr/bin/media-mount |
| - | #!/bin/sh | + | < |
| - | # | + | #!/bin/bash |
| - | # License? | + | |
| - | # | + | |
| - | # | + | Добавить сюда задание значения переменной PATH |
| - | # UUID раздела | + | |
| - | # | + | |
| - | # | + | |
| - | # | + | DISK_LABEL=disk_$(echo /dev/${1} | sed 's|/dev/sd||' | sed -E ' |
| - | # LABEL раздела | + | DISK_LABEL=$(echo " |
| - | # | + | DISK_LABEL=$(echo " |
| - | PART_LABEL=$(/sbin/blkid -p -o value -s LABEL /dev/${1} | /bin/sed 's/ /_/g') | + | |
| - | # | ||
| - | # FS раздела | ||
| - | # | ||
| - | PART_FS=$(/ | ||
| - | |||
| - | # | ||
| - | # Проверить подключается устройство или отключается? | ||
| - | # | ||
| if [ " | if [ " | ||
| - | then /bin/mkdir / | + | then |
| - | # | + | PART_FS=$(/ |
| - | # Определить, | + | mkdir / |
| - | # | + | |
| - | # if [grep -e ${1} -e mount] | + | |
| - | # then printf Всё смонтировано, | + | |
| - | case ${PART_FS} in | + | # Determin any loged users excep root |
| + | logged_users=$(who | awk '{print $1}' | grep -v ' | ||
| + | if [ -n " | ||
| + | |||
| + | OWNER=$(echo " | ||
| + | BASIC_GROUP=$(id -gn ${OWNER}) | ||
| - | vfat) | + | case ${PART_FS} in |
| - | /bin/echo /dev/${1} / | + | |
| - | /bin/mount /dev/${1} | + | |
| - | ;; | + | |
| - | ntfs) | + | vfat) |
| - | /bin/echo /dev/${1} /media/${1}.${PART_LABEL} ntfs-3g relatime,users,dmask=000,fmask=111 0 0 >> / | + | echo /dev/${1} /media/${DISK_LABEL} vfat rw, |
| - | /bin/mount /dev/${1} | + | mount -t vfat -o rw, |
| - | ;; | + | ;; |
| - | *) | + | exfat) |
| - | /bin/echo /dev/${1} /media/${1}.${PART_LABEL} auto users 0 0 >> / | + | echo /dev/${1} /media/${DISK_LABEL} exfat rw, |
| - | /bin/mount /dev/${1} | + | mount -t exfat -o rw, |
| - | ;; | + | ;; |
| - | esac | + | ntfs) |
| - | else | + | echo /dev/${1} / |
| - | /bin/umount -l /dev/${1} | + | mount -t ntfs -o rw, |
| - | /bin/rmdir --ignore-fail-on-non-empty " | + | ;; |
| - | /bin/sed "/ | + | |
| + | ext4) | ||
| + | echo /dev/${1} / | ||
| + | mount -t ext4 -o rw, | ||
| + | ;; | ||
| + | |||
| + | *) | ||
| + | echo /dev/${1} / | ||
| + | mount -t auto -o auto,users 0 0 /dev/${1} / | ||
| + | ;; | ||
| + | |||
| + | esac | ||
| + | fi | ||
| + | elif [ " | ||
| + | then | ||
| + | | ||
| + | rm -rf /media/${DISK_LABEL}* | ||
| + | #rmdir --ignore-fail-on-non-empty " | ||
| + | sed "/ | ||
| fi | fi | ||
| + | |||
| exit 0 | exit 0 | ||
| + | |||
| + | # NB: The user will not be able to unmount the device, even if the users option was specified in the mount command. There must be an entry about the device in /etc/fstab. | ||
| + | </ | ||
| + | |||
| + | ---------------------------------------------------------------------------- | ||
| + | |||
| + | Дать этому файлу права на исполнение | ||
| + | |||
| + | sudo chmod +x / | ||
| ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ||
| Line 75: | Line 88: | ||
| Обновить правила для udev без перезагрузки | Обновить правила для udev без перезагрузки | ||
| - | udevadm control --reload-rules | + | |
| | | ||
| - | Разрешить пользователю выполнять команды монтирования и размонтирования от root' | ||
| - | |||
| - | sudo chmod +s /bin/mount | ||
| - | sudo chmod +s /bin/umount | ||
| | | ||
| ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ||
автоматическое_монтирование_флешек_без_systemd.1701877436.txt.gz · Last modified: 2023/12/06 15:43 by uf4n