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

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM