好早就听说Linux了,之前看到别人操作总觉得这是黑客用的玩意儿,简直太高端了。后来涉猎了一些计算机的书,才发现我们觉得高大上的东西,只不过是它的命令行而已,Windows也有这东西,就叫做命令行。
7月份去实习才算正式接触到Linux,有点相见恨晚的感觉🐯。实习每天都很忙,周末又要写论文,没时间学习Linux,只有赶鸭子上架了,不会的时候百度,再就是问运维勇哥和兴哥。特别感谢他们,有的时候问问题问的我自己都不好意思了😊。现在论文也差不多弄完了,终于可以安心下来学习Linux了,于是就有了这篇学习笔记
特别说明:我是通过慕课网上的
Linux达人养成计划
来学习的,老师讲的特别好,特别适合小白学习。唯一的不足就是视频有些年月了😊
视频传送门:Linux达人养成计划I
💷先来一个小火箭的特效🙋🏻
哈哈,这是最近发现的一个包,特别拉风!!
下面正式进入今天的主题,Linux的目录结构。
大家都比较熟悉Windows系统,一般而言,Windows系统都会磁盘都会进行分区,最典型就是系统所在的C盘。和Windows一样,Linux系统也会进行磁盘的分区,但是和Windows并不一样。具体的差别等到了高级篇的时候再说吧。Windows系统中C盘的目录结构一般如下所示:
Linux系统下,如果没有安装图形界面,一般都是通过bash
来与内核进行交互。这里推荐使用Xshell
,超级好用,谁用谁知道!(Xshell
并不是bash
,它只是一个终端模拟软件,Xshell可以在Windows界面下用来访问远端不同系统下的服务器,从而比较好的达到远程控制终端的目的。)
在Xshell
中打印根目录下所有的文件,如下所示:
|
|
输出:
|
|
可以看到,同样存在很多文件。那么我们不禁要问,这些文件/文件夹是干什么用的呢?
上面这幅图给出了根目录下所有的文件及文件夹。其中,不同类型的文件的显示颜色也不同,具体的规则是:
蓝色:表示目录
青色:表示链接
黑色:表示文件
下面这幅图很好的描绘了Linux系统下目录结构图:
下面分别说明这几个目录的含义:
1、/
- 根
每一个文件和目录从根目录开始。
只有root用户具有该目录下的写权限。请注意,/root
是root
用户的主目录,这与/.
不一样
2、/bin
中 - 用户二进制文件
包含二进制可执行文件。
在单用户模式下,你需要使用的常见Linux命令都位于此目录下。系统的所有用户使用的命令都设在这里。
例如:ps
、ls
、ping
、grep
、cp
3、/sbin
目录 - 系统二进制文件
就像/bin
,/sbin
同样也包含二进制可执行文件。
但是,在这个目录下的Linux命令通常由系统管理员使用,对系统进行维护。例如:iptables
、reboot
、fdisk
、ifconfig
、swapon
命令
4、/etc
- 配置文件
包含所有程序所需的配置文件。
也包含了用于启动/停止单个程序的启动和关闭shell脚本。例如:/etc/resolv.conf
、/etc/logrotate.conf
、/ect/shiny-server.conf
hosts:设备名称(或域名)到ip地址的解析,相当于本地存在的dns功能。
|
|
5、/dev
- 设备文件
包含设备文件。
这些包括终端设备、USB或连接到系统的任何设备。例如:/dev/tty1
、/dev/usbmon0
6、/proc
- 进程信息
包含系统进程的相关信息。
这是一个虚拟的文件系统,包含有关正在运行的进程的信息。例如:/proc/{pid}
目录中包含的与特定pid相关的信息。
这是一个虚拟的文件系统,系统资源以文本信息形式存在。例如:/proc/uptime
7、/var
- 变量文件
var代表变量文件。
这个目录下可以找到内容可能增长的文件。
这包括 - 系统日志文件(/var/log
);包和数据库文件(/var/lib
);电子邮件(/var/mail
);打印队列(/var/spool
);锁文件(/var/lock
);多次重新启动需要的临时文件(/var/tmp
);
|
|
8、/tmp
- 临时文件
包含系统和用户创建的临时文件。
当系统重新启动时,这个目录下的文件都将被删除。
|
|
9、/usr
- 用户程序
包含二进制文件、库文件、文档和二级程序的源代码。/usr/bin
中包含用户程序的二进制文件。如果你在/bin
中找不到用户二进制文件,到/usr/bin
目录看看。例如:at
、awk
、cc
、less
、scp
。/usr/sbin
中包含系统管理员的二进制文件。如果你在/sbin中找不到系统二进制文件,到/usr/sbin
目录看看。例如:atd
、cron
、sshd
、useradd
、userdel
。/usr/lib
中包含了/usr/bin和/usr/sbin用到的库。/usr/local
中包含了从源安装的用户程序。例如,当你从源安装Apache
,它会在/usr/local/apache2
中。
|
|
10、/home
- HOME目录,即用户的主目录
所有用户用home目录来存储他们的个人档案。
例如:/home/john
、/home/nikita
|
|
11、/boot
- 引导加载程序文件
包含引导加载程序相关的文件。
内核的initrd
、vmlinux
、grub
文件位于/boot
下。
例如:initrd.img-2.6.32-24-generic
、vmlinuz-2.6.32-24-generic
|
|
12、/lib
- 系统库
包含支持位于/bin
和/sbin
下的二进制文件的库文件.
库文件名为 ld*
或lib*.so.*
例如:ld-2.11.1.so
,libncurses.so.5.7
|
|
13、/opt
- 可选的附加应用程序
opt
代表可选的。
包含从个别厂商的附加应用程序。
附加应用程序应该安装在/opt/
或者/opt/
的子目录下。
14、/mnt
- 挂载目录
临时安装目录,系统管理员可以挂载文件系统。
15、/media
- 可移动媒体设备
用于挂载可移动设备的临时目录。
举例来说,挂载CD-ROM的/media/cdrom
,挂载软盘驱动器的/media/floppy
;
16、/srv
- 服务数据
srv代表服务。
包含服务器特定服务相关的数据。
例如,/srv/cvs
包含cvs
相关的数据。
附:Linux系统中与用户相关的几个目录
|
|
参考: