《深入了解 Linux 操作系统》
在计算机领域中,Linux 作为一种强大而重要的操作系统,有着广泛的应用场景,尤其在服务器端占据着举足轻重的地位。
一、Linux 简介
Linux 是一种操作系统,主要应用于服务器端。不同的厂商或个人会对 Linux 的内核进行封装,从而产生了各种不同的 Linux 发行版。简单来说,Linux 发行版由 Linux 内核、系统库和系统软件组成。
常用的 Linux 发行版
- Ubuntu:在界面设计方面表现出色,对小白初学者非常友好。它提供了直观的用户界面和丰富的软件资源,让初学者能够轻松上手并快速熟悉 Linux 系统的操作。
- RedHat:由 IBM 公司推出,属于收费版本。RedHat 功能强大,具有高度的稳定性和可靠性,广泛应用于企业级服务器环境中。它提供了全面的技术支持和服务,确保企业的关键业务能够稳定运行。
二、虚拟机介绍
虚拟机是通过虚拟化软件模拟计算机硬件的一种技术,它可以在一台物理计算机上创建多个虚拟的计算机环境,并在这些虚拟环境中安装真实的操作系统。常见的虚拟化软件有 Vmware 和 Virtual Box。
三、环境搭建
-
首先安装 Vmware 软件,这是一款功能强大的虚拟化软件,它可以帮助你在一台物理计算机上创建多个虚拟机。
-
接着安装或挂载虚拟机到 Vmware 软件中。你可以选择使用已经准备好的虚拟机镜像文件,或者通过网络安装等方式来创建新的虚拟机。
-
安装 Linux 系统的远程连接工具 Finalshell。Finalshell 可以让你方便地从本地计算机连接到 Linux 虚拟机,进行远程管理和操作。
-
实现 Finalshell 连接 Linux 虚拟机的步骤如下:
- step1:修饰 Vmware 软件的虚拟机网络编辑器。通过调整虚拟机网络编辑器的设置,可以确保虚拟机与本地计算机之间能够正常通信。
- step2:修饰虚拟机的 IP 信息。为虚拟机分配一个合适的 IP 地址,以便在网络中能够被正确识别和访问。
- step3:修改本地 VMNet8 网卡的信息。确保本地计算机的网络设置与虚拟机的网络设置相匹配,以便能够建立稳定的连接。
- step4:配置 FinalShell,填写虚拟机的信息,实现连接。在 FinalShell 中输入虚拟机的 IP 地址、用户名和密码等信息,即可建立远程连接。
-
在环境搭建过程中,你可能会遇到一些问题:
- 问题 1:昨天还好好的,今天却连不上了。
- 情况 1:Vmware 服务没开(默认是开机自启动的)。可以通过 win + r 打开运行窗口,输入 services.msc,找到 Vmware 开头的 4 个服务,手动启动即可。
- 情况 2:主网络服务介入,修改了你的 IP。运行以下 3 行命令可以解决问题:systemctl stop NetworkManager;systemctl disable NetworkManager;systemctl restart network;ifconfig(重新查看 IP)。
- 问题 2:启动时,提示 BIOS 固件问题。有些有些电脑的主板默认会禁用虚拟化服务,重启电脑,手动进入 BIOS 界面,开启虚拟化服务即可。
- 问题 3:启动蓝屏或无法启动。可以尝试以下方法:换 Vmware 的版本、重新拷贝 Linux 虚拟机、刷系统。
- 问题 1:昨天还好好的,今天却连不上了。
四、Linux 的目录结构介绍
Linux 的目录结构属于树状结构,具有以下特点:
- 有一个根节点,即 “/” 目录。
- 除根节点外,每个节点可以有一个或多个子节点。这种结构使得文件系统层次分明,易于管理和查找文件。
- 存在叶子节点,代表具体的文件或目录。
常用的目录有:
- “/root”:超级用户的家目录。
- “/home”:普通用户的家目录所在位置。
- “/etc”:存放系统配置文件的目录。
- “/usr/bin”:存放基础类命令的目录。
- “/usr/sbin”:存放管理类和系统类命令的目录。
五、Linux 的基础命令
Linux 命令格式为 command [-options] [parameter],即命令名 [- 选项] [参数]。以下是一些常见的基础命令:
ls
命令:用于查看目录内容。ls
:查看当前目录的子级,不包括隐藏内容。ls /
:查看根目录下的内容。ls -a
:查看当前目录的子级,包括隐藏内容。ls -l
:以行的方式查看当前目录的子级,简写形式为ll
。ls -h
:以人性化的方式展示当前目录的内容,但通常无效果。ls -lh
:以行的方式,人性化展示当前目录下的内容,简写形式为ll -h
。ls -al
:以行的形式,展示当前目录下所有子级(包括隐藏内容)。ls -alh
:以行、人性化的方式展示当前目录下所有子级(包括隐藏内容)。
cd
命令:用于切换目录。cd 要切换到的目录的路径
,路径写法有 “./”(代表当前路径)、“..”(代表上级路径)、“../..”(代表上上级路径)、“~”(代表回到家目录,root 账号的家为 /root,其它账号的家为 /home/ 账号名),直接写cd
也是回家命令,“-” 代表在最近的两个目录之间做切换。
pwd
命令:用于查看当前所在的工作目录,即当前在 Linux 的哪个路径下。mkdir
命令:用于创建文件夹,mkdir [-p] 文件夹路径
。- 文件相关命令:
touch
:创建文件,可同时创建多个文件,如touch 文件路径 1 文件路径 2...
。cp
:来源于 copy 单词,可以拷贝文件、文件夹,cp [-r] 数据源 目的地
,其中 “-r” 表示递归,拷贝文件夹时需要使用。mv
:来源于 move 单词,可以剪切文件、文件夹,mv 数据源 目的地
,如果是同级路径,则为改名。cat
:查看文件内容,一次性查看文件所有内容,如果内容较多,会翻页,只留最后一页,如cat 文件路径
。more
:查看文件内容,可以分页查看,如more 文件路径
,操作方式有空格(向下翻一页)、“d”(向下翻半页)、“enter”(向下翻一行)、“b”(向上翻一页)、“q”(退出,也可以按下 ctrl + 字母 C)。head
:查看文件起始内容,如head -n 文件路径
。tail
:动态查看文件的最后 100 行内容,一般用于查看日志信息,如tail -100f 文件路径
。rm
:来源于 remove 单词,可以删除文件、文件夹,rm [-r -f] 要删除的文件或者文件夹路径
,其中 “-r” 表示递归,“-f” 表示强制。
- 查找相关命令:
which
:查找 Linux 可执行命令的路径,如which ls
会输出/usr/bin/ls
。find
:根据文件名或文件大小查找指定文件,如find 要被检索的目录路径 -name '要检索的文件名'
可以查找特定文件名的文件,find 要被检索的目录路径 -size +100M
可以查找超过 100MB 的文件。
- 管道和过滤命令:
- “|” 管道命令:把前边命令的执行结果,当做后边命令的数据源来处理,类似于流水线。
grep
:过滤命令,从文件中筛选出符合条件的行,如grep [-n] 关键字 文件路径
,其中 “-n” 表示显示行号。
- 重定向、输出等命令:
echo
:可以把内容输出到控制台,类似于 python 的 print (),反引号可以执行 Linux 命令,如echo pwd
输出 “pwd” 这个字符串到控制台,echo 'pwd'
效果同上,这里是单引号,echo
pwd把 pwd 命令的执行结果打印到控制台上。重定向有 “>”(覆盖)和 “>>”(追加),如echo 'hello world' > 1.txt
把内容写到 1.txt 文件中,覆盖写入,echo 'hello world' >> 1.txt
把内容写到 1.txt 文件中,追加写入。tail
:查看文件末尾内容,可以动态追踪,如tail [-n -f] 文件路径
。
- 文件编辑命令:
vi
和vim
作用相同,区别在于关键字会不会高亮。基础操作如下:vim 文件路径
。- 输入字母 “i”,进入编辑模式。
- 正常编辑。
- 按
esc
键,退出编辑模式,回到命令模式。 - 输入:“:wq” 保存退出;“:q!” 强制退出,不保存。
- 进阶操作:
- 命令模式相关操作:
- “i”:当前位置插入。
- “o”:向下插入一行。
- “O”:向上插入一行。
- “dd”:删除当前行。
- “ndd”:连续向下删除 n 行。
- “yy”:复制当前行。
- “nyy”:连续向下复制 n 行。
- “p”:粘贴。
- “u”:撤销。
- “ctrl + r”:反撤销。
- “shift + z + z”:等同于 “:wq”,保存并退出。
- “gg”:回到行首。
- “G”:回到行尾。
- “/ 内容”:查找内容,找到后会高亮。
- 编辑模式相关操作:按
esc
回到命令模式,正常编辑。 - 底行(底线)模式相关操作:“:q” 退出不保存;“:q!” 强制退出不保存;“:wq” 保存并退出;“:wq!” 强制退出并保存;“:set nu” 设置行号;“:set nonu” 取消行号;“: 行号” 跳转到指定行;“:nohl” 取消高亮。
- 命令模式相关操作:
六、Linux 的进阶操作
- 用户和用户组相关:
- 用户相关:
useradd [-g] [用户组] 用户名
:没有指定组,则会创建一个和用户名一样的组;指定组了,就不创建。passwd 用户名
:设置用户密码。id 用户名
:查看用户信息。getent passwd
:查询所有用户信息。userdel -r 用户名
:删除用户。usermod -aG 用户组 用户名
:将用户添加到用户组。su 用户名
:转换用户,root 转换到其它用户或其它用户之间转换。sudo Linux 命令
:以超级用户权限执行命令,查找/etc/sudoers
文件。
- 用户组相关:
groupadd 组名
:创建用户组。groupdel 组名
:删除用户组。getent group
:查询所有组。
- 细节:如果组是创建用户的时候自动生成的,则删除账号时,组也会同步删除;组内如果有其它账号,则该组无法直接被删除。
- 用户相关:
- 权限相关(重点):
- 文件类型:“-” 表示文件,“d” 表示目录(文件夹),“l” 表示软连接。
- 权限:“r” 表示只读(对应数字 4),“w” 表示只写(对应数字 2),“x” 表示可执行(对应数字 1),“-” 表示无权限(对应数字 0)。可以使用
chmod [-R] 数字 文件或者目录路径
修改权限,其中 “-R” 表示递归,针对于目录有效;使用chown [-R] [用户名][:][用户组] 文件或者目录路径
修改属主、属组,其中 “-R” 表示递归。
- 常用快捷键:
ctr + c
:取消执行。ctr + d
:强制登出。ctr + L
(等价于clear
):清屏。ctr + a
:光标移动到行首。ctr + e
:光标移动到行尾。ctr + ←
:光标向前移动一个单词。ctr + →
:光标向后移动一个单词。ctr + r
:检索。history
:查看历史命令。!命令前缀
:根据前缀匹配最近的哪个命令。
- 安装软件的方式之一:
yum [-y] install | remove | search 软件名
,细节:RPM 和 YUM 的区别在于 RPM 不能自动解决依赖,YUM 能自动解决依赖。
- 服务控制:
systemctl [ start | stop | restart | status | enable | disable] 服务名
。
- 网络、ip、进程相关:
wget URL 地址
和curl URL 地址
用于下载文件。ping 域名或者 IP
用于测试网络连接,可扩展配置 windows 系统和 Linux 系统的域名映射。netstat -anp
用于查看网络状态。- IP 相关命令:
ifconfig
:查看本机 IP。hostname
:查看主机名,即机器的名字。hostnamectl set-hostname 新的主机名
:修改主机名,即刻生效。vim /etc/hostname
:修改主机名,重启有效。- 配置域名映射:在 windows 系统中,配置路径为 C:\Windows\System32\drivers\etc\hosts;在 Linux 系统中,配置路径为
vim /etc/hosts
。 - 两个好玩儿的命令:
reboot
(重启)、shutdown -h now
(关机)。
ps -ef
:查看本机所有进程。ps -ef | grep mysql
:查看本机所有进程中与 mysql 相关的进程。kill -9 进程 id
:强制杀死某些进程。
- 上传和下载:
- 方式 1:
yum -y install lrzsz
,其中 “rz” 用于上传,“sz” 用于下载。 - 方式 2:拖拽。
- 方式 1:
- 环境变量:
env
:查看 Linux 的环境变量。变量名=变量值
:设置变量,等号两端没有空格。${变量名}
:如果是单独用的,大括号可以省略不写,用于使用变量值。vim /etc/profile
,按 “i” 进入编辑模式修改,最后 “:wq” 保存退出,设置环境变量,然后sorce /etc/profile
刷新配置文件。
- 软硬链接:
- 软连接:类似于 windows 的快捷方式,格式为
ln -s 要被连接的地址 软连接方式
。 - 硬链接:相当于动态备份文件中的内容,提高容错率,格式为
ln 要被连接的地址 硬连接方式
,不写 “-s” 就是硬链接,写了就是软连接。
- 软连接:类似于 windows 的快捷方式,格式为
- 压缩和解压缩:
- tarball(归档方式):
- 压缩:
tar -zcvf 压缩包名.tar.gz 要被压缩的文件
。 - 解压缩:
tar -zxvf 压缩包名.tar.gz [-C] [要解压到的路径]
,参数解释:“-z” 表示 gzip 协议,“-c” 表示压缩,“-x” 表示解压,“-v” 表示显示详情(过程),“-f” 表示文件。细节:如果加 “-z” 了,则后缀名一般写 *.tar.gz,不加 “-z”,后缀名一般写 *.tar。
- 压缩:
- zip 协议:
- 压缩:
zip [-r] 压缩包名.zip 要被压缩的文件或者目录
,“-r” 表示递归。 - 解压缩:
unzip 压缩包名.zip [-d] 解压到的路径
。
- 压缩:
- tarball(归档方式):
相关文章:

