linux 如何指定nologin用户执行命令】的更多相关文章

在linux中建立网站时,我们一般分配一个www之类的用户给网站应用程序. 如果我们使用root或者具有管理员权限的账号在网站目录下去创建文件时,会遇到各种权限问题. 这时我们可以切换到www用户,这类用户一般是nologin,不允许登录. 如果我们su www或者sudo www,切换到www用户时,会出错. 网上解决办法时修改/etc/passwd文件 nologin改为bin/bash,这样www用户可以登录服务器, 比较危险.可以通过以下办法使用www用户执行命令 方法1. 为了安全,使…
为了安全,使用nologin账号来运行程序, su -s /bin/bash -c "ls" www 这条命令到底做了什么呢?su -s 是指定shell,这里www用户是nologin用户,是没有默认的shell的,这里指定使用/bin/bash, -c 后面接需要运行的命令, 后面www是用www用户来运行…
虽然很简单但是百度找的大部分不能用,我是没找到,后来从google找到的 sudo -H -u www bash -c 'nohup /home/web/ke/upfileserver /home/web/ke/up/conf.json &' 绝对靠谱,用去吧!!…
使用su su -s 是指定shell,这里www用户是nologin用户,是没有默认的shell的,这里指定使用/bin/bash, -c 后面接需要运行的命令, 后面www是用www用户来运行 su -s /bin/bash -c "mkdir /tmp/111" www 使用sudo 使用www用户来执行mkdir /tmp/111 sudo -u www mkdir /tmp/111…
按下crtl+d取消定时任务 # at now+1hourat> echo"a">aat> <EOF>at> <EOT>job 4 at Thu Dec 31 15:52:00 2020[root@localhost a]# atq4 Thu Dec 31 15:52:00 2020 a root[root@localhost a]# atratrm atrun[root@localhost a]# atrm 4[root@localho…
最近在logstash中使用nobody用户启动logstash,一想,nobody用户的shell不是/sbin/nologin吗? 不能登录执行命令呀? 于是看了一下它的启动脚本,是使用其他方式进行的... 玩了几年linux竟然还不知道chroot可以干这事,只知道chroot将根目录切换到某一位置,,汗颜.. 使用su -l nobody -c "命令"方式 然,nobody用户的shell是/sbin/nologin,执行命令失败 # su -l nobody -c &quo…
尽量用普通用户执行,因为普通用户无法删除root的文件,避免误删除 rm -rf 不可取, 尽量find+rm -rf 尽量cd && rm -rf * 加上逻辑 cd /tmp/res # <---如果这个没有,则就会出问题.... rm -rf * # 所以,一般就用普通用户执行命令 cd /tmp/res && rm -rf #!/bin/bash if [ -d "/tmp/res" ];then cd /tmp/res/ &&am…
之前写过一个python远程执行命令的脚本,但在一个性能测试中,要将程序批量分发到不同服务器,程序无法使用,再将之前的脚本更新,加入批量上传的功能.之前脚本地址:http://www.cnblogs.com/landhu/p/4961##coding:utf-8 #------------------ #Author:Hu #Created:2016-02-29 #------------------ import paramiko,os,time,sys from optparse impor…
第一种方法: 用shell批量创建用户,分为2中:1,批量创建的用户名无规律 :2.批量创建的用户名有规律首先,来说下批量创建的用户名无规律的shell:先把需要批量创建的用户名用一个文本文档列出来,如下图的userlist文件再把与用户名匹配的密码用另一个个文本文档列出来,如下图的passwd文件 这两个文本文档内容,如下图所示: 下面是我编写的shell脚本.如下图所示 注意需要导入我们在userlist中写的用户名与passwd中写的与用户名匹配的密码项注:chpasswd命令#以root…
功能说明:用root用户执行一个脚本,脚本里需要切换到普通用户DT去执行其他命令,其中就用到了EOF,用法如下: #!/bin/bash su - DT<<EOF cd apache-tomcat-7.0.54/bin sh startup.sh EOF 当时以为su - DT就跟在交换界面执行一样会把环境也切换过去,所以在分界符EOF里用的是相对路径,结果一运行就报错: -bash: line 8: cd: apache-tomcat-7.0.54/bin: 没有那个文件或目录 然后就做了个…