当进程崩溃时,我尝试从 /proc/net 存档文件。这是为了帮助调试,了解崩溃发生时的机器状态。
其内容不是常规文件,而是内核内部数据结构的接口。
# file /proc/net/arp
/proc/net/arp: empty
# cat /proc/net/arp | head -n 3
IP address HW type Flags HW address Mask Device
172.18.0.2 0x1 0x2 02:42:ac:12:00:02 * docker0
172.18.0.3 0x1 0x2 02:00:00:00:00:13 * docker0
虽然 cat 命令显示了内容,但我无法使用 tar 将其存档。使用单个文件进行演示的示例:
# tar -cvf net.tar /proc/net/arp
tar: Removing leading `/' from member names
/proc/net/arp
# tar -xvf net.tar
proc/net/arp
# cat proc/net/arp
#
归档 /proc 的最佳方法是什么?使用脚本迭代所有文件并 cat 内容是唯一的可能性吗?