文件及Linux目录结构

什么是文件

在linux系统上,所有的资源都是文件,Linux系统下的文件类型包括

  • 普通文件(-)
  • 目录(d)
  • 符号链接(l)
  • 字符设备文件(c)
  • 块设备文件(b)
  • 套接字(s)
  • 命令管道(p)

普通文件:仅仅就是字节序列,Linux并没有对其内容规定任何结构。普通文件可以是任何文件,Linux不会区别对待这些文件,只有处理这些文件的应用程序才会根据文件的内容为它们赋予相应的含义。

在DOC和Windows环境中,所有的文件名的后缀就能表示该文件的类型,Linux环境下只要是可执行的文件并且具有可执行属性它就能执行,不管其文件名后缀是什么,常见的文件后缀

  • *.txt:文本文件
  • *.conf:配置文件
  • *.html/*.xml/*.yml/*.sql:HTML/XML/YAML/SQL文件
  • *.c/*.cpp:C/C++语言源程序文件
  • *.so/*.ko/*.lib:模块文件、库文件
  • *.sh/*.php/*.py/*.pl/*.rb:Shell/PHP/Python/Perl/Ruby 脚本文件
  • *.rpm:RPM包
  • *.tar:tar存档文件
  • *.gz/*.bz2/*.xz:由gzip/bzip2/xz生成的压缩文件
  • *.tar.gz/*.tgz/*.tar.bz2/*.tbz/*.tar.xz/*.txz:压缩后的tar包文件
  • *.lock:用于表示某个程序或某种服务正在运行的锁文件
  • *~备份文件

目录和硬链接

目录文件由一组目录项组成,目录项可以是对其他文件的指向也可以是其下的子目录指向。实际上,一个文件的名称是存储在其父目录中的,而非同文件内容本身存储在一起。

硬链接:将两个文件名(存储在其父目录的目录项中)指向硬盘上一个存储控制,对两个文件中的任何一个的内容进行修改都会影响到另外一个文件。实际上就是在某目录中创建目录项,从而使不止一个目录可以引用到同一个文件,增加/删除都会影响到文件的链接数

ps:硬链接并不是一种特殊类型的文件,只是在同一个文件系统中允许多个目录项指向同一个文件的一种机制。

1 # ln file1 file2

符号链接

符号链接又称软链接:是将一个文件指向另外一个文件的文件名。它只记录了要指向的文件名而已,所以占用空间很小,增加/删除文件的链接数是不会改变的,如果删除了指向目标文件,则指向文件会称为死链接

1 # ln -s file1 file2

设备文件

设备是指计算机中的外围硬件装置,即除了CPU和内存以外的所有设备。所有的硬件设备都放/dev目录下。

/dev/hd*:IDE硬盘设备,如hda1,a表示第一块硬盘,1表示第1个分区

/dev/sd*:SCSI/SATA/SAS/USB硬盘设备,如sda1,a表示第一块硬盘,1表示第1个分区

/dev/null:空设备,通常用于屏蔽命令行输出

Linux目录结构

/: 根目录,一般根目录下只存放目录,不要存放文件,/etc、/bin、/dev、/lib、/sbin应该和根目录放置在一个分区中
/bin:/usr/bin: 可执行二进制文件的目录,如常用的命令ls、tar、mv、cat等。
/boot: 放置linux系统启动时用到的一些文件。/boot/vmlinuz为linux的内核文件,以及/boot/gurb。建议单独分区,分区大小100M即可
/dev: 存放linux系统下的设备文件,访问该目录下某个文件,相当于访问某个设备,常用的是挂载光驱mount /dev/cdrom /mnt。
/etc: 系统配置文件存放的目录,不建议在此目录下存放可执行文件,重要的配置文件有/etc/inittab、/etc/fstab、/etc/init.d、/etc/X11、/etc/sysconfig、/etc/xinetd.d修改配置文件之前记得备份。注:/etc/X11存放与x windows有关的设置。
/home: 系统默认的用户家目录,新增用户账号时,用户的家目录都存放在此目录下,~表示当前用户的家目录,~test表示用户test的家目录。建议单独分区,并设置较大的磁盘空间,方便用户存放数据
/lib:/usr/lib:/usr/local/lib: 系统使用的函数库的目录,程序在执行过程中,需要调用一些额外的参数时需要函数库的协助,比较重要的目录为/lib/modules。
/lost+fount: 系统异常产生错误时,会将一些遗失的片段放置于此目录下,通常这个目录会自动出现在装置目录下。如加载硬盘于/disk 中,此目录下就会自动产生目录/disk/lost+found
/mnt:/media: 光盘默认挂载点,通常光盘挂载于/mnt/cdrom下,也不一定,可以选择任意位置进行挂载。
/opt: 给主机额外安装软件所摆放的目录。如:FC4使用的Fedora 社群开发软件,如果想要自行安装新的KDE 桌面软件,可以将该软件安装在该目录下。以前的 Linux 系统中,习惯放置在 /usr/local 目录下
/proc: 此目录的数据都在内存中,如系统核心,外部设备,网络状态,由于数据都存放于内存中,所以不占用磁盘空间,比较重要的目录有/proc/cpuinfo、/proc/interrupts、/proc/dma、/proc/ioports、/proc/net/*等
/root: 系统管理员root的家目录,系统第一个启动的分区为/,所以最好将/root和/放置在一个分区下。
/sbin:/usr/sbin:/usr/local/sbin: 放置系统管理员使用的可执行命令,如fdisk、shutdown、mount等。与/bin不同的是,这几个目录是给系统管理员root使用的命令,一般用户只能"查看"而不能设置和使用。
/tmp: 一般用户或正在执行的程序临时存放文件的目录,任何人都可以访问,重要数据不可放置在此目录下
/srv: 服务启动之后需要访问的数据目录,如www服务需要访问的网页数据存放在/srv/www内
/usr: 应用程序存放目录,/usr/bin 存放应用程序, /usr/share 存放共享数据,/usr/lib 存放不能直接运行的,却是许多程序运行所必需的一些函数库文件。/usr/local:存放软件升级包。/usr/share/doc: 系统说明文件存放目录。/usr/share/man: 程序说明文件存放目录,使用 man ls时会查询/usr/share/man/man1/ls.1.gz的内容建议单独分区,设置较大的磁盘空间
/var: 放置系统执行过程中经常变化的文件,如随时更改的日志文件 /var/log,/var/log/message: 所有的登录文件存放目录,/var/spool/mail: 邮件存放的目录, /var/run: 程序或服务启动后,其PID存放在该目录下。建议单独分区,设置较大的磁盘空间

具体目录结构参考:《Linux 目录结构》

原文地址:https://www.cnblogs.com/kerwing/p/8135060.html

时间: 2024-09-29 23:47:48

文件及Linux目录结构的相关文章

Linux 目录结构及文件基本操作

整理来自 https://www.shiyanlou.com/courses/running/59 在讲 Linux 目录结构之前,你首先要清楚一点东西,那就是 Linux 的目录与 Windows 的目录的区别,或许对于一般操作上的感受来说没有多大不同,但从它们的实现机制来说是完全不同的. 一种不同是体现在目录与存储介质(磁盘,内存,DVD 等)的关系上,以往的 Windows 一直是以存储介质为主的,主要以盘符(C 盘,D 盘...)及分区的来实现文件管理,然后之下才是目录,目录就显得不是那

Linux开发环境搭建与使用——Linux 目录结构及文件

在 windows 平台下,打开"计算机",我们看到的是一个个的盘符: 在 Linux 下,我们是看不到这些盘符,我们看到的是文件夹(目录): 在早期的 UNIX 系统中,各个厂家各自定义了自己的 UNIX 系统文件目录,比较混乱.Linux 面世不久后,对文件目录进行了标准化,于1994年对根文件目录做了统一的规范,推出 FHS ( Filesystem Hierarchy Standard ) 的 Linux 文件系统层次结构标准.FHS 标准规定了 Linux 根目录各文件夹的名

Linux目录结构及文件基本操作

Linux目录结构 Linux与Windows目录结构的区别,一种是体现在目录与存储介质的关系上.以往的Windows一直以存储介质为主,主要以盘符(C盘,D盘)及分区的来实现文件管理,然后之下才是目录,.因此目录则显得不是很重要,除系统文件之外的用户文件放在任何地方任何目录也没多大关系.所以通常Windows在使用一段时间后,磁盘上面的文件目录会显得杂乱无章.然而Unix/Linux恰好相反,Unix是以目录为主的,Linux也继承了这一优良特性.Linux是以树形目录结构的形式来构建整个系统

Linux 目录结构及文件

在 windows 平台下,打开"计算机",我们看到的是一个个的盘符: 在 Linux 下,我们是看不到这些盘符,我们看到的是文件夹(目录): 在早期的 UNIX 系统中,各个厂家各自定义了自己的 UNIX 系统文件目录,比较混乱.Linux 面世不久后,对文件目录进行了标准化,于1994年对根文件目录做了统一的规范,推出 FHS ( Filesystem Hierarchy Standard ) 的 Linux 文件系统层次结构标准.FHS 标准规定了 Linux 根目录各文件夹的名

linux 目录结构(转)

原文:http://www.centoscn.com/CentOS/2014/1222/4347.html linux 目录结构 /: 根目录,一般根目录下只存放目录,不要存放文件,/etc./bin./dev./lib./sbin应该和根目录放置在一个分区中/bin:/usr/bin: 可执行二进制文件的目录,如常用的命令ls.tar.mv.cat等./boot: 放置linux系统启动时用到的一些文件./boot/vmlinuz为linux的内核文件,以及/boot/grub.建议单独分区,

每天一个linux命令(23):Linux 目录结构

对于每一个Linux学习者来说,了解Linux文件系统的目录结构,是学好Linux的至关重要的一步.,深入了解linux文件目录结构的标准和每个目录的详细功能,对于我们用好linux系统只管重要,下面我们就开始了解一下linux目录结构的相关知识. 当在使用Linux的时候,如果您通过ls –l / 就会发现,在/下包涵很多的目录,比如etc.usr.var.bin ... ... 等目录,而在这些目录中,我们进去看看,发现也有很多的目录或文件.文件系统在Linux下看上去就象树形结构,所以我们

linux目录结构2

Linux目录结构2 1./etc/rc.local:存放开机自启动内容的文件: 文件类型: Windows是通过扩展名来区分类型的,比如png,txt linux里面文件类型与扩展名无关 为了容易区分和兼容用户使用的windows习惯,我们会用扩展名来表示linux的文件类型 2.广义上linux系统中一切皆文件 狭义上文件类型:普通文件.目录.字符设备文件.块设备文件.纯文本文件(全部是字母和数字).二进制文件(binary) 3.字符设备是穿行端口设备,如猫.mknod oldboy  c

linux目录结构1

Linux目录结构 1.tree L 1/ :显示/的结构 2./usr/bin:应用程序 3./etc/:配置文件 4./etc/init.d启动文件 5./ 存储系统程序 6./usr:存储用户的程序 7./home:普通用户的家目录 8.uname -a(打印所有信息)-r(内核信息)-m(查看位数32或者64) 9./dev:设备文件目录,如声卡.光驱.磁盘 /dev/null:是黑洞,将黑洞放在任何文件,可以看清楚任何文件 cat /dev/null>/oldboy/test.txt

Linux目录结构、bash的基础特性、I/O重定向及管道

Linux目录结构 LSB(Linux StandardsBase)是一套核心标准,它保证了LINUX发行版同LINUX应用程序之间的良好结合规定了一系列标准,其中包括文件系统层级结构标准(FHS Filesystem Hierarchy Standard) Linux系统根目录下有众多子目录,这些目录都参照了FHS协定 / ├── bin ├── boot ├── dev ├── etc ├── home ├── lib ├── lib64 ├── lost+found ├── media ├