《深入了解 Linux 操作系统》
在计算机领域中,Linux 作为一种强大而重要的操作系统,有着广泛的应用场景,尤其在服务器端占据着举足轻重的地位。 一、Linux 简介 Linux 是一种操作系统,主要应用于服务器端。不同的厂商或个人会对 Linux 的内核进行封装ÿ…...

批评他人也需要技术
俗话说“人无完人,尺有所短,寸有所长”,每个人都有可能犯错误。我们犯错误,并不能说明我们一无是处;一个人做了一件好事,也不能说他做的每件事都是好的。 营造良好的氛围。一说到批评,我们许多…...

安装SQL Server遇到的问题
出现了一和二的问题,最后还是通过三完全卸载sqlserver安装成功了 一.安装过程中依次报错 1.MOF编译器无法连接WMI服务器。原因可能是语义错误(例如,与现有WMI知识库不兼容)或实际错误(例如WMI服务器启动失败)。 2.PerfLib 2.0计数器removal失败…...

java项目之编程训练系统源码(springboot)
风定落花生,歌声逐流水,大家好我是风歌,混迹在java圈的辛苦码农。今天要和大家聊的是一款基于springboot的编程训练系统。项目源码以及部署相关请联系风歌,文末附上联系信息 。 项目简介: 编程训练系统的主要使用者管…...

