Linux下在root权限下临时使用其它用户运行命令

Linux下在root权限下临时使用其它用户运行命令

一、简述

当我们在使用Linux时,经常需要在root权限下执行某些命令,或者在/etc/rc.d/rc.local中写一些角本。而如果某些角本必须使用非root用户时,直接su是不行的,比如Elasticsearch就必须在非root用户下运行。需要使用如下方案执行:

二、方法

方法一,使用su +用户名 -c加角本:

su <new user> -c "<sh file path or command>"

方法二,使用su xxx<<! 角本 exit ! :

#!/bin/bash
su elasticsearch<<!
cd /opt/elasticsearch-6.2.3
./bin/elasticsearch -d
exit
!
echo "elasticsearch is started."

Linux下在root权限下临时使用其它用户运行命令
https://www.dearcloud.cn/2018/12/04/20200310-cnblogs-old-posts/20181204-Linux下在root权限下临时使用其它用户运行命令/
作者
宋兴柱
发布于
2018年12月4日
许可协议