我使用的是 Ubuntu 9.04,当我尝试使用 GUI 安装 SD 卡时,我必须先输入,sudo mount -o remount,rw /media/disk
然后才能向卡写入任何内容。是否有隐藏设置使其挂载读写?
为什么我会收到 fsck 错误:“目前,仅支持 1 或 2 个 FAT,而不是 34 个?” 我该怎么做才能成功运行 fsck?
我正在检查我的 Transcend 16GB Class-6 SD 卡。它最近损坏了(不确定如何)。我已经恢复了数据。现在我正在尝试修复卡以重新使用。我想看看我是否可以在不重新格式化的情况下修复它——使用 fsck。
这是在 Ubuntu 9.04 上运行 fdisk 和 fsck 的输出:
billpaetzke@billpaetzke-desktop:~$ sudo fdisk -l
Disk /dev/sda: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 9729 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x1aac1aac
Device Boot Start End Blocks Id System
/dev/sda1 * 1 9352 75119908+ 83 Linux
/dev/sda2 9353 9729 3028252+ 5 Extended
/dev/sda5 9353 9729 3028221 …
Run Code Online (Sandbox Code Playgroud) 在 hw raid5 上给定一个 30TB 的磁盘分区。LVM 在最上面,文件系统是 ext4。(它有 99.9% 的数据。)我想再添加 20TB 并调整分区和文件系统的大小。在调整大小之前,它坚持先运行 FSCK。已经运行了一个多星期,我取消了,但是无法挂载分区。首先需要 FSCK。所以我又开始了。
fsck.ext4 -v -C 0 /dev/vgname/lvname
e2fsck 1.44.3 (10-July-2018)
Superblock has an invalid journal (inode 8).
Clear<y>? yes
*** journal has been deleted ***
Resize inode not valid. Recreate<y>? yes
Run Code Online (Sandbox Code Playgroud)
并且因为 31 天过去了,它仍在运行,100% 占用 1 个 CPU 内核。
当用strace看它时,我看到的是:
strace -p 3174
strace: Process 3174 attached
strace: [ Process PID=3174 runs in x32 mode. ]
strace: [ Process PID=3174 runs in 64 bit mode. ] …
Run Code Online (Sandbox Code Playgroud) 最近电源故障导致我的 linux 机器 (Ubuntu 8.10) 从正常运行状态快速关闭电源两次后,我有一个无法安装的驱动器。
更新:驱动器有时会挂载,但显示为完全空的(甚至不是 Lost+Found)并显示 14.9 GB 可用空间(它是 500GB 驱动器)当我尝试做任何事情时,它给我一个权限错误并且驱动器卸载。(或者,也许,一开始就没有真正安装?)
这是我尝试挂载时的错误消息:
~$ sudo mount -a mount:错误的 fs 类型,错误的选项,/dev/sdd1 上的超级块错误, 缺少代码页或帮助程序,或其他错误 在某些情况下,可以在 syslog 中找到有用的信息 - 尝试 留言 | 尾巴左右
那么也许指定 fs 类型?
~$ sudo mount -t ext3 /dev/sdd1 /media/disk-7 mount:错误的 fs 类型,错误的选项,/dev/sdd1 上的超级块错误, 缺少代码页或帮助程序,或其他错误 在某些情况下,可以在 syslog 中找到有用的信息 - 尝试 留言 | 尾巴左右
不,一样。所以有什么事情搞砸了?
~$ sudo fsck /dev/sdd1 fsck 1.41.3(2008 年 10 月 12 日) e2fsck 1.41.3(2008 年 10 月 12 日) /dev/sdd1:恢复日志 fsck.ext3:尝试重新打开 /dev/sdd1 时没有这样的文件或目录 警告...设备 /dev/sdd1 的 …
我的根分区格式为 ext3,我想对其执行坏块扫描。通常e2fsck -c -c 会执行此操作,但您不能在已安装的分区上运行它。我知道可以通过创建文件/forcefsck来强制 fsck 在引导时运行,但是否可以指定它还应该检查坏块?如果没有,检查根分区上的坏块的推荐方法是什么?我想避免必须创建救援磁盘并从它启动。
运行时,包含 1,000,000 个文件的 100GB 磁盘是否比包含 100 个文件的 100GB 磁盘需要更长的时间fsck
?
fsck
当我重新启动服务器时,偶尔会自行运行,但大多数情况下不会。但是当它运行时,它需要很长时间才能完成。永久禁用此功能是否安全?
我需要能够从 win7 盒子检查/修复 SD 卡上的文件系统错误。我曾希望使用来自 cygwin 的 e2fsck,但在使其工作时遇到了一些问题。(SD 卡用于将无风扇 PC 引导至 debian)
有问题的 SD 卡有 3 个分区 - 其中 2 个是 ext2。当我将卡插入 win7 机器时,我只看到 /dev/sdb1 出现。(未安装 unf dmesg 所以我看不出可能是什么错误)。
当我在这个分区上尝试 e2fsck 时,我告诉我“超级块中的坏幻数”等等。这让我相信它不是一个 linux 分区。
(注意 - 如果我把这张 SD 卡放在 CentOS 机器上,我会看到所有三个分区都出现并且可以使用它们)
无论如何:问题:
我刚刚从故障硬盘迁移了 linux 系统(Ubuntu 16.04)。折腾了很多,开机了,老是报错
/dev/sda2 has unsupported feature(s): metadata_csum
E2FSCK: Get a newer version of e2fsck!
Run Code Online (Sandbox Code Playgroud)
所以我在我的根文件系统上将 e2fsck 更新为 1.44.4 。
e2fsck 1.44.4 (18-Aug-2018)
Using EXT2FS Library version 1.44.4, 18-Aug-2018
Run Code Online (Sandbox Code Playgroud)
我仍然收到上述错误。
所以我的问题是:e2fsck 在启动时从哪里运行?它似乎不是根分区。我是否必须在 initramfs 上更新 e2fsck?重新安装 grub2 是否有可能在 initramfs 上更新 e2fsck?重新安装 grub2 没有解决这个问题。
我正在尝试确定是否fsck
会在重新启动时运行。我运行这个命令dumpe2fs -h /dev/(diskname)
并得到这个结果:
Mount count: 13
Maximum mount count: -1
Run Code Online (Sandbox Code Playgroud)
fsck
如果挂载计数等于或大于最大挂载计数,AFAIK将运行。在这种情况下,最大挂载计数为 -1,因此fsck
永远不会运行。这是正常的吗?