小编Jo *_*Kin的帖子

rmdir 删除空目录失败

我在删除空目录时遇到问题,strace 显示错误:

rmdir("empty_dir") = -1 ENOTEMPTY (Directory not empty)
Run Code Online (Sandbox Code Playgroud)

并且ls -la empty_dir什么都不显示。所以我用 debugfs 连接到 fs (ext4) 并看到这个目录中的隐藏文件:

# ls -lia empty_dir/
total 8
44574010 drwxr-xr-x 2 2686 2681 4096 Jan 13 17:59 .
44573990 drwxr-xr-x 3 2686 2681 4096 Jan 13 18:36 ..

debugfs:  ls empty_dir
 44574010  (12) .    44573990  (316) ..  
 26808797  (3768) _-----------------------------------------------------------.jpg  
Run Code Online (Sandbox Code Playgroud)

为什么会发生这种情况?有没有机会在不卸载和全面检查 fs 的情况下解决这个问题?

附加信息:

“隐藏”文件只是一个普通的 jpg 文件,可以通过图像查看器打开:

debugfs:  dump empty_dir/_-----------------------------------------------------------.jpg /root/hidden_file

# file /root/hidden_file 
/root/hidden_file: JPEG image data, JFIF standard 1.02
Run Code Online (Sandbox Code Playgroud)

rm -rf …

ext4 malware debugfs

7
推荐指数
1
解决办法
1850
查看次数

标签 统计

debugfs ×1

ext4 ×1

malware ×1