目录
用户1、增加用户,并指定主目录2、修改密码1、设置普通密码2、设置会过期的密码 3、锁定账户,解锁用户,踢用户下线4、将目录设置为用户所拥有以及删除拥有5、删除用户6、建立一个程序用户7、赋予用户权限1、赋予用户root权限-方式12、赋予用户root权限-方式23、赋予用户通过ssh访问权限 群组1、创建分组,删除分组2、创建用户分配组权限3、将现有用户加入群组4、将现用户移出群组5、为组创建一个目录,并设置所有权,设置非群组不能访问 其他补充关于权限 chmod xxx后续补充的其他博主的链接用户
1、增加用户,并指定主目录
# useradd –d /usr/sam -m sam此命令创建了一个用户sam,其中-d和-m选项用来为登录名sam产生一个主目录/usr/sam(/usr为默认的用户主目录所在的父目录)。假设当前用户是sam,则下面的命令修改该用户自己的口令:# passwdOld password:******New password:*******Re-enter new password:*******如果是超级用户,可以用下列形式指定任何用户的口令:# passwd samNew password:*******Re-enter new password:*******
2、修改密码
1、设置普通密码
#passwd tommy //修改密码Changing password for user tommy.New UNIX password: //在这里输入新密码Retype new UNIX password: //再次输入新密码passwd: all authentication tokens updated successfully.
2、设置会过期的密码
参考资料
[需求:为 tom 用户设定密码为 123,并设定密码最长有效期为 90 天]# passwd tom 123 ——设置密码# chage -M 90 tom ——设置密码最长有效期# passwd -S tom ——查看tom PS -04-08 0 90 7 -1 (Password set, MD5 crypt.)
3、锁定账户,解锁用户,踢用户下线
# passwd -l tom ——锁定// echo: Locking password for user tom.// echo: passwd: Success# passwd -u tom ——解锁// echo: Unlocking password for user tom.// echo: passwd: Success# who // 查看哪些用户登录了# last jenkins // 查看用户最近的登录记录// echo:// jenkins pts/1 112.5.70.181Fri Jul 29 15:04 still logged in// jenkins pts/1 112.5.70.181Fri Jul 29 14:59 - 15:04 (00:05)// jenkins pts/1 112.5.70.181Fri Jul 29 14:12 - 14:59 (00:46)// jenkins pts/1 112.5.70.181Fri Jul 29 11:20 - 13:38 (02:18)# pkill -kill -t pts/1 // 将第一个用户踢下线// 每个用户的登录都对应一个`pts/x`
4、将目录设置为用户所拥有以及删除拥有
# chown jenkins jenkins/ // 将`jenkins/`目录的所有权给`jenkins`用户
5、删除用户
# userdel -r jenkins以上命令删除jenkins用户 -r:同时删除用户的所属目录
6、建立一个程序用户
// 需求:建立一个程序用户 UID 为 250,用户名为 testuser,// 没有家目录(程序用户 没有登录系统权限)# useradd -u 250 -M -s /sbin/nologin testuser ——建立# id testuser ——查看// echo: uid=250(testuser) gid=(testuser) groups=(testuser)# su - testuser ——登录测试// echo:su: warning: cannot change directory to /home/testuser: No such file or directory This account is currently not available. // 无法登录-M (没有家目录)-s /sbin/nologin testuser(不使用命令解释器)
7、赋予用户权限
参考资源链接
1、赋予用户root权限-方式1
修改 /etc/sudoers 文件,找到下面一行,把前面的注释(#)去掉## Allows people in group wheel to run all commands%wheel ALL=(ALL) ALL然后修改用户,使其属于root组(wheel),命令如下:#usermod -g root tommy修改完毕,现在可以用tommy帐号登录,然后用命令 su - ,即可获得root权限进行操作。
2、赋予用户root权限-方式2
修改 /etc/sudoers 文件,找到下面一行,在root下面添加一行,如下所示:## Allow root to run any commands anywhereroot ALL=(ALL) ALLtommy ALL=(ALL) ALL修改完毕,现在可以用tommy帐号登录,然后用命令 su - ,即可获得root权限进行操作。
3、赋予用户通过ssh访问权限
用useradd新增的用户不能直接用ssh远程访问,需要修改ssh相关配置vi /etc/ssh/sshd_config添加 AllowUsers root@192.168.1.32 admin多个用户用空格隔开
群组
1、创建分组,删除分组
需求:建立一个名为 deploy 的组 ID 为 79666# groupadd -g 79666 deploy // 创建deploy分组gid为79666# groupmod -g 79888 deploy // 修改deploy分组的gid为79888# groupdel deploy // 删除deploy分组# nano /etc/group // 查看分组信息
2、创建用户分配组权限
// 创建用户'jenkins'// 用户id为'9527'// 分配基本组为'dev'// 组附加组为'deploy'组# useradd -g dev -G deploy -u 9527 jenkins
3、将现有用户加入群组
# usermod -G dev php-boy // 将php-boy加入dev组# usermod -G deploy jenkins // 将jenkins加入deploy组
4、将现用户移出群组
# gpasswd -d jenkins DEV // 将jenkins用户移出DEV群组// echo: Removing user jenkins from group DEV
5、为组创建一个目录,并设置所有权,设置非群组不能访问
// 为该组创建一个目录# mkdir /home/hgfdir// 改变新目录的组所有权# chgrp HGF /home/hgfdir// 禁止非组成员的访问# chmod 770 /home/hgfdir// 设置SGID属性(确保HGF组拥有所有新建的文件)// 设置sticky(沾滞位)属性(以免文件被拥有者以外的其他人删除)# chmod g+s,o+t /home/hgfdir
其他补充
关于权限 chmod xxx
一个文件有三个权限
分别是读
.写
.执行
,它们对应的数分别是4
.2
.1
如果某个用户只有读权限没有写和执行权限当然就是4
,如果三个如果有读和执行权限就是5
(4+1)所以有全部权限就是7了
而一个文件或文件夹面对的用户分三类
所属用户
、所属组的成员用户
、其他用户以及组外用户
所以7
、7
、7
三个数字就是对应这三个用户对象全部都有读、写、执行权限
举个例子如果是↓
所属用户有全部权限
、组员有读和执行权限
、而组外用户只有读权限
那数字应该就是
7
、5
、4
后续补充的其他博主的链接
/lexiaofei-p-7993683.html