Linux不仅是多重任务处理(multitasking)系统,还是多用户(multiuser)系统。这是说,虽然一台标准计算机可能只包含一个键盘和一台显示器,但是它仍然可以同时被一个以上的用户使用。远程用户可以通过ssh(安全shell)登录并且操作这台计算器。 在UNIX安全模型中,一个用户可以拥有(own)文件和目录。当用户拥有一个文件或目录时,它将对该文件或目录的访问权限具有控制权。反过来,用户又归属于一个群组(group),该群组由一个或多个用户组成,组中用户对文件和目录的访问权限由其所有者授予。除了可以授予群组访问权限外,文件所有者也可以授予所有用户一些访问权限。 以下是Fedora系统的输出: 在Fedora系统中,普通用户账户是从500开始编号的,而ubuntu中是1000开始编号的。 对于文件和目录的访问权限是按照读访问、写访问以及执行访问来定义的。 最前边的10个字符表示的是文件属性(file attribute),其中第一个字符是指的文件类型(file type),表一列出了常见的文件属性。 文件属性剩下的9个字符称为文件模式(file mode),分别表示文件所有者、文件所在群组以及其它所有用户对文件的读取、写入和执行权限. 表2 权限属性 表3 一些文件属性设置的例子 注意,只有文件所有者和超级用户才可以更改文件或者目录的模式。chmod命令支持两种不同的更改文件模式的方法——八进制数字表示法和符号表示法。 例如 通过600给foo.txt文件所有者赋予读写权限,并取消组用户和其它所有用户的所有权限. 符号表示法 若没有指定字符,则默认为all.操作符 umask命令控制着创建文件时指定给文件的默认权限,使用八进制表示法来表示从文件模式属性中删除一个位掩码。例如 当前掩码值是0002(另一个可能的是0022),是以八进制掩码表示形式。 可以修改默认的掩码,但是大部分时候不需要 我们经常需要获得超级用户的特权来执行一些管理任务,但是也可以“变成”另一个普通用户来执行这些任务。主要有三种方法 su命令用来以另一个身份来启动shell,该命令的一般形式为: 如果包含’-l’选项,那么得到的shell会话界面将是用于指定用户的登陆shell界面,这就意味着,该指定用户的运行环境将被加载,而其工作目录也将更改为该指定用户的主目录.-l可以缩写为- 输入超级用户密码后,提示符的末尾将由$变为# 退出如上. 命令需要用单引号引起来,这很重要 sudo命令在很多方面都类似于su命令。不同之处在于,管理者可以通过配置sudo命令,使系统以一种可控的方式,允许一个普通用户以一个不同的用户身份(通常是超级用户)执行命令。用户可能被限制为只能执行一条或者几条特定的命令,而对其它命令没有执行权限。另一个重要区别是,使用sudo命令时,用户只需要输入自己的密码来认证.还有一个重要区别是,sudo命令不需要启动一个新的shell环境,而且也不需要加载另一个用户的运行环境,因此不需要把命令用单引号引起来。 chown命令用来更改文件或者目录的所有者和所属群组,需要超级用户权限。语法为: 表7 chown命令参数实例 要更改用户自己的密码,只需要输入passwd命令,按照提示修改即可
本节主要介绍如下命令:
1.所有者、组成员和其它所有用户
使用id
命令可以获得用户身份标识的相关信息,以下为Ubuntu的输出$ id uid=1000(nvidia) gid=1000(nvidia) groups=1000(nvidia),4(adm),24(cdrom),27(sudo),29(audio),30(dip),44(video),46(plugdev),108(i2c),118(lpadmin),124(gdm),130(sambashare),998(weston-launch),999(gpio)
$ id uid=1005(lixj) gid=1005(lixj) groups=1005(lixj)
在Linux系统中,用户账户定义在文件/etc/passwd中,用户组定义在/etc/group中.在创建用户账户和群组时,这些文件随着文件/etc/shadow的变化而变化,文件/etc/shadow中保存了用户的密码信息。
/etc/passwd文件中定义了对应用户的用户名、uid、gid、账户的真实姓名、主目录以及登录shell信息.2.读取、写入和执行
当我们查看ls -l命令的输出结果时,输入如下:$ ls -l model.py -rw-rw-r-- 1 lixj lixj 126979 May 20 19:26 model.py
表1 文件属性分类
属性
文件类型
–
普通文件
d
目录文件
l
符号链接。注意对于符号链接文件,剩下的文件类型属性始终是rwxrwxrwx,它是个伪属性值.符号链接指向的文件的属性才是真正的文件属性
c
字符设备文件.该文件类型表示以字节流形式处理数据的设备,如终端或调制解调器.
b
块设备文件.该文件类型表示以数据块方式处理数据的设备,如硬盘驱动或光盘驱动
属性
文件
目录
r
允许打开和读取文件
如果设置了执行权限,那么允许列出目录下内容
w
允许写入或者截短文件;如果也设置了执行权限,那么目录中的文件允许被创建、被删除和被重命名
但是该权限不允许重命名或者删除文件。是否能重命名和删除文件由目录权限决定
x
允许把文件当作程序一样来执行,用脚本语言写的程序文件必须被设置为可读,以便能被执行}允许进入目录下
文件属性
含义
-rwx——
普通文件,文件所有者具有读取、写入和执行权限。组成员和其它所有用户都没有任何访问权限
-rw——-
普通文件,文件所有者具有读取、写入权限,无执行权限。组成员和其它所有用户都没有任何访问权限
-rw-r–r–
普通文件,文件所有者具有读取和写入权限,组成员和其它所有用户有读取权限
-rwxr-xr-x
普通文件,文件所有者具有读取、写入和执行权限。其它所有用户也可以读取和执行该文件
2.1 chmod——更改文件模式
八进制数字表示法
八进制数字对应着3个二进制数字,刚好可以和用来存储文件模式的结构方式一一映射。
表4 以二进制和八进制方式表示文件模式
八进制
二进制
文件模式
0
000
—
1
001
–x
2
010
-w-
3
100
r–
4
011
-wx
5
101
r-x
6
110
rw-
7
111
rwx
$ chmod 600 foo.txt
符号表示法分为3部分:更改会影响谁、要执行哪个操作和要设置哪种权限。可以通过字符u、g、o和a组合来指定要影响的权限
表5 chmod命令符号表示法
符号
含义
u
user,表示文件或者目录的所有者
g
group,文件所属群组
o
others,其它所有用户
a
all,‘u’,‘g’,’o’三者的组合
“+”
表示添加一种权限,“-”
表示删除一种权限,“=”
表示只有指定的权限可以使用,其它所有权限被删除.
表6 chmod命令符号表示法实例
符号
含义
u+x
对文件所有者添加可执行权限
u-x
删除文件所有者的可执行权限
+x
为文件所有者、所属群组和其它所有用户添加可执行权限,等价于a+x
o-rw
除了文件所有者和所属群组用户外,删去其余所有用户的读写权限
go=rw
除了文件所有者之外,所属群组和其它所有用户具有读写权限.若所属群组和其它所有用户原来具有执行权限,则删除执行可执行权限
u+x,go=rx
为文件所有者添加可执行权限,同时设置所属群组和其它所有用户具有读权限和可执行权限
2.2 umask设置默认权限
$ rm -f foo.txt $ umask 0002 $ > foo.txt $ ls -l foo.txt -rw-rw-r-- 1 lixj lixj 0 2020-06-07 17:09 foo.txt
可以发现,文件所有者和组都获得了读写权限,但其他所有用户只获得了读权限,原因在于掩码。
忽略掉掩码的第一个0,看下表可明白掩码的含义
原始文件模式
—
rw-
rw-
rw-
掩码
000
000
000
010
结果
—
rw-
rw-
r–
$ umask 0000
3.更改身份
3.1 su——以其他用户和组ID的身份来运行shell
su [-[l]] [user]
如果没有指定用户,那么默认假定为超级用户。$ su - Password: #
# exit $
也可以使用su命令来执行单个命令,而不需要开启一个新的交互式命令界面su -c 'command'
3.2 sudo——以另一个用户的身份执行命令
要查看sudo命令可以授予哪些权限,可以通过-l选项来查看$ sudo -l Matching Defaults entries for nvidia on nvidia-desktop: env_reset, mail_badpass, secure_path=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin User nvidia may run the following commands on nvidia-desktop: (ALL : ALL) ALL
3.3 chown——更改文件所有者和所属群组
chown [ower][:[group]] file ...
参数
结果
bob
把文件所有者从当前用户改为用户bob
bob:users
把文件所有者从当前用户更改为bobm并把文件所属群组更改为users组
:admins
把文件所属群组更改为admins组,文件所有者不变
bob:
bob登录系统时所属组
$ sudo chown tony: ~/tony|myfile.txt
4.更改用户密码
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算