您好,欢迎来到爱go旅游网。
搜索
您的当前位置:首页linux那点事儿(五)----用户管理常用命令

linux那点事儿(五)----用户管理常用命令

来源:爱go旅游网
linux那点事儿(五)----用户管理常用命令

linux那点事儿(五)----用户管理常用命令用户组权限实例 ... linux那点事儿(五)----用户管理常用命令

用户组权限实

先直接抛一个需求出来吧!先步骤完成了,后面再分析。 授权用户chongshi和bugmaster对目录/cnblogs有写权限 创建目录 www.2cto.com

[root@localhosthzh]# mkdir /cnblogs 创建目录 [root@bogonhzh]# ls -ld /cnblogs 查看目录 drwxr-xr-x 2 root root 4096 5月 10 23:20 /cnblogs

添加两个用户并设置密码

[root@bogonhzh]# useraddchongshi 创建用户 [root@bogonhzh]# passwdchongshi 设置密码 Changing password for user chongshi. New UNIX password:

BAD PASSWORD: it is based on a dictionary word Retype new UNIX password:

passwd: all authentication tokens updated successfully. [root@bogonhzh]# useraddbugmaster [root@bogonhzh]# passwdbugmaster Changing password for user bugmaster. New UNIX password:

BAD PASSWORD: it is based on a dictionary word Retype new UNIX password: www.2cto.com

passwd: all authentication tokens updated successfully.

添加一个组

[root@bogonhzh]# groupadd testing 创建组 [root@bogonhzh]# grep testing /etc/group 查看组信息 testing:x:506:

将用户添加到组中

[root@bogonhzh]# usermod -G testing chongshi 用户chongshi添加到组testing

[root@bogonhzh]# gpasswd -a bugmaster testing 用户bugmaster添加到组testing

Adding user bugmaster to group testing

注意:上面两种方式不同,但作用是一样的,都是将用户添加到组中。 [root@bogonhzh]# grep testing /etc/group 查看组中成员 testing:x:506:chongshi,bugmaster

我们知道,组有什么样的权限,组中成员也有什么样的权限。 设置cnblogs目录的所属组为testing

[root@bogonhzh]# chgrp testing /cnblogs 将/cnblogs目录的所属组改为testing

[root@bogonhzh]# ls -ld /cnblogs 查看目录所属组 drwxr-xr-x 2 root testing 4096 5月 10 23:20 /cnblogs

对组加写权限

[root@bogonhzh]# chmodg+w /cnblogs 对组加写权限 [root@bogonhzh]# ls -ld /cnblogs 查看组对目录的权限 drwxrwxr-x 2 root testing 4096 5月 10 23:20 /cnblogs 现在用户chongshi和bugmaster已经对/cnbogs已经有写权限 [root@bogonhzh]# su -- chongshi 切换用户

[chongshi@bogonhzh]$ touch /cnblogs/abc 创建文件,(可以成功在目录下创建文件,说明对本目录具有写权限)

用户常用操作命令 添加一个用户

添加用户稍微复杂一些,我们先来看一下,添加用户都有那些选项 root@fnngj-virtual-machine:/# useradd -D GROUP=100 www.2cto.com HOME=/home INACTIVE=-1 EXPIRE= SHELL=/bin/sh SKEL=/etc/skel

CREATE_MAIL_SPOOL=no

参数详解: -u:UID

-g:缺省所属用户组GID -G:指定所属多个组 -d:宿目录

-s:命令解释器Shell -c:描述信息

-e:指定用户失效时间 例子:

root@fnngj-virtual-machine:/# useradd -u 1888 -g webadmin -G sys,root -s /bin/bash -c \"market lisi\" -e 2012-12-12 jack

添加用户到组

usermod -G [组名] [用户名]

root@fnngj-virtual-machine:/# usermod -G webadmin tom root@fnngj-virtual-machine:/# grepwebadmin /etc/group webadmin:x:1001:tom

修改用户名

