如何让 Linux CDROM 的挂载/卸载显示在系统日志中

如何让 Linux CDROM 的挂载/卸载显示在系统日志中

我想要记录每次安装 cdrom 驱动器的情况。理想情况下,这会记录在 syslog 中。系统是 CentOS 5.5 linux。

答案1

在安装设备时,mount 命令将发出一个 open 系统调用。因此,一种方法是使用 linux 的审计子系统来记录 cdrom 设备上的读取。首先,您需要启用它。

yum install audit
chkconfig auditd on
service auditd start
auditctl -e 1

现在您需要弄清楚您的 cdrom 设备并添加规则来记录读取。

readlink -f /dev/cdrom
auditctl -w /dev/sr0 -p r

现在如果我有一个 shell,其工作目录是 /var/log,并且我运行

mount /dev/sr0

之后 /var/log/audit/audit.log 中会有三行相关内容

类型 = SYSCALL msg = audit(1301280283.689:15549):arch = c000003e syscall = 2 成功 = 是退出 = 3 a0 = 7f0d3af92820 a1 = 0 a2 = 0 a3 = 1 项目 = 1 ppid = 14660 pid = 14661 auid = 500 uid = 0 gid = 0 euid = 0 suid = 0 fsuid = 0 egid = 0 sgid = 0 fsgid = 0 tty = pts4 ses = 231 comm =“mount”exe =“/ bin / mount”key =(null)

类型=CWD 消息=审计(1301280283.689:15549):cwd=“/var/log”

类型 = PATH msg = audit(1301280283.689:15549): item = 0 name =“/dev/sr0” inode = 5821 dev = 00:05 mode = 060660 ouid = 0 ogid = 11 rdev = 0b:00

如果有其他进程定期读取 cdrom 设备,则这种方法不是一个好主意。在 Fedora 14 系统上,udisks-daemon 似乎每秒都会轮询它。然而,在 CentOS 5.5 系统上,似乎没有任何东西访问它。

相关内容