1.文件权限


linux系统中通过 “ls -al”,可查看当前目录的所有文件的详细信息​。


Linux 基础学习:文件权限与种类_文件权限



Linux 基础学习:文件权限与种类_文件权限_02


  • 第一列代表这个文件的类型与权限;

Linux 基础学习:文件权限与种类_文件名_03


第一个字符表示文件类型:


  1. 【d】:表示目录文件

  2. 【-】:表示普通文件

  3. 【l】:表示链接文件(linkfile)

  4. 【b】:表示设备文件里可供存储的接口设备


【c】:表示设备文件里的串行端口设备,如键盘鼠标。




  • 第二列表示有多少文件名连接到此节点(i-node);


每个文件都会将它的权限与属性记录到文件系统的i-node中,不过我们使用的目录树却是使用文件名来记录,因此,每个文件名就会连接到一个i-node。这个属性记录有多少个不同的文件名连接到相同的一个i-node节点。



  • 第三列表示这个文件(或目录)的 “所有者账号”;
  • 第四列表示这个文件的所属用户组;

在Linux系统中,你的账号会附属于一个或者多个用户的用户组中,这个用户组就是所属用户组。


  • 第五列表示文件大小,默认单位为B

  • 第六列为这个文件的创建日期或者最近修改日期


第七列为该文件名。




2.修改文件权限


常见的修改用户权限的命令如下:



1. ​chgrp​:改变文件所属用户组

2. ​chown​:改变文件所有者

3. ​chmod​:改变文件权限



  • 改变所属用户组​chgrp

改变所属用户组很简单,直接使用chgrp xxx。注意所改变的用户组名必须要在/etc/group文件内存在才行,否则会报错。


  • 改变文件所有者​chown


chown [-R] 用户名称 文件或者目录

chown [-R] 用户名称: 组名 文件或者目录

-R:表示递归更改,即连同子目录下的所有文件



  • 改变权限​chmod


1. 数字类型修改

chmod [-R] xyz 文件或目录

-R :递归执行

xyz:数字类型的权限属性(r:4 w:2 x:1)

chmod 770  a.c  (rwxrwx---)

2. 符号类型修改

u: user

g: group

o: others

a: all(全部身份)


chmod u/g/o/a   +/-/=  r/w/x

举例:

chmod u=rwx,go=rx .bashrc  (-rwxr-xr-x )

注意go=rx在一起,相当于g=rx,o=rx

chmod a+w .bashrc (-rwxrwxrwx)

chmod a-x .bashrc (-rw-rw-rw-)




3.linux文件种类



  • 普通文件

  • 纯文本文件(ASCII)

  • 二进制文件(binary)

  • 数据格式文件(data)

  • 目录文件(dir)

  • 链接文件(link)

  • 设备与设备文件(dev)


    • 块设备文件(block)

    • 字符设备文件(character)


  • 套接字(socket)

  • 管道(FIFO,pipe)