我有这样的问题 尽管配置是读/写,但磁盘如何突然被写保护?
我使用这些命令来解决这个问题
umount /dev/sdb1 e2fsck /dev/sdb1 mount /dev/sdb1
但
~# e2fsck /dev/sdb1
e2fsck 1.44.5 (15-Dec-2018)
ext2fs_open2: Bad magic number in super-block
e2fsck: Superblock invalid, trying backup blocks...
e2fsck: Bad magic number in super-block while trying to open /dev/sdb1
The superblock could not be read or does not describe a valid ext2/ext3/ext4
filesystem. If the device is valid and it really contains an ext2/ext3/ext4
filesystem (and not swap or ufs or something else), then the superblock
is corrupt, and you might try running e2fsck with an alternate superblock:
e2fsck -b 8193 <device>
or
e2fsck -b 32768 <device>
/dev/sdb1 contains a ufs file system
附加命令可帮助您了解更多详细信息
~#nano /etc/fstab
UUID=###951671### /DATA ufs defaults 1 2
mkdir /DATA
mount /DATA
~# ls -lat | grep DATA
drwxr-xr-x 5 root root 1024 May 26 11:37 DATA
~# df -h | grep sd
/dev/sda1 276G 8.7G 254G 4% /
**/dev/sdb1 197G 102G 80G 57% /DATA**
~# lsblk -f | grep sd
sda
├─sda1 ext4 ###-c0fb-42ce-9c78-### 253.2G 3% /
├─sda2
└─sda5 swap ###-27b4-485b-98b3-### [SWAP]
sdb
└─sdb1 ufs ###951671### 79.3G 52% /DATA
~:/DATA# ls
ls: reading directory '.': Input/output error
~:/DATA# mount -o rw,remount /dev/sdb1
mount: /DATA: mount point not mounted or bad option.
~# umount /DATA
~# e2fsck /DATA
e2fsck 1.44.5 (15-Dec-2018)
e2fsck: Is a directory while trying to open /DATA
The superblock could not be read or does not describe a valid ext2/ext3/ext4
filesystem. If the device is valid and it really contains an ext2/ext3/ext4
filesystem (and not swap or ufs or something else), then the superblock
is corrupt, and you might try running e2fsck with an alternate superblock:
e2fsck -b 8193 <device>
or
e2fsck -b 32768 <device>
~# mount /DATA
mount: /DATA: WARNING: device write-protected, mounted read-only.
无论如何,我想访问 /DATA 文件夹中的这个硬盘 /dev/sdb1
我该如何解决这个问题?
答案1
停止。
根据e2fsck
、您的/etc/fstab
文件和lsblk
输出,文件系统类型/dev/sdb1
为ufs
。
e2fsck
是仅有的对于文件系统类型ext2
和ext3
.ext4
它根本无法修复文件系统类型ufs
,并且如果您强制它尝试修复,实际上可能会对 UFS 文件系统造成更多损坏。
为了检查和修复 UFS 文件系统,您需要fsck.ufs
改为。在某些 Linux 发行版上,它以名为 的软件包形式提供ufsutils
:使用您的软件包管理器来安装它。
除此之外,UFS 并不是 Linux 中经常使用的文件系统 - 我认为它更像是 Solaris 或 *BSD 的东西。如果该磁盘是从 Solaris 或 BSD 系统移出的,您可以将其带回原处并使用原始系统的工具来检查文件系统 - 这些工具更有可能与实际使用的文件系统版本保持同步。
答案2
我解决了这个问题
$ dmesg|grep bsd
[3.467958]sda1:
然后:
$ sudo mount -t ufs -r -o ufstype=ufs2 /dev/sdb1 ~/freebsd
当然,对于另一个版本的linux系列ubuntu我们需要知道: 可能的常见类型有:
old old format of ufs
default value, supported as read-only
44bsd used in FreeBSD, NetBSD, OpenBSD
ufs2 used in FreeBSD 5.x
5xbsd synonym for ufs2
sun used in SunOS (Solaris)
sunx86 used in SunOS for Intel (Solarisx86)
hp used in HP-UX
nextstep used in NextStep
nextstep-cd used for NextStep CDROMs (block_size == 2048)
openstep used in OpenStep
我们必须在 ubuntu 上使用这个命令,就像这样
$ sudo mount -t ufs -r -o ufstype=44bsd /dev/sdb1 /DATA
答案3
您只需在 Windows 中卸载或更新 ext2fsd 即可。但是,为了暂时或紧急恢复您的 Linux,您可以在看到错误的黑屏中编写以下命令:
e2fscl -c <-y> <device>
您可以在其中写入您的 Linux 分区,而不是<device>
;例如,/dev/sdb7
。每当跑步要求您添加或按下时,您都可以添加-y
或按。y