学习Linux就要让自己认可一个概念,Linxu里面一切皆文件! 首先,清晰一个概念,Linux操作系统由Linux内核和Linux用户态程序组成。一般我们称呼Linux操作系统为:Linux发行版。
Linux发行版有很多:Ubuntu,Linux Mint,PCLinuxOS,openSUSE,Fedora,Debian GNU/Linux,Mageia。(初学者就用Ubuntu(乌班图)记住了)
接下来看Linux系统的目录结构长什么样子:
文章图片
是不是和我们的windows是不是很像?这是可视化界面,还有我们常见的shell界面。
文章图片
系统内的目录结构我们由有一个叫目录树的东西来描述,当然这东西是抽象概念,类似于下图这样,像树枝一样:
文章图片
最上面那根“/”,斜斜的粗粗的东西叫根目录,在根目录下有多个子目录,在各个子目录下又有相应的子目录等等。根目录下,每个子目录代表不同的作用,放着不同的文件和目录。
以下是对这些目录的解释:
/bin:
bin是Binary的缩写, 这个目录存放着最经常使用的命令。
/boot:
这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件。
/dev :
dev是Device(设备)的缩写, 该目录下存放的是Linux的外部设备,在Linux中访问设备的方式和访问文件的方式是相同的。
/etc:
这个目录用来存放所有的系统管理所需要的配置文件和子目录。
/home:
用户的主目录,在Linux中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。
/lib:
这个目录里存放着系统最基本的动态连接共享库,其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。
/media:
linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,linux会把识别的设备挂载到这个目录下。
/mnt:
系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在/mnt/上,然后进入该目录就可以查看光驱里的内容了。
/opt:
这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。
/proc:
这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。
/root:
该目录为系统管理员,也称作超级权限者的用户主目录。
/sbin:
s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序。
/srv:
该目录存放一些服务启动之后需要提取的数据。
/sys:
文件系统 sysfs 。
sysfs文件系统集成了下面3种文件系统的信息:针对进程信息的proc文件系统、针对设备的devfs文件系统以及针对伪终端的devpts文件系统。该文件系统是内核设备树的一个直观反映。当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中被创建。
/tmp:
这个目录是用来存放一些临时文件的。
/usr:
这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于windows下的program files目录。
/var:
这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。
/run:
是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。
这里列出来一部分目录,只是为了让大家更清楚的了解大体结构,没必要对每个目录追到低,有个印象知道有这些目录,通过名字大概知道的作用,以后用的时候再去详细了解。
?
其实我们以后做的开发就是对这些目录和文件进行操作。
2019.09.25补充:
/:整个文件系统的唯一根目录。
/bin:Binary,存放常用的系统命令。
/sbin: System Binary,存放系统管理员 root 使用的命令。
/lib: Library,存放系统的函数库。
/home: 存放用户家目录的目录,每一个用户都在该目录下有一个家文件夹。
/usr: User,应用程序存放目录。
/usr/bin: 存放应用程序。
/usr/sbin: 存放系统管理员 root 使用的命令。
/usr/lib: 存放应用程序函数库。
/usr/local: 存放手动安装的软件。
/usr/local/bin: 存放用户自己创建的命令
/usr/local/sbin: 存放用户自己创建的系统管理员 root 使用的命令。
/usr/local/lib: 存放应用程序函数库。
/usr/local/share: 存放共享数据。
/usr/share: 存放共享数据。
/usr/share/doc: 存放系统说明文件。
/usr/share/man: 存放程序说明文件。
/root: 系统管理员 root 的家目录。
/boot: 放置系统启动时用到的一些文件。如 /boot/vmlinuz 为 linux 的内核文件。
/sys: System,存放系统信息。
/dev: Devices,所有设备都在该目录下,Linux 系统中所有设备都在该目录下映射为一个文件。
/etc: 系统所有的配置文件都在该目录下。
/proc: Process,此目录的数据在内存中,包含进程等信息,如系统核心,外部设备,网络状态等。
/media: 用于挂载各种媒体,如: 光盘、软盘等。
/mnt: Mount,用于挂载各种文件系统,如: U盘、SD卡等。
/tmp: Temp,存放临时文件。一般用户或正在执行的程序临时存放文件的目录,任何人都可以访问,不能存放重要的数据。
/lost+fount: 用于存放系统异常时丢失的文件,以便于恢复。
/opt: Option,用于存放安装的可选程序。
/srv: Server,服务启动后需要访问的目录,如 www 服务需要访问的网页数据存放在 /srv/www 内。
【Linux系统目录分析】/var: Vraiable,用于存放那些在时间、大小、内容上会经常变化的文件。如: 日志文件。
推荐阅读
- Linux|109 个实用 shell 脚本
- linux笔记|linux 常用命令汇总(面向面试)
- Linux|Linux--网络基础
- linux|apt update和apt upgrade命令 - 有什么区别()
- linux|2022年云原生趋势
- Go|Docker后端部署详解(Go+Nginx)
- 开源生态|GPL、MIT、Apache...开发者如何选择开源协议(一文讲清根本区别)
- GitHub|7 款可替代 top 命令的工具