在Linux系统中,所有的软件和硬件都是以文件
的形式存在的。
文件
在Linux中的每一个文件或目录都包含有访问权限,这些访问权限决定了谁能访问和如何访问这些文件和目录。
用户与用户组
Linux是一个多用户、多任务的环境,一般将用户分为3个类别:owner
,group
和others
,每个类别各有read
,write
和execute
等权限。此外,还有1个超级用户root
,可以访问任何类别的任何文件。
一般身份和root的相关信息记录在/etc/passwd
文件内,个人的密码记录在/etc/shadow
文件内,组名的信息记录在etc/group
文件内。
切换用户命令:su [-] ownername
。不加-
表示只能获得执行权限,加了表示获得环境变量及执行权限。ownername
默认为root
。普通用户切换到root
需要密码,root
切换到普通用户不需要密码,root
输入exit
可以退出root
。
注:如果进入root
权限时显示su:Authentication failure
则是因为之前没有设置过root
的密码,输入命令sudo passwd
并按照提示即可设置密码。
文件属性
(图)输入命令查看文件
第一列:文件的类型和权限
第一列一共有10个字符,第1个字符表示的是文件是目录或文件。
| d | - | l | b | c |
| :———: | :———: | :———: | :———: | :———: |
|目录|文件|链接文件|可供存储的接口设备|串行端口设备|
接下来的9个字符,3个为1组,一共有3组,分别为r(可读)
,w(可写)
和x(可执行)
权限,如果没有权限则用-
表示。3组分别为文件所有者的权限
,同用户组的权限
和其他非本用户组的权限
。
read
:可以读取文件的内容,write
:可以编辑、增加或修改文件的内容(但不能删除),execute
:可以被系统执行。
第二列:有多少个文件名连接到此节点
第三列:所有者账号
第四列:所属用户组
第五列:容量大小,单位为B
第六列:创建日期或最近的修改日期
第七列:文件名
改变文件属性与权限
常用的有3个命名:chgrp
,chown
和chmod
。
chgrp
命令格式:chgrp groupame dirname/filename
chown
命令格式:chgrp ownerame dirname/filename
chmod
设置权限的方式有两种,分别是数字和符号,比较常用的是数字设置。其中read
是4,write
是2,execute
是1。每个类别的权限为这3种权限的和。例有一个文件的权限为rwxrwx---
,则owner的数字为:4+2+1=7
,group的数字为:4+2+1=7
,others的数字为0+0+0=0
,总的数字为774
。命令格式为:chmod xyz dirname/filename
。(xyz为各个类别的数字。)
文件种类
常见的Linux文件类型有:普通文件、目录、连接文件、设备文件、套接字(sockets,s)和管道(pipe,p)
。文件类型可以在文件属性的第一个字符中查到。
普通文件(-)
普通文件又可以分为纯文本文件
、二进制文件
和数据格式文件
。
目录(directory,d)
连接文件(link,l)
类似于Windows系统的快捷方式
。
设备与设备文件(device)
与系统外设及存储等相关的文件,集中在/dev
目录下。又分为两种,一种是块设备文件(block,b)
,如硬盘,软盘等,另一种是字符设备(character,c)
,如键盘,鼠标等。