用户管理和文件权限
用户管理和文件权限
添加用户
语法:
useradd 用户名
| 参数 | 作用 |
|---|---|
-d | 指定用户账户家目录(默认是为/home/“创建用户名”) |
-M | 不创建家目录 |
-e | 指定账户过期日期 |
-g | 指定账户的主组群(必须已经存在) |
-G | 指定账户所属的附属组,各组用逗号分隔(必须已经存在) |
-n | 不创建与用户账户同名的私有用户组 |
-s | 指定用户账户登录时使用的shell解释器 |
-u | 指定用户账户的默认UID |
案例1:添加一个用户Milan,默认该用户的家目录在/home/Milanuseradd Milan
案例2:添加一个用户zs,指定该用户的家目录的/home/myZsuseradd -d /home/Zs zs
指定、修改密码
语法:
passwd 用户名
注意点:如果没有指定用户名,则是给当前用户修改密码
案例1:给ls指定密码为:123456passwd ls
案例2:给zs指定密码为:123456echo "123456" | passwd --stdin zs
| 参数 | 作用 |
|---|---|
-l | 锁定用户,禁止其登录 |
-u | 解除锁定,允许用户登录 |
-S | 显示用户的密码是否被锁定,以及密码所采用的加密算法名称 |
-d | 清空账户密码,不能登录系统,除非重新设置密码 |
--stidn | 允许通过标准输入修改用户密码,如``"echo “123456” |
删除用户
语法:
userdel 用户名
'"-r"为可选参数,若使用该参数,则在删除该账户的同时一并删除该账户对应的主目录,"-r"参数一般搭配"-f"一起使用,形成"-rf"
如:userdel -rf zs
案例1:删除用户Milan,但是要保留家目录:userdel milan;useradd milan
案例2:删除用户以及用户主目录,比如:userdel -rf zs;useradd -d /home/myZs zsuserdel -rf zs
查询用户信息指令
语法:
id 用户名案例1:
id root //显示出root用户的信息当用户不存在时,返回无此用户: no such user
切换用户
语法:su - 用户名 //注意加入"-"是代切换用户时进入该用户的家进行工作在操作Linux中,如果当前用户的权限不够,可以通过 su -指令,高权限用户,切换到底权限用户,不需要输入密码
查看当前用户、登录用户
语法:
whoami/who am i注意是:显示第一次登录系统用户的信息,如用haikang登录进入系统,显示是haikang信息,当从haikang用户切换到root用户时,显示还haikang的信息
注意who与whoami(who am i)的区别:
whoami(或who am i)是显示当前使用系统的用户
who 是显示最初登录的用户
新增组
语法:
groupadd 组名
删除组
语法:
groupdel 组名
案例演示
1.增加用户时直接加上组指定: useradd -g 用户组 用户名
3.增加一个用户haikang,直接将放到wudang组中groupadd wudanguseradd -g wudang haikang
修改用户组
语法:
usermod -g 用户组 用户名案例:
创建一个组mojiao
把haikang放入到mojiao组中指令:groupadd mojiaousermod -g mojiao haikang
用户和组相关文件
/etc/passwd
/etc/shadow
/etc/group
Linux组基本介绍
在Linux中的每个用户必须属性一个组,不能独立于组外。在Linux中每个文件有所有者,所有组,其它组的概念。
意思就是:一个用户必须有一个所属组,一个文件必须有所有者(一般就是谁创建此文件),所有组(创建者所在组),其它组(创建者所在组除外的组)
- 所有者
- 所有组
- 其它组
- 改变用户所在的组
文件、目录所有者
一般为文件的创建者,谁创建了该文件,就自然的成为该文件的所有者。
查看文件的所有者
语法:
ls -lahl
ls -l
ll


