linux下如何使用某個用戶啓動某個進程?

安全裏有個原則,叫最小權限原則python

根據這個原則,對於啓動某個應用或者進程,應該賦予其最小權限,根據應用權限要求,建立一個相應權限的用戶,賦予其應用相應的權限,而後使用這個用戶啓用這個應用linux

如何使用某個用戶啓用某個進程或者應用?shell

一、使用這個用戶登陸linux系統後的通常操做(除sudo/su等操做外)都是這個用戶權限的操做,包括啓動應用後,該應用具備的權限,也是和這個用戶一致的apache

二、在其餘用戶登陸後,使用su命令:安全

su - admin -c 'nohup python /home/tdqa/rpc_server/test_rpc.py &'bash

表示使用admin用戶啓動test_rpc.py,這裏須要具備用戶admin的密碼
若是,你擁有sudo權限,能夠執行不須要輸入密碼server

sudo su - admin -c 'nohup python /home/tdqa/rpc_server/test_rpc.py &'進程

 二、在其餘用戶登陸後,使用runuser命令:rpc

若是,你擁有sudo權限,也能夠使用runuser命令
sudo runuser -l admin -c 'nohup python /home/tdqa/rpc_server/test_rpc.py &'test

今天在linux下切換用戶發現提示This account is currently not available,說是無效用戶了後來網上查了一下發現是用戶的shell禁止登陸了,解決方法只要開啓shell登陸便可。

解決辦法:
好比我是 su apache的時候出現的問題
用vi看看 apache的賬號信息

cat /etc/passwd | grep apache

發現它的shell是「/sbin /nologin」,須要將起改爲「/bin/bash」

viw /etc/passwd

修改完畢後,保存退出

相關文章
相關標籤/搜索