Linux 根目录与路径

news2024/9/24 20:33:28

目录

Linux的根目录

/usr目录(存放用户数据)

/bin目录(存放所有用户都可使用的应用程序)

/sbin目录(存放管理员才可以使用的应用程序)

/opt目录(存放第三方软件)

/boot目录(保存开机所需文件)

/dev目录(存放设备与接口)

/etc目录(存放配置文件)

/root目录(存放管理员用户家目录数据)

/home目录(存放非管理员用户家目录数据)

/lib和/bin64目录(存放库文件)

/var目录(存放经常发生变动的文件)

/media目录(存放挂载设备文件)

/tmp目录(存放临时共享文件)

/src目录(存放服务数据)

/proc目录(存放系统运行状态)

/lost+found目录

Linux 路径


Linux的根目录

在Windows操作系统查找文件时,需要进入文件所在的磁盘分区(盘符-C盘、D盘等),然后再进入该分区下的具体目录,最终找到这个文件

在Linux没有盘符的概念,Linux的一切文件都是从根(/)目录开始的

什么是根目录

在Linux中,根(/)目录是位于文件系统目录结构的顶层,所有的文件、目录都要从这个目录延续下去

以根目录为源,根据FHS协议划分出来每个子目录的作用,根据每个子目录的作用来存放文件或目录

这样操作的话,当我们需要寻找某个/某类文件时会比较方便,缩小了寻找范围

注意事项

其实所有目录的功能并不是被FHS定义死了,并不能把FHS协议严格的称之为一种标准,可以理解为一种倡议、推荐,在实际工作做可以根据自己的需要定义目录的功能(但还是推荐按照FHS定义的目录去存放文件)

例如:之前挂载目录为/media,也可以创建一个新的目录做为挂载目录(不过要更改权限)

/usr目录(存放用户数据)

为用户保存一定数据(保存用户安装的软件数据,用户安装的命令、用户安装的库等)

/usr/share  放置帮助和说明文件夹,也可以放置共享文件

/usr/local   用户自行安装的软件默认存放的位置

用户安装软件时保存路径可以默认,也可以手工指定    

/bin目录(存放所有用户都可使用的应用程序)

存放着基本的普通命令文件(二进制文件)

普通用户和管理员用户都可以访问并执行的可执行程序保存在此目录

例如:cat、cp、chmod、su、tar、rm、mount等

Linux上其它存放可执行程序的目录(所有用户都可以用)

/usr/bin 存放所有用户都可用的应用程序

存放着系统安装自带的一些可执行程序(即系统程序),会随着系统的升级而改变。

此目录一般不会做修改,修改可能会影响系统启动等

/usr/local/bin 存放所有用户都可用的第三方软件程序

存放着第三方软件程序(即用户自己安装的应用程序)。此目录一般可以做修改

/sbin目录(存放管理员才可以使用的应用程序)

存放着基本的系统命令(二进制文件)

只有管理员可以执行的可执行程序保存在此目录

例如:reboot、shutdown等

Linux上其它存放可执行程序的目录(只有管理员可用)

/usr/sbin 存放只有管理员用户才可用的应用程序

存放着系统安装自带的一些可执行程序

/usr/local/sbin 存放只有管理员用户才可用的第三方软件程序

存放着第三方软件程序

/opt目录(存放第三方软件)

存放第三方软件(用户自行安装的软件)的目录,同/usr/local

/opt与/usr/local的区别

/usr/local  用户安装软件的默认目录(可以理解为C:/Program Files)

/opt       用户安装软件时手工指定的目录(可以理解为D:)

/boot目录(保存开机所需文件)

保存开机所需的文件(保存开机引导文件/驱动、grup引导、内核等),一般不修改

/dev目录(存放设备与接口)

以文件形式存放任何设备和接口,然后将设备挂载到相应目录

在此文件下,通过udev服务来更加细节的划分每个文件的作用(即不同的设备有不同的文件名格式)

IDE设备              /dev/hd[a-d]

SCSI/SATA/U盘        /dev/sd[a-z]

virtio(虚拟)设备     /dec/vd[a-z]  例如KVM就是

软驱(盘)           /dev/fd[0-1]

光驱(盘)/镜像文件  /dev/cdrom

打印机               /dev/lp[0-15]

鼠标                 /dev/mouse

磁带机               /dev/st0或/dev/ht0

串口                 /dev/ttyS[0-3]

并口                 /dev/lp[0-3]

虚拟终端             /dev/ttty[0-63]

注意事项

/dev/mouse文件是关于鼠标的底层配置(对于鼠标亮灯、蓝牙连接等属于软件配置,通过软件包来实现的,而不是通过/dev/mouse此文件来实现的),所以此文件基本不会修改

/etc目录(存放配置文件)

存放着系统的配置文件,也存放着用户用户自行安装软件的配置文件

