автоматическое_монтирование_флешек_без_systemd

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
автоматическое_монтирование_флешек_без_systemd [2025/02/18 11:24] uf4nавтоматическое_монтирование_флешек_без_systemd [2025/02/18 11:29] (current) uf4n
Line 11: Line 11:
 --------------------------------------------------------------------- ---------------------------------------------------------------------
  
-Cоздать файл /usr/bin/mount_media+Cоздать файл /usr/bin/media-mount
  
 <code> <code>
Line 25: Line 25:
 then  then 
  
 +    PART_FS=$(/usr/sbin/blkid -o value -s TYPE /dev/${1})
 +    mkdir /media/${DISK_LABEL}
  
-        PART_FS=$(/usr/sbin/blkid -o value -s TYPE /dev/${1}) +    # Determin any loged users excep root 
-        mkdir /media/${DISK_LABEL} +    logged_users=$(who | awk '{print $1}' | grep -v '^root$' | sort -u) 
- +    if [ -n "$logged_users" ]; then 
-        # Determin any loged users excep root +        
-        logged_users=$(who | awk '{print $1}' | grep -v '^root$' | sort -u) +
-        if [ -n "$logged_users" ]; then+
         OWNER=$(echo "$logged_users" | head -n 1)         OWNER=$(echo "$logged_users" | head -n 1)
 +        BASIC_GROUP=$(id -gn ${OWNER})
  
-                BASIC_GROUP=$(id -gn ${OWNER})+        case ${PART_FSin
  
-                case ${PART_FSin+        vfat) 
 +        echo /dev/${1/media/${DISK_LABEL} vfat rw,users,uid=${OWNER},gid=${BASIC_GROUP},dmask=0022,fmask=0022 0 0 >> /etc/fstab 
 +        mount -t vfat -o rw,users,uid=${OWNER},gid=${BASIC_GROUP},dmask=0022,fmask=0022 /dev/${1} /media/${DISK_LABEL} 
 +        ;;
  
-                vfat+        exfat
-                echo /dev/${1} /media/${DISK_LABEL} vfat rw,users,uid=${OWNER},gid=${BASIC_GROUP},dmask=0022,fmask=0022 0 0 >> /etc/fstab +        echo /dev/${1} /media/${DISK_LABEL} exfat rw,users,uid=${OWNER},gid=${BASIC_GROUP},dmask=0022,fmask=0022 0 0 >> /etc/fstab 
-                mount -t vfat -o rw,users,uid=${OWNER},gid=${BASIC_GROUP},dmask=0022,fmask=0022 /dev/${1} /media/${DISK_LABEL} +        mount -t exfat -o rw,users,uid=${OWNER},gid=${BASIC_GROUP},dmask=0022,fmask=0022 /dev/${1} /media/${DISK_LABEL} 
-                ;;+        ;;
  
-                exfat+        ntfs
-                echo /dev/${1} /media/${DISK_LABEL} exfat rw,users,uid=${OWNER},gid=${BASIC_GROUP},dmask=0022,fmask=0022 0 0 >> /etc/fstab +        echo /dev/${1} /media/${DISK_LABEL} ntfs rw,relatime,noexec,nosuid,users,uid=${OWNER},gid=${BASIC_GROUP},dmask=000,fmask=111 0 0 >> /etc/fstab 
-                mount -t exfat -o rw,users,uid=${OWNER},gid=${BASIC_GROUP},dmask=0022,fmask=0022 /dev/${1} /media/${DISK_LABEL} +        mount -t ntfs -o rw,relatime,noexec,nosuid,users,uid=${OWNER},gid=${BASIC_GROUP},dmask=000,fmask=111 /dev/${1} /media/${DISK_LABEL} 
-                ;;+        ;;
  
-                ntfs+        ext4
-                echo /dev/${1} /media/${DISK_LABEL} ntfs rw,relatime,noexec,nosuid,users,uid=${OWNER},gid=${BASIC_GROUP},dmask=000,fmask=111 0 0 >> /etc/fstab +        echo /dev/${1} /media/${DISK_LABEL} auto rw,noatime,nosuid,nodev,users,errors=remount-ro 0 0 >> /etc/fstab 
-                mount -t ntfs -o rw,relatime,noexec,nosuid,users,uid=${OWNER},gid=${BASIC_GROUP},dmask=000,fmask=111 /dev/${1} /media/${DISK_LABEL} +        mount -t ext4 -o rw,users,noatime,nosuid,nodev,errors=remount-ro /dev/${1} /media/${DISK_LABEL} 
-                ;;+        ;;
  
-                ext4+        *
-                echo /dev/${1} /media/${DISK_LABEL} auto rw,noatime,nosuid,nodev,users,errors=remount-ro 0 0 >> /etc/fstab +        echo /dev/${1} /media/${DISK_LABEL} auto,users 0 0 >> /etc/fstab 
-                mount -t ext4 -o rw,users,noatime,nosuid,nodev,errors=remount-ro /dev/${1} /media/${DISK_LABEL} +        mount -t auto -o auto,users 0 0  /dev/${1} /media/${DISK_LABEL} 
-                ;;+        ;;
  
-                *) +        esac 
-                echo /dev/${1} /media/${DISK_LABEL} auto,users 0 0 >> /etc/fstab +    fi
-                mount -t auto -o auto,users 0 0  /dev/${1} /media/${DISK_LABEL} +
-                ;; +
- +
-                esac +
-        fi+
 elif [ "$2" = "unplugdev" elif [ "$2" = "unplugdev"
 then then
-        umount -l /dev/${1} +    umount -l /dev/${1} 
-        rm -rf /media/${DISK_LABEL}* +    rm -rf /media/${DISK_LABEL}* 
-        #rmdir --ignore-fail-on-non-empty "$(/usr/bin/awk "/${1}/ { print \$2 }" < /etc/fstab)" +    #rmdir --ignore-fail-on-non-empty "$(/usr/bin/awk "/${1}/ { print \$2 }" < /etc/fstab)" 
-        sed "/\/dev\/${1}/d" -i /etc/fstab+    sed "/\/dev\/${1}/d" -i /etc/fstab
 fi fi
  
Line 83: Line 82:
 Дать этому файлу права на исполнение Дать этому файлу права на исполнение
  
-  sudo chmod +x /usr/bin/mount_media+  sudo chmod +x /usr/bin/media-mount
  
 ---------------------------------------------------------------------------- ----------------------------------------------------------------------------
Line 91: Line 90:
   sudo udevadm control --reload-rules   sudo udevadm control --reload-rules
      
-Разрешить пользователю выполнять команды монтирования и размонтирования от root'а 
- 
-  sudo chmod +s /bin/mount 
-  sudo chmod +s /bin/umount 
      
 ---------------------------------------------------------------------------- ----------------------------------------------------------------------------
- 
-Добавить одну пустую строку в /etc/fstab 
-По мере подключения съёмных носителей в этот файл добавляются новые строки, нужно, чтобы прошлые строки не испортились. 
- 
----------------------------------------------------------------------------- 
- 
  
 Исходная статья Исходная статья
  
 https://www.altlinux.org/Automount https://www.altlinux.org/Automount
автоматическое_монтирование_флешек_без_systemd.1739877848.txt.gz · Last modified: 2025/02/18 11:24 by uf4n