02.Linux文件系统

一、Linux的哲学思想

1、一切皆文件:把几乎所有资源统统抽象为文件形式;包括硬件设备,甚至通信接口等;
		open(), read(), write(), close(), delete(), create()

2、	由众多功能单一的程序组成;一个程序只做一件事,并且做好;组合小程序完成复杂任务;

3、尽量避免跟用户交互;为了易于以编程的方式实现自动化任务;

4、使用文本文件保存配置信息;

二、文件系统介绍

1、目录:路径映射;
  文件:存储空间存储的一段流式数据,对数据可以做到按名存取;

2、文件系统:层级结构(倒置树状结构);有索引;
	/: 原初起点;				
			
3、/dev/pts/2:
	最左侧/: 表示根目录
	其它的/: 表示路径分隔符
		Linux的路径分隔符是/
		Windows的是\

4、文件的路径表示:
	绝对路径:从根开始表示出的路径 
	相对路径:从当前位置开始表示出的路径

5、文件名使用法则:
	严格区分字符大小写:file1, File1, FILE1
	目录也是文件,在同一路径下,两个文件不能同名;
	支持使用除/以外的任意字符;
	最长不能超过255个字符;

6、用户有家目录:home;用户的起始目录;普通用户管理文件的位置;
	工作目录:家目录之外的目录

7、/etc/sysconfig/network-scripts/ifcfg-eno16777736
	basename:最右侧的文件或目录名;
	dirname:basename左侧的路径;

	命令:
		~]# basename /PATH/TO/SOMEFILE
			SOMEFILE
		~]# dirname /PATH/TO/SOMEFILE
			/PATH/TO

三、FHS(Filesystem Hierarchy Standard)

/bin:所有用户可用的基本命令程序文件;

/sbin:供系统管理使用的工具程序;

/boot:引导加载器必须用到的各静态文件:kernel, initramfs(initrd), grub等;

/dev:存储特殊文件或设备文件;
	设备有两种类型:字符设备(线性设备)、块设备(随机设备);
/etc:系统程序的配置文件,只能为静态;

/home:普通的家目录的集中位置;一般每个普通用户的家目录默认为此目录下与用户名同名的子目录,/home/USERNAME;

/root:管理员的家目录;可选;

/lib:为系统启动或根文件系统上的应用程序(/bin, /sbin等)提供共享库,以及为内核提供内核模块
	libc.so.*:动态链接的C库;
	ld*:运行时链接器/加载器;
	modules:用于存储内核模块的目录;
	
/lib64:64位系统特有的存放64位共享库的路径;

/media:便携式设备挂载点,cdrom, floppy等;

/mnt:其它文件系统的临时挂载点;

/opt:附加应用程序的安装位置;可选路径;

/srv:当前主机为服务提供的数据;

/tmp:为那些会产生临时文件的程序提供的用于存储临时文件的目录;可供所用户执行写入操作;有特殊权限;

/usr:usr Hierarchy,全局共享的只读数据路径;
	bin, sbin
	lib, lib64
	include:C程序头文件;
	share:命令手册页和自带文档等架构特有的文件的存储位置
	local:另一个层级目录;
	X11R6:X-Window程序的安装位置
	src:程序源码文件的存储位置
	
/usr/local:Local hierarchy,让系统管理员安装本地应用程序;也通常用于安装第三方程序;

/var:/var Hierarchy,存储常发生变化的数据的目录;
	cache	Application cache data
	lib		Variable state information
	local	Variable data for /usr/local
	lock	Lock files
	log		Log files and directories
	opt		Variable data for /opt
	run		Data relevant to running processes
	spool	Application spool data
	tmp		Temporary files preserved between system reboots	

/proc:基于内存的虚拟文件系统,用于为内核及进程存储其相关信息;它们多为内核参数,例如net.ipv4.ip_forward, 虚拟为net/ipv4/ip_forward, 存储于/proc/sys/, 因此其完整路径为/proc/sys/net/ipv4/ip_forward;

/sys:sysfs虚拟文件系统提供了一种比proc更为理想的访问内核数据的途径;其主要作用在于为管理Linux设备提供一种统一模型的的接口;

参考:https://www.ibm.com/developerworks/cn/linux/l-cn-sysfs/

四、文件类型

-:常规文件;即f;

d: directory,目录文件;

b: block device,块设备文件,支持以“block”为单位进行随机访问

c:character device,字符设备文件,支持以“character”为单位进行线性访问
	major number:主设备号,用于标识设备类型,进而确定要加载的驱动程序
	minor number:次设备号,用于标识同一类型中的不同的设备;
		8位二进制:0-255
		
l:symbolic link,符号链接文件;

p: pipe,命名管道;

s: socket,套接字文件;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值