MySQL的登陆错误:ERROR 1049 (42000): Unknown database ‘root‘
MySQL的登陆错误:ERROR 1049 (42000): Unknown database ‘root’ 安装MySQL的时候,到网上查的命令行登陆MySQL的方法都是mysql -u root -p password mysql -r root -p 123456但是奇怪的是这条命令我输进去死活都不对,它都会要求再输入一遍…...

vue使用vue-i18n实现国际化
我使用的是vue2.6版本,具体使用其他版本可以进行修改 一、安装 npm install vue-i18n -D 二、配置 1、文件配置 ①在src下创建 i18n 目录 ②在 i18n 目录下创建 langs 文件夹 和 index.js文件,具体如下 2、index.js代码如下,这里使用了…...

微信小程序如何设置左侧导航栏跟随页面滑动
一、使用 scroll-view 组件实现页面滚动 在页面的 wxml 文件中,将需要滚动的内容包裹在scroll - view组件内,例如: <scroll-view scroll-y"true" style"height: 800rpx;"><!-- 这里放置页面的主要内容 -->…...

个人小结(2.0)
离谱,困扰着几周的问题今天偶然发现了解决方法。 问题如下:就是对应的模块引入爆红,但是单击进入引入的文件没有问题 然后它的提示是: 无法找到模块“../views/screen/index.vue”的声明文件。“c:/Users/10834/Desktop/0716_pro…...

