linux - 改变Linux内核

标签 linux linux-kernel

大家,我正在尝试学习如何使用Linux Red Hat的内核,我尝试更改内核中的一些功能:

/*
 * sys_execve() executes a new program.
 */
asmlinkage int sys_execve(struct pt_regs regs)
{
    int error;
    char * filename;



    filename = getname((char *) regs.ebx);
    error = PTR_ERR(filename);
    if (IS_ERR(filename))
        goto out;

    printk("Hello World!"); // I added this function

    error = do_execve(filename, (char **) regs.ecx, (char **) regs.edx, &regs);
    if (error == 0)
        current->ptrace &= ~PT_DTRACE;
    putname(filename);
out:
    return error;
}

这个系统调用执行程序,我的问题是为什么当我在终端中并编写一些函数(例如“日期”)时我没有收到我的hello world,提前感谢您的帮助

最佳答案

printk() 应记录到 /proc/kmsg,然后由 syslog(8) 读取并记录。

关于linux - 改变Linux内核,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5508223/

相关文章:

linux - NOHZ=ON 如何影响 Linux 内核中的 do_timer()?

linux - 如何使用运行此容器的同一用户为 docker 容器创建卷?

linux - crontab @reboot 在服务器重启时不执行 bash 脚本

linux - 如何查看电子邮件的来源?

linux - 如何编辑 Adob​​e Media Server 创建目录所用的权限?

linux - 我无法正确修改内核模块中的 ICMP 流量

c - 如何使用 -std=gnu99 编译 Linux 内核模块?

kubernetes - 使用rook卷时kubernetes节点保持重启

linux - linux命令的内部工作

linux - 脚本中 ps aux 和 `ps aux` 之间的不同结果