用户权限的相关命令

权限类型:

01读readr4

02写writew2

03执行excutex1

组权限:

开发组:将所有开发人员添加到一个组中,这个组中所有人就有相同的权限

我们可以使用ls-l查看文件的详尽信息,就可以查看文件的权限

在这里插入图片描述

**硬链接:**即就是有多少种方法路径,可以访问到当前的目录或则文件

对于文件来说:

我们通过绝对路径可以访问到该文件,通常只有一个硬链接

对于目录:

示例1:

有这几种情况例如说/d/b,我们要访问b

1.假如我们当前就在b目录种,抵达b目录的方法是cd.

2.假如我们直接使用绝对路径即可抵达

所以只有俩个硬链接

示例2:

再譬如说我们在b下边添加一个c目录:/d/b/c

1.绝对路径可以抵达

2.切换到b中,我们cd.也可以抵达b目录

3.我们可以切换到c目录中linux用户管理软件,cd…返回到b,也可以抵达b

(也就是说,这目录的硬链接最少可以有2个,分别是当前和绝对路径,之后再加上他的子目录的个数,就是这个目录硬链接数)

更改权限的命令

chmod+/-r/wx文件名

该操作会促使同组用户和其他用户得到或则丧失相应的权限

目录权限的涵义:

应用软件linux_linux用户管理软件_linux软件管家

对于目录而言,假如丧失可执行权限,该目录就不能进去,不能访问这个目录的内容

假如丧失rw权限,有执行权限,我们可以到目录进去,并且不能查看目录下文件的内容,也不能创建文件,由于对于目录而言,写权限相当于创建文件,或则更改文件内容

超级用户root

linux上root对操作系统的所有资源都有访问权限

所以通常情况下,不推荐linux以管理员身分登入系统,由于可能会删掉或则更改一些不可动的文件,造成系统崩溃

su:表示使用另一个用户的身分,而linux预设的另外一个用户就是root

sudo:表示以其他的身分来执行命令,通常是指root用户

用户使用sudo后,必需要输入密码,并且五分钟以内,我们再度执行须要sudo来执行,则不用输入密码。

假如未经授权的用户使用sudo,系统会给管理员发送警告电邮

组管理:group相关命令

#以下命令须要通过sudo来执行,否则失败:

groupadd组名:添加组

groupdel组名:删掉组

cat/etc/group:确认组信息linux用户管理软件,看是否降低或则删掉了组

chgrp-R组名文件名/目录名:更改文件/目录的所属组

(-R会将目录下所有文件所属递归的更改为对应的组)

(组的信息保存在/etc/group文件中)

(/etc文件是拿来保存系统配置的文件夹)

示例:创建一个目录test,而且新建一个组ne,之后将test目录的组更改为ne

#创建新目录test
mkdir test
#新建一个组ne
sudo groupadd ne
#查看组是否创建成功,最后一行
cat /etc/group
#将test目录的所属修改为组ne所属
chgrp -R ne  test
#查看目录所属,如上图
ls -l 

应用软件linux_linux软件管家_linux用户管理软件

4.1用户管理:user相关命令

useradd-m-g组名:

添加新用户-m手动构建家目录,-g指定用户所在组,否则会给构建一个与用户名相同的组

passwd用户名:

设置用户密码,倘若是普通用户,可以用passwd来更改自己的帐户密码

userdel用户名:

删掉用户,-r手动的删掉用户的家目录

cat/etc/passwd|grep用户名:

确认用户信息更改状态

(创建用户时,假若忘掉-m给新用户构建家目录,最好的办法是删掉重新构建)

(创建用户倘若不指定组,默认生成一个和用户名名子相同的组)

(用户的信息保存在/etc/passwd文件中)

示例:构建一个新用户名子为xx,属于组ne,并查看用户信息

#创建用户并且指定组
sudo useradd -m -g ne xx
#给用户设置密码,切记不能忘,输入以下密码,回车
sudo passwd xx     
#查看用户信息
ls -l  /home
#确认用户信息
cat /etc/passwd  |  grep 用户名 