usermod -l [新用户名] [旧用户名]

修改用户与添加用户时的内容基本相同,但多了一个修改用户的选项。 root@fnngj-virtual-machine:/# usermod -l tom jack 把jack改为tom 删除用户

userdel -r [用户名] -r:删除用户组 手工删除:

使用find命令查找属于某个用户或用户组的文件 find选项 -user、-uid、-group、-gid、 1、对需要保留的文件进行移动和备份 2、对不需要的文件进行删除 3、清除用户文件中的相关表项 4、清除用户宿主目录

[root@bogon /]# find /home -user fnngj /home/fnngj www.2cto.com /home/fnngj/.bashrc /home/fnngj/.bash_profile /home/fnngj/.gtkrc

/home/fnngj/.bash_history /home/fnngj/.bash_logout

可以对查找出来的用户信息判断需要干掉哪些。

用户信息查看命令

pwck 检测/etc/passwd文件

检测用户的设置文件是否正常。直接输入命令,后面不用带参数 vipw 编辑/etc/passwd文件

这个命令与vi最大的区别就是编辑的时候锁定文件。如果多人对passwd文件 都有编辑权限,那么多人同时编辑就会造成混乱。使用vipw编辑passwd文件时,别

人就无法打开passwd文件。

id 查看用户ID和组信息,直接输入命令,后面不用带参数 [root@bogonfnngj]# id

uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6 (disk),10(wheel) context=root:system_r:unconfined_t

finger 查看当前用户的登录信息 finger [用户名] 查看某个用户的详细信息。 [root@bogonfnngj]# finger

Login Name Tty Idle Login Time Office Office Phone rootrootpts/1 May 13 14:57 (192.168.203.1) [root@bogonfnngj]# finger root Login: root Name: root www.2cto.com Directory: /root Shell: /bin/bash

On since 日 5月 13 14:57 (CST) on pts/1 from 192.168.203.1 New mail received 日 5月 6 11:00 2012 (CST) Unread since 三 2月 22 20:40 2012 (CST) No Plan.

su [用户名] 切换用户(su- 环境变量切换)

su - [用户名] 切换的时候也会把环境的时候也会切换环境变量 [root@bogon /]# sufnngj [fnngj@bogon /]$ echo $PATH

/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/home/fnngj/bin

[fnngj@bogon /]$ su root Password:

[root@bogon /]# su - fnngj [fnngj@bogon ~]$ echo $PATH

/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/home/fnngj/bin

passwd -S [用户名] 查看用户密码状态 [root@bogonfnngj]# passwd -S fnngj Password set, MD5 crypt.

who、w 查看当前登录用户信息 [fnngj@bogon ~]$ who

rootpts/1 May 13 14:57 (192.168.203.1) [fnngj@bogon ~]$ w

15:11:29 up min, 1 user, load average: 0.00, 0.00, 0.00 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT rootpts/1 192.168.203.1 14:57 0.00s 0.84s 0.01s w

用户禁用与恢复

禁用和恢复用户

当一个用户在操作的时候经常有违规操作或近期一段时间不用,我们可以对这 个用户进行锁定。就像你的游戏账号发生异常被禁用一样。 ----------------------------------- 禁用

#usermod -L username #passwd -l username 恢复 www.2cto.com #usermod -U username #passwd -u username ------------------------------------

[root@bogon /]# passwd -l fnngj 禁用fnngj用户 Locking password for user fnngj. passwd: Success

[root@bogon /]# passwd -S fnngj

Password locked. 提示被禁用 [root@bogon /]# passwd -u fnngj 密码解锁 Unlocking password for user fnngj.

passwd: Success.

[root@bogon /]# passwd -S fnngj Password set, MD5 crypt.

禁用原理:

[root@bogon /]# grepfnngj /etc/shadow

fnngj:$1$EudBseaZ$kw1S8ZS2dsvnJ83phhvQF0:156:0:99999:7::: [root@bogon /]# passwd -l fnngj Locking password for user fnngj. passwd: Success

