linux里面以指定用户运行命令】的更多相关文章

一.chroot方式 [root@localhost ~]# chroot --userspec "nginx:nginx" "/" sh -c "whoami" nginx [root@localhost ~]# chroot --userspec "kibana:kibana" "/" sh -c "whoami" kibana 以kibana用户启动kibana示例: chroot…
方法汇总: 1.su 2.sudo 3.runuser 比较常用的方式:su 示例:su - root -s /bin/sh -c "/usr/local/nginx/sbin/nginx",解释:以root身份,用/bin/sh运行命令. 参考: https://www.cnblogs.com/bodhitree/p/6018369.html…
参考:http://blog.useasp.net/archive/2015/07/29/run-command-as-different-user-on-linux.aspx 在实际中,我们有时候想在一个脚本中指定用户来运行另一个程序,从而更好地管理进程.可以通过runuser.su和sudo来实现. runuser runuser命令使用一个替代的用户或者组ID运行一个Shell.这个命令仅在root用户时有用.仅以会话PAM钩子运行,并且没有密码提示.如果用一个非root用户,并且该用户没…
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMcAAABKCAIAAACASdeXAAAEoUlEQVR4nO2dy7WlIBBFTYIoSIIkmDt9iyQIxUwMxVDsAX5QKNTbpZZ61tqT9voB3JQIVr+qaZq/v7/KeADYyFtVG9dXPtAZdXspH4wz3diSvTL1TcWojeu1vuxytFUXFiJzA66/+tlYm7NKt5X1vqqNO7X3fsAqa/vK+sxG17jwT9Uo39rMznHBv…
PS:Linux下使用非root用户运行tomcat的原因 由于项目需求,也由于root用户启动tomcat有一个严重的问题,那就是tomcat具有root权限. 这意味着你的任何一个页面脚本(html/js)都具有root权限,所以可以轻易地用页面脚本 修改整个硬盘里的文件! 所以最好不要使用root启动tomcat. 正文:非root用户运行tomcat #本文安装目录为 /opt/tomcat6 # 创建用户 # 创建用户组 dev groupadd dev # 创建用户 tomcat u…
经常遇到要查看某个命令的运行文件在哪儿! 比如说vue cli,经常使用vue命令创建项目,如果你对nodejs的全局包安装目录了解可能一下就找到了, 蛋疼的是不一定每个命令都是nodejs下的,有可能会用到系统命令,或者第三方软件命令,比如说Linux下的nginx,mysql等. 再说不一定经常要查看运行文件,有可能偶尔心血来潮要去找下文件源码之类的,长时间不使用,不一定能记得每个命令位置! 当然万能的Google和百度一定知道! Linux下可以直接使用which 命令查看命令位置,如图:…
一.简述 当我们在使用Linux时,经常需要在root权限下执行某些命令,或者在/etc/rc.d/rc.local中写一些角本.而如果某些角本必须使用非root用户时,直接su是不行的,比如Elasticsearch就必须在非root用户下运行.需要使用如下方案执行: 二.方法 方法一,使用su +用户名 -c加角本: su <new user> -c "<sh file path or command>" 方法二,使用su xxx<<! 角本 …
废话不多说,直接上代码,在root的cronjob,指定nginx用户跑cronjob */1 * * * * su nginx -c "/usr/local/scripts/goods.sh >> /data/crond/goods-$(date +"\%Y-\%m-\%d").log 2>&1'" Have fun with Linux!…
#!/bin/bash set -x ## 因为这些变量在下面要用,所以要写在最上面, ## 如果直接写在下面,则变量获取不到,并且下面的 $ 标识的都要用 引号引起来,否则这些参数接收不到 tarfile=$1 tarfile_name=${tarfile##*/} echo "$tarfile" echo "$tarfile_name" ## 切换用户,下面的命令都以这个用户创建文件获执行命令 su - admin <<EOF # 切换目录,因为切换…
参考一下 https://bbs.csdn.net/topics/330151879 服务程序以Local System安装运行没问题,但用这个账户运行的服务无法访问局域网共享资源,比较麻烦,所以想指定用某个账户来启动服务.但是当我指定用Administrators组里某个用户安装服务时,显示“帐户名无效或不存在,或者密码对于指定的帐户名无效”的信息,导致服务安装不成功.其实账户名和密码当然是正确的. 弹出窗口输入 .\用户名 和 密码 注意: .\…