管理多个用户

使用su指令(py脚本中使用)

[root@www ~]# su [-lm][-c 指令] [username]
选项与参数:

- :单纯使用 - 如‘ su - ’代表使用 login-shell 的变数档案读取方式来登入系统;

若使用者名称没有加上去,则代表切换为 root 的身份。
-l :与 - 类似,但后面需要加欲切换的使用者帐号!也是 login-shell 的方式。
-m :-m 与 -p 是一样的,表示‘使用目前的环境设定,而不读取新使用者的设定档’
-c :仅进行一次指令,所以 -c 后面可以加上指令喔!

使用脚本管理多用户

在/etc/文件下,新建vncserver文件夹,在vncserver文件夹下新增两个文件startvnc.py和startvnc.sh,两个文件内容分别为:

startvnc.py:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import sys
import os

user_list=["wst","nju_zhao","xuxudong","visitor","shaoyidi"]
#不同用户
i = 1

depth = "16"

geometry_list = ["1920x1080", "1920x1080", "1920x1080", "1920x1080", "2880x1800"]
#不同分辨率

name = "vncserver"

user_config = zip(user_list, geometry_list)

#构建不同用户和对应端口的指令
for name, geometry in user_config:
options = "-name %s -depth %s -geometry %s :%d" % (name, depth, geometry, i)
print(options)
i = i + 1
cmd = "su %s -c '/usr/bin/vncserver %s'" % (name, options)
print(cmd)
os.system(cmd)

startvnc.sh:

1
2
3
#!/bin/bash  
python /etc/vncserver/startvnc.py
exit 0

添加开机执行

给文件执行权限

1
chmod + x  startvnc.sh

将命令添加到/etc/rc.local的末尾,以执行文件,添加内容为

1
sh /etc/vncserver/startvnc.sh

参考:Ubuntu 14.04 解决VNC server 自启动

参考:鸟哥的linux私房菜