[root@bogon /]# grepfnngj /etc/shadow

fnngj:!!$1$EudBseaZ$kw1S8ZS2dsvnJ83phhvQF0:156:0:99999:7:::

看到上面的操作,相信你已经明白了,当我禁用你的密码后,密码在shadwo文件中依然存在,只是前面多了两个叹号(!!),这样你肯定登录不了了,因为验证端改变了密码。当然,解锁之后,密码前面的两个叹号会去掉。

其实,我们知道了原理以后,完全可以不用通过命令,通过vi编辑文件,一样可以禁用用户。

用户组常用操作命令 先看一下组配置文件里都存放了哪些内容 [root@bogon /]# more /etc/group root:x:0:root www.2cto.com bin:x:1:root,bin,daemon daemon:x:2:root,bin,daemon sys:x:3:root,bin,adm adm:x:4:root,adm,daemon tty:x:5: disk:x:6:root lp:x:7:daemon,lp mem:x:8: kmem:x:9: wheel:x:10:root mail:x:12:mail news:x:13:news uucp:x:14:uucp man:x:15: games:x:20: gopher:x:30:

................. dialout:x:20:fnngj

dialout 组名 用户登录时所在的组 x 组密码 一般不用 20 GID 组标识号

fnngj 组内用户列表 属于该组的所有用户列表

添加用户组

groupadd [用户组名]

root@fnngj-virtual-machine:/# groupaddwebadmin 添加一个组webadmin

root@fnngj-virtual-machine:/# grepwebadmin /etc/group 查看组信息 webadmin:x:1001:

我们在添加组的时候也可以指定好组的id

root@fnngj-virtual-machine:/# groupadd -g 8888 webadmin root@fnngj-virtual-machine:/# grepwebadmin /etc/group webadmin:x:8888: www.2cto.com

删除用户组: groupdel [用户组名]

[root@bogon /]# groupdelwebadmin 删除组webadmin

修改用户组信息

groupmod -n [新组名] [旧组名]

[root@bogon /]# groupmod -n apache webadmin 修改组名webadmin为apache

用户组信息查看命令

groups 查看用户隶属于哪些用户组 [root@bogon /]# groupsfnngj fnngj :fnngj

newgrp 切换用户组

[root@bogon /]# newgrpfnngj不是组成员,知道组密码(如果有密码)一样可 以切换。

grpck 用户组配置文件检测 chgrp 修改文件所属组

vigr 编辑/etc/group文件(锁定文件)

与vipw用法一样,在编辑group文件时,禁止其他人编辑。防止多人写操作,造成写混乱。

用户组管理命令 gpasswd命令

这个事所有linux都有的一个命令。先看一下都有哪些参数。 root@fnngj-virtual-machine:/# gpasswd Usage: gpasswd [option] GROUP Options: www.2cto.com

-a, --add USER add USER to GROUP -d, --delete USER remove USER from GROUP -h, --help display this help message and exit -r, --remove-password remove the GROUP's password -R, --restrict restrict access to GROUP to its members -M, --members USER,... set the list of members of GROUP -A, --administrators ADMIN,...

set the list of administrators for GROUP Except for the -A and -M options, the options cannot be combined. 上面的参数信息虽然事英文的,不解释了,相信你懂的。 用法非常简单:

root@fnngj-virtual-machine:/# gpasswd -a tom webadmin 添加用户到组 root@fnngj-virtual-machine:/# gpasswd -d tom webadmin 把用户从组中删除 root@fnngj-virtual-machine:/# gpasswdwebadmin 给用户组设置密码 root@fnngj-virtual-machine:/# gpasswd -A tom webadmin 将tom提升为组管理员

root@fnngj-virtual-machine:/# gpasswd -r webadmin 删除组密码 root@fnngj-virtual-machine:/# gpasswd -R webadmin 禁止其他用户切换到该组

作者honkly

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- igat.cn 版权所有 赣ICP备2024042791号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务