即:大部分配置文件都存放在/etc

不过有些例外:例如DNS的服务的配置文件就存放在/var/named

当需要修改系统的配置时可以在此文件夹下面操作

/etc/hostname  修改和查看linux主机名称,永久修改,重启生效

/etc/hosts      修改系统中IP地址和主机名称的映射信息(类似于DNS解析)

/etc/service     修改系统服务的默认端口

/etc/sysconf/network-scripts/ifcfg-ens160  修改系统网卡

/etc/release或/etc/system-release    修改系统信息

/etc/profile      修改全局环境变量

/etc/locale.cong  修改系统语言

/root目录(存放管理员用户家目录数据)

保存管理员的家目录数据(也称为主目录-保存用户的私密文件,其它用户无法访问)

/home目录(存放非管理员用户家目录数据)

存放非管理员用户的家目录数据(非管理员用户的家目录数据,会以用户的用户名来创建一个目录保存此用户的家目录)

即:如果一个用户名是xxx,则在home目录下就有一个对应的/home/xxx目录,用来保存xxx用户的家目录数据

/lib和/bin64目录(存放库文件)

存放调用函数库的文件,喝多命令或程序需要的库函数文件都保存在此目录(让计算机正常工作),一般不可动

/var目录(存放经常发生变动的文件)

存放经常发生变动的文件(其它目录都是根据目录的功能或作用划分的,此目录是根据目录特性划分的)

像/var/log日志数据、/var/spool定时任务信息等一般会存放在此目录

/media目录(存放挂载设备文件)

用于挂载设备文件

要想使用硬盘资源,就需要将此硬盘与目录做一个挂载操作

/tmp目录(存放临时共享文件)

用于存放任何人均可使用的“共享”临时文件

此目录的默认一般权限为777,特殊权限为SBIT

/src目录(存放服务数据)

保存网络服务的数据文件(主要用来存储本机提供的服务数据)

/proc目录(存放系统运行状态)

此目录是一个伪(虚拟)文件系统,只存在于内存当中,并不占用外存(硬盘)空间

它以文件系统的方式伪访问系统内核数据的操作体提供接口

当去查找或者删除、复制这个文件是会报错,因为此文件不是真实的

/lost+found目录

当文件系统发现错误时,将一些丢失的文件片段存放在这里

只有ext3文件系统以及之后的系统才会有/lost+found 文件(RHEL5之前是ext2文件系统,并没有日志功能,也就没有此目录)


Linux 路径

Linux通过路径来定位某个文件/目录,具体由两种定位方式

绝对路径

对于用户此时所在的位置没有要求,不论在哪里都可以找到此文件

相对路径

对于用户此时所在的位置有要求,只有在某个位置时才可以找到此文件

可以更加快去找到某个文件

如何区分是绝对路径还是相对路径

从/开始的都是绝对路径(cd /etc/hostname)

没有从/开始,为相对路径(cd hostname  前提是必须已经在/etc目录下)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/355027.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[Android Studio] Android Studio Virtual Device(AVD)虚拟机的功能试用

🟧🟨🟩🟦🟪 Android Debug🟧🟨🟩🟦🟪 Topic 发布安卓学习过程中遇到问题解决过程,希望我的解决方案可以对小伙伴们有帮助。 🚀write…

Mindspore安装

本文用于记录搭建昇思MindSpore开发及使用环境的过程,并通过MindSpore的API快速实现了一个简单的深度学习模型。 什么是MindSpore? 昇思MindSpore是一个全场景深度学习框架,旨在实现易开发、高效执行、全场景覆盖三大目标。 安装步骤 鉴于笔者手头硬…

QM9数据集示例项目学习图神经网络

目录QM9数据集:QM9数据提取的特征:网络结构的设计官网示例代码注释:QM9数据集: QM9为小有机分子的相关的、一致的和详尽的化学空间提供量子化学特征,该数据库可用于现有方法的基准测试,新方法的开发&#…

【算法】两道算法题根据提供字母解决解码方法和城市的天际线天际线问题

算法目录解码方法Java解答参考:天际线问题Java解答参考:大家好,我是小冷。 上一篇了解了项目相关的知识点 接下来看下两道算法题吧,用Java解答,可能更能激发一下大脑思考。 解码方法 题目要求: 一条包含…

将 Supabase 作为下一个后端服务

对于想快速实现一个产品而言,如果使用传统开发,又要兼顾前端开发,同时又要花费时间构建后端服务。然而有这么一个平台(Baas Backend as a service)后端即服务,能够让开发人员可以专注于前端开发&#xff0c…

Java反序列化漏洞——CommonsCollections4.0版本—CC2、CC4

一、概述4.0版本的CommonsCollections对之前的版本做了一定的更改,那么之前的CC链反序列化再4版本中是否可用呢。实际上是可用的,比如CC6的链,引入的时候因为⽼的Gadget中依赖的包名都是org.apache.commons.collections ,⽽新的包…

