当前位置: 首页 > news >正文

Linux重要目录结构及目录命令

文章目录

  • 一、Linux 目录文件与系统启动知识
    • 1.Linux系统目录结构介绍
      • 1.1 Linux与Windows 目录结构对比
      • 1.2 Linux 系统目录结构基本特点
      • 1.3 Linux 目录结构特点小结
    • 2.根下目录结构详解
      • 2.1 重要配置文件

一、Linux 目录文件与系统启动知识

1.Linux系统目录结构介绍

1.1 Linux与Windows 目录结构对比

       相信很多读者已熟悉 Linux 的目录结构,为了进一步帮助读者对比 Linux 和 Windows·这两个系统的结构,这里给出,不太了解Linux系统目录结构的读者,通过此图也可快速理解。

在这里插入图片描述

       Windows 的目录形式为c:\windows),路径分隔符是“1” (撬棍,反斜线) , d、e等盘的目录结构与之类似。Linux的目录形式为/etc/hosts,路径分割符为"/"(斜线), Linux系统一切目录的起点都是从“/”根开始的

1.2 Linux 系统目录结构基本特点

       和Windows下的目录结构对比后,可能有读者在初次接触Linux的时候,会觉得Linux的目录结构比较复杂,没有Windows视窗那样简单明了,从而感到很迷茫。
       其实,Linux 系统的目录结构同样是很简单的,只是 Linux 系统的应用场景多为服务器应用且为字符界面应用,所以不像Windows系统视窗那样直观。但是, Linux的系统的目录结构是很有规律的,下面给大家一一道来,图 中 是 Linux 的目录结构最形象的比喻

在这里插入图片描述

