用户管理和文件权限

用户管理和文件权限

添加用户

语法:

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中每个文件有所有者,所有组,其它组的概念。

意思就是:一个用户必须有一个所属组,一个文件必须有所有者(一般就是谁创建此文件),所有组(创建者所在组),其它组(创建者所在组除外的组)

  1. 所有者
  2. 所有组
  3. 其它组
  4. 改变用户所在的组

文件、目录所有者

一般为文件的创建者,谁创建了该文件,就自然的成为该文件的所有者。

查看文件的所有者

语法:
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是数字)


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部