【构建工具】Gradle中文教程

文章目录Gradle 简介Gradle 概述基于声明的构建和基于约定的构建为以依赖为基础的编程方式提供语言支持构建结构化深度 APIGradle 的扩展多项目构建多种方式管理依赖Gradle 是第一个构建集成工具易于移植GroovyThe Gradle wrapper自由和开源为什么使用 Groovy?Gradle 安装先决…

Pycharm搭建一个Django项目

File->new project 点击create, 等待一下即可 查看安装 Django 版本: 在 Pycharm 底部选择 Terminal 然后在里面输入:python -m django --version 启动项目: 在 Terminal 里面输入: python manage.py runserver 查看文件目…

一文精通MVCC机制

MVCC(Multi-Version Concurrency Control)多版本并发控制机制使用串行化隔离级别时,mysql会将所有的操作加锁互斥,来保证并发安全。这种方式必然降低并发性能。mysql在读已提交和可重复读隔离级别下,对一行数据的读和写两个操作默认是不会通过…

【Unity3d】Unity与iOS之间通信

在unity开发或者sdk开发经常遇到unity与移动端原生层之间进行通信,这里把它们之间通信做一个整理。 关于Unity与Android之间通信,参考【Unity3d】Unity与Android之间通信 Unity调用Objective-C 主要分三个步骤: (一)、在xcode中定义要被u…

php学习笔记

之前看过php的基础教学视频,了解了一下,自己没有上手实践,现在为了项目需要,需要扎实学习一下,所以做一下笔记吧。 php学习笔记1.基础2.动态网站的开发学习2.1会员管理系统1.基础 之前看过一个4小时的基础视频&#x…

Go 数组和切片反思

切片的底层数据结构是数组,所以,切片是基于数组的上层封装,使用数组的场景,也完全可以使用切片。 类型比较 我看到 go 1.17 有对切片和数组转换的优化,禁不住纳闷,有什么场景是必须数组来完成的呢&#x…

vue项目第七天

项目中模块操做业务使用ajax(需要使用接口认证)修改封装的findData发送ajax请求管理员列表内部搜索业务复用之前的findData 方法即可实现整个查询业务。实现退出业务在下拉菜单上添加事件以及属性。用户退出登录,二次登录系统菜单可能不存在的…

linux环境搭建私有gitlab仓库

搭建之前,需要安装相应的依赖包,并且要启动sshd服务(1).安装policycoreutils-python openssh-server openssh-clients [rootVM-0-2-centos ~]# sudo yum install -y curl policycoreutils-python openssh-server openssh-clients [rootVM-0-2-centos ~]…

(API)接口测试的关键技术

接口测试也就是API测试,从名字上可以知道是面向接口的测试活动。所以在讲API测试之前,我们应该说清楚接口是什么,那么接口就是有特定输入和特定输出的一套逻辑处理单元,而对于接口调用方来说,不用知道自身的内部实现逻…

Spring 中经典的 9 种设计模式

1.简单工厂(非23种设计模式中的一种) 2.工厂方法 3.单例模式 4.适配器模式 5.装饰器模式 6.代理模式 7.观察者模式 8.策略模式 9.模版方法模式 Spring中涉及的设计模式总结 1.简单工厂(非23种设计模式中的一种) 实现方式: BeanFactory。Spring中的BeanFa…

Android 初代 K-V 存储框架 SharedPreferences,旧时代的余晖?

本文已收录到 AndroidFamily,技术和职场问题,请关注公众号 [彭旭锐] 提问。 前言 大家好,我是小彭。 SharedPreferences 是 Android 平台上轻量级的 K-V 存储框架,亦是初代 K-V 存储框架,至今被很多应用沿用。 有的…

【C语言】大小端字节序问题

一、大小端字节序问题 大小端是由CPU决定的,大小端可以理解为字节顺序,所以大小端全称叫大端字节序、小端字节序。其实大端、小端这两个词是从《格列佛游记》里出来的。《格列佛游记》有一段讲的是吃鸡蛋是从大的那头敲开还是小的那头敲开的问题&#xf…

拯救了大批爬虫程序员,因为一个简单的神器

相信大家应该都写过爬虫,简单的爬虫只需要使用 requests 即可。遇到复杂的爬虫,就需要在程序里面加上请求头和参数信息。类似这种:我们一般的步骤是,先到浏览器的网络请求中找到我们需要的请求,然后将请求头和参数信息…

CI/CD --- 什么才是真正的自动化平台

近2年在软件开发中比较火的两个术语,一个是敏捷开发,另外一个就是CI/CD了;敏捷开发顾名思义就是“以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发”。那CI/CD(Continuous Integration、 Continuous Del…