Linux系统目录结构具有以下基本特点:
       (1) 一切从"根"开始,"/"是所有目录的起点(顶点)。,
       (2) Linux 根下面的目录是一个有层次的树状结构。
       (3) 酷似一棵倒挂着的树。

       除此之外, Windows系统目录和磁盘是强对应的,联系很紧密,例如C盘下的目录文件不可能和 D 盘的目录有关联或者交集。而 Linux 系统目录与之不同,Linux 系统的目录和磁盘等设备是不直接关联的,每个目录都可以关联(官称:挂载)在不同的设备(例如磁盘)上,例如:看似有包含关系的几个目录/、/etc、/boot、/var 很可能是在不同的分区或磁盘上。

       在逻辑上,所有的目录(包括目录下的子目录)都在最高级别的目录“/”下,根("/”)目目录是所有目录的起始点(顶点) ,而实际上访问目录/、/etc、/boot、/var时,可能是在访问完全不同的分区和磁盘,下面是Linux目录结构和设备挂载的关系图。

在这里插入图片描述
       Linux下面的设备(磁盘),如果不挂载是看不到入口的,就像没窗没门的监狱,是不能被正常使用的,如果要访问设备,就必须为设备开一个入口,这个入口就是挂载点,挂载点实质就是一个目录,开入口的过程,就是将挂载点和磁盘设备关联,即挂载。

1.3 Linux 目录结构特点小结

       (1) Linux 系统的所有目录都是一个有层次的倒立着的树状目录结构(倒挂树形结构),“/”根是所有目录的顶点,对于Linux 的目录来说,一切从根开始。
       (2) 不同目录下的数据可以跨越不同的磁盘分区或不同的磁盘设备,设备可以随意挂载到任意目录上使用。
       (3) 所有的目录都是按照一定的类别有规律地组织和命名的
       (4) 没有挂载到目录上的磁盘,相当于没有门和窗户的监狱,不能被使用。磁盘等设备需要挂载后才能正常使用。
       (5) 挂载点是磁盘访问的入口,是一个目录。
       (6) 相对路径与绝对路径有如下关系:绝对路径是指以根为起始点的路径,例如/tmp、/opt;相对路径是指相对于非"/”路径的路径,既路径开头没有“/”斜线,例如etc/sysconfig、opt/tmp 等,相对于当前的路径(执行 pwd 可查看)的路径。

2.根下目录结构详解

参考资料:
http://www.pathname. com/fhs
http://www.ibm.com/developerworks/linux/library/l-proc/index.html

       对于每一个 Linux 初学者来说,都有必要花时间掌握 Linux 系统的目录结构知识。
       当我们使用Linux系统的时候,如果执行"1s-1/”命令就会发现,在/下包涵很多的目录内容,比如etc、 usr、var、bin.等,而在这些目录里面,还会有更多的目录或文件,它们构成了一个树状的结构。

[root@buffes~]# tree -L 1 /
/
├── bin -> usr/bin       #/bin等同/usr/bin     #普通用户二进制命令目录。
├── sbin -> usr/sbin     #/sbin/等同/usr/sbin  #root管理员使用的二进制命令目录
├── boot                 #内核程序及引导程序所在的目录,100M
├── dev                  #设备目录(光驱 磁盘)
├── etc                  #系统基础服务配置文件所在的目录(yum rpm安装的软件)
├── home                 #普通用户的家目录(三间茅草房) 
├── root                 #管理员的家目录(皇宫)
├── lib -> usr/lib       #库文件所在目录       
├── lib64 -> usr/lib64   #库文件所在目录     
├── media                #媒体 光驱等挂载点
├── mnt                  #临时的挂载点(u)
├── opt                  #第三方程序目录
├── proc                 #虚拟的文件系统,内核和进程信息的目录。汽车仪表盘。汽车仪表盘:车况 油耗 跑了公里数 速度
├── sys                  #虚拟的文件系统
├── tmp                  #临时目录,所有用户都可以进入这里做各种操作(黑客跳板目录),监控目录。
├── usr                  #c:/program file 应用程序所在目录
└── var                  #数据变化的目录,日志文件存放目录。

2.1 重要配置文件

1. /etc/sysconfig/network-scripts/ifcfg-eth0:网卡配置文件
[root@buffes koboid]# cat /etc/sysconfig/network-scripts/ifcfg-eth1
HWADDR=00:0C:29:C4:6F:D9     #MAC地址 网卡的物理地址
TYPE=Ethernet                 #以太网
BOOTPROTO=none           #
IPADDR=10.0.0.129        #IP地址
PREFIX=24                #子网掩码
GATEWAY=10.0.0.254       #网关
DNS1=223.5.5.5           #DNS1 域名解析为IP。
DNS2=202.106.0.20        #DNS2 域名解析为IP。
NAME=eth1   #设备名
UUID=cf363dd6-05ce-37d3-8caa-242f64883a8f #唯一标识
ONBOOT=yes    #网卡随着linux开启启动2. /etc/resolv.conf:Linux系统过时的DNS客户端配置文件
[root@buffes koboid]# cat /etc/resolv.conf 
# Generated by NetworkManager
nameserver 223.5.5.5
nameserver 202.106.0.20
重启网卡时候,网卡配置文件里的DNS设置会覆盖这里的设置。
配置客户端DNS有两种方法;
1.网卡配置文件里设置(优先)
2.直接在/etc/resolv.conf里配置(很容易被覆盖)3. /etc/hostname:主机名配置文件
查主机名:
[root@buffes ~]# hostname
buffes 
[root@buffes ~]# uname -n
buffes 修改主机名:
1.nmtui
2.hostnamectl set-hostname koboid
3.vim /etc/hostname4. /etc/hosts:系统本地的DNS解析文件(局域网  域名和IP解析文件)
10.0.0.129  buffes 
10.0.0.129  buffeswww.buffes.cn www.baidu.com内部测试,临时访问。服务器之间联系会用主机名的形式5. /etc/fstab:配置开机设备自动挂载的文件
危险的文件容易导致linux无法启动[root@web01 ~]# cat /etc/fstab #
# /etc/fstab
# Created by anaconda on Fri Jun 28 04:16:23 2024
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=c8b5b2da-5565-4dc1-b002-2a8b07573e22 /                       ext4    defaults        1 1
#172.27.160.1:/data/ /var/www/html/data/User/admin/home/           nfs     defaults        0 0
UUID=c9908c87-5555-4f8b-b435-a24ed42f3637 swap                   swap   defaults       0 0
UUID-52581b11-3fbc-4f40-bf39-d7255740da09 /boot                      xfsd     defaults        0 0其中,第1列为设备的名称或者UUID或者磁盘标签,可以通过blkid查看设备uuid。
第2列为设备的挂载点,既访问设备的入口。
第3列为设备的文件系统类型。详细内容可通过man mount查看或见后文。
第4列为挂载的属性,详细内容可通过man mount查看或见后文。
第5 列为是否进行备份。
第 6 列是否开机时做磁盘检查,0 为不做检查,1、2 为检查。6. /etc/rc.local:存放开机自启动程序命令的文件软连接到/etc/rc.d/rc.local
[root@buffes ~]# ls -l /etc/rc.local 
lrwxrwxrwx. 1 root root 13 5月   7 09:23 /etc/rc.local -> rc.d/rc.local
[root@buffes ~]# ls /etc/rc.d/rc.local -l
-rw-r--r--. 1 root root 473 4月   1 2020 /etc/rc.d/rc.local
默认不能用,必须给权限。
[root@buffes ~]# chmod +x /etc/rc.d/rc.local #给执行权限。
[root@buffes ~]# ls /etc/rc.d/rc.local -l
-rwxr-xr-x. 1 root root 473 4月   1 2020 /etc/rc.d/rc.local7./etc/issue 
\S
Kernel \r on an \m[root@buffes ~]# >/etc/issue #清空内容
[root@buffes ~]# cat /etc/issue8. /etc/motd:配置用户登录系统之后显示提示内容的文件
[root@buffes ~]# echo "我的第一个重定向输入" >/etc/motd 
[root@buffes ~]# cat /etc/motd
我的第一个重定向输入9./etc/redhat-release:声明Red Hat版本号和名称信息的文件
[root@buffes ~]# cat /etc/redhat-release 
CentOS Linux release 7.8.2003 (Core)
[root@buffes ~]# uname -r
3.10.0-1127.el7.x86_64
[root@buffes ~]# uname -n
buffes
[root@buffes ~]# uname -a
Linux buffes 3.10.0-1127.el7.x86_64 #1 SMP Tue Mar 31 23:36:51 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux10. /etc/sysctl.conf:Linux内核参数设置文件(系统优化)*****配置完:sysctl -p生效,直接编辑完不生效。11. /etc/profile、/etc/bashrc 配置系统的环境变量/别名等的文件※※※
PS1/usr目录的重要知识介绍 应用程序目录1./usr/local/:编译安装软件默认的位置路径,c:\Program files。 
2./usr/src:源代码目录日志:计算机遇到各种问题,记录日志里,告诉管理员他们的情况。
/var目录下的路径知识 可变化的目录
/var/log/messages  #linux系统日志文件,系统故障可以去看看。
/var/log/secure    #安全日志(ssh日志记录到这里),监控日志。
/var/log/dmesg     #记录硬件信息加载情况的日志文件(dmesg)/proc下的重要路径知识 进程和内核信息的文件
路径名称	路径说明
/proc/cpuinfo	  当前cpu信息文件
/proc/meminfo	  当前内存信息文件
/proc/loadavg	  当前系统的平均负载文件
/proc/mounts	  当前设备挂载列表信息文件
/proc/interrupts  当前系统中断信息文件/dev下目录知识
/dev/hd[a-t]IDE设备
/dev/sd[a-z] SCSI设备
/dev/null  无限数据接收设备,相当于黑洞
/dev/zero  无限零资源
/dev/cdrom 光驱可以看看
https://blog.51cto.com/aqiang/1891893目录命令:
1)cp 复制目录
cp 选项  源  目标复制文件:
[root@buffes ~]# cp /etc/hosts /tmp/
[root@buffes ~]# ls /tmp/复制目录:
[root@buffes ~]# cp -r /etc /tmp/
[root@buffes ~]# ls /tmp/[root@buffes ~]# cp -a /etc /opt
[root@buffes ~]# ls /opt
etc-t 
cp -t 目标  源
[root@buffes ~]# cp -t /home/buffes/ /etc/hosts
[root@buffes ~]# ls /home/buffes/
ddasdf  hosts把当前目录下的dir1,移动到/tmp目录。
[root@buffes ~]# mv dir1 /tmp/练习:
http://www.dtcms.com/a/338348.html

