欢迎来到我的的博客园,祝大家学有所成,早点实现自己的人生理想。

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."

 

posted @ 2018-12-04 10:57  宋兴柱  阅读(7277)  评论(0编辑  收藏  举报