问题标签 [user-mode-linux]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
160 浏览

linux - 如何在linux中启用以用户模式运行的应用程序执行root权限系统命令

场景:
我的 C++ 应用程序在 iMX 处理器上的嵌入式 linux Fedora 上运行。它是一个在用户模式下运行的应用程序,没有 root 访问权限。

我需要运行一个可以重新启动系统/操作系统的系统命令。在 C++ 中工作的命令如下所示。

问题:
但上述命令仅在从具有 root 访问权限的应用程序执行时才有效。

有时我也需要能够以类似的方式关闭系统。

上面的命令显然不起作用,因为我的应用程序没有 root 访问权限。添加像这样 [ system("shutdown -r now")] 的 sudo 有效,但必须输入密码,这不是我想要做的。

问题:
即使我的应用程序是用户模式应用程序,如何让我的应用程序运行系统命令以重新启动?有什么方法可以在不让我的应用程序从根目录运行的情况下做到这一点?

linux 源代码或脚本中是否有一些东西我可以调整以只为我的应用程序提供关闭和重新启动系统的权限?

0 投票
2 回答
1271 浏览

linux - Centos usermod -a 不要将用户添加到组中

在我的项目中,我必须在我的 centos 服务器上创建一个组并添加两个用户;我做:

然后我尝试将我的两个用户添加到这样的组中:

好的,没有错误,但是当我检查我的组时:

在输出中我得到:

组:社论:没有这样的用户

为什么我不能将我的用户添加到组?

提前致谢

0 投票
1 回答
254 浏览

linux - 用户空间上的当前宏

是否可以从用户模式访问当前结构?我已经读过,在内核模式下,Current 宏给出了一个指向当前 task_struct 的指针。有没有办法从用户模式访问这个结构?

编辑:

我的意思是阅读。我知道我们可以读取/dev/mem,问题是,有没有办法获得进程的task_struct?

0 投票
3 回答
394 浏览

unix - 用户模式和内核模式:不同的程序同时进行

是否有可能一个进程同时在内核模式下运行而另一个在用户模式下运行?

我知道,这不是编码问题,但如果有人知道答案,请指导我。

0 投票
0 回答
65 浏览

operating-system - 我们可以通过覆盖段寄存器来绕过用户模式/内核模式限制吗?

我现在正在学习操作系统中的中断并得到了这个问题。我知道我们不能直接在用户模式下调用系统函数,因为CS中的CPL是3,system_call的DPL是0。我想知道我们是否可以将CS中的CPL设置为0,然后调用内核函数?

对我来说似乎可行的原因是中断(int 0x80)可以将 CPL 从 3 更改为 0,这意味着我们也应该能够做同样的事情。但如果可以的话,这是一个安全问题,因为这样任何恶意软件都可以访问系统资源。

0 投票
1 回答
195 浏览

c - 以下哪些指令可以在非特权模式下运行?1) 加载 2) 存储 3) 输入 4) 输出

试图了解用户模式与内核模式以及哪些指令可以在非特权模式下运行。

根据 Abraham-Siberschatz,所有这些都可能需要 SysCall。

0 投票
1 回答
31 浏览

python - 如何在已经开发的 Django 用户表数据库上添加更多表字段

我想在用户数据表中添加更多字段,所以请解释完成此操作的正确方法。

0 投票
1 回答
550 浏览

c - 在 Linux 用户模式下退出 init 的正确方法

我使用自定义 initrd 在用户模式下编译了 Linux 内核 5.6,使用以下方法创建:

带有initrd/init.c初始化文件

该程序检查ubd0=...选项传递的磁盘。

编译gcc -static -o init init.c

毕竟我编译了内核

我更改了.config文件中的以下选项(使用 menuconfig)

毕竟我试图运行./linux mem=32M,一切看起来都很好,除了退出

如何正确退出?

0 投票
0 回答
45 浏览

context-switch - 定时器中断引起多少次模式切换

假设需要上下文切换时发生定时器中断。总模式切换发生两次是否正确,一次从内核模式到内核模式,一次从内核模式?

进程A收到中断并切换到内核模式,发生上下文切换,进程B在用户模式下执行,所以似乎发生了两次。

0 投票
0 回答
124 浏览

android - 使用 call_usermodehelper API 从内核驱动程序调用 shell 脚本

我在 /system/bin/ 目录中有一个 shell 脚本(AutoStartSvc.sh),它具有可执行权限。我想在按下遥控器的键码时从 IR 远程驱动程序触发这个 shell 脚本。我在远程驱动程序中使用“call_usermodehelper”API 来调用匹配 IR 密钥代码的 shell 脚本。

shell脚本内容:ifconfig wlan0 192.168.23.1 up

IR 远程驱动程序更改:

内核错误日志:

我的试验:这是一个 avc:由于 android 的 sepolicy 而被拒绝。为了解决这个问题,我在 android 源代码的 /system/sepolicy/kernel.te 中做了以下更改

即使在 kernel.te 中进行了上述更改,shell 脚本也没有被触发 no service denial 但是这次没有服务拒绝消息消失。但是“call_usermodehelper”的返回值为零。任何帮助表示赞赏。