相关文章:

  • Vue3 中的 provide 和 inject 详解:实现跨组件通信
  • 运用4种填充方法补充缺失数据的案例
  • redis的过期键有哪些删除策略
  • Product Hunt 每日热榜 | 2025-08-18
  • 【跨国数仓迁移最佳实践6】MaxCompute SQL语法及函数功能增强,10万条SQL转写顺利迁移
  • 论往返之迴响:时间之织锦与信息之曼舞
  • [激光原理与应用-294]:理论 - 波动光学 - 衍射光学元件(DOE)
  • 如何生成和安全保存私钥?
  • oracle dg duplicate限速
  • 区块链技术原理(16)-以太坊节点与客户端
  • SpringBoot--JWT
  • WPF 打印报告图片大小的自适应(含完整示例与详解)
  • 初识CNN04——经典网络认识
  • 驱动开发系列64 - glCompileShader实现-GLSL 精度优化pass
  • 3.1 结构化输出(大模型的封闭与开放)
  • Windows系统上使用GIT
  • CMake指令:查找文件(find_file)、查找目录(find_path)、查找库文件(find_library)
  • Life:Internship in OnSea Day 57
  • 【Kubernetes】在 K8s 上部署 Prometheus
  • 1-Flask相关知识点
  • 恒创科技:日本服务器 ping 不通?从排查到解决的实用指南
  • 朝阳区24小时图书馆“焕新计划”启幕 文化讲座点亮夜间阅读之光
  • ST05跟踪MRP的运行(MD01)过程
  • 使用chmod 命令修改文件权限
  • 【完整源码+数据集+部署教程】空中目标检测系统源码和数据集:改进yolo11-UniRepLKNetBlock
  • mac 电脑安装类似 nvm 的工具,node 版本管理工具
  • 【机器人-基础知识】ROS2常用命令
  • Vue3 全新特性 defineModel 深度解析
  • CentOS Linux 7 (Core)上部署Oracle 11g、19C RAC详细图文教程
  • 【MySQL】超详细入门学习