系统小窝欢迎您

电脑公司 深度技术
当前位置:系统小窝 > 系统教程 > Linux教程 >

Linux以其他用户身份来执行程序的方法

时间:2021-04-10 来源:来吧老妹 人气:

在Linux系统中,程序一般都是在系统用户下运行的。当然也其他用户也可以运行程序,只不过要通过以些设置来让程序在其他用户中执行。本文就来介绍一下Linux以其他用户身份来执行程序的方法。

一、 runuser命令:

概述:runuser命令使用一个替代的用户或者组ID运行一个Shell。这个命令仅在root用户时有用。

仅以会话PAM钩子运行,并且没有密码提示。如果用一个非root用户,并且该用户没有权限设置user ID,这个命令将会因为程序没有setuid而失败。因runuser不会运行认证和账户PAM钩子,它比su更底层。

语法如下图:

使用注意事项:使用runuser命令,无需使用密码,并且,只能在root用户下使用。

二、su命令

1. 概述:su命令允许你成为一个超级用户或者替代用户(substitute user),欺骗用户(spoof user),设置用户(set user)或者切换用户(switch user)。它允许一个Linxu用户切换当前用户到那些你知道密码的目标用户,切换包括与之关联的运行中的控制台(console)或者Shell

它的语法如下图所示:

2. 切换到root用户:su命令会询问目标用户的密码,在你的shell命令行中输入 su - 来切换到root用户(你必须知道root用户的密码)

如果输入了正确的root密码,会话的所有权(这里应该指当前控制台的上下文mdash;mdash;译注)将改为root账户。输入logout可以退出一个root登录的shell,输入 whoami或者id命令来验证当前会话的所有者。

三、 sudo命令

1. 概述:udo以另外的用户来执行一个命令,但是它跟着一组关于那些用户可以以那些其他用户执行那些命令的规则(有点绕口mdash;mdash;译注)。这个规则在/etc/sudoers这个文件中被定义。不像su,sudo验证用户是靠用户自己的密码而不是那个要切换的用户密码。当提供一个审计跟踪命令和他们的参数时,sudo允许一个系统管理员给某些用户(或用户组)委派以root或其他用户来运行某些(或全部)命令的权限。这允许无需在用户之间共享密码就可以在指定宿主上将指定命令委派给指定用户。

语法如下图所示:

四、 nat123使用linux版linux服务器:

支持端口映射和动态域名解析,web管理。自家服务器发布网站,做网站服务可以使用nat123软件解决80端口被屏蔽问题、公网IP不固定问题、无公网IP不能发布网站问题。

GUI工具注意事项(su和sudo的前端GUI):

gksu 命令是su的前台,gksudo是sudo的前端。他们的主要用途是用来运行需要root权限但不需要运行一个X terminal emulator和使用直接使用su的图形化命令。

语法如下:

以上就是Linux怎么在其他用户下执行程序的介绍了,在Linux系统中有专门的命令帮助我们在其他用户下执行程序,当然也可以使用工具来实现这个目标。

相关文章

发表评论

验证码: 看不清?点击更换

注:网友评论仅供其表达个人看法,并不代表本站立场。