linux用户管理(linux用户管理器怎么打开)
本篇文章给大家谈谈linux用户管理,以及linux用户管理器怎么打开对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、Linux命令之用户组管理
- 2、Linux用户管理有哪些方法
- 3、LInux用户管理
- 4、Linux系统-文件系统&用户组管理-问题解答
- 5、Linux用户权限管理命令
- 6、Linux系统下用户以及权限管理
Linux命令之用户组管理
Linux中每个用户都要属于一个或多个组,有了用户组,就可以将用户添加到组中,这样就方便管理员对用户的集中管理。 Linux系统中用户组分为root组、系统组、普通用户组三类。当一个用户属于多个组时,这些组中只能有一个作为该用户的主属组,其他组就被称为此用户的次属组。 组基本信息在文件/etc/group中;组密码信息在段姿仔文件/etc/gshadow中。通过命令:cat /etc/group、cat /etc/gshadow可查看文件内容。
各用户组中,以 ":" 作为字段之间的分隔符,分为 4 个字段,每个字段对应的含义为:
组名:密码:GID:该用户组握汪中的用户列表
而在gshadow文件中,每行代表一个组用户的密码信息,各行信息用 ":" 作为分隔符,分为 4 个字段,每个字段的含义如下:
组名:加密密码:组管理员:组附加用户列表
root用户可以直接修改/etc/group文件达到管理组的目的,也可以使用以下命令:groupadd、groupdel、groupmod -n、gpasswd -a、gpasswd -d、newgrp。
下面使用案例分别讲解这些命令:
添加用户组的命令是 groupadd,命令格式如下:
groupadd [ -g gid [ -o ] ] [ -r ] [ -f ] group
参数说明:
-g:指定新建工作组的 id;
-r:创建系统工作组,系统工作组的组ID小于 500;
-K:覆盖配置文件 "/ect/login.defs";
-o:允许添加组 ID 号不唯一的工作组。
-f,--force: 如果指定的组已经存在,此选项将失明了仅以成功状态退出。册此当与 -g 一起使用,并且指定的GID_MIN已经存在时,选择另一个唯一的GID(即-g关闭)。
示例:创建一个新的组,并添加组 ID。
[root@VM-4-4-centos ~]# groupadd -g 888 newgroup
此时在/etc/group文件中产生了一个id为888的项目:
删除用户组时,可用groupdel(group delete)指令来完成。倘若该组中仍包括某些用户,则必须先删除这些用户后,方能删除组。 注意:删除的组不能为主属组! 命令格式:
groupdel [组名]
示例:删除用户组 newgroup
[root@VM-4-4-centos ~]# groupdel newgroup
此时再查看/etc/group文件时可以看到用户组newgroup已经不存在,删除成功!
要更改用户组识别码或名称可使用 groupmod 来完成。命令格式:
groupmod [ -g 群组识别码 -o ] [ -n 新群组名称 ] [原群组名称]
参数说明 :
-g 群组识别码 设置欲使用的群组识别码。
-o 重复使用群组识别码。
-n 新群组名称 设置欲使用的群组名称。
示例:创建用户组newgroup并修改其名称为modifiedgroup
[root@VM-4-4-centos ~]# groupadd newgroup
[root@VM-4-4-centos ~]# groupmod -n modifiedgroup newgroup
查看/etc/group文件,只存在名称为modifiedgroup的用户组,修改成功!
gpasswd 是 Linux 下工作组文件 /etc/group 和 /etc/gshadow 管理工具,用于将一个用户添加到组或者从组中删除。命令格式:
gpasswd [可选项] 组名
可选项参数 :
-a:添加用户到组;
-d:从组删除用户;
-A:指定管理员;
-M:指定组成员和-A的用途差不多;
-r:删除密码;
-R:限制用户登入组,只有组中的成员才可以用newgrp加入该组。
示例1:将用户yangwei添加到组modifiedgroup中
[root@VM-4-4-centos ~]# gpasswd -a yangwei modifiedgroup
此时查看/etc/group文件发现组 modifiedgroup中出现用户yangwei
示例2:将用户yangwei从组modifiedgroup中给删除
[root@VM-4-4-centos ~]# gpasswd -d yangwei modifiedgroup
再次查看/etc/group文件发现用户yangwei已经不存在。
当需要在不同的群组下工作的时候我们需要进行切换群组操作,这个操作由newgrp指令来完成。命令格式如下:
newgrp [群组名称]
注意!当前用户必须都是两个群组的成员,否则切换群组时需要输入切换组的组密码,这时候当前用户作为临时成员在切换组下工作,所创建的文件全都属于切换组。
示例1:用户yangwei不属于群组modifiedgroup,请将当前工作组切换为modifiedgroup。
示例2:将用户yangwei添加到组modifiedgroup中,并切换工作组为modifiedgroup。
总结:Linux用户组管理需要掌握最基本的几个命令及其选项参数: groupadd 、groupdel 、groupmod 、gpasswd 、newgrp !
[img]Linux用户管理有哪些方法
linux上用户和组的管理一般使用user和group相关命令管理
用户管理:
1、添加新的用户账号
使用useradd命令,其语法如下:
useradd 选项 用户名
其中各选项含义如下:
-c comment 指定一段注释性描述。
-d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
-g 用户组 指定用户所属的用户组。
-G 用户组,用户组 指定用户所属的附加组。
-s Shell文件 指定用户的登录Shell。
-u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。
用户名 指则激定新账号的登录名。
2、删除用户
使用userdel命令, 其格式如下:
如果一个用户的账号不再使返祥用,可以从系统中删除。删除用户账号就是要将/etc/passwd等系统文件中的该用户记录删除,必要时还删除用户的主目录。删除一个已有的用户账号使用userdel命令,其格式如下:
userdel 选项 用户名
常用的选项是-r,它的作用是把用户的主目录一起删除。
3、修改用户
使用usermod命令, 其格式如下:
修改用户账号就是根据实际情况更改用户的有关属性,如用户号、主目录、用户组、登录Shell等。
修改已有用户的信息使用usermod命令,其格式如下:
usermod 选项 用户名
常用的选项包括-c, -d, -m, -g, -G, -s, -u以及-o等,这些选项的意义与漏盯搏useradd命令中的选项一样,可以为用户指定新的资源值。
用户组的管理
1、增加一个新的用户组
使用groupadd命令, 其格式如下:
groupadd 选项 用户组
可以使用的选项有:
-g GID 指定新用户组的组标识号(GID)。
-o 一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。
2、删除一个已有的用户组
使用groupdel命令, 其格式如下:
groupdel 用户组
3、修改用户组的属性
使用groupmod命令。 其语法如下:
groupmod 选项 用户组
常用的选项有:
-g GID 为用户组指定新的组标识号。
-o 与-g选项同时使用,用户组的新GID可以与系统已有用户组的GID相同。
-n新用户组 将用户组的名字改为新名字
LInux用户管理
Linux 维持多个人使用同一个用户登录系统, Windows 在修改组策略的情况下,也可以多个使用同一个用户登录
远程连接Linux的方式:SSH协议
远程连接Windows的方式:RDP协议
安卓手机(Linux系统):root 刷机,使用root用户登录系统
Usage:id [选项] [用户名]
# id ,查看当前登录的用户信息
-u:查看用户的uid
-g:查看用户的gid
-G:查看用户的属组
[root@localhost ~]# id
uid=0(root) gid=0(root) 组=0(root)
[root@localhost ~]# id qiandao
uid=1001(qiandao) gid=1001(qiandao) 组=1001(qiandao)
[root@localhost ~]# id -g cls
1001
[root@localhost ~]# id -u cls
666
[root@localhost ~]# id -G cls
1001
[root@localhost ~]# id
uid=0(root) 用户id
gid=0(root) 用户组的id
组=0(root)
在系统中,不认识root,qiandao,zls
0:超级用户
uid=1001(qiandao)
gid=1001(qiandao)
groups=1001(qiandao)
[root@localhost ~]# ll /etc/passwd
-rw-r--r-- 1 root root 916 3⽉ 30 10:26 /etc/passwd
[root@localhost ~]# cat /etc/passwd
用户名 密码占位符 uid gid 注释信息 用户家目录郑顷 用户登录shell
root: x: 0: 0: root: /root: /bin/bash
cls: x: 666: 1001: : /home/cls: /bin/bash
wutenglan:x:777:1001:武藤兰老师是个好老师: /home/wutenglan:/bin/bash
[root@localhost ~]# ll /etc/shadow
---------- 1 root root 1088 3⽉ 30 10:50 /etc/shadow
[root@localhost ~]# cat /etc/shadow
qiandao :!! :18351 :0:99999:7:::
第一列:用户名
第二列:密码,!! 和 * 表示没有密码
第三列:上一次修改用户密码的时间(从1970年开始)/天
第四列:密码最少使用的天数(0 是 无限制)
第五列:密码过期天数 99999天
第六列:在密码敏者过期的前7天,提示需要修改密码了,你的密码还有7天要过期了
第七列:密码过期后N天,强制提示修改密码
第⼋列:账户的失效时间,从1970年开始计算
第九列:保留
root:$6$iM1LuZaUuwyZrIg.$2X2Upu4KHmQoD1hzKHCzsmJqxPri9PlVDm5MYw/XdQsYgRpJaL
Iy1xWw0aDXLPePZNAcNRmfrYJrJgb6dmbu/.::0:99999:7:::
增
useradd
adduser
Usage:useradd [选项] [用户名]
默认情况下,在创建⽤户的时候,会创建一个和用户同名的组,并且把该桥丛薯用户加入该组
[root@localhost ~]# useradd zls
-u:(uid)指定uid
-g:(gid)指定gid,也可以指定组名
-G:(Group)指定附加组,如果加入多个附加组则用 逗号隔开
-M:不创建家目录
-s:(shell)指定登录的shell
-c:(comment)添加注释
-d:(directory)指定用户的家目录
-r:帮我们创建一个uid范围是201-999的系统用户,不创建家目录
userdel
Usage:userdel [选项] [用户名]
默认情况下,在删除用户的同时会把同名的用户组也删除,但是如果组内有其他用户,则不会删除组,
只删除用户
-r:删除用户的同时,删除用户的家目录,和用户的其他 邮件目录... (删除净)
usermod
Usage:usermod [选项] [用户名]
-u:修改uid
-g:修改gid
-G:修改附加组
-a:配合-G,在修改附加组的时候,起到追加效果(append)
-m:修改(迁移)家目录,必须配合 -d
-d:指定修改后的家目录
-s:修改登录的shell
-c:修改注释
-l:修改登录的用户名
-L:锁定用户(封号)
-U:解锁用户(解封)
id
whoami
1.什么是用户?
能够正常登录系统的,可以管理系统还有可以管理系统中的进程或者程序
02.Linux与windows系统的用户有什么区别?
linux 支持多用户同时登录
windows 默认不支持多用户同时登录
03.使用什么命令可以查看用户是否存在?
[root@oldboy ~]# id oldboy
[root@oldboy ~]# who
[root@oldboy ~]# whoami
root
04.跟用户相关的配置文件都有哪些?分别存放的是什么?
用户存放的信息文件 /etc/passwd
用户存放的密码文件 /etc/shadow
用户组信息文件 /etc/group
05./etc/passwd文件以':' 为分割符, 分为7个字段,请说明一下每个字段的具体含义?
字段名称 注释说明
1.用户名称 //用户的账号名称
2.密码占位符 //存放账户的口令,暂用x表示,密码保存在/etc/shadow
3.用户的UID //用户标识号
4.用户基本组GID //组标识号
5.用户注释 //用户详细信息
6.用户家目录 //root家目录是/root普通用户家目录存在/home/username(可自定义)
7.用户登录Shell //用户登录Linux使用的shell #cat /etc/shells
06./etc/shadow文件以':' 为分割符, 分为9个字段,请说明一下每个字段的具体含义?
字段名称 注释说明
1.用户登陆名 //用户的账号名称
2.加密后的密码 //用户密码,这是加密过的口令(未设密码时为!!)
3.最近一次密码更改时间 //从1970年到最近一次更改密码时间之间过了多少天
4.密码最少使用几天 //密码最少使用几天才可以更改密码(0表示无限制)
5.密码最长使用几天 //密码使用多少天需要修改密码(默认99999永不过期)
6.密码到期前警告期限 //密码过期前多少天提醒用户更改密码(默认过期提前7天警告)
7.密码到期后保持活动的天数 //在此期限内, 用户依然可以登陆系统并更改密码, 指定天数过后, 账户被锁定
8.账户到期时间 //从1970年起,账户在这个日期前可使用,到期后失效。
9.标志 //保留
07.什么是用户的UID?
用户的标识符 它和用户一一对应关系
User Identification 的缩写
08.不同的用户对应UID号范围是多少?
0 超级用户
1-200 系统用户
201-999 系统用户 (不需要登录)
1000+ 普通用户
09.新建用户user1、user2,用户user2不允许登陆到系统中。
[root@oldboy ~]# useradd user1
[root@oldboy ~]# useradd user2 -s /sbin/nologin
10.创建普通用户oldboy,其ID号为789
[root@oldboy ~]# useradd -u 789 oldboy
[root@oldboy ~]# id oldboy
uid=789(oldboy) gid=1003(oldboy) groups=1003(oldboy)
11.创建虚拟用户test,其ID号为666
[root@oldboy ~]# useradd -u 666 -s /sbin/nologin test
12.修改oldboy用户的ID号,修改为777
[root@oldboy ~]# usermod -u 777 oldboy
[root@oldboy ~]# id oldboy
uid=777(oldboy) gid=1003(oldboy) groups=1003(oldboy)
13.修改用户test的命令解释器,使其可以登录到系统。
[root@oldboy ~]# usermod -s /bin/sh test
[root@oldboy ~]# su - test
Last login: Tue Mar 31 15:09:39 CST 2020 on pts/3
[test@oldboy ~]# whoami
test
14.删除用户user1.不删除其家目录。
[root@oldboy ~]# userdel user1
[root@oldboy ~]# ll /home/
total 0
drwx------ 3 oldboy oldboy 78 Mar 31 15:06 oldboy
drwx------ 3 test test 99 Mar 31 15:16 test
drwx------ 3 1001 1001 78 Mar 31 15:04 user1
drwx------ 3 user2 user2 78 Mar 31 15:05 user2
drwx------ 3 www www 78 Jan 1 2021 www
15.删除用户user2,不保留其家目录。
[root@oldboy ~]# userdel -r user2
16.给oldboy用户创建一个密码为123,并尝试登录(两种方法实现)
[root@oldboy ~]# passwd oldboy
[root@oldboy ~]# echo "123" |passwd --stdin oldboy
17批量创建10个用户,前缀是你的姓,后缀为数字序列,比如qian1等。
大佬的方法
# sed 后项引用
# | xargs
# awk
[root@oldboy ~]# cat aa.sh
#!/bin/bash
read -p "请输入你的用户名 " ming
read -p "请输入这个用户名创建的次数 " shu
for i in `seq $shu`
do
useradd $ming$i
done
小弟的方法
for
[root@oldboy ~]# for i in `seq 10`;do useradd qian$i;done
18.默认情况下管理员创建了一个用户,就会在()目录下创建一个用户主目录
/home
19.如何检查系统中存在oldboy用户,并且显示用户id信息
[root@oldboy ~]# id oldboy
uid=777(oldboy) gid=1003(oldboy) groups=1003(oldboy)
20.创建gid为666,名字为www的用户组
[root@oldboy ~]# groupadd -g 666 www
21.创建uid为666,gid为666,名字为www的用户
[root@oldboy ~]# useradd -u 666 -g 666 www
[root@oldboy ~]# useradd -u 666 -g 666 www
useradd: group '666' does not exist
22.创建uid为888,注释信息为"虚拟用户",不创建家目录,不能登录系统,名字为oldboyedu的用户
[root@oldboy ~]# useradd -u 888 -c "虚拟用户" -M -s /sbin/nologin oldboyedu
23.假设公司研发部的用户yanfa和dev属于组yf,财务部的用户caiwu和money属于组cw,根据要求创建用户及组。
[root@oldboy ~]# groupadd yf
[root@oldboy ~]# groupadd cw
[root@oldboy ~]# useradd yanfa -g yf
[root@oldboy ~]# useradd dev -g yf
[root@oldboy ~]# useradd caiwu -g cw
[root@oldboy ~]# useradd money -g cw
[root@oldboy ~]# id yanfa
uid=1021(yanfa) gid=1024(yf) groups=1024(yf)
[root@oldboy ~]# id caiwu
uid=1023(caiwu) gid=1025(cw) groups=1025(cw)
24.报如下错误是什么原因,并怎么解决
(1)
[root@oldboy ~]# id qzg
id: qzg: no such user
没有这个用户
(2)
[root@oldboy ~]# useradd aaa -s /sbin/nologin
useradd: group aaa exists - if you want to add this user to that group, use -g.
aaa用户组已经存在
(3)
[root@oldboy ~]# su - qzg1
This account is currently not available.
这个用户无法登录系统
25.oldboy8用户的用户名修改成oldboy888
[root@oldboy ~]# usermod -l oldboy888 oldboy8
26.创建zls用户,指定UID5001,基本组students 附加组sa,dba 注释信息:one newB user, 登陆的shell:/bin/bash
曾导博客上的题
27.linux系统存放所有用户密码信息的文件是?
/etc/shadow
28.存放用户账户信息的配置文件是?
[root@oldboy ~]# ll /etc/default/useradd
-rw-r--r--. 1 root root 119 Nov 5 2016 /etc/default/useradd
[root@oldboy ~]# ll /etc/login.defs
-rw-r--r--. 1 root root 2028 Nov 5 2016 /etc/login.defs
/etc/passwd
29.建自己姓名全拼用户,UID5000,基本组students,附加组sa,注释信息:2020 new student,登陆shell:/bin/bash
[root@oldboy ~]# groupadd students
[root@oldboy ~]# groupadd sa
[root@oldboy ~]# useradd -u 5000 -g students -G sa -c "2020 new student" -s /bin/bash qianzhigang
[root@oldboy ~]# cat /etc/passwd|tail -1
qianzhigang:x:5000:1027:2020 new student:/home/qianzhigang:/bin/bash
[root@oldboy ~]# id qianzhigang
uid=5000(qianzhigang) gid=1027(students) groups=1027(students),1028(sa)
30.建用户useroldboy,附加组bin和root,默认shell为/bin/bash,注释信息"user1_info"
[root@oldboy ~]# useradd -G bin,root -c "user1_info" -s /bin/bash useroldboy
[root@oldboy ~]# id useroldboy
uid=5001(useroldboy) gid=5001(useroldboy) groups=5001(useroldboy),0(root),1(bin)
31.新建一个用户jack,指定uid为330
[root@oldboy ~]# useradd -u 330 jack
(1)修改jack的uid为666,用户名改为jacky
[root@oldboy ~]# usermod -u 666 jack
[root@oldboy ~]# id jack
uid=666(jack) gid=5002(jack) groups=5002(jack)
[root@oldboy ~]# usermod -l jacky jack
[root@oldboy ~]# id jacky
uid=666(jacky) gid=5002(jack) groups=5002(jack)
(2)把jacky的密码设置为123
passwd jacky
[root@oldboy ~]# echo "123"| passwd --stdin jacky
(3)切换控制台,用jacky帐户登录系统
[root@oldboy ~]# su - jacky
[jacky@oldboy ~]#
(4)换回控制台,用命令将jacky锁定,验证jacky能否再次登录系统,解锁后再次尝试能否登录系统
[root@oldboy ~]# usermod -L jacky
[root@oldboy ~]# usermod -U jacky
32.迁移jacky用户的家目录到/tmp/jacky
[root@oldboy ~]# usermod -md /tmp/jacky jacky
33.批量创建10个用户,用户名为oldboy1 oldboy2 oldboy3 .... oldboy10
[root@oldboy ~]# for i in `seq 10`;do useradd oldboy$i;done
[root@oldboy ~]# echo kkk{1..10}|xargs -n1|sed -r 's#(.*)#useradd \1#g'|bash
Linux系统-文件系统&用户组管理-问题解答
1)ls
ls -l /home/ #显示home目录下文件或文件夹的包括访问权限、所属用户、所属主组、文件大小等信息, ls -l 也是别名ll的命令与选项部分。
ls -a /root #显示root目录下包括隐藏文件在内的所有文件
ls -d /etc/* #显示etc目录下所有子目录(不包括文件)
ls -S /root #按文件从大到小排列显示root目录下各文件
ls -Sr /root #按文件从小到大排列显示root目录下各文件
ls -U /root #按文件创建时间从新到旧排列显示root目录下各文件
ls -X /root #按文件后缀排序显示root目录下各文件
ls -R /root #递归显示root目录下所有文件
ls -t /root #按修改数据内容的时间(mtime)从新到旧排列显示root目录下各文件
2)touch
touch /data/file1 #在data目录下创建file1文件,如果目录下已经有同名文件,则不会覆盖同名文件
touch -t 201910200830.50 /etc/hosts #修改/etc/hosts文件的atime以及mtime的时间戳为2019年10月20日8点30分50秒
touch -c /data/f2 #刷新data目录下f2文件的atime、mtime、ctime,如果f2文件不存在,则不会创建f2
3)cp
cp etc/hosts /home/ #复制/etc/hosts文件到 /home目录下,如果home目录下没有hosts文件,则自动创建同名文件;如果有,则会直接覆盖。
cp -i etc/hosts /home/ #复制/etc/hosts文件到 /home目录下,如果home目录下没有hosts文件态芦,则自动创建同名文件;如果有,则会询问用户是否覆盖。
cp -r /etc/ntp /root #复制/etc/ntp目录下所有子目录以及文件到root目录下
cp -a /home/* /data/ #复制/home/目录下所有子目录以及文件到data目录下,所有文件的类型、软链接、文件所属关系、时间戳等信息都一并复制(但是home目录下的隐藏文件不会被复制到data目录下)
cp -av /home/* /data/ #在实现cp -a /home/* /data/ 复制的基础上,在终端上显示复制过程
cp -u /etc/* /data/ #将etc目录下的文件复制到data目录下,如果etc目录的文件比data目录下的同名文件新,则覆盖data目录下的同名文件,如果帆或带etc目录下的文件比data目录里的与之同名文件旧,则不覆盖。
cp --backup=numbered etc/hosts /home/hosts #将etc目录下hosts文件复制到home目录下的hosts,在复制之前,会先对home目录的hosts文件进行备份,避免被覆盖后,原文件内容丢失。
4)mv
mv /etc/hosts /data/ #将etc目录下hosts文件转移到data目录下,如果data目录有同名文件,则直接覆盖
mv -i /etc/hosts /data/ #将etc目录下hosts文件转移到data目录下,如果data目录有同名文件,则询问是否覆盖
mv f1 f2 #将当前目录下的f1文件修改名字为f2
mv -t /data/ /团嫌etc/hosts #将etc目录下hosts文件转移到data目录下,如果data目录有同名文件,则直接覆盖 。功能实现上与mv /etc/hosts /data/ 相同,但是移出路径参数与移入路径参数的位置发生了互换
mv downloads/ D #将当前目录下的downloads目录的名字改成D
5)rm
rm /data/f1 #删除data目录下的f1文件
rm -r /data/* #递归删除data目录下的所有文件
rm -rf /data/* #强制递归删除data目录下的所有文件
6)file
file /etc/hosts #查看etc目录下hosts文件的文件类型,如文本文件、压缩文件、可执行程序等
7)stat
stat /data/f1 #查看/data/f1文件的三个时间,内容数据修改时间mtime,读取时间atime,元数据修改时间ctime
8)pwd
#在当前目录下输入pwd回车,查看当前所在目录路径
pwd -P #显示当前目录或文件夹的真实路径
9)cd
cd /data #进入data目录
cd ~root #进入root的家目录
cd - #回到刚才离开的目录
10)mkdir
mkdir /data/dir #在data目录下创建dir目录
mkdir -p /data/dir1/dir2/dir3/dir4 #在data目录下创建子目录dir1/dir2/dir3/dir4,若dir1、dir2、dir3都不存在,则递归创建
11)rmdir
rmdir /data/dir #删除data目录下的dir目录,如果dir里面有文件,则dir不能被删除
rmdir -p /data/dir1/dir2/dir3/dir4 #若dir1、dir2、dir3、dir4都是空目录,则递归删除data目录下的dir1、dir2、dir3、dir4目录
12)ln
ln /data/f1 /data/f2 #在data目录下创建文件f1的硬链接f2
ln -s f1 f1.link #在当前目录下创建文件f1的软链接f1.link
#当软链接路径与原文件路径不同时,如软链接位置是:/root/f1.link ,而原文件路径是:/data/f1 。 则在创建软链接时需要相对于软链接的路径,对原文件路径补完相对路径,具体如下:
ln -s ../data/f1 /root/f1.link
答:
1)创建/tmp/a1, /tmp/a2, /tmp/a1/a, /tmp/a1/b
mkdir /tmp/a{1,2}
touch /tmp/a1/{a,b}
2)在/tmp目录下创建目录:x_y, x_z, q_y, q_z
mkdir /tmp/{x,q}_{y,z}
答:文件的元数据信息包括:
文件类型: 指文件所属的类型,包括目录、文本文件、压缩文件、可执行程序等。系统实际上查看文件的头部信息,magic number。
节点编号: 每个文件、文件夹在同一个磁盘分区内,都有一个唯一的节点编号inode,用于识别磁盘分区内的文件。节点编号的数量在一个磁盘分区内是有限的,如果节点编号耗尽,无论磁盘空间是否真的占满,都会显示磁盘空间已满。
硬链接数: 是指指向该文件节点编号inode的文件名称数量。
所属用户UID: 创建该文件的用户的uid
所属主组GID: 创建该文件的用户的主组gid
文件大小: 表示该文件的磁盘空间占用大小
mtime时间戳: 指文件的内容数据发生修改时的时间点
atime时间戳: 指文件被访问时的时间点
ctime时间戳: 指文件的元数据发生变化时的时间点
访问权限: 指不同用户对文件的访问、修改、执行等操作的权限
指向磁盘数据块的直接指针: 直接指向磁盘数据块的指针,一个文件最多有12个直接指针,每个直接指针指向一个4k大小的数据块
指向磁盘数据块的间接指针: 间接指向磁盘数据块的指针,一个间接指针会先指向一个4k大小数据块作为次阶指针表,该数据块又分成1024个4字节大小的区间,一个区间存储一个次阶的指针,次阶指针指向一个4k的磁盘数据块存储真正的文件数据,若依然不能满足空间要求,则可继续嵌套次阶指针表,直到满足文件存储要求为止。
查看元数据信息方式:
1)ls -l /data #可查看data目录下非隐藏文件的访问权限、所属用户UID、所属用户主组GID、mtime时间戳、文件大小、硬链接数。
2)stat /root/bin #可查看root目录下bin目录的atime时间戳、mtime时间戳、ctime时间戳
3)ls -lc /root/ #查看root目录下非隐藏文件的ctime时间戳
4)ls -lu /root/ #查看root目录下非隐藏文件的atime时间戳
5)ls -i /root #查看root目录下所有非隐藏文件的节点编号
6)file /root/.bashrc #查看root目录下.bashrc文件的文件类型
修改文件的时间戳信息:
touch -t 201910200830.50 /etc/hosts #将etc目录下hosts文件的atime和mtime时间戳修改成2019年10月2日8时30分50秒
touch -a /etc/hosts #更新etc目录下hosts文件的atime和ctime为当前时间
touch -m /etc/hosts #更新etc目录下hosts文件的mtime和ctime为当前时间
答: touch /tmp/tfile-`date +"%F-%H-%M-%S"`
答:
mkdir /tmp/mytest1 #先创建mytest1目录
cp -a /etc/p*[^0-9] /tmp/mytest1/
或:
cp -a /etc/p*[^[:digit:]] /tmp/mytest1/
答:
useradd -u 5001 -md /tmp/tom -s /bin/zsh -G jack tom
1)useradd
useradd jack #创建用户jack,用户策略采用系统默认配置
useradd -u 1008 jack #创建用户jack,指定用户的UID为1008
useradd -d /data/jack jack #创建用户jack,指定用户家目录路径为/data/jack
useradd -g 1111 jack #创建用户jack,指定用户主组是GID=1111的组,但GID=1111的组需要事先存在,否则无法创建
useradd -G tom jack #创建用户jack,指定用户jack加入附加组tom,但tom组需要事先存在,否则无法创建
useradd -s /bin/zsh jack #创建用户jack,制定用户jack的shell类型是zsh
useradd -r jack #创建系统用户jack,系统用户默认不创建家目录
useradd -r -md /data/jack jack #配合-d选项,创建系统用户jack,指定该系统用户创建家目录/data/jack,并在家目录中载入默认配置文件
useradd -N jack #创建用户jack,不创建jack同名主组,将jack主组默认为users
useradd -M jack #创建用户jack,强制用户jack不创建家目录
2)usermod
usermod -G wang jack #将jack用户的附加组更改为wang,原有附加组删除
usermod -aG wang jack #在不退出原有附加组情况下,jack用户增加附加组wang
usermod -l jacky jack #修改用户名称为jacky
usermod -e 20181212 jack #将用户jack的账号过期日期修改为2018年12月12日
usermod -s /bin/csh jack #修改用户jack的shell类型为csh,与命令: chsh -s /bin/csh jack 相等
usermod -c 'abcdefg' jack #编辑用户jack的注释为abcdefg
3)userdel
userdel jack #删除用户jack
userdel -r jack #删除用户jack,包括用户的家目录、邮箱
4)groupadd
groupadd -g 1010 leo #创建组leo,指定GID为1010
groupadd -r leo #创建系统组leo
5)groupmod
groupmod -n lee leo #修改组leo名字为lee
groupmod -g 1111 leo #修改组leo的GID为1111
6)groupdel
groupdel wang #删除wang组,但是wang组必须不是任何用户的主组,否则不可以删除
7)su
su jack #当前用户非登录切换到jack账号,不读取jack账号配置文件
su - jack #当前用户登录切换到jack账号,读取jack账号配置文件
8)groupmems
groupmems -l -g root #查看所有属于root组的用户
9)id
id #查看当前用户的UID名称 、 主组名称GID 、 附属组名称GID
id root #查看root用户的UID名称、 主组名称GID 、附属组名称GID
id -u root #查看root用户的UID名称
id -g root #查看root用户的主组名称GID
id -G root #查看root用户的主组名称GID 、 附属组名称GID
id -nG root #只查看root用户的主组名称 、 附属组名称
10)chfn
chfn jack #编辑修改用户jack的注释 ,与命令:usermod -c 'abcdefg' jack 类似
11)chsh
chsh -s /bin/csh jack #修改用户jack的shell类型为csh
12)chage
chage jack # 交互式修改用户jack的密码策略,包括修改:密码创建时间、最小密码修改期、密码有效期、过期通知、过期宽限期、账户有效时间
chage -l jack #查看用户jack的密码策略
chage -d 0 jack #让用户jack密码期限立即过期,重新登录需要更换密码
13)passwd
passwd #修改当前用户的账号密码
passwd jack #修改jack账号密码 (仅限root账号)
passwd -e jack #强制jack用户下次登录修改密码 (仅限root账号)
echo hello | passwd --stdin jack #利用管道标准输入,快速将jack用户密码修改成hello,无需输入两次新密码,不检验密码的复杂度
14)newgrp
newgrp root #将当前用户的主组切换成root,原主组切换成附属组,如果当前用户的附属组没有root组,切换时需要输入root组密码;如果当前用户的附属组包含root组,则无需输入组密码,直接切换
15)gpasswd
gpasswd jack #创建jack组密码
gpasswd -a wang jack #将wang用户添加至jack组里
16)groups
groups jack #查看用户jack所属的组列表
Linux用户权限管理命令
Linux系统中的用户是分角色的,用户的角色是由UID和GID来识别的(也就是说系统是识别的是用户的UID、GID,而非用户用户名),一个UID是唯一(系统中唯一如同身份证一样)用来标识系统的用户账号(用户名)。
文件的用户与用户组分为超级管理员,普通用户和系统用户。
1)超级管理员纯烂的UID=0,GID=0,也可以这么说系统只要是识别出某个用户的UID\GID都为0时,那么这个用户系统就认为是超级管理员。
2)普做蚂漏通用户(管理员添加的),默认它的UID\GID是从500-65535,权限很小,只能操作自己的家目录中文件及子目录(注:nobody它的UID\GID是65534)。
3)系统用户,也称虚拟用户,也就是安装系统时就默认物弊存在的且不可登陆系统,它们的UID\GID是1-499。
我们可以通过cat /etc/passwd命令来查看所有的用户信息,例如下图,第三列是UID,第四列是GID:
创建用户
useradd user1 创建用户user1
useradd -e 12/30/2021 user2 创建用户user2,有效期到2021-12-30
设置用户密码
passwd user1 设置密码,有设置密码的用户不能用
这里设置密码时可能会碰到密码保护机制问题,这里需要注释掉保护机制的问题
这个时候需要在编辑/etc/pam.d/system-auth文件,将其中的password requisite
和password sufficient两行注释掉,如下图:
创建用户组
groupadd –g 888 users 创建一个组users,其GID为888
groupadd users 不用g参数,使用默认的组ID
命令 gpasswd为组添加用户
只有root和组管理员能够改变组的成员:
gpasswd –a user1 users 把 user1加入users组
gpasswd –d user1 users 把 user1退出users组
命令groupmod修改组
groupmod –n user2 user1 修改组名user1为user2
groupdel删除组
groupdel users 删除组users
真正从安全性角度上来考虑的话,是要控制用户一定执行命令的权限,也就是哪些用户可以执行哪些命令,不可以执行哪些命令,因此也就有了sudo这个应用,对于sudo提权,也就是修改/etc/sudoers的配置文件。
Linux系统下用户以及权限管理
一、操作系统中的用户管理 相关配置文件解读
Linux用户在操作系统可以进行日常管理和维护,涉及到的相关配置文件如下:
/etc/passwd 保存操作系统中的所有用户信息
root : x : 0 : 0 : root : /root : /bin/bash
name:password:UID:GID:GECOS:directory:shell
用户名 :密码占位符 :uid :基本组的gid :用户信息记录字段:用户的家目录:用户登录系统后使用的命令解析器
————————————————
字段1:用户名
字段2:密码占位符
字段3:用户春猛的UID 0 表示超级用户 , 500-60000 普通用户 , 1-499 程序用户
字段4:基本组的GID 先有组才有用户
字段5:用户信息记录字段
字段6:用户的家目录
字段7:用户登录系统后使用的命令解释器
————————————————段银
UID:0表示超级用户, 程序用户 (1-499),普通用户 (500以上60000以下),根据uid将用户分为以上三类用户。
/etc/shdaow 保存用户密码(以加密形式保存)
[root@xing /]# cat /etc/shadow
root : $6$Jw5XsDvvNBH5Xoq. : 19180 : 0 : 99999 : 7 : : :
用户名:密码(加密后的字符串):最近一次的修改时间【距离1970年1月1日的距离】:密码的最短有效期:密码的最长有效期:密码过扒燃桥期前7天警告:密码的不活跃期:用户的失效时间: 保留字段
————————————————
字段1:用户名
*字段2:用户的密码加密后的字符串(sha)
字段3:距离1970/1/1密码最近一次修改的时间
字段4:密码的最短有效期
*字段5:密码的最长有效期(建议时间 90)
字段6:密码过期前7天警告
字段7:密码的不活跃期
字段8:用户的失效时间
字段9:保留字段
这个字段目前没有使用,等待新功能的加入。
————————————————
/etc/group 保存组信息
————————————————
root:x:0:
bin:x:1:bin,daemon
组名:组的密码占位符:gid:附加组成员
————————————————
/etc/login.defs 用户属性限制,密码过期时间,密码最大长度等限制
/etc/default/useradd 显示或更改默认的useradd配置文件
二、文件及目录权限
文件与权限: 即文件或者目录属于哪个用户,属于哪个组,不同的用户能对该文件进行何种操作。
————————————————
注:
查看文件权限: ls -l 文件
查看目录权限 : ls -ld 目录
————————————————
[root@xing Desktop]# ls -l /root/Desktop/
total 70584
lrwxrwxrwx. 1 root root 18 Jul 14 14:32 123.txt - /root/Desktop/ming
-rw-r--r--. (文件属性) 1 (链接个数: 表示指向它的链接文件的个数 ) root (所属者) root (所属组) 0(文件大小:单位byte) Jul 14 14:14(最后一次修改时间) 2.txt(文件名)
drwx------.(文件属性) 7 (目录中的子目录数: 此处看到的值要减2才等于该目录下的子目录的实际个数。 ) root (所属者) root (所属组) 4096 (文件大小:单位byte)Jul 13 16:56(最后一次修改时间) vmware-tools-distrib(目录名)
[root@xing Desktop]# ls -ld /root/Desktop/
drwxr-xr-x. 3 root root 4096 Jul 14 14:44 /root/Desktop/
————————————————
文件属性解释:
- rw- r-- r-- .
d rwx r-x r-x .
字段1:文件类型 【- 普通文件 d目录 l符号链接 b块设备】
字段2:文件所有者对该文件的权限
字段3:文件所属组的权限
字段4:其他用户的权限(既不是文件所有者也不是文件所属组的用户)
字段5:表示文件受 selinux 的程序管理
8进制赋权法: r 【100】4; w【010】2; x【001】1
————————————————
三、用户以及权限管理命令汇总:
————————————————
用户增删改命令
useradd
userdel
usermod
————————————————
用户组增删改命令
groupadd
groupdel
groupmod
————————————————
passwd
change
————————————————
文件权限修改: chmod命令
chmod 对象 算数运算符 权限 文件
[root@xing tmp]# ls -ld ming
drwxr-xr-x. 2 root root 4096 Jul 16 10:27 ming
[root@xing tmp]# chmod o-x ming
[root@xing tmp]# ls -ld ming
drwxr-xr--. 2 root root 4096 Jul 16 10:27 ming
————————————————
文件所属者修改:
chown 用户 文件
[root@xing tmp]# chown ming ming
[root@xing tmp]# ls -ld ming
drwxr-xr--. 2 ming root 4096 Jul 16 10:27 ming
————————————————
文件所属组修改:
chgrp 组 文件
[root@xing tmp]# chgrp ming ming
[root@xing tmp]# ls -ld ming
drwxr-xr--. 2 ming ming 4096 Jul 16 10:27 ming
————————————————
8进制赋权法
[root@xing ~]# chmod 644 /tmp/ming
[root@xing ~]# ls -ld /tmp/ming
drw-r--r--. 2 ming ming 4096 Jul 16 10:27 /tmp/ming
————————————————
linux下命令“ll”是“ls -l"的别名。
————————————————
粘滞位:赋权后的文件 只有建立者可以删除
chmod o+t 文件
[root@xing ~]# chmod o+t /tmp/ming
[root@xing ~]# ll -d /tmp/ming
drw-r--r-T . 2 ming ming 4096 Jul 16 10:27 /tmp/ming
————————————————
sgid : 赋权后的目录,新建立的文件或者子目录的所属组继承父目录的所属组
chmod g+s 目录
[root@xing ming]# chmod g+s /tmp/ming
[root@xing tmp]# ll
drw-r-Sr-T. 2 ming ming 4096 Jul 16 11:29 ming
[root@xing ming]# touch 20.txt
[root@xing ming]# ll
-rw-r--r--. 1 root ming 0 Jul 16 11:33 20.txt
[root@xing ming]# mkdir 60
[root@xing ming]# ll
drwxr-sr-x. 2 root ming 4096 Jul 16 11:34 60
————————————————
suid :允许谁运行该文件具有该文件所属者的权限
chmod u+s 文件
[root@xing Desktop]# ll /usr/bin/vim
-rwxr-xr-x. 1 root root 2324712 Dec 22 2016 /usr/bin/vim
[root@xing Desktop]# chmod u+s /usr/bin/vim
[root@xing Desktop]# ll /usr/bin/vim
-rwsr-xr-x. 1 root root 2324712 Dec 22 2016 /usr/bin/vim
备注:linux 红底白字代表警告!
————————————————
[root@xing Desktop]# echo $PATH
/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/root/bin
suid:4 sgid:2 粘滞位:1
[root@xing Desktop]# find /usr/bin -perm 4 755
/usr/bin/at
/usr/bin/chage
/usr/bin/pkexec
/usr/bin/Xorg
/usr/bin/crontab
/usr/bin/newgrp
/usr/bin/vim
/usr/bin/gpasswd
/usr/bin/passwd
/usr/bin/ksu
————————————————
1、不再允许添加新用户的请求
chattr命令 :用于改变文件属性
chattr +i 文件
lsttr命令 :查看文件属性
lsattr 文件
[root@xing Desktop]# lsattr /etc/passwd /etc/shadow
-------------e- /etc/passwd
-------------e- /etc/shadow
[root@xing Desktop]# chattr +i /etc/passwd /etc/shadow
[root@xing Desktop]# lsattr /etc/passwd /etc/shadow
----i--------e- /etc/passwd
----i--------e- /etc/shadow
[root@xing Desktop]# useradd kk
useradd: cannot open /etc/passwd
2、umask
root用户的umask默认值是0022,一般用户默认是0002
目录的最高权限 0777-0022=0755
文件的最高权限 0666-0022=644
一般服务器配置umask的值配置为027最好;需要去修改两处文件中的umask值。
/etc/profile
/etc/bashrc
3、修改默认的密码最长有效期:修改以下配置文件
/etc/login.defs
关于linux用户管理和linux用户管理器怎么打开的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。