我相信 FAT32 文件系统不支持文件权限,但是当我ls -l
在 FAT32 分区上执行时,ls -l
显示文件具有权限:
-rw-r--r-- 1 john john 11 Mar 20 15:43 file1.txt
-rw-r--r-- 1 john john 5 Mar 20 15:49 file2.txt
Run Code Online (Sandbox Code Playgroud)
为什么ls -l
显示文件的权限?
我想将多个文件复制到闪存驱动器上,以便每个单独的文件都是连续的。它们不需要彼此相邻,并且可以按任何顺序排列。这些文件将非常大——数百兆字节到千兆字节。不应对驱动器上的其他文件进行碎片整理;这样做会浪费时间并导致闪存介质不必要的磨损。
我希望能够至少为 FAT32 执行此操作,但*nix
也将不胜感激文件系统的方法。
基本上,有两种方法可以解决这个问题:
第二种选择通常比第一种快得多,并且可以避免对闪存介质造成不必要的磨损,因此第二种选择会非常可取。
我不介意离线工作的解决方案,但显然在线更可取。
我想挂载我的 USB 驱动器 (kindle vfat32)。当我做
mount -t auto /dev/sdf1 /mnt/usb
Run Code Online (Sandbox Code Playgroud)
我得到
mount: unknown filesystem type 'vfat'
Run Code Online (Sandbox Code Playgroud)
sudo fdisk -l
并且识别的文件系统是W95 FAT32
3.2.0-4-686-pae
.cat /proc/filesystems
vfat 不在那里。dosfstools
已安装我该怎么办?
我正在使用 debian 的最小上网本安装中发布的内核。
如果我modprobe vfat
以 root 身份运行,我会得到以下信息:
libkmod: ERROR ../libkmod/libkmod-module.c:174 kmod_module_parse_depline: ctx=0xb8556008 path=/lib/modules/3.2.0-4-686-pae/kernel/fs/fat/fat.ko error=No such file or directory
libkmod: ERROR ../libkmod/libkmod-module.c:174 kmod_module_parse_depline: ctx=0xb8556008 path=/lib/modules/3.2.0-4-686-pae/kernel/fs/fat/fat.ko error=No such file or directory
ERROR: could not insert 'vfat': Unknown symbol in module, or unknown parameter (see dmesg)
Run Code Online (Sandbox Code Playgroud)
当 …
我只是试图移动一个包含音乐文件的目录,thunar 4.10
它抱怨文件名无效。
原来,一个文件名(歌曲名称)包含一个问号。我怀疑这是一个问题,去掉问号,确实可以复制文件。添加“?” 回来是不可能的。我也在rename
命令行上尝试过,但这也不起作用。(不确定 thunar 在幕后使用什么,所以这个测试可能没有实际意义)
现在,如果问号使文件名无效,那么首先如何创建该文件?我SoundJuicer
从新获得的 CD创建了这些文件。我能够在各种播放器中播放文件(名称中带有“?”)。
这里发生了什么?我可以有“?” 以名义与否?为什么文件管理器无法处理此类文件,而其他应用程序似乎可以使用它?
更新: 下一首歌曲中有一个“:”。与“?”相同的问题。
这些不是 Unix 的无效字符;通常只有 NUL 字符和 / 字符是无效的文件名(/ 是目录分隔符)。
这也是我的直觉告诉我的,因为我在 Linux 中从未遇到过任何文件名问题,并且可以抛出几乎所有合理的东西并且它工作正常。这就是这里提出问题的动机。我以前从未遇到过无效的文件名。
您是否试图将文件移动到 U 盘?如果是这样,那根棒是格式化为 FAT32 还是原生 Linux 文件系统?
目标确实是我今天买的U盘。我打开gparted
,它被格式化为FAT32。
我不太确定,但这是 Windows 的事情,对吗?Windows 有一堆它不支持的字符,显然包括?
和:
。我对吗?
我经常需要通过 USB 在两台 Linux 计算机之间移动文件。我gparted
用来格式化USB的。当我将 USB 格式化为使用 FAT32 时,USB 无法复制符号链接,因此我必须在复制文件后在另一台计算机上重新创建符号链接。当我格式化 USB 以使用 EXT3 时,我在lost+found
USB 上创建了一个目录,并阻止我将文件复制到 USB,除非我成为 root。
出于好奇,这在今天可能吗?我记得一些旧的 Slackware 版本确实支持 FAT 根分区,但我不确定这是否适用于现代内核,以及是否有任何发行版提供这样的选项。我对纯 DOS FAT(不支持长名称)、VFAT 16/32 和 exFAT 感兴趣。
PS:不要告诉我我不应该,除非必要,否则我不会在生产中使用它:-)
这个事件实际上发生在几年前,但我仍然拥有未更改的 U 盘。我可能不走运,但我想我会向这里所有聪明的人征求您的建议。
短篇故事:
几年前,我的妻子想将她 iPhone 中的所有照片存储到 USB 闪存驱动器上,因为她的存储空间不足。我们从商店买了一个全新的 USB 闪存驱动器,所以我假设它有一个FAT32
文件系统。我们将闪存驱动器插入 aMac OS X
并能够备份她的所有照片。备份完成后,我们意识到几乎每张照片都有一个重复的文件。photo.jpg
有一个名为photo\ 1.jpg
. 所有重复的文件都以\ 1.jpg
后缀结尾。
刚已经开始UNIX,我知道我可以使用shell的简单的regex删除所有重复的文件,但我最终没有把我的命令在引号......最后我和执行的情况如下:rm * 1.jpg
。如您所见,我告诉系统删除每个文件,然后删除1.jpg
. 而不是告诉系统删除以1.jpg
. 这件事发生后,我愤怒的妻子(当时的女朋友)在我旁边,我拔掉了闪存驱动器并将其存放在抽屉里。
题:
是否有任何安全的 UNIX 工具可以rm
从 USB 闪存驱动器中恢复使用 删除的数据?还是我运气不好?如上所述,自从事件发生以来,我没有碰过闪存驱动器。
如果这个问题过于宽泛,请随时将其移至元或任何最适合的地方。
似乎 GParted 给 FAT32 分区带来了问题。我正在使用他们网站上最新的 Gparted Live Disk。
但是,每当我尝试调整使用 Fat32 格式化的 EFI 系统分区的大小时,都会出现错误-:
“GNU Parted 无法将此分区调整到此大小。我们正在努力”
现在的解决方案之一是将 dosfstools 与 Gparted 一起安装,但我不知道在我的情况下如何实现,因为我使用的是 GParted 的 Live USB。
Linux 上可以正确处理 fat32 的任何其他工具。Gparted 似乎能够正确处理 NTFS。
我的 1 TB 硬盘上的当前分区布局如下-:
EFI System Partition (100 MB FAT32)
Unallocated (250 MB)
Windows Drive(199 GB NTFS)
Unallocated (~720 GB)
Run Code Online (Sandbox Code Playgroud)
当我尝试增加 EFI 分区的大小时,我试图将它与未分配的 250 MB 合并,但我收到了不可能的错误。
格式化 EFI 分区时,出现此错误:
Not enough clusters for a 32 bit FAT!"
Run Code Online (Sandbox Code Playgroud)
我的磁盘使用 4096 扇区大小。
#mkfs.fat -v -F 32 -S 4096 /dev/sde1
mkfs.fat 4.1 (2017-01-24)
WARNING: Not enough clusters for a 32 bit FAT!
/dev/sde1 has 255 heads and 63 sectors per track,
hidden sectors 0x4000;
logical sector size is 4096,
using 0xf8 media descriptor, with 67584 sectors;
drive number 0x80;
filesystem has 2 32-bit FATs and 8 sectors per cluster.
FAT size is 16 sectors, and provides 8440 clusters.
There …
Run Code Online (Sandbox Code Playgroud) 我是一名研究生,也是一个相对的 Linux 新手。我所在的机构有一个内部 Linux 集群,我在上面运行了许多科学模拟。我有一台 Windows 台式计算机,我可以从中通过 SSH 访问 Linux 集群。
我在 Linux 集群的文件服务器上有大量(~1 TB)的模拟结果数据。项目完成后,研究组可能没有空间保存模拟结果。但是,我想将文件(当然是在组的许可下)保存在我自己将购买的外部驱动器上。
我的问题是,如果我购买带有 USB 连接的标准 Windows 外置硬盘,我能否将文件从 Linux 集群的文件服务器复制到外置驱动器?(我假设 Linux 集群有一个 USB 端口,但这是我需要验证的。)
看起来许多标准的 Windows 外置硬盘驱动器被格式化为 NTFS 或 FAT32,而我们的 Ubuntu Linux 文件服务器使用 NFS。以下是亚马逊的一些示例:
您认为上述任何或所有硬盘驱动器都可以轻松地在 NFS 中重新格式化以用于 Linux 集群吗?
另一方面,亚马逊确实有“Linux 平台支持”外置硬盘的部分,例如:
我正在学习有关如何在 OpenBSD 上安装固件的教程。本教程让我在 USB 上创建一个新的 msdos 文件系统,方法是:newfs_msdos -F 32 /dev/rsd2c
然后将 USB 连接到具有互联网连接的系统,然后将固件 tarball 移动到 USB 中。我以前从未通过命令行将数据移动到 msdos fs。本教程展示了他在 manajaro 安装上使用 dolphin,但是我没有安装任何 gui 的系统。
如何将 tarball 移动到 USB 驱动器?
我尝试将其安装到已安装的目录中,但它不起作用。
陈述failed to preserve ownership for '/mnt2/iwn-firmwae.tgz': Operation not permitted