将sdc1
安装在/media/debian/Ventoy
。
debian@debian:~$ sudo blkid | grep Ventoy
/dev/sdc1: LABEL="Ventoy" UUID="F82D-76BE" BLOCK_SIZE="512" TYPE="exfat" PTTYPE="dos" PARTUUID="1af31d46-01"
debian@debian:~$ df /media/debian/Ventoy
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sdc1 15324256 7971552 7352704 53% /media/debian/Ventoy
Run Code Online (Sandbox Code Playgroud)
显示目录中的内容material
。
ls material
'Best Semiconductor Stocks & ETFs in 2021 | The Motley Fool_files' 'How To Use AppImage in Linux [Complete Guide] - It'\''s FOSS_files'
'Best Semiconductor Stocks & ETFs in 2021 | The Motley Fool.html' 'How To Use AppImage in Linux [Complete Guide] …
Run Code Online (Sandbox Code Playgroud) 我在 Raspberry Pi 4 B 上运行了 Raspbian。我有一个 USB 硬盘,我正在使用它。硬盘是一个 1TB 驱动器,使用 ExFAT 格式化为单个分区。我有exfat-fuse
和exfat-utils
安装。问题是每次卸载分区时,当我fsck
在该分区上运行时,它都会给我这个警告:
WARN: volume was not unmounted cleanly.
Run Code Online (Sandbox Code Playgroud)
这让我很紧张。无论分区如何卸载,都会发生这种情况。它发生在关机和随后的启动时,它发生在重新启动时,如果我只是手动sudo umount /dev/sda1
和sudo mount /dev/sda1
下面是一些系统信息:
Linux rpi4b 4.19.97-v7l+ #1294 SMP Thu Jan 30 13:21:14 GMT 2020 armv7l GNU/Linux
Run Code Online (Sandbox Code Playgroud)
exfat-fuse/stable,now 1.3.0-1 armhf [installed]
exfat-utils/stable,now 1.3.0-1 armhf [installed]
Run Code Online (Sandbox Code Playgroud)
这是我的/etc/fstab
.
UUID=BE1B-4EFA /media/BE1B-4EFA exfat defaults,auto,users,rw,nofail 0 0
Run Code Online (Sandbox Code Playgroud)
为什么我的分区不能干净地卸载?我怎样才能确保它确实如此?
我正在尝试使用 udev 规则自动挂载各种 SD 卡。我从这些规则开始,在这个问题的帮助下解决了一个问题,现在我有以下情况:
ext4 和 vfat 格式的设备工作得很好,但是当我插入 exfat 或 NTFS 格式的磁盘时,我得到以下行mount
:
/dev/sda1 on /media/GoPro type fuseblk (rw,nosuid,nodev,noatime,user_id=0,group_id=0,default_permissions,allow_other,blksize=4096)
Run Code Online (Sandbox Code Playgroud)
目录列表如下所示:
$ ls -l /media/
ls: cannot access '/media/GoPro': Transport endpoint is not connected
total 0
d????????? ? ? ? ? ? GoPro
Run Code Online (Sandbox Code Playgroud)
我不能在那个挂载点下做任何事情,即使是 root 也不能:
$ sudo ls -l /media/GoPro
ls: cannot access '/media/GoPro': Transport endpoint is not connected
Run Code Online (Sandbox Code Playgroud)
我从其他人那里找到的唯一问题Transport endpoint is not connected
似乎是在未正确卸载磁盘后发生的。但是我在安装磁盘时遇到了问题。
我当前的 udev 规则如下所示:
KERNEL!="sd[a-z][0-9]", GOTO="media_by_label_auto_mount_end"
ACTION=="add", …
Run Code Online (Sandbox Code Playgroud) 用户有一个(增量)备份脚本,使用rsync
, 到外部设备。这在他拥有的 SSD 上出错了。原来他的设备被格式化了exFAT
。这意味着我需要在脚本中检测到这一点,因为我需要将选项更改为rsync
(例如,exFAT 无法处理符号链接、没有所有者/组权限等)。
用户正在运行 Linux Mint。我运行 Ubuntu。我只能假设/希望我的 Ubuntu 的解决方案适用于他的 Mint。
我看过:
那里有各种各样的好建议,但我没有看到符合我要求的建议,它们是:
ntfs
/exfat
显式,而不仅仅是说fuseblk
(它会同时用于exfat
& ntfs
,我需要区分)。/dev/...
.从我尝试过的建议来看:
fdisk -l
, parted -l
, file -sL
: 需要sudo和/或/dev/...
块设备mount
: 需要/dev/...
,只有报告fuseblk
df -T
, stat -f -c %T
: 接受目录,但只报告fuseblk
lsblk -f …
我正在尝试使用 fstab 来安装 exfat 驱动器,并为用户和组提供读/写权限。etc/fstab
该驱动器的行是:
UUID=5E98-37EA /home/ftagliacarne/data/media exfat defaults,rw,uid=1000,gid=1001,umask=002 0 1
Run Code Online (Sandbox Code Playgroud)
使用这些选项,驱动器将安装到正确的用户和组的正确位置,但是该组没有读写访问权限。即权限设置为:
drwxr-xr-x 7 ftagliacarne docker-media 262144 Sep 24 20:40 media
Run Code Online (Sandbox Code Playgroud)
有没有办法设置组权限也具有读写权限?
期望的结果:
drwxrwxr-x 7 ftagliacarne docker-media 262144 Sep 24 20:40 media
Run Code Online (Sandbox Code Playgroud)
我尝试过的一些事情:
umask
为002
chmod
安装前/安装后使用chmod
在父目录上递归使用感谢您能给我的任何帮助。
更新1:
我还尝试将 fstab 文件更改为以下内容:
UUID=5E98-37EA /home/ftagliacarne/data/media exfat defaults,uid=1000,gid=1001,dmask=0002,fmask=0113 0 1
Run Code Online (Sandbox Code Playgroud)
唉,还是不行。
更新2:
由于上述配置导致启动时出现问题后,我将条目更改/etc/fstab
为以下内容:
UUID=5E98-37EA /home/ftagliacarne/data/media exfat defaults,uid=1000,gid=1001,fmask=0113,dmask=0002,nofail 0 0
Run Code Online (Sandbox Code Playgroud)
现在它起作用了。我怀疑问题出在pass
选项 1 上,因为将其更改为 0 似乎已经修复了它。感谢所有提供帮助的人!
我用 exfat 在我的 ubuntu Linux 系统上格式化了外部硬盘。
sudo apt-get install parted exfat-utils
parted
mkfs.exfat -n ShareDisk /dev/sdX1
然后我将大约 300 GB 的数据复制到磁盘上。在我的 Linux 机器上一切都运行良好 - 到目前为止一切顺利。
然而,当我将磁盘插入 Mac 时,它说它无法处理该文件系统并建议初始化或弹出它。现在我明确选择了 exfat,因此该磁盘可以在任何操作系统上使用,而且我之前已经在我的 Mac 上成功使用了 exfat 格式的磁盘。
$ apt-get install exfat-utils exfat-fuse
Run Code Online (Sandbox Code Playgroud)
作为输出返回
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Package exfat-utils is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
E: Package 'exfat-utils' has no installation candidate
Run Code Online (Sandbox Code Playgroud)
尝试安装此软件包,但似乎缺少该软件包,exfat 支持是否已在内核内部构建,因此无需参考其他实用程序来处理此文件系统?
安装驱动器的命令是否与旧命令相同
mount -t exfat /dev/sda1 /mountpoint/
Run Code Online (Sandbox Code Playgroud)
?
谢谢
Homebrew
尝试在 MacOS 10.10.5 上的 exFAT 文件系统上构建应用程序时出现此错误
Error: parent directory is world writable but not sticky
Run Code Online (Sandbox Code Playgroud)
我用这个命令启用了sticky-bit,但是好像没有任何效果
$ chmod +t /Volumes/exFAT/tmp
Run Code Online (Sandbox Code Playgroud) exfat ×8
filesystems ×4
fstab ×2
chmod ×1
cp ×1
debian ×1
filenames ×1
fsck ×1
fuse ×1
linux ×1
macintosh ×1
mount ×1
ntfs ×1
shell-script ×1
sticky-bit ×1
ubuntu ×1
udev ×1
unmounting ×1
usb-drive ×1