一.linux文件的作用
1、在linux中,所有的东西以文件的形式存储; 文件名最大为255字符; 文件名中不能包括linux中的特殊字符如“\”,“/”等(如果在文件中使用这些特殊字符,可用来转义); 每一个文件,linux提供了一套文件权限系统;当我们连接上linux服务器的时候,可以通过ll或者ls -l的命令查看当前目录下的文件; 2、在文件权限系统中,将可以操作文件的用户都分成三类; (1)文件的创建者(u) (2)文件所属组的成员(g) (3)其他用户(o) 每一个用户有三种权限(rwx) 3、针对三种权限,含义分别为: 读(r)、写(w)、执行(x) 4、linux用户身份与用户组对的记录文件, *用户信息:/etc/password *用户密码信息:/etc/shadow *用户组信息:/etc/group 5、linux文件的相关信息 当用户使用指令“ls -l”以长列表方式查看文件的详细信息时,就会显示文件的下面的相关信息 -rw-r--r-- 1 root lonny 12 Apr 19 19:50 file1 文件类型、文件权限、硬连接数、文件创建者、文件所属组、文件大小、更改时间、文件名 *R *Rw *Rx *Rwx *特殊情况 ---root默认拥有rw
每个文件都以对应的-rw-r–r--格式开头,其实10个长度的字符代表的就是该文件的信息以及对应的用户所拥有的操作权限。 10个字符一共分为4组,第一组占1个字符长度,后三组各占3个字符长度。 第一组字符表示的是该文件的文件类型,-代表文件,d代表目录,l代表软链接文件,当然还有其他的文件类型, 所有的权限修改操作都是通过chmod指令实现:其修改指令如下: chmod 选项 模式 文件名 简单解释一下:chmod固定写法,选项最常用的就是 -R 即递归的意思,如果修改的文件是目录,则会修改该目录以及其下的所有文件都有该权限;模式就是修改权限的方式,有多种,也是接下来的重点;最后一个文件名就不需要解释什么了。
[root@localhost chenbodi]# mv wenjian.doc wenjian.doc
[root@localhost chenbodi]# ls
wenjian.doc wenjian.txt
[root@localhost chenbodi]# ls -a
. .. wenjian.doc wenjian.txt
[root@localhost chenbodi]# ls -l
总用量 0
-rw-r--r--. 1 root root 0 7月 9 14:51 wenjian.doc
-rw-r--r--. 1 root root 0 7月 9 14:52 wenjian.txt
[root@localhost chenbodi]# mkdir office
[root@localhost chenbodi]# ls -l
总用量 0
drwxr-xr-x. 2 root root 6 7月 9 15:58 office
-rw-r--r--. 1 root root 0 7月 9 14:51 wenjian.doc
-rw-r--r--. 1 root root 0 7月 9 14:52 wenjian.txt
第一个root代表用户权限,第二个root代表用户组权限 -rw-用户权限;r--用户组权限;r--其他用户权限
2、linux文件类型
查看详细信息时,第一个字符就是这个文件类型;
3、使用数字改变文件权限
(1)chmod后还可以用三个数字表示用户权限 *第一位数字代表创建者权限 *第二位数字代表文件所属组成员权限; *第三位数字代表其他用户权限 (2)每一个数字都采用加和的方式得出; *4(读r) *2(写w) *1(执行x) 例如:chmod 755 file //为文件赋予rwxr-xr-x权限 分析:u(7=4+2+1 rwx) g(5=4+1 r-x) o(5=4+1 r-x) (3)只有文件的拥有者和root用户才可以改变文件的权限。
[root@localhost chenbodi]# touch {1..100}.txt
[root@localhost chenbodi]# ls -l
[root@localhost ~]# id text
id: text: no such user
[root@localhost ~]# id ftp
uid=14(ftp) gid=50(ftp) 组=50(ftp)
[root@localhost ~]# ls -ld chenbodi/
drwxrwxr-x. 3 root root 8192 7月 9 16:37 chenbodi/
[root@localhost ~]# chown root chenbodi/
[root@localhost ~]# ls -ld chenbodi/
drwxrwxr-x. 3 root root 8192 7月 9 16:37 chenbodi/
[root@localhost ~]# chown ftp chenbodi/
[root@localhost ~]# ls -ld chenbodi/
drwxrwxr-x. 3 ftp root 8192 7月 9 16:37 chenbodi/
[root@localhost ~]# id mail
uid=8(mail) gid=12(mail) 组=12(mail)
[root@localhost ~]# ls -ld chenbodi/
drwxrwxr-x. 3 ftp root 8192 7月 9 16:37 chenbodi/
[root@localhost ~]# chown :mail chenbodi/
[root@localhost ~]# ls -ld chenbodi/
drwxrwxr-x. 3 ftp mail 8192 7月 9 16:37 chenbodi/
[root@localhost ~]# chown root:root chenbodi/
[root@localhost ~]# ls -ld chenbodi/
drwxrwxr-x. 3 root root 8192 7月 9 16:37 chenbodi/
chown 命令 用途 更改与文件关联的所有者或组。 语法 chown[-f][-h][-R] Owner [ :Group ] { File ... | Directory ... } chown -R [-f ][-H| -L| -P] Owner [ :Group ] { File ... | Directory ... } 描述 chown命令将 File 参数指定的文件的所有者更改为 Owner 参数指定的用户。Owner 参数的值可以是可在 /etc/passwd 文件中找到的用户标识或登录名。还可以选择性地指定组。Group 参数的值可以是可在 /etc/group 文件中找到的组标识或组名。 只有 root 用户可以更改文件的所有者。只在您是 root 用户或拥有该文件的情况下才可以更改文件的组。如果拥有文件但不是 root 用户,则只可以将组更改为您是其成员的组。 虽然 -H、-L 和 -P 标志是互斥的,指定不止一个也不认为是错误。指定的最后一个标志确定命令拟稿将演示的操作。 标志 -f 禁止除用法消息之外的所有错误消息。 -h 更改遇到的符号链接的所有权,而非符号链接指向的文件或目录的所有权。 当遇到符号链接而您未指定 -h 标志时,chown 命令更改链接指向的文件或目录的所有权,而非链接本身的所有权。 如果指定 -R 标志,chown 命令递归地降序指定的目录。 -H 如果指定了 -R 选项,并且引用类型目录的文件的符号链接在命令行上指定,chown 变量会更改由符号引用的目录的用户标识(和组标识,如果已指定)和所有在该目录下的文件层次结构中的所有文件。 -L 如果指定了 -R 选项,并且引用类型目录的文件的符号在命令行上指定或在遍历文件层次结构期间遇到,chown 命令会更改由符号链接引用的目录的用户标识(和组标识,如果已指定)和在该目录之下的文件层次结构中的所有文件。 -P 如果指定了 -R 选项并且符号链接在命令行上指定或者在遍历文件层次结构期间遇到,则如果系统支持该操作,则 chown 命令会更改符号链接的所有者标识(和组标识,如果已指定)。chown 命令不会执行至文件层次结构的任何其它部分的符号链接。 -R 递归地降序目录,更改每个文件的所有权。当遇到符号链接并且链接指向目录时,更改该目录的所有权,但不进一步遍历目录。不过 -h、-H、-L or -P 标志也未指定,则当遇到符号链接并且该链接指向到目录时,该目录的组所有权更改但不会进一步遍历目录。 安全性 访问控制:此程序应该作为“可信计算基”中的正常用户程序安装。 退出状态 该命令返回以下出口值: 0 命令执行成功并已执行所有请求的更改。
0 发生错误。