出现两个连接数的因为是文件夹中默认有两个连接点分别为:. ..
如果是普通的文件连接是1,默认只有:. ;其实都是节点。
修改文件所有者:修改所有者是:chown
指令:chown 用户名 文件名案例:要求:使用root创建一个文件为apple.txt,然后将其所有者修改成haikangtouch apple.txtchown haikang apple.txt
文件,目录所在组:修改组是 chgrp
当某个用户创建一个文件后,这个文件的所在组就是该用户所在的组
查看文件,目录所在组
指令:ls -ahl ls -l ll应用实例,使用haikang用户创建一个文件ok.txt,看看该文件属性哪个组?haikang ok.txt修改文件所在的组
指令:chgrp 组名 文件名应用实例:
使用root用户创建文件root.txt,看看当前这个文件属性哪个组,然后将这个文件的所在组,修改到fruit组
指令:1.groupadd fruit2.touch root.txt3.ll (或ls -l 或 ls -ahl)4.chgrp fruit root.txt
其它组
除了文件的所有者和所在组的用户外,系统的其它用户都是文件的其它组
改变用户所在组
在添加用户时,可以指定将该用户添加到哪个组中,同样的用root管理权限可以改变某个用户所在组。
改变用户所在组(前提该组必须存在)
1.usermod -g 新组名 用户名
2.usermod -d 目录名 用户名 改变该用户登陆的初始目录。特别说明是:用户需要有进入到新目录的权限,否则修改也登录不入应用实例:
将haikang这个用户从原来所在组,修改到myHaiKang组
usermod -g myHaiKang haikang
权限的基本介绍
ls -l 中显示的内容如下:drwxr-xr-x. 3 root fruit 16 Nov 24 06:10 AA0-9位说明(总共10位)1.第0位确定文件类型(d - l c b)l是链接,相当于Windows的快捷方式(就是硬链接和软链接)-是普通文件d是目录,相当Windows中文件夹c是字符设备文件,鼠标,键盘b是块设备,比如硬盘2.第1-3位确定所有者(该文件的所有者)拥有该文件的权限。---User
3.第4-6位确定所属组(同用户组的)拥有该文件的权限。---Group
4.第7-9位确定其他用户拥有该文件的权限。Other
rwx权限详解(重点)
rwx作用到文件1.[r]代表可读(read):可以读取,查看2.[w]代表可写(write):可能修改,但是不代表可以删除该文件,删除该文件必须是执有者3.[x]代表可以执行(execute):可以被执行rwx作用文件夹1.[r]:代表可读(read):可以读取,ls查看目录内容2.[w]:代表可写(write):可以修改,对目录内的文件(创建+删除+重命名)目录3.[x]:代表可执行(execute):可以进入该目录drwxr-xr-x. 3 root fruit 16 Nov 24 06:10 AA
可用数字表示为:r=4,w=2,x=1 因为rwx=4+3+1=7
其它说明:
l 文件:硬连接数或目录:子目录数
root 用户
fruit 组
16 文件大小(字节)
Nov 24 03:10 AA 文件名
修改权限
通过chmod指令,可以修改文件或者目录的权限
chmod [-R] ijk 文件名 (这里的ijk表示数字)
如果对文件夹进行操作需要加入"-R"参数进行递归更改
第一种方式:+ - = 变更权限
u:所有者 g:所有者 o:其他人 a:所有人(u,g,o的总和)
案例:
1: chmod u=rwx,g=rx,o=x 文件,目录名
2: chmod o+w 文件,目录名
3. chmod a-x 文件、目录名
案例演示:
1:给ZS文件的所有者读写执行的权限,给所在组读执行权限,给其它读执行权限chmod u=rwx,g=rx,o=x zschmod 751 zs2.给ZS文件的所有者除去执行的权限,增加组写的权限chmod u-x,o+w zs3.给ZS文件的所有用户添加读的权限chmod a+r zs
第二种方式:通过数字变更权限
r=4 w=2 x=1 rwx=7
chmod u=rwx g=rx o=x 文件目录名
相当于 chmod 751
案例演示:
要求:将/home/abc.txt文件的权限修改rwxr-xr-x,使用给数字的方式实现:chmod 755 /home/abc.txt
修改文件(文件夹或目录)所有者
chown命令用来更改文件的所属主和所属组,该命令操作的语法的格式为:
语法:
chown [-R] 账户名[:组名] 文件名
如果文件名是目录,并要求同时更改目录下的所有文件,则需要加入"-R"参数进行递归更改,而chgrp方式修改则不需要加入参数
案例演示:
1.请将/home/abc.txt文件的所有者修改成haikang用户chown haikang /home/abc.txt2.请将/home/test目录下所有文件和目录的所有者都haikang用户chown -R haikang /home/test
修改文件,目录所在组
语法:
chgrp [-R] 组名 文件名
请将/home/abc.txt文件的所在组修改成shaolin(少林)groupadd shaolinchgrp shaolin abc.txt请将/home/test目录下所有的文件和目录的所有组都修改成shaolinchgrp -R shaolin /home/test
指令总结
添加用户:useradd 用户名
修改密码:passwd 用户名
删除用户:userdel [-rf] 用户名
查询用户信息:id 用户名
切换用户:su - 用户名
查询当前用户登录信息:who am i / whoami
新增组:groupadd [-g(修改用户组的GID)/-n(修改用户组的组名)]
删除组:groupdel 组名
修改用户组:groupmod -g 用户组(组名) 用户名
查看文件的所有者:ls -lahl ls -l ll
修改文件所有者,修改文件所在组:chown [-R] 账户名[:组名] 文件名
chown可以用来修改所属主和所属组
修改文件所属组:chgrp [-R] 组名 文件名
修改文件权限(重点):chmod [-R] ijk 文件名 (这是ijk是数字)
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
