다음 메시지를 받았습니다.
kernel: Buffer I/O error on dev sdb1, logical block 107390598, async page read
실제로 USB HDD는 sdb
제거되었습니다. lsblk
또한 언급이 없습니다 sdb
.
umount -l
를 얻을 때까지 마운트된 모든 파일 시스템에서 실행 합니다 umount: /media/XXX: not mounted
.
파일 시스템 오류가 발생합니다. sdb1
NTFS에는 루프백 btrfs 파일 시스템이 포함되어 있습니다. ( umount -l
포함하기 전에 루프백 파일 시스템을 수행했습니다)
Jul 11 11:14:13 svelte ntfs-3g[2744]: ntfs_attr_pread_i: ntfs_pread failed: Input/output error
Jul 11 11:14:13 svelte ntfs-3g[2744]: Failed to read vcn 0x0: Input/output error
Jul 11 11:14:13 svelte kernel: Buffer I/O error on dev sdb1, logical block 107390598, async page read
Jul 11 11:14:14 svelte sudo[26283]: pam_unix(sudo:session): session closed for user root
Jul 11 11:17:20 svelte ntfs-3g[2744]: ntfs_attr_pread_i: ntfs_pread failed: Input/output error
Jul 11 11:17:20 svelte kernel: Buffer I/O error on dev sdb1, logical block 107390598, async page read
Jul 11 11:17:20 svelte kernel: Buffer I/O error on dev sdb1, logical block 107390598, async page read
Jul 11 11:17:20 svelte kernel: blk_update_request: 40 callbacks suppressed
Jul 11 11:17:20 svelte kernel: blk_update_request: I/O error, dev loop0, sector 420501056
Jul 11 11:17:20 svelte kernel: btrfs_dev_stat_print_on_error: 40 callbacks suppressed
Jul 11 11:17:20 svelte kernel: BTRFS error (device loop0): bdev /dev/loop1 errs: wr 0, rd 211, flush 0, corrupt 0, gen 0
또한 이상한 점은 루프백 파일의 이름이 잘못되었다는 것입니다. 실제로는 이지만 /media/2TB/Backup/svelte-backup.btrfs
다음과 같이 나타납니다.
$ losetup
NAME SIZELIMIT OFFSET AUTOCLEAR RO BACK-FILE DIO
/dev/loop0 0 0 1 0 /Backup/svelte-backup.btrfs 0
이 루프 장치는 종료 해도 losetup -d
제거할 수 없습니다 0
.
내가 아는 유일한 해결책은 재부팅하는 것입니다.
커널에게 잊어버리라고 지시하는 방법이 있나요 sdb
? 커널이 동일한 파일 시스템 UUID가 두 번 "마운트"되는 것에 만족하지 않기 때문에 btrfs에 영향을 미칩니다.
답변1
나는 이런 질문을 제기했다.
losetup -d
실패하면 0번 출구 #484.
이전 FS 마운트 지점에 작업 디렉터리에 대한 프로세스가 있어서 실제로 제거가 완료되지 않은 것으로 보입니다.