探索自动化的魔法:Python中的pyautogui库
文章目录 探索自动化的魔法:Python中的 pyautogui 库背景:为什么选择pyautogui?pyautogui是什么?如何安装pyautogui?五个简单的库函数使用方法场景应用常见Bug及解决方案总结 探索自动化的魔法:Python中的 …...

YOLOv9改进策略【Neck】| GSConv+Slim Neck:混合深度可分离卷积和标准卷积的轻量化网络设计
一、本文介绍 本文记录的是利用GsConv优化YOLOv9的颈部网络。深度可分离卷积(DSC)在轻量级模型中被广泛使用,但其在计算过程中会分离输入图像的通道信息,导致特征表示能力明显低于标准卷积(SC),…...

EasyExcel的基本使用——Java导入Excel数据
使用EasyExcel导入Excel数据有两种方式 无论哪种方式我们都需要建立Excel表格和Java对象的绑定 首先我们需要根据Excel表头定义一个对应的类 excel表示例: 对应的类: 使用ExcelProperty将excel列名和字段名绑定,括号里面填列名 package co…...

Apache Iceberg 试用
启动 spark-sql 因为 iceberg 相关的 jars 已经在 ${SPARK_HOME}/jars 目录,所以不用 --jars 或者 --package 参数。 spark-sql --master local[1] \--conf spark.sql.extensionsorg.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions \--conf spar…...

