centos7.9(最小化)安装vncserver的依赖环境
yum groups install "X Window System"
yum install gnome-classic-session gnome-terminal nautilus-open-terminal control-center liberation-mono-fonts
yum -y install tigervnc-server
实现expect自动创建用户的vncserver
#!/usr/bin/expect -f
set USER [lindex $argv 0]
set PORT [lindex $argv 1]
set PAWD [lindex $argv 2]
if {$argv != 3} {
send_user "参数错误! 参数分别为: 用户名 端口 密码"
exit 1
}
puts ""
log_user 0
spawn su - $USER -c "vncserver :$PORT"
expect "Password:"
send "$PAWD\n"
expect "Verify:"
send "$PAWD\n"
expect "password (y/n)"
send "n\n"
expect "Starting"
log_user 1
send_user "$USER的vncserver配置成功,端口59$PORT,密码:$PAWD"
用expect产生随机密码
#!/usr/bin/expect
# 生成指定长度的随机字母和数字组合
proc generateRandomString {length} {
set chars "abcdefghijkmnpqrstuvwxyzABCDEFGHIJKLMNPQRSTUVWXYZ123456789!@#$%&"
set result ""
for {set i 0} {$i < $length} {incr i} {
set randomIndex [expr int(rand() * [string length $chars])]
append result [string index $chars $randomIndex]
}
return $result
}
# 设置需要生成的随机字符串长度
set length 12
# 调用函数生成随机字符串
set randomString [generateRandomString $length]
# 输出随机字符串
puts "随机字符串:$randomString"