Linux文件类型和权限
2024-03-29

 


  linux下还可以用颜色来表示文件类型:
  蓝色文件------------ 目录
  白色文件------------ 一般性文件,如文本文件,配置文件,源码文件等
  浅蓝色文件---------- 链接文件,主要是使用ln命令建立的文件
  绿色文件------------ 可执行文件,可执行的程序
  红色文件------------ 压缩文件或者包文件


  现在使用 ls -l 命令,查看详细信息格式的文件列表,您将会看到如下内容:

  total 5
  drwxr-x--- 4 user group 4096 Mar 10 00:37 filename
  drwxr-xr-x 21 user group 4096 Mar 10 20:16 文件名
  -rw------- 1 user group 524 Mar 10 00:40 a
  -rw-r--r-- 1 user group 24 Jun 11 2000 b
  drwx------ 2 user group 4096 Mar 9 11:06 c

  共显示了七列信息,从左至右依次为:权限、文件数、归属用户、归属群组、文件大小、创建日期、文件名称

  其中要特别留意的是第一列:

  drwxr-xr-x

  一共有10个位置,可以分为4组:

  d rwx r-x r-x

  第一组只有一个字符:
  d 文件夹
  - 普通文件
  l 链接
  b 块设备文件
  p 管道文件
  c 字符设备文件
  s 套接口文件

  剩下的3组分别为归属用户、归属群组、其它用户或群组对于该文件的权限。我们看它的格式

  rwx rwx rwx
  r 可读
  w 可写
  x 可执行

  它们的顺便不能颠倒,某一位置为空(-),则表示不具有相应的权限。

  Tip
  Linux下的可执行文件并不是由扩展名(例如 .exe )决定的,而是由其可执行权限位决定。


  查看文件权限的语句:

  在终端输入:

  ls -lh 参数h可以显示文件的大小
  [root@localhost ~]# ls -lh install.log
  -rw-r--r-- 1 root root 53K 03-16 08:54 install.log

  ls -l xxx.xxx (xxx.xxx是文件名)

  那么就会出现相类似的信息,主要都是这些:

  -rw-rw-r--

  一共有10位数,其中:最前面那个 - 代表的是类型

  中间那三个 rw- 代表的是所有者(user)

  然后那三个 rw- 代表的是组群(group)

  最后那三个 r-- 代表的是其他人(other)


  然后我再解释一下后面那9位数:

  r 表示文件可以被读(read)

  w 表示文件可以被写(write)

  x 表示文件可以被执行(如果它是程序的话)

  - 表示相应的权限还没有被授予


  现在该说说修改文件权限了

  在终端输入:

  chmod o+w xxx.xxx

  表示给其他人授予写xxx.xxx这个文件的权限


  chmod go-rw xxx.xxx

  表示删除xxx.xxx中组群和其他人的读和写的权限


  其中:

  u 代表所有者(user)

  g 代表所有者所在的组群(group)

  o 代表其他人,但不是u和g (other)

  a 代表全部的人,也就是包括u,g和o


  r 表示文件可以被读(read)

  w 表示文件可以被写(write)

  x 表示文件可以被执行(如果它是程序的话)


  其中:rwx也可以用数字来代替

  r ------------4

  w -----------2

  x ------------1

  - ------------0


  行动:

  + 表示添加权限

  - 表示删除权限

  = 表示使之成为唯一的权限


  当大家都明白了上面的东西之后,那么我们常见的以下的一些权限就很容易都明白了:

  -rw------- (600) 只有所有者才有读和写的权限

  -rw-r--r-- (644) 只有所有者才有读和写的权限,组群和其他人只有读的权限

  -rwx------ (700) 只有所有者才有读,写,执行的权限

  -rwxr-xr-x (755) 只有所有者才有读,写,执行的权限,组群和其他人只有读和执行的权限

  -rwx--x--x (711) 只有所有者才有读,写,执行的权限,组群和其他人只有执行的权限

  -rw-rw-rw- (666) 每个人都有读写的权限

  -rwxrwxrwx (777) 每个人都有读写和执行的权限


  2.1 普通文件;

  [root@localhost ~]# ls -lh install.log
  -rw-r--r-- 1 root root 53K 03-16 08:54 install.log

  我们用 ls -lh 来查看某个文件的属性,可以看到有类似 -rw-r--r-- ,值得注意的是第一个符号是 - ,这样的文件在Linux中就是普通文件。这些文件一般是用一些相关的应用程序创建,比如图像工具、文档工具、归档工具... .... 或 cp工具等。这类文件的删除方式是用rm 命令;


  2.2 目录;

  [root@localhost ~]# ls -lh

  总计 14M
  -rw-r--r-- 1 root root     2 03-27 02:00 fonts.scale
  -rw-r--r-- 1 root root   53K 03-16 08:54 install.log
  -rw-r--r-- 1 root root   14M 03-16 07:53 kernel-2.6.15-1.2025_FC5.i686.rpm
  drwxr-xr-x 2 1000 users 4.0K 04-04 23:30 mkuml-2004.07.17
  drwxr-xr-x 2 root root 4.0K 04-19 10:53 mydir
  drwxr-xr-x 2 root root 4.0K 03-17 04:25 Public

  当我们在某个目录下执行,看到有类似 drwxr-xr-x ,这样的文件就是目录,目录在Linux是一个比较特殊的文件。注意它的第一个字符是d。创建目录的命令可以用 mkdir 命令,或cp命令,cp可以把一个目录复制为另一个目录。删除用rm 或rmdir命令。

  2.3 字符设备或块设备文件;

  如时您进入/dev目录,列一下文件,会看到类似如下的;

  [root@localhost ~]# ls -la /dev/tty

  crw-rw-rw- 1 root tty 5, 0 04-19 08:29 /dev/tty

  [root@localhost ~]# ls -la /dev/hda1

  brw-r----- 1 root disk 3, 1 2006-04-19 /dev/hda1

  我们看到/dev/tty的属性是 crw-rw-rw- ,注意前面第一个字符是 c ,这表示字符设备文件。比如猫等串口设备

  我们看到 /dev/hda1 的属性是 brw-r----- ,注意前面的第一个字符是b,这表示块设备,比如硬盘,光驱等设备;

  这个种类的文件,是用mknode来创建,用rm来删除。目前在最新的Linux发行版本中,我们一般不用自己来创建设备文件。因为这些文件是和内核相关联的。


  2.4 套接口文件;

  当我们启动MySQL服务器时,会产生一个mysql.sock的文件。

  [root@localhost ~]# ls -lh /var/lib/mysql/mysql.sock

  srwxrwxrwx 1 mysql mysql 0 04-19 11:12 /var/lib/mysql/mysql.sock

  注意这个文件的属性的第一个字符是 s。我们了解一下就行了。


  2.5 符号链接文件;

  [root@localhost ~]# ls -lh setup.log
  lrwxrwxrwx 1 root root 11 04-19 11:18 setup.log -> install.log

  当我们查看文件属性时,会看到有类似 lrwxrwxrwx,注意第一个字符是l,这类文件是链接文件。是通过ln -s 源文件名 新文件名 。上面是一个例子,表示setup.log是install.log的软链接文件。怎么理解呢?这和Windows操作系统中的快捷方式有点相似。

  符号链接文件的创建方法举例;

  [root@localhost ~]# ls -lh kernel-2.6.15-1.2025_FC5.i686.rpm
  -rw-r--r-- 1 root root 14M 03-16 07:53 kernel-2.6.15-1.2025_FC5.i686.rpm

  [root@localhost ~]# ln -s kernel-2.6.15-1.2025_FC5.i686.rpm kernel.rpm

  [root@localhost ~]# ls -lh kernel*

  -rw-r--r-- 1 root root 14M 03-16 07:53 kernel-2.6.15-1.2025_FC5.i686.rpm
  lrwxrwxrwx 1 root root 33 04-19 11:27 kernel.rpm -> kernel-2.6.15-1.2025_FC5.i686.rpm
 

 

点击:7594 次

济南市槐荫区经十西路28988号乐梦中心1号楼16层(槐荫区政务服务大厅左侧高层楼) 报名热线:400 009 6781(免费)

鲁ICP备13030495号-1 鲁公网安备 37010402000265号 Copyright 济南市槐荫区鲁科教育培训学校 All Rights Reserved

备案查询:中华人民共和国工业和信息化部  常年法律顾问山东舜翔律师事务所张天默律师,20年法律经验,法律咨询热线:13065096961

400免费咨询热线
400-009-6781
加载中,请稍候 ......