😎 作者介绍:我是程序员洲洲,一个热爱写作的非著名程序员。CSDN全栈优质领域创作者、华为云博客社区云享专家、阿里云博客社区专家博主、前后端开发、人工智能研究生。公粽号:程序员洲洲。
🎈 本文专栏:本文收录于洲洲的【Linux系列专栏】,欢迎大家关注本专栏~专栏一键跳转
🤓 同时欢迎大家关注其他专栏,我将分享Web前后端开发、人工智能、机器学习、深度学习从0到1系列文章。
🌼 同时洲洲已经建立了程序员技术交流群,如果您感兴趣,可以私信我加入我的社群~社群中将不定时分享各类福利
🖥 随时欢迎您跟我沟通,一起交流,一起成长、进步!点此即可获得联系方式~
本文目录
- 第一节:Linux系统目录简介
- 第二节:根目录下各目录详解
- 第三节:Linux系统目录操作
- 第四节:Linux目录路径
- 总结
第一节:Linux系统目录简介
Linux系统目录是Linux操作系统中最重要的部分之一,它承载着Linux系统的文件和目录结构。如同Windows系统中的文件夹,Linux系统目录用于组织和管理系统的文件和应用程序。不同的是,Linux系统目录具有更加灵活和复杂的结构,因此了解和掌握Linux系统目录的结构和操作对于Linux用户来说至关重要。
我们来详细的看一下树状目录结构:
大部分主流的linux系统目录结构是这样子的。
我们在linux的终端命令下输入如下命令,来查看目录中都有哪些包:
ls /
第二节:根目录下各目录详解
- /bin:bin 是 Binaries (二进制文件) 的缩写, 这个目录存放着最经常使用的命令。
- /boot: 这里存放的是启动 Linux 时使用的一些核心文件,包括一些连接文件以及镜像文件。
- /dev : dev 是 Device(设备) 的缩写, 该目录下存放的是 Linux 的外部设备,在 Linux中访问设备的方式和访问文件的方式是相同的。
- /etc: etc 是 Etcetera(等等) 的缩写,这个目录用来存放所有的系统管理所需要的配置文件和子目录。
- /home: 用户的主目录,在 Linux 中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的,如上图中的alice、bob等。
- /lib: lib 是 Library(库) 的缩写这个目录里存放着系统最基本的动态连接共享库,其作用类似于 Windows 里的 DLL文件。几乎所有的应用程序都需要用到这些共享库。
- /lost+found: 这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。
- /media: linux 系统会自动识别一些设备,例如U盘、光驱等等,当识别后,Linux 会把识别的设备挂载到这个目录下。
- /mnt: 系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在 /mnt/ 上,然后进入该目录就可以查看光驱里的内容了。这个文件也可以用来放共享文件夹,可以通过这个目录来设置共享文件夹跟windows实现文件互传。
- /opt: opt 是 optional(可选)的缩写,这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。
- /proc: proc 是 Processes(进程) 的缩写,/proc是一种伪文件系统(也即虚拟文件系统),存储的是当前内核运行状态的一系列特殊文件,这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。这个目录的内容不在硬盘上而是在内存里,我们也可以直接修改里面的某些文件,比如可以通过下面的命令来屏蔽主机的ping命令,使别人无法ping你的机器:
cho 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
- /root: 该目录为系统管理员,也称作超级权限者的用户主目录。
- /sbin: s 就是 Super User 的意思,是 Superuser Binaries (超级用户的二进制文件)的缩写,这里存放的是系统管理员使用的系统管理程序。
- /selinux: 这个目录是 Redhat/CentOS 所特有的目录,Selinux 是一个安全机制,类似于 windows的防火墙,但是这套机制比较复杂,这个目录就是存放selinux相关的文件的。
- /srv: 该目录存放一些服务启动之后需要提取的数据。
- /sys:这是 Linux2.6 内核的一个大的变化。该目录下安装了 2.6 内核中新出现的一个文件系统 sysfs 。sysfs 文件系统集成了下面3种文件系统的信息:针对进程信息的 proc 文件系统、针对设备的 devfs 文件系统以及针对伪终端的devpts 文件系统。该文件系统是内核设备树的一个直观反映。当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中被创建。
- /tmp: tmp 是 temporary(临时) 的缩写这个目录是用来存放一些临时文件的。
- /usr: usr 是 unix shared resources( 共享资源)的缩写,这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于 windows 下的 program files 目录。
- /var:var 是 variable(变量) 的缩写,这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。
- /usr/src:内核源代码默认的放置目录。
- sr/bin:系统用户使用的应用程序。
- /usr/sbin:超级用户使用的比较高级的管理程序和系统守护程序。
以下我们以/etc目录为例,进一步说明Linux系统目录结构的特点。/etc目录包含了大量的配置文件和子目录,如/etc/ssh目录就包含了ssh服务的配置文件,/etc/apache2目录则包含了Apache Web服务器的配置文件。这些配置文件控制着系统上安装的各种软件的行为,因此了解这些配置文件的内容和修改方法对于优化系统性能和提高工作效率非常重要。
第三节:Linux系统目录操作
掌握Linux系统目录操作是每个Linux用户必备的技能。以下我们将介绍几个常用的Linux系统目录操作命令:
-
cd命令:cd命令用于切换当前工作目录。例如,cd /etc命令可以将当前工作目录切换到/etc目录下。
-
ls命令:ls命令用于列出当前目录下的文件和子目录。例如,ls -l命令可以列出当前目录下的所有文件和子目录的详细信息
-
grep命令:grep命令用于搜索文件中的指定内容。例如,grep “keyword” /etc/*可以搜索/etc目录下所有文件中包含"keyword"的行。
-
cp命令:cp命令用于复制文件或目录。例如,cp /etc/ssh /var/可以复制/etc/ssh目录到/var下。
-
mv命令:mv命令用于移动文件或目录。例如,mv /var/log /home/user/可以移动/var/log目录到/home/user下。
第四节:Linux目录路径
在 Linux 或 Unix 操作系统中,所有的文件和目录都被组织成以一个根节点开始的倒置的树状结构。
文件系统的最顶层是由根目录开始的,系统使用 / 来表示根目录。在根目录之下的既可以是目录,也可以是文件,而每一个目录中又可以包含子目录文件。如此反复就可以构成一个庞大的文件系统。
在Linux文件系统中有两个特殊的目录,一个用户所在的工作目录,也叫当前目录,可以使用一个点 . 来表示;另一个是当前目录的上一级目录,也叫父目录,可以使用两个点 … 来表示。
. :代表当前的目录,也可以使用 ./ 来表示;
… :代表上一层目录,也可以 …/ 来代表。
如果一个目录或文件名以一个点 . 开始,表示这个目录或文件是一个隐藏目录或文件(如:.bashrc)。即以默认方式查找时,不显示该目录或文件。
假设我现在在/bin目录下,那么想回到上层,就可以使用 cd … 命令:
读者们可以自己手动实践操作一下:运用熟练这些操作对后面进阶高级的命令掌握有很大帮助!~
总结
Hello,各位看官老爷们好,洲洲已经建立了CSDN技术交流群,如果你很感兴趣,可以私信我加入我的社群。
📝社群中不定时会有很多活动,例如每周都会包邮免费送一些技术书籍及精美礼品、学习资料分享、大厂面经分享、技术讨论、行业大佬创业杂谈等等。
📝社群方向很多,相关领域有Web全栈(前后端)、人工智能、机器学习、自媒体变现、前沿科技文章分享、论文精读等等。
📝不管你是多新手的小白,都欢迎你加入社群中讨论、聊天、分享,加速助力你成为下一个技术大佬!也随时欢迎您跟我沟通,一起交流,一起成长。变现、进步、技术、资料、项目、你想要的这里都会有
📝网络的风口只会越来越大,风浪越大,鱼越贵!欢迎您加入社群~一个人可以或许可以走的很快,但一群人将走的更远!
📝关注我的公众号(与CSDN同ID:程序员洲洲)可以获得一份Java 10万字面试宝典及相关资料!~
📝想都是问题,做都是答案!行动起来吧!欢迎评论区or后台与我沟通交流,也欢迎您点击下方的链接直接加入到我的交流社群!~ 跳转链接社区~