速通汇编(六)认识栈,SS、SP寄存器,push和pop指令的作用
一,栈 (一)栈的特点 栈是一种具有特殊访问方式的存储空间,特殊在于,进出这块存储空间的数据,“先进后出,后进先出” 由于栈的这个“先进后出”的特点,我们可以利用其来很好的操作内…...

【Python机器学习】NLP信息提取——值得提取的信息
目录 提取GPS信息 提取日期 如下一些关键的定量信息值得“手写”正则表达式: GPS位置;日期;价格;数字。 和上述可以通过正则表达式轻松捕获的信息相比,其他一些重要的自然语言信息需要更复杂的模式: 问…...

代理IP批理检测工具,支持socks5,socks4,http和https代理批量检测是否可用
代理IP批理检测工具,支持socks5,socks4,http和https代理批量检测是否可用 工具使用c编写: 支持ipv4及ipv6代理服务器。 支持http https socks4及socks5代理的批量检测。 支持所有windows版本运行! 导入方式支持手工选择文件及拖放文件。 导入格式支持三…...

AI视觉算法盒是什么?如何智能化升级网络摄像机,守护全方位安全
在智能化浪潮席卷全球的今天,以其创新技术引领行业变革,推出的集高效、智能、灵活于一体的AI视觉算法盒。这款革命性的产品,旨在通过智能化升级传统网络摄像机,为各行各业提供前所未有的安全监控与智能分析能力,让安全…...

【Vue】VueRouter路由
系列文章目录 第七章 VueRouter路由 文章目录 系列文章目录第一节:VueRouter基础一、安装:二、基本使用:1. 创建路由代码:Single Page Application:SPA2. 使用路由3. 展示路由: 二、嵌套路由三、路由传参1…...

idea多模块启动
文章目录 idea多模块启动2018版本的idea2019版本的idea idea多模块启动 2018版本的idea 1.首先看一下view> Tool Windows下有没有Run Dashboard 如果有,点击一下底部的窗口就会出现 如果不存在,执行下一步 2.查看自己项目的工作空间位置 点击 File&…...

23:SPI二:W25Q64存储器模块的使用
W25Q64存储器模块的使用 1、W25Q64的简介2、模块内部结构2.1:引脚结构2.2:内部存储结构2.3:此模块的注意事项 3、程序模拟SPI读写W25Q644、片上外设SPI读写W25Q64 1、W25Q64的简介 其中最主要的特点就是掉电不丢失。 由上图所示:…...

