我苦苦寻找为什么我无法访问 Seagate 硬盘。系统显示它已安装:
me@helios64:~$ sudo mount /dev/sdb1 /mnt/disk2/
mount: /mnt/disk2: /dev/sdb1 already mounted or mount point busy.
但无法卸载它:
me@helios64:~$ sudo umount -f /dev/sdb
umount: /dev/sdb: not mounted.
而且,它也不存在于 /etc/mtab 中:
me@helios64:~$ cat /etc/mtab | grep sd
cgroup2 /sys/fs/cgroup/unified cgroup2 rw,nosuid,nodev,noexec,relatime,nsdelegate 0 0
nfsd /proc/fs/nfsd nfsd rw,relatime 0 0
/dev/sda1 /srv/dev-disk-by-label-uno ext4 rw,relatime,jqfmt=vfsv0,usrjquota=aquota.user,grpjquota=aquota.group 0 0
/dev/sda1 /export/PLEX ext4 rw,relatime,jqfmt=vfsv0,usrjquota=aquota.user,grpjquota=aquota.group 0 0
仅显示我的第一个驱动器 sda
me@helios64:~$ dmesg | grep sdb
[ 5.014287] sd 1:0:0:0: [sdb] 976773168 512-byte logical blocks: (500 GB/466 GiB)
[ 5.014358] sd 1:0:0:0: [sdb] Write Protect is off
[ 5.014373] sd 1:0:0:0: [sdb] Mode Sense: 00 3a 00 00
[ 5.014487] sd 1:0:0:0: [sdb] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[ 5.041141] sd 1:0:0:0: [sdb] Attached SCSI disk
尝试对驱动器进行 fsck,但它不让我...因为它显示正在使用中
me@helios64:~$ sudo fsck -f /dev/sdb
fsck from util-linux 2.33.1
e2fsck 1.44.5 (15-Dec-2018)
/dev/sdb is in use.
e2fsck: Cannot continue, aborting.
fdisk -l 输出:
me@helios64:~$ sudo fdisk -l
[...]
Disk /dev/sdb: 465,8 GiB, 500107862016 bytes, 976773168 sectors
Disk model: ST3500820AS
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 91A91874-7314-4C83-8061-0904AE8BF0B1
Device Start End Sectors Size Type
/dev/sdb1 2048 976773134 976771087 465,8G Linux filesystem
任何想法如何
- 强制挂载、卸载?
- 强制 fsck,因为我怀疑驱动器的完整性
- 找出它安装在哪里?(即使我也不这么认为)
感谢您的帮助
编辑:尝试使用--bind选项,但它回答:
mount(2) 系统调用失败:不是目录
不明白…
编辑2:成功安装后,现在我无法写入它...dmesg显示了无数:
[ 7822.964530] EXT4-fs (sdb1): I/O error while writing superblock
[ 7822.964543] EXT4-fs error (device sdb1) in ext4_convert_unwritten_io_end_vec:4798: Journal has aborted
[ 7822.964605] EXT4-fs (sdb1): I/O error while writing superblock
[ 7822.964612] EXT4-fs (sdb1): failed to convert unwritten extents to written extents -- potential data loss! (inode 12582922, error -30)
进而:
[ 7822.965799] JBD2: Error -5 detected when updating journal superblock for sdb1-8.
[ 7822.972166] EXT4-fs (sdb1): I/O error while writing superblock
[ 7822.972182] EXT4-fs error (device sdb1): ext4_journal_check_start:83: Detected aborted journal
[ 7822.972187] EXT4-fs (sdb1): Remounting filesystem read-only
[ 9018.053019] scsi_io_completion_action: 25 callbacks suppressed
这是否意味着我最终可以扔掉这个驱动器了?
编辑3:
有人知道我是否可以通过命令行或 USB 外部更新固件吗?我有这个用于 SATA/USB 连接的外部盒子。
[Armbian Debian buster 10 Helios64 NAS Linux helios64 5.8.14-rockchip64]
答案1
您正在尝试挂载/dev/sdb1
但卸载/dev/sdb
。这些不一样
哦。你sudo fsck -f /dev/sdb
——很高兴它拒绝这么做。如果你得到的是分区sdb1
而不是磁盘,你就会破坏(已安装的)文件系统sdb
。