生信喵 发表于 2022-7-6 11:47:51

用户管理

背景
       生物信息分析平台可以同时提供给多个用户使用,如果想要使用服务器,必须以一个用户的身份登录,现代操作系统一般属于多用户的操作系统,也就是说,同一台机器可以多个用户同时使用,一般这些用户都是为普通用户,这些普通用户能同时登录这台计算机,计算机对这些用户分配一定的资源,普通用户在所分配到的资源内进行各自的操作。因为是多用户操作,就需要进行用户管理,包括用户的创建删除,分组管理,权限设置,资源分配等。Linux系统中引入 root 用户来进行管理。一个系统只有一个 root 账户,此用户是唯一的,拥有系统的所有权限。这个 root 用户我们也叫做超级用户。使用 root 账户一定要小心,拥有 root密码就意味着拥有了这台计算机上所有用户的所有数据。
       Linux 系统有非常完善的用户管理方案,可以使用 useradd,usermod,userdel,groupadd等命令来进行用户管理。
一、用户管理
       useradd 命令用于创建新的用户账户,语法格式为“useradd [参数] 用户名”。可以使用 useradd命令创建用户账户。使用该命令创建用户账户时,默认的用户家目录会被存放在/home 目录中,默认的 Shell 解释器为/bin/bash,而且默认会创建一个与该用户同名的基本用户组。

参数 作用
-d 指定用户的家目录(默认为/home/username)
-e 账户的到期时间,格式为 YYYY-MM-DD.
-u 指定该用户的默认 UID
-g 指定一个初始的用户基本组(必须已存在)
-G 指定一个或多个扩展用户组
-N 不创建与用户同名的基本用户组
-s 指定该用户的默认 Shell 解释器
useradd 命令中的参数以及作用

cat /etc/passwd | awk -F ":" '{print $1,$3}'
#查看当前系统中用户和对应的id
groupadd bio #创建用户组
#创建名为tests123的用户
useradd test123 -d /ifs1/User/test123 -g bio
echo "Pass1234" | passwd --stdin test123
su - test123 #切换用户,管理员免输密码,加-刷新用户的bashrc
cd /ifs1/User/
mkdir test
chown -R test123:bio test # 修改刚才新建的test文件夹为test123所有
chmod -R 700 /ifs1/User/test123 #修改文件权限

#删除用户
userdel test123
userdel -r test123 # 同时删除文件目录,一般不加-r,保留数据

二、组管理
       为了方便管理属于同一组的用户,Linux 系统中还引入了用户组的概念。通过使用用户组号码(GID,Group IDentification),可以把多个用户加入到同一个组中,从而方便为组中的用户统一规划权限或指定任务。假设一个公司中有多个部门,每个部门中又有很多员工,如果只想让员工访问本部门内的资源,则可以针对部门而非具体的员工来设置权限。例如,通过对技术部门设置权限,使得只有技术部门的员工可以访问公司的数据库信息等。

groupadd bio #创建用户组
三、更改用户信息
       usermod 命令用于修改用户的属性,英文全称为“user modify”,语法格式为“usermod [参数] 用户名”。可以通过 usermod 命令对用户信息进行更改。比如用户的 UID、基本/扩展用户组、默认家目录,默认终端等。


参数 作用
-c 填写用户账户的备注信息
-d
-m 参数-m 与参数-d 连用,可重新指定用户的家目录并自动把旧的数据转移过去
-e 账户的到期时间,格式为 YYYY-MM-DD
-g 变更所属用户组
-G 变更扩展用户组
-L 锁定用户禁止其登录系统
-U 解锁用户,允许其登录系统
-s 变更默认终端
-u 修改用户的 UID
#修改登录名 家目录迁移
usermod -d /ifs1/User/test123 -m xiehs -l test123
#将用户修改到vip组中
# groupadd vip
# usermod -g vip test123
# ll
total 4
drwx------ 2 test123 vip 4096 Jul6 11:19 test123

#将用户添加到docker组中
# groupadd docker
# usermod -aG docker test123
# id test123
uid=1001(test123) gid=1003(vip) groups=1003(vip),1004(docker)

usermod -e '2022-08-06' test123 # 一个月后用户账户自动关闭
chage -l test123 # 查看用户信息
usermod -L test123 #锁定用户 无法登陆服务器
usermod -U test123 #解锁用户

四、补充资料
       配置新用户的显示格式bashrc
#继承管理员账号的bashrc设置
cd /etc/skel #该目录下的文件是新建用户复制的文件
#修改bashrc vimrc 新建一个文本提醒给新用户cat       具体改动如下图,新用户test2的显示颜色与管理员一致,且cat出新用户提醒的欢迎使用标语。
      

页: [1]
查看完整版本: 用户管理