论文解读《COMMA: Co-articulated Multi-Modal Learning》
系列文章目录 文章目录 系列文章目录论文细节理解1. 研究背景2. 论文贡献3. 方法框架4. 研究思路5. 实验6. 限制结论 论文细节理解 这段话中,the vision branch is uni-directionally influenced by the text branch only 什么意思?具体举例一下 以下是…...

10款电脑加密软件超好用推荐|2024年常用电脑加密软件排行榜
随着数据隐私和信息安全意识的增强,电脑加密软件已成为日常工作和个人生活中不可或缺的工具之一。无论是保护公司机密文件,还是保障个人数据的安全,合适的加密软件都能提供强有力的保护。本文将推荐2024年超好用的10款电脑加密软件࿰…...

用户态缓存:环形缓冲区(Ring Buffer)
目录 环形缓冲区(Ring Buffer)简介 为什么选择环形缓冲区? 代码解析 1. 头文件与类型定义 1.1 头文件保护符 1.2 包含必要的标准库 1.3 类型定义 2. 环形缓冲区结构体 2.1 结构体成员解释 3. 辅助宏与内联函数 3.1 min 宏 3.2 is…...

Harmony应用 ArkTs AES 加密方法之GCM对称加密
加解密介绍 在数据存储或传输场景中,可以使用加解密操作用于保证数据的机密性,防止敏感数据泄露。 使用加解密操作中,典型的场景有: 使用对称密钥的加解密操作。 使用非对称密钥的加解密操作。 使用RSA(PKCS1_OAEP…...

热成像在战场上的具体作用!!!
1. 探测和跟踪敌人 原理:人体和许多类型的军事设备都会发热,热成像技术通过探测这些红外辐射,能够在远距离探测和跟踪敌人的位置。 应用场景:这一功能在夜间或有覆盖物(如草丛、树林)的情况下尤为有效&am…...

2024年09月20日《每日一练》
1、 根据我国“十三五”规划纲要,()不属于新一代信息技术产业创新发展的重点。 A 人工智能 B 移动智能终端 C 先进传感器 D 4G D P13 此题考察的是新一代信息技术,必须掌握,高频考点 国在“十三五“规划纲要中&#x…...

使用 SSCB 保护现代高压直流系统的优势
在各种应用中,系统效率和功率密度不断提高,这导致了更高的直流系统电压。然而,传统的电路保护解决方案不足以在保持高可靠性和安全性的同时有效保护这些高压配电系统。 固态断路器 (SSCB) 和电熔断器具有众多优点&…...

Linux基础命令——文件系统的日常管理
目录 一.如何查看当前工作目录?(你现在所处的位置路径) 二.命令touch的用途是什么?还有别的方法新建文件吗? (1)创建空文件 (2)如果已经存在这个文件,就会更新创建时间。 (3…...

uniapp使用高德地图设置marker标记点,后续根据接口数据改变某个marker标记点,动态更新
最近写的一个功能属实把我难倒了,刚开始我请求一次数据获取所有标记点,然后设置到地图上,然后后面根据socket传来的数据对这些标记点实时更新,改变标记点的图片或者文字, 1:第一个想法是直接全量替换,事实证明这样不行,会很卡顿,有明显闪烁感,如果标记点比较少,就十几个可以用…...

坦白了,因为这个我直接爱上了 FreeBuds 6i
上个月,华为发布的 FreeBuds 6i 联名了泡泡玛特真的超级惊艳,不少宝子被这款耳机的颜值所吸引,而它的实力更是不容小觑的。FreeBuds 6i 是一款性能强大的降噪耳机,它一直在强调平均降噪深度,但是应该很多人对这个概念很…...

006.MySQL_查询数据
课 程 推 荐我 的 个 人 主 页:👉👉 失心疯的个人主页 👈👈入 门 教 程 推 荐 :👉👉 Python零基础入门教程合集 👈👈虚 拟 环 境 搭 建 :…...