/etc/apt/sources.list.d/ 目录下存在一个损坏的文件系统目录项 driver.list:
/etc/apt/sources.list.d/
driver.list
ls -la
c????????? ? ? ? ? ? driver.list
No such file or directory
os.unlink()
os.rename()
FileNotFoundError
apt update
N: 忽略'driver.list'(于目录'/etc/apt/sources.list.d/'),鉴于它不是一个常规文件
经排查,该损坏目录项位于 etc-overlay overlayfs 的底层目录中,但 overlay 挂载参数引用的 upper/lower 层路径在当前系统中完全不可访问:
etc-overlay
findmnt /etc
/etc 等-overlay overlay rw,relatime, lowerdir=/root/persistent/overlay/data/layer-4d646bbc6cce5538/etc: /root/persistent/ostree/data/4aab5bbf066c5aa7321d2d41181230f22a96cc4a7dbd5aadac8f6e1e61c8d150.0/checkout/etc: /root/ostree/deploy/deepin/deploy/84f4c0bc223db7d2db9a7a39cbfda6be76a7a1da74ecc9aee1c107e34a9b3f09.23/etc, upperdir=/root/persistent/overlay/data/layer-c7cec8ff43a3bab1/etc, workdir=/root/persistent/overlay/data/4aab5bbf066c5aa7321d2d41181230f22a96cc4a7dbd5aadac8f6e1e61c8d150.0/etc-work
/root/persistent/
/root/ostree/
sudo ls
/root
debugfs
/dev/nvme0n1p5
File not found by ext2_lookup
/etc
fstab
lsb-release
apt
结论:overlay 挂载创建于系统启动早期(疑似 initramfs/ostree 阶段),其 upper/lower 层所在的文件系统在当前运行环境中不可见(路径"失联"),内核保留了挂载引用使 overlay 正常工作,但损坏的目录项无法通过任何用户空间文件操作清除。怀疑与 Deepin 25 的 ostree + overlay 实现有关。
sudo rm -f /etc/apt/sources.list.d/driver.list
sudo unlink /etc/apt/sources.list.d/driver.list
sudo mv /etc/apt/sources.list.d/driver.list xxx
sudo chattr -i
sudo ls /root/persistent/overlay/data/layer-c7cec8ff43a3bab1/etc/apt/sources.list.d/
sudo debugfs -R "ls -l ..." /dev/nvme0n1p5
sudo ls /run/initramfs/root/...
$ ls -la /etc/apt/sources.list.d/ drwxr-xr-x 2 root root 4096 1970年Jan 1日 . drwxr-xr-x 1 root root 4096 Sep 5日 11:41 .. -rw-r--r-- 1 root root 116 1970年Jan 1日 appstore.list -rw-r--r-- 1 root root 116 1970年Jan 1日 appstore.list.bak -rw-r--r-- 1 root root 113 Apr 9日 21:10 docker.list c????????? ? ? ? ? ? driver.list -rw-r--r-- 1 root root 259 1970年Jan 1日 termius.list -rw-r--r-- 1 root root 278 Sep 4日 10:25 vscode.sources
$ stat /etc/apt/sources.list.d/driver.list stat: 对 '/etc/apt/sources.list.d/driver.list' 调用 statx 失败: 没有那个文件或目录
$ sudo python3 -c "import os; os.unlink('/etc/apt/sources.list.d/driver.list')" Traceback (most recent call last): File "", line 1, in FileNotFoundError: [Errno 2] No such file or directory: '/etc/apt/sources.list.d/driver.list'
$ sudo debugfs -R "ls -l /root/persistent/overlay/data/layer-c7cec8ff43a3bab1/etc/apt/sources.list.d" /dev/nvme0n1p5 /root/persistent/overlay/data/layer-c7cec8ff43a3bab1/etc/apt/sources.list.d: File not found by ext2_lookup $ sudo debugfs -R "ls -l /etc" /dev/nvme0n1p5 6829057 40755 (2) 0 0 4096 10-Nov-2025 21:25 . 2 40755 (2) 0 0 4096 5-Sep-2026 11:45 .. 6829059 100644 (1) 0 0 618 10-Nov-2025 21:25 fstab 6829058 100644 (1) 0 0 92 10-Nov-2025 21:25 lsb-release
$ sudo apt update ... N: 忽略'driver.list'(于目录'/etc/apt/sources.list.d/'),鉴于它不是一个常规文件
/usr usr-overlay overlay (lowerdir/upperdir 同 /root/persistent/... 结构) /opt opt-overlay overlay (lowerdir/upperdir 同 /root/persistent/... 结构)
该问题不影响软件源更新和 Docker 等软件正常使用,仅产生 apt 警告
系统其余功能正常
可用 sudo apt update 完整输出 + 本报告 + findmnt /etc 输出作为附件提交
sudo apt update
看不明白
直接用 ”最全驱动PE“ 访问磁盘删除,或者DiskGenius强制移除
这个 PE下可以操作linux分区的
Featured Collection
Popular Ranking
Popular Events
【Bug 反馈】Deepin 25: /etc overlayfs 上层目录项损坏,apt 警告无法清除
一、系统环境
二、问题描述
/etc/apt/sources.list.d/目录下存在一个损坏的文件系统目录项driver.list:ls -la显示为c????????? ? ? ? ? ? driver.list(无法获取文件类型、权限、inode 信息)No such file or directoryos.unlink()/os.rename()同样返回FileNotFoundError(内核在路径解析 lookup 阶段即失败)apt update每次执行均出现警告:三、根因分析(排查结论)
经排查,该损坏目录项位于
etc-overlayoverlayfs 的底层目录中,但 overlay 挂载参数引用的 upper/lower 层路径在当前系统中完全不可访问:findmnt /etc显示 overlay 配置:/root/persistent/、/root/ostree/)在sudo ls下均显示不存在(/root下只有用户目录)debugfs直接读取底层 ext4 设备/dev/nvme0n1p5,同样返回File not found by ext2_lookup/etc目录仅包含fstab和lsb-release两个文件(无apt目录),证明/etc内容完全由 overlay 层合成结论:overlay 挂载创建于系统启动早期(疑似 initramfs/ostree 阶段),其 upper/lower 层所在的文件系统在当前运行环境中不可见(路径"失联"),内核保留了挂载引用使 overlay 正常工作,但损坏的目录项无法通过任何用户空间文件操作清除。怀疑与 Deepin 25 的 ostree + overlay 实现有关。
四、已尝试的解决方法(全部失败)
sudo rm -f /etc/apt/sources.list.d/driver.listsudo unlink /etc/apt/sources.list.d/driver.listsudo mv /etc/apt/sources.list.d/driver.list xxxsudo chattr -i等os.unlink()/os.rename()sudo ls /root/persistent/overlay/data/layer-c7cec8ff43a3bab1/etc/apt/sources.list.d/sudo debugfs -R "ls -l ..." /dev/nvme0n1p5sudo ls /run/initramfs/root/...五、完整诊断输出
1. 目录状态(ls 可见但无法操作)
2. stat 失败输出
3. Python 系统调用失败输出
4. debugfs 输出
5. apt update 警告
6. 其余 overlay 挂载(同架构)
六、期望的官方支持
七、备注
该问题不影响软件源更新和 Docker 等软件正常使用,仅产生 apt 警告
系统其余功能正常
可用
sudo apt update完整输出 + 本报告 +findmnt /etc输出作为附件提交