Linux文件类型、属性
来源:互联网 发布:c语言abs 编辑:程序博客网 时间:2024/06/05 04:46
文件类型
Linux中万物皆文件,即可以将Linux中任何东西都是文件,配置文件几乎都是纯文本文件(ASCII,内容可以直接读取);可执行文件都是二进制(binary)文件,如命令文件等;还有一种是具有特定格式的文件,数据格式文件(data)。
文件属性
[root@lill ~]# ll -i总用量 48 24615 -rw-------. 1 root root 1116 1月 23 10:18 anaconda-ks.cfg 13 -rw-r--r--. 1 root root 23755 1月 23 10:18 install.log 14 -rw-r--r--. 1 root root 6240 1月 23 10:17 install.log.syslog139313 drwxr-xr-x. 3 root root 4096 4月 17 16:25 lill130689 drwxr-xr-x. 3 root root 4096 3月 8 14:03 opt ① ② ③ ④ ⑤ ⑥ ⑦ ⑧ ⑨ ⑩
① 节点号inode
② 文件类型及权限
③ 硬链接数
④ 所属用户
⑤ 所属组
⑥ 文件大小(Byte)
⑦⑧⑨ 最近更新时间
⑩ 文件名
①inode
- 磁盘分区格式化系统后,分为inode和block两部分,inode相当于一本书的目录,相当于书中的内容,inode存放文件的属性以及指向文件实体的文件,但是文件名不在inode中,在上级目录的block中。
- 访问文件,文件——>inode——>此文件的block。
- inode一般默认为256B,block大小为1k、2k、4k,设置block过造成空间浪费,设置block过小会消耗磁盘IO,block设置要根据实际情况下一般文件大小来设定block大小,如果是大文件业务,block尽量大一些,如果是小文件业务,block尽量小一些,ext3/ext4文件最大为4k,而工作中一般没有小于4k的文件,所以一般默认block为4k(引导分区和特殊分区除外)。
- 通过df -i 可以查看inode是数量及使用情况,dumpe2fs/dev/sda3 查看inode及block的大小及数量,另外 df -h可以查看磁盘的使用量。
- 一个文件至少有一个inode和一个block,多个文件可以使用一个inode(硬链接),一个block只能被一个文件使用。
- 可以在格式化的时候改变inode及block的大小,mksf -b 4096 -I 1024 磁盘名。
②文件详细类型及权限
共中10个字符,第1位字符为文件详细类型,后面9位的为对应权限。
文件详细类型
通过file [文件名] 可查看文件的类型信息,下面是Linux中的一些文件详细类型。
-type c File is of type c: b block (buffered) special #块设备,存储数据供系统及程序访问的接口设备,如硬盘 c character (unbuffered) special #字符设备,串行端口的接口设备,如猫 d directory #目录 p named pipe (FIFO) #管道文件,解决多个程序访问一个文件所造成的错误 f regular file #普通文件- l symbolic link #符号链接文件 s socket #套接口 D door (Solaris) #door
文件权限
Linux文件权限位由9位权限位来控制,每三位一组,分别是文件属主的读、写、执行,用户组的读、写、执行,其他用户的读、写、执行。(读r、写w、执行x、无权限-),注意删除文件或者修改一个文件名要看这个文件的上级目录是否具有这个权限,而不是看当前文件的权限(root除外)。一般情况下,默认创建文件的权限位644,创建目录的权限位755.
再讲几个命令:
- chmod 改变用户访问权限
- -R 递归
chmod [数字组合] 文件名
r:4 w:2 x:1 -:0
例:chmod -R 755 abc.txt 即是 -rwxr-xr-x 1 root root 153 5月 2 16:56 abc.txt
chmod [用户类型] [操作符] [权限字符] 文件名
用户类型u(user) g(group) o(other) a(all)
操作符 +(加) -(减) =(设置)
权限字符r w x
例:源状态 -rwxr-xr-x 1 root root 153 5月 2 16:56 abc.txt
执行命令 chmod u-w,g-r,o-x abc.txt
现状态 -r-x–xr– 1 root root 153 5月 2 16:56 abc.txt- chown 改变文件拥有者以及用户组
- chown [选项][所有者]:[所属组] 文件
- -R 递归
chown zhangsan test 将test的属主改为zhangsan用户
chown :zs test 将test的所属组改为zs
chown zhangsan:zs test 将test的属主改为zs组中zhangsan用户,所属组改为zs组
其中”:”可以被”.”替代
chgrp 改变文件用户组- chgrp [组名] 文件
- umask 设置创建文件、目录的默认权限
- umask 0022(一般默认的文件的权限位644,目录的权限位755.)
Linux文件与目录权限对比说明:
③链接
Linux中链接分为两种,硬链接和软连接(符号链接),ln命令不带参数情况下,创建的是硬链接,使用ln -s 创建的为软链接。reaedlink [链接文件] 可以查看链接的vlaue.
硬链接
创建的硬链接文件与源文件有相同的inode,删除硬链接文件或者源文件之一,只有还有一个inode,文件的实体就不会被删除,只有删除了源文件和所有的硬链接文件,文件实体才会被删除,当所有的硬链接文件及源文件被删除后,在存放的新的数据会重新占用这个文件的空间,或者磁盘fask检查时,数据也会被回收。注意:只有超级用户才有创建硬链接的权限,只有在同一文件系统中才可以创建硬链接,硬链接不可以指向目录。
[root@lill ~]# echo "hello world">> abc.txt[root@lill ~]# ln abc.txt abcln[root@lill ~]# ll -i总用量 56 20813 -rw-r--r-- 2 root root 12 4月 28 11:34 abcln 20813 -rw-r--r-- 2 root root 12 4月 28 11:34 abc.txt 24615 -rw-------. 1 root root 1116 1月 23 10:18 anaconda-ks.cfg 13 -rw-r--r--. 1 root root 23755 1月 23 10:18 install.log 14 -rw-r--r--. 1 root root 6240 1月 23 10:17 install.log.syslog139313 drwxr-xr-x. 3 root root 4096 4月 17 16:25 lill130689 drwxr-xr-x. 3 root root 4096 3月 8 14:03 opt[root@lill ~]# cat abcln hello world[root@lill ~]# rm -f abc.txt [root@lill ~]# ll -i总用量 52 20813 -rw-r--r-- 2 root root 12 4月 28 11:34 abcln 24615 -rw-------. 1 root root 1116 1月 23 10:18 anaconda-ks.cfg 13 -rw-r--r--. 1 root root 23755 1月 23 10:18 install.log 14 -rw-r--r--. 1 root root 6240 1月 23 10:17 install.log.syslog139313 drwxr-xr-x. 3 root root 4096 4月 17 16:25 lill130689 drwxr-xr-x. 3 root root 4096 3月 8 14:03 opt[root@lill ~]# cat abcln hello world[root@lill ~]# rm -f abcln [root@lill ~]# ll -i总用量 48 24615 -rw-------. 1 root root 1116 1月 23 10:18 anaconda-ks.cfg 13 -rw-r--r--. 1 root root 23755 1月 23 10:18 install.log 14 -rw-r--r--. 1 root root 6240 1月 23 10:17 install.log.syslog139313 drwxr-xr-x. 3 root root 4096 4月 17 16:25 lill130689 drwxr-xr-x. 3 root root 4096 3月 8 14:03 opt[root@lill ~]# ln lill/ lill_lnln: "lill/": 不允许将硬链接指向目录
软链接
软链接也称作符号链接,相当于window中的快捷方式,linux中的软链接文件实际就是一个文本文件,指向源文件,当源文件删除时,这个软链接也就失效。
[root@lill ~]# echo "hello boy" >> abc.txt[root@lill ~]# ln -s abc.txt abcln-s[root@lill ~]# ll -i总用量 52 24645 lrwxrwxrwx 1 root root 7 4月 28 13:47 abcln-s -> abc.txt 20813 -rw-r--r-- 1 root root 10 4月 28 13:46 abc.txt 24615 -rw-------. 1 root root 1116 1月 23 10:18 anaconda-ks.cfg 13 -rw-r--r--. 1 root root 23755 1月 23 10:18 install.log 14 -rw-r--r--. 1 root root 6240 1月 23 10:17 install.log.syslog139313 drwxr-xr-x. 3 root root 4096 4月 17 16:25 lill130689 drwxr-xr-x. 3 root root 4096 3月 8 14:03 opt[root@lill ~]# cat abcln-s hello boy[root@lill ~]# rm -f abc.txt [root@lill ~]# cat abcln-s cat: abcln-s: 没有那个文件或目录[root@lill ~]# ll -i总用量 48 24645 lrwxrwxrwx 1 root root 7 4月 28 13:47 abcln-s -> abc.txt #这里会与有强调,表明无效 24615 -rw-------. 1 root root 1116 1月 23 10:18 anaconda-ks.cfg 13 -rw-r--r--. 1 root root 23755 1月 23 10:18 install.log 14 -rw-r--r--. 1 root root 6240 1月 23 10:17 install.log.syslog139313 drwxr-xr-x. 3 root root 4096 4月 17 16:25 lill130689 drwxr-xr-x. 3 root root 4096 3月 8 14:03 opt
- Linux文件类型、属性
- Linux 文件类型特殊属性
- Linux不同颜色文件类型/权限/属性
- Linux不同颜色文件类型/权限/属性
- Linux 系统下文件类型及属性
- Linux 程序设计学习笔记----Linux下文件类型和属性管理
- linux文件类型
- linux文件类型
- Linux文件类型
- Linux文件类型
- LInux文件类型
- linux:文件类型
- Linux文件类型
- Linux文件类型
- linux 文件类型
- LINUX文件类型
- linux文件类型
- linux文件类型
- laravel5.1自定义常量的配置和使用
- 如何居中正常元素、浮动元素以及绝对定位元素
- Error:Error converting bytecode to dex:
- Linux I2C core
- php 设计模式之工厂模式
- Linux文件类型、属性
- 清园 沉没的Atlantis redis.conf配置详细解析
- WebView控件的使用
- android WebView 和 Html 的相互调用
- spring整合activemq步骤
- CentOS7安装MySQL数据库
- Android View事件分发机制
- 脚本实现自动建立swap分区
- Android 平台下使用 i2c-tools