linux 系统的目录结构

为什么某些执行程序位于/bin、/sbin、/usr/bin或/usr/sbin目录下?例如,less命令位于/usr/bin目录下。为什么不是/bin、/sbin或/usr/sbin?这些目录之间有什么区别呢?

在这篇文章中,让我们主要讲述一下Linux文件系统结构,并解释各个目录的含义。

1. / 根目录

所有文件和目录都从根目录开始。 只有root用户在该目录下有写权限。 请注意,/root是root用户的主目录,与根目录不同。

2. /bin 用户二进制文件

包含二进制可执行文件。 在单用户模式下需要使用的常见Linux命令位于该目录下。 系统所有用户使用的命令也位于这里。 例如:ps、ls、ping、cp。

3. /sbin 系统二进制文件

与/bin目录类似,/sbin也包含二进制可执行文件。 但是,该目录下的Linux命令通常由系统管理员用于系统维护目的。 例如:iptables、reboot、fdisk、swapon。

4. /etc 配置文件

包含所有程序所需的配置文件。 其中还包括启动和关闭脚本,用于启动/停止各个程序。 例如:/etc/resolv.conf、/etc/init.d/cron 。

5. /dev 设备文件

设备文件。这包括终端设备、USB设备或任何连接到系统上的设备。 例如:/dev/tty1、/dev/stdin。

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/john、/home/rose。

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 可移动媒体设备

可移动设备的临时挂载目录。 例如,/media/cdrom用于CD-ROM;/media/floppy用于软盘驱动器

16. /srv 服务数据

srv代表服务。 包含特定服务器服务相关的数据。 例如,/srv/cvs包含与CVS相关的数据。

上面大概介绍了linux的目录结构,明白了目录结构有助于我们更好定位linux的文件,能帮助我们更加熟练使用linux。

相关推荐
段帅龙呀2 小时前
Redis构建缓存服务器
服务器·redis·缓存
乌鸦不像写字台3 小时前
【docker部署】在服务器上使用docker
服务器·docker·容器
牧以南歌〆4 小时前
在Ubuntu主机中修改ARM Linux开发板的根文件系统
linux·arm开发·驱动开发·ubuntu
Antonio9155 小时前
【音视频】HLS简介与服务器搭建
运维·服务器·音视频
夜月yeyue5 小时前
设计模式分析
linux·c++·stm32·单片机·嵌入式硬件
kfepiza6 小时前
Debian的`/etc/network/interfaces`的`allow-hotplug`和`auto`对比讲解 笔记250704
linux·服务器·网络·笔记·debian
无妄-20246 小时前
软件架构升级中的“隐形地雷”:版本选型与依赖链风险
java·服务器·网络·经验分享
R.X. NLOS6 小时前
VS Code远程开发新方案:使用SFTP扩展解决Remote-SSH连接不稳定问题
运维·服务器·ssh·debug·vs code
cuijiecheng20187 小时前
Ubuntu下布署mediasoup-demo
linux·运维·ubuntu
群联云防护小杜7 小时前
构建分布式高防架构实现业务零中断
前端·网络·分布式·tcp/ip·安全·游戏·架构