debugfs

如何使用 dma_debug 跟踪 DMA 事务?
debugfs

如何使用 dma_debug 跟踪 DMA 事务?

我目前正在研究一些 PCI-e 设备的工作,这需要我获取特定(例如 GPU 或 NIC )PCI 卡上 DMA 事务的跟踪。经过一些研究后,我发现了一个有用的邮政由 xealits 提供,但似乎没有告诉在某个 DMA 事务中读取/写入了多少字节。然后我发现一个名为的内核模块dma_debug可能完全满足我的期望 我尝试使用配置选项重新编译内核 v6.7: CONFIG_DMA_API_DEBUG=y CONFIG_DEBUG_FS=y CONFIG_DMA_API_DEBUG_SG=y CONFIG_DMA_API_DEBUG_FENCE=y CONFIG_...

Admin

奇怪的调试行为
debugfs

奇怪的调试行为

我正在玩 debugfs。我首先创建了一个文件: debugfs -w /dev/vda1 > write /etc/hosts /a/b/c/d 并且文件系统已损坏: [root@linux2 /]# ls -l ls: cannot access /a/b/c/d: No such file or directory total 8388724 -?????????? ? ? ? ? ? /a/b/c/d 我觉得这个系统也坏了: [978471.090291] EXT4-fs er...

Admin

NAS 上的 debugfs
debugfs

NAS 上的 debugfs

# debugfs -R 'stat <INODE>' /dev/sdaX或# debugfs -R 'stat FILENAME' /dev/sdaX>显示文件创建时间等。 如果设备是安装在 /MOUNTPOINT/VOL-1 上、地址为 192.168.1.1:/VOL-1 的 NAS,如何运行此命令? ...

Admin

如何修改 btrfs 中的文件创建时间
debugfs

如何修改 btrfs 中的文件创建时间

我想在我的文件系统上有快照。由于该btrfs-convert工具不再可用,我被迫通过将文件系统逐个复制到新文件系统上来转换文件系统。然而,我同时丢失了所有最后状态更改时间。 如果我想使用 extXfs 更新它们,我会使用 debugfs,但 debugfs 不能与 btrfs 一起使用。 btrfs 有类似的工具吗? ...

Admin

我的 inode 在哪里使用(高级、debugfs 等)
debugfs

我的 inode 在哪里使用(高级、debugfs 等)

