插入 USB 时自动授予子文件夹完全权限

插入 USB 时自动授予子文件夹完全权限

我有一个播放器,插入 USB 后会自动下载文件,在某些 PC 上,它可以顺利运行,但在使用相同操作系统(ubuntu)但类型不同的 PC 上,我遇到了问题,我尝试使用 chmod 手动授予文件完全访问权限(777),它正常工作

尝试编辑 fstab 但未显示 usb uuid:

UUID=C0C2-706F                            /boot/efi      vfat    umask=0077 0 2
UUID=d2187334-fc44-48c1-9226-f23f6289d985 /              ext4    defaults   0 1

安装结果:

/dev/sda2 on /media/amg/TO1 type vfat (rw,nosuid,nodev,relatime,uid=1000,gid=1001,fmask=0022,dmask=0022,codepage=437,ioc            harset=iso8859-1,shortname=mixed,showexec,utf8,flush,errors=remount-ro,uhelper=udisks2)

lsb_release - a;uname -a 的结果:

amg@amg:~$ lsb_release -a;uname -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 20.04.3 LTS
Release:        20.04
Codename:       focal
Linux amg 5.11.0-27-generic #29~20.04.1-Ubuntu SMP Wed Aug 11 15:58:17 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

lsblk ( usb at sda2 ) 的结果:

amg@amg:~$ lsblk
NAME         MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda            8:0    1  7,3G  0 disk
├─sda1         8:1    1  200M  0 part
└─sda2         8:2    1  7,1G  0 part /media/amg/TO1
mmcblk0      179:0    0 29,1G  0 disk
├─mmcblk0p1  179:1    0  300M  0 part /boot/efi
└─mmcblk0p2  179:2    0 28,8G  0 part /
mmcblk0boot0 179:8    0    4M  1 disk
mmcblk0boot1 179:16   0    4M  1 disk

lsblk -e7 -o model,name,size,fstype,uuid 的结果:

amg@amg:~$ lsblk -e7 -o model,name,size,fstype,uuid
MODEL        NAME          SIZE FSTYPE UUID
Cruzer_Blade sda           7,3G
             ├─sda1        200M vfat   67E3-17ED
             └─sda2        7,1G vfat   D078-0D63
             mmcblk0      29,1G
             ├─mmcblk0p1   300M vfat   C0C2-706F
             └─mmcblk0p2  28,8G ext4   d2187334-fc44-48c1-9226-f23f6289d985
             mmcblk0boot0    4M
             mmcblk0boot1    4M

我的问题是,当我插入 USB 时,如何让子文件夹文件自动获得完全权限?

谢谢

答案1

将以下行编辑到 USB 驱动器中后,它应该可以挂载该分区/etc/fstab(假设第一个用户(uid=1000)有访问权限)。在文本编辑器中打开该文件

sudo nano /etc/fstab

添加以下其中一行,最后使用ctrl+保存编辑的文件x(和y答案是肯定的。

  • 方案 1,始终插入驱动器(并在启动时自动安装),

    UUID=D078-0D63  /mnt/usbdata  vfat  rw,user,uid=1000,dmask=007,fmask=117  0  0
    
  • 方案 2,计算机运行时插入驱动器,

    UUID=D078-0D63  /mnt/usbdata  vfat  noauto,rw,user,uid=1000,dmask=007,fmask=117  0  0
    

    在这里你还必须通过以下方式挂载文件系统

    sudo mount /mnt/usbdata
    
  • 创建挂载点

    sudo mkdir /mnt/usbdata
    
  • 并重新启动。


  • 如果你格式化驱动器,UUID 将会改变,你可以使用

    lsblk -e7 -o model,name,size,fstype,uuid
    

    找到新的 UUID。

  • 如果要修改权限,请参阅此链接

  • 如果仍然无法在 USB 驱动器中安装文件系统,我能想到的最好的提示是 Windows 使驱动器“变脏”,您可以尝试使用 Windows 工具进行修复。

    如果您在 Windows 中关闭快速启动,并始终使用安全移除驱动器(刷新缓冲区,以便写入操作在拔出驱动器之前到达内存单元),则可以避免这种情况。在 Ubuntu 中,您可以使用以下命令执行此操作

    sync
    

    或在图形界面中“弹出”。一种安全的方法sync是卸载并防止进一步写入,

    sudo umount /mnt/usbdata
    

相关内容