4.2

查看用户信息:id

id用户名:查看用户的UID和GID信息

who:查看当前所有登录的用户列表(linux是多用户的系统)

whoami:查看当前登入用户的帐户名(我是谁)

passwd文件:

linux软件管家_linux用户管理软件_应用软件linux

grep king /etc/passwd |  cat -n

该文件由6个引号组成7个信息linux 删除文件,分别是:

1.用户名

2.密码:密码是加密的,所以看见是个x

3.UID(用户标示)

4.GID(组标示)

5.用户全名或则本地帐号

6.家目录

7.登入使用的shell,即登入后使用的shell,ubuntu默认是dash

4.3

设置指定用户的主组/附加组和登录shell的命令:usermod

哪些是主组:

一般是新建用户时指定,在/etc/passwd的第四列GID(组标示)对应的哪个组

哪些是附加组:

在/etc/group中最后一列表示该组的用户列表linux系统日志,用于指定用户的附加权限

cat -n /etc/group  | grep king
#从上图看到king的附加组中有sudo,说明可以用管理员权限进行系统操作

#修改用户的主组,一般用不到,一般创建的时候指定即可
usermod -g  组  用户名
#修改用户的附加组
usermod -G 组  用户名
#修改用户登陆的shell
usermod -s /bin/bash

linux用户管理软件_linux软件管家_应用软件linux

假如用户不可以进行sudo操作怎样办:说明用户没有在这个附加组中,须要添加

sudo usermod -G sudo 用户名
# 命令执行以后退出重新登陆

(使用useradd添加的用户,默认没有sudo的权限,所以我们应当使用上述命令来把该用户添加到sudo的附加组中)

设置指定用户使用的shell:

哪些是shell:如上图

分别是:用户名@主机机器名:工作路径$

#给用户指定shell为bash,因为ubuntu默认登陆的shell是dash,不怎么好用
#这样xshell登陆再次登陆主机后就可以使用bash为shell
usermod -s /bin/bash

查看执行命令所在的位置:which

在这里插入图片描述

示例:
which ls
which pwd
which useradd

(注意分辨/usr/bin/passwd是拿来更改用户密码的可执行命令)

(/etc/passwd是拿来保存用户信息的文本文件)

扩充:/usr/bin和/usr/sbin的区别:

在linux上,绝大多数可执行文件是保存在/bin、/sbin、/usr/bin、/usr/sbin中

/bin(binary)是二补码执行文件目录,主要用于具体的应用

**/sbin(systembinary)**是系统管理员专用的二补码代码储存的地方,主要用于系统管理

/usr/bin:(usercommandforapplications):后期安装的一些软件

linux软件管家_linux用户管理软件_应用软件linux

/usr/sbin:(superusercommandsforapplications):超级用户的一些管理程序

(cd命令是设置在系统的内核中的,没有独立的文件,所以用which未能找到)

用户切换:su

su-用户名:切换用户,但是切换目录,-可以切换到用户家目录,否则位置保持不变,-可以忽视

exit:退出当前的用户,返回到之前的用户

在这里插入图片描述

(不输入用户名,将会切换到rootsu-)

更改文件权限

以下需要在sudo命令下执行:
#修改文件或者目录的拥有者
chown  用户名   文件名|目录名
#把test文件所属给张三
chown zhangsan test
#递归的修改文件或者目录所属的组
chgrp  -R   组名   文件名|目录名
#递归的修改文件的权限
chmod -R  755 文件名|目录名

拥有者组其他人

rwxrwxrwx

421421421

u表示该档案的拥有者user

g表示与该档案的拥有者属于同一个群体(group)者

o表示其他以外的人other

a表示这两者皆是all

chmoda+xtest.txt

Tagged:
Author

这篇优质的内容由TA贡献而来

刘遄

《Linux就该这么学》书籍作者,RHCA认证架构师,教育学(计算机专业硕士)。

发表回复