我制作了一个存在许多错误的 ext4 卷的副本,并对其进行了 fscked,然后进行了广泛的比较,以确保在此过程中没有丢失数据。由于文件名中存在各种编码,因此我决定按 inode 而不是按文件名进行工作,并使用 debugfs 和 md5sum 计算每个非归零 inode 的控制和(其中一些是非归零但标记为空闲)。然后我通过索引节点将结果与文件(和目录等)列表连接起来,并确保两个文件系统上的内部连接相同。 然而,令我大吃一惊的是,我还在剩余部分(外连接少内连接)中发现了 3 个索引节点,这些索引节点似乎是在修复过程中分配的(它们标记used在fscked副本...

Admin

debugfs 不工作 | ext2_lookup 未找到文件
debugfs

debugfs 不工作 | ext2_lookup 未找到文件

$sudo blkid /dev/sda1: UUID="F959-61DE" TYPE="vfat" PARTUUID="950b18a0-1501-48b4-92ef-ba1dd15aaf21" /dev/sda2: UUID="6dfcfc23-b076-4eeb-8fba-a1261b4ea399" TYPE="ext4" PARTUUID="ddc69ee8-40b0-49c9-9dcb-0b9064caca7d" /dev/sda3: UUID="fec0af18-d28e-4f2a-acb7-6380ddee3dc2" TYPE="ext4" ...

Admin

使用 debugfs cat 读取过时的文件数据
debugfs

使用 debugfs cat 读取过时的文件数据

我正在尝试使用文件的索引节点读取文件的内容。 这工作正常: echo "First line" > data.txt sync sudo debugfs -R "cat <$(stat -c %i data.txt)>" /dev/sda3 debugfs 告诉我文件内容是“第一行”。这部分命令获取 data.txt 的 inode 编号:$(stat -c %i data.txt)。 添加第二行时出现问题: echo "Second line" >> data.txt sync sudo debugfs -R "cat &l...

Admin

尝试通过调试打开磁盘分区时出现“打开文件系统时超级块中的幻数错误”
debugfs

尝试通过调试打开磁盘分区时出现“打开文件系统时超级块中的幻数错误”

我正在尝试跟踪 Linux 虚拟机上的一些 I/O。捕获为我提供了 LBA,我需要将其映射到文件名。我正在尝试使用 debugfs 来实现这一点。 例如,我想查看 LBA=41882816 属于哪个文件。这是我从 fdisk 获得的信息: [vagrant@localhost ~]$ sudo fdisk -lu /dev/sda Disk /dev/sda: 39.7 GB, 39728447488 bytes 255 heads, 63 sectors/track, 4830 cylinders, total 77594624 sectors Unit...

Admin

创建用于读取/写入 u32 值的 debugfs 文件
debugfs

创建用于读取/写入 u32 值的 debugfs 文件

我正在尝试创建具有以下规格的文件。 debugfs 子目录中的文件“myfile”是只读由任何用户读取,并且在读取时应返回 jiffies 内核计时器的当前值。 my_init我在直接调用的函数中编写了以下一行代码module_init(my_init)。 if (!debugfs_create_u32("myfile", 0444, handle, (u32*)&myfile)) goto fail; 运行时make,我收到以下错误。 error: invalid use of void expression if (!d...

Admin

复制或恢复 ext4fs 文件系统上文件/目录的 crtime
debugfs

复制或恢复 ext4fs 文件系统上文件/目录的 crtime

我想知道 2020 年是否有方法复制或恢复 Linux 中 inode/文件/目录的 crtime(创建时间)。我不小心删除了一个文件夹,而我仍然有完整的磁盘备份,但 cp -a 和 rsync 都没有可以恢复/复制文件/目录crtimes。 我已经找到了一种使用 debugfs 实现它的方法,但它非常复杂,我需要自动化(我删除了数百个文件/目录)。 对于源磁盘,您执行以下操作: # debugfs /dev/sdXX # stat /path Inode: 432772 Type: directory Mode: 0700 Flags...

Admin

如何通过 debugfs 扩大 ext3/ext4 文件系统?
debugfs

如何通过 debugfs 扩大 ext3/ext4 文件系统?

我现在的情况是想扩大固件使用的 ext4 文件系统的默认大小。 问题是resize2fs做额外的事情,例如清除一些文件系统功能并将日志重新定位到设备分区的开头(因此我的设备在安装任何东西之前不断崩溃,并且我不知道如何访问内核控制台之前adb可以启动后,我不知道如何访问它或调整console=内核参数以将控制台打印在设备的显示屏上)。 由于是扩建,一般不需要搬迁。那么如何使用debugfs来更改大小以及(也许需要的话)空闲索引节点的数量?我的意思是我应该设置哪个字段set_super_value以及选择哪些数字? 更重要的是,如何设置组描述符校验和? ...

Admin

RAID1恢复过程跳过坏块
debugfs

RAID1恢复过程跳过坏块

我有一个 RAID1 阵列,其中一个磁盘轻微损坏/dev/sdb。我将一个新的硬盘放入/dev/sda该阵列中以进行镜像sdb(然后我将更换sdb为新的硬盘)。 # cat /proc/mdstat Personalities : [raid1] [linear] [multipath] [raid0] [raid6] [raid5] [raid4] [raid10] md0 : active raid1 sda2[2] sdb2[1] 999872 blocks super 1.2 [2/2] [UU] md1 : active raid...

Admin

debugfs偶尔无法读取inode数据
debugfs

debugfs偶尔无法读取inode数据

我需要获取创建文件的日期和时间。该文件存储在 ext4 文件系统中,因此信息在 i 节点中可用,我使用 debugfs 来读取此信息: # debugfs -R "stat <3922>" /dev/sda1 | grep crtime debugfs 1.43-WIP (18-May-2015) crtime: 0x5b646acd:b0175ac8 -- Fri Aug 3 14:46:37 2018 这工作正常,但命令有时会失败: # debugfs -R "stat <3922>" /dev/sda1 debugfs...

Admin