Linux的基本操作及虚拟机设置
文章目录
- Linux的目录结构
- Linux中的常见目录
- VI和VIM编辑器
- 什么是VI和VIM编辑器
- VIM的一般模式
- VIM的编辑模式
- VIM的命令模式
- 模式间的切换
- 虚拟机网络配置
- 查看网络信息
- 修改网络配置信息
- 查看和修改主机名
- 服务管理类命令
- 虚拟机管理操作
- VMware为虚拟机拍摄快照
- VMware为虚拟机执行克隆
Linux的目录结构
Linux中的常见目录
Linux常见的目录结构,不同版本的Linux目录结构可能略有不同

Centos7的文件目录结构

Linux根目录下的常见目录及作用
-
/bin:★(/usr/bin,/usr/local/bin)
是Binary的缩写, 这个目录存放着最经常使用的命令,Linux默认的环境变量已经包含该路径,所以可以直接使用该路径下的指令如 cd指令
可以通过echo $PATH查看系统环境变量来看是否包含了该目录
-
/sbin:(/usr/sbin, /usr/local/sbin)
s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序。
以上目录,任何命令在任意目录下都可执行命令
-
/home:★
存放普通用户的主目录,在Linux中每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。
-
/root:★
该目录为系统管理员,也称作超级权限者的用户主目录。
-
/lib:
系统开机所需要最基本的动态连接共享库,其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。
-
/lost+found:
这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。
-
/etc:★
所有的系统管理所需要的配置文件和子目录。my.cnf
-
/usr:★
这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似与windows下的program files目录。
-
/boot:★
这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件,自己的安装别放这里 
-
/proc:
这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。
-
/srv:
service缩写,该目录存放一些服务启动之后需要提取的数据。
-
/sys:
这是linux2.6内核的一个很大的变化。该目录下安装了2.6内核中新出现的一个文件系统 sysfs 。(内核)
-
/tmp:
这个目录是用来存放一些临时文件的。
-
/dev:★
Device(设备)的缩写,类似windows的设备管理器,把所有的硬件用文件的形式存储。
-
/media:★
linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,linux会把识别的设备挂载到这个目录下。CentOS6 就在/media下,CentOS7换目录了/

-
/mnt:★
系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在/mnt/上,然后进入该目录就可以查看光驱里的内容了。
-
/opt:★
这是给主机额外安装软件所摆放的目录。
比如你安装JDK、Tomcat则就可以放到这个目录下。默认是空的。
-
/usr/local: ★
这是另一个给主机额外安装软件所摆放的目录.一般是通过编译源码方式安装的程序。
-
/var:★
这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。
VI和VIM编辑器
什么是VI和VIM编辑器
vi是Unix和类Unix操作系统中出现的通用的文本编辑器。vim是从vi发展出来的一个性能更强大的文本编辑器,可以主动的以字体颜色辨别语法的正确性,方便程序设计,vim和vi编辑器完全兼容。使用:vi xxx文件 或者vim xxx文件,简单来说,就是用来编辑文件的一个工具,类似于我们再Windows上的一些文本编辑工具,只不过,这里是命令行形式的,不是图形用户界面形式的.接下来我们就准备一个文件,使用VIM对文件进行修改
复制一个系统的配置文件到Root目录下,用以练习vim命令
[root@192 ~]# cp /etc/smartmontools/smartd.conf /root
[root@192 ~]# cd /root/

VIM的一般模式
默认模式,在这个模式中, 你可以使用『上下左右』按键来移动光标,你可以使用『删除字符』或『删除整行』来处理档案内容, 也可以使用『复制、贴上』来处理你的文件数据。
删除和复制操作

光标移动操作

VIM的编辑模式
在一般模式中可以进行删除、复制、粘贴等等的动作,但是却无法编辑文件内容的!要等到你按下『i, I, o, O, a, A, r, R』等任何一个字母之后才会进入编辑模式。注意了!通常在 Linux 中,按下这些按键时,在画面的左下方会出现『INSERT 或 REPLACE 』的字样,此时才可以进行编辑。而如果要回到一般模式时, 则必须要按下『Esc』这个按键即可退出编辑模式。

VIM的命令模式
可以进行存盘、退出、显示行号、搜索、批量替换等操作。要在一般模式下输入" / “或 " : " 或者”?"可进入命令模式,当命令执行前按esc或者命令执行完毕,自动回到一般模式

模式间的切换

如果非正常退出,如使用ctrl+z退出,再次编辑会提示交换文件". *.swp",文件存在,并给出相应的处理方式选项,如果不删除交换文件,每次编辑都会提示,这时可以删除交换文件,通过命令: rm -f *.swp 即可


虚拟机网络配置
查看网络信息
通过ifconfig命令查看目前的网络信息

通过ping命令测试和某个IP之间是否相通

在VMware中查看当前虚拟机的联网模式


模式1 仅主机模式特点
-
特点
- 虚拟机只能和宿主机之间实现通信
-
缺点
- 只有宿主机和虚拟机之前能通信,虚拟机联网需要做更多的配置

- 只有宿主机和虚拟机之前能通信,虚拟机联网需要做更多的配置
模式2 桥接模式特点
-
特点
-
宿主机和虚拟机,都是由局域网路由(DHCP)进行IP的分配
-
宿主机和本地的虚拟机之间可以进行通信
-
局域网内其他机器也可以与虚拟机进行通信
-
简单
-
-
缺点
- 虚拟机会占用大量的IP,局域网内如果机器太多,或者虚拟机太多,那么会出现大量的IP冲突


- 虚拟机会占用大量的IP,局域网内如果机器太多,或者虚拟机太多,那么会出现大量的IP冲突
-
模式3 NAT模式特点
-
特点
-
宿主机和其他机器的IP由局域网路由进行IP的分配,虚拟机的IP通过VMnet8虚拟交换机进行分配
-
宿主机和本地的虚拟机之间可以进行通信
-
不会占用宿主机所在路由IP,不会造成IP冲突
-
-
缺点
- 局域网内的机器无法与其他机器上的虚拟机进行通信


- 局域网内的机器无法与其他机器上的虚拟机进行通信
-
关于模式的选择
-
什么时候选择NAT模式?
-
在教室内,因为大量同学使用同一个路由,避免大量的IP冲突
-
我们在学习阶段,主要满足我们自己的计算机(宿主机)和本地虚拟机之间的通信以及虚拟机的联网
-
-
什么时候选择桥接模式?
- 自己独立的路由,想在局域网内实现虚拟机和其他计算机之间的通信
-
未来如何选择
-
未来这些问题会由运维人员来处理
-
未来我们使用的服务器不会在本地,使用远程服务器,自然也不需要我们来处理这种问题
-
修改网络配置信息
第一步: 打开VMware,打开虚拟网络编辑器

第二步: 选择NAT模式,对网段进行调整

第三步: 设置NAT模式的网关


第四步: 检查是否有漏选的选项

第五步: 修改虚拟机自己的网络模式选用模式为NAT


第六步: 修改虚拟机ens33网卡的网络配置信息
vim /etc/sysconfig/network-scripts/ifcfg-ens33
- ens33网络配置默认信息如下
TYPE="Ethernet" #网络类型(通常是Ethemet,工业以太网)
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="dhcp" #dhcp 为动态IP
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="e8582df9-96c3-4ddc-9fc6-19282dd5e019"
DEVICE="ens33"
ONBOOT="yes" #系统启动的时候网络接口是否有效(yes/no)
- 以下选项,有则修改,无则增加
BOOTPROTO="static" #静态网址 (已有)
ONBOOT="yes" #开机启用 (已有)
IPADDR=192.168.6.100 #IP地址 (增加)
GATEWAY=192.168.6.2 #网关(增加)
DNS1=192.168.6.2 #DNS域名解析(增加)
第七步: 重启网络服务
systemctl restart network
window: net start
- 如果报错,则reboot重启虚拟机
第八步: 如果此时宿主机和虚拟机之前ping不通,可以配置windows的 VMnet8虚拟网卡


DNS配置:
-
与网关一样,可以上网
-
8.8.8.8 测试可能无法上网
-
114.114.114.114 测试可以上网
第九步: 如果网络服务还是不能启动,可能域NetWorkManager服务冲突,关闭该服务即可
查看服务systemctl status NetworkManager.service
停止服务 systemctl stop NetworkManager
查看自启动 systemctl is-enabled NetworkManager
关闭自启动systemctl disable NetworkManager
查看和修改主机名
查看主机名

hostname
修改主机名


vim /etc/hostname
修改主机名和IP地址的映射关系

vim /etc/hosts
- 保存退出后重启计算机
修改宿主机的主机名和IP地址映射关系
-
windows上如果想通过centos100识别192.168.6.100 ,也需要秀修改hosts文件

-
添加一行 192.168.6.100 centos100
服务管理类命令
临时开关服务命令
-
centos6
-
service 服务名 start 开启服务
-
service 服务名 stop 关闭服务
-
service 服务名 restart 重启服务
-
service 服务名 status 查看服务状态
-
-
centos7
-
systemctl start 服务名 开启服务
-
systemctl stop 服务名 关闭服务
-
systemctl restart 服务名 重启服务
-
systemctl status 服务名 查看服务
-
systemctl --type service 查看正在运行的服务
-
实操 .service后缀可以省略不写
- 查看网络服务状态
systemctl status network.service
关闭服务
systemctl stop network.service
启动服务
systemctl start network.service
重启服务
systemctl restart network.service
查看所有服务
systemctl --type service
永久开关服务命令
-
centos6
-
chkconfig 查看所有服务自启配置
-
chkconfig 服务名 off 关闭服务自启
-
chkconfig 服务名 on 开启服务自启
-
chkconfig 服务名 --list 查看服务开机启动状态
-
-
centos7
- systemctl enable 服务名 打开自启
- systemctl disable 服务名 关闭自启
- systemctl is-enabled 服务名 查看服务是否自启
-
systemctl list-unit-files 查看所有服务自启配置
实操
关闭防火墙自动启动
systemctl status firewalld 查看防火墙
systemctl disable firewalld 关闭防火墙自启
开启防火墙自启
systemctl enable firewalld
查看防火墙是否自启
systemctl is-enabled firewalld
Linux系统有7种运行级别(runlevel):常用的是级别3和5(CentOS7中只有两个级别了:3和5)
运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动
运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登陆
运行级别2:多用户状态(没有NFS),不支持网络
运行级别3:完全的多用户状态(有NFS),登陆后进入控制台命令行模式
运行级别4:系统未使用,保留
运行级别5:X11控制台,登陆后进入图形GUI模式
运行级别6:系统正常关闭并重启,默认运行级别不能设为6,否则不能正常启动

虚拟机管理操作
VMware为虚拟机拍摄快照
通过快照可快速保存虚拟机当前的状态,后续可以使用快照,将虚拟机还原到某个快照的状态. 如某个软件安装失败,可以通过快照快速还原回指定的某个状态
-
选择指定的虚拟机拍摄快照

-
输入快照名称,添加快照描述

-
通过快照恢复虚拟机状态

-
管理和废弃快照


VMware为虚拟机执行克隆
-
关闭要克隆的虚拟机
-
选中虚拟机,右击>管理>克隆

-
可以选择虚拟当前状态和某个快照状态进行克隆

-
创建完整克隆

-
注意修改克隆之后的虚拟机的名称和存放路径

-
克隆完成,关闭即可

-
修改克隆出来的虚拟机的主机名和IP配置,然后重启
相关文章:
Linux的基本操作及虚拟机设置
文章目录 Linux的目录结构Linux中的常见目录 VI和VIM编辑器什么是VI和VIM编辑器VIM的一般模式VIM的编辑模式VIM的命令模式模式间的切换 虚拟机网络配置查看网络信息修改网络配置信息查看和修改主机名服务管理类命令 虚拟机管理操作VMware为虚拟机拍摄快照VMware为虚拟机执行克隆…...
oracle 用户手册
Oracle用户手册 一、Oracle数据库概述 定义与用途 Oracle数据库是一款功能强大的关系型数据库管理系统(RDBMS)。它用于存储和管理大量的结构化数据,广泛应用于企业级应用、金融系统、电商平台等各种需要高效数据处理和存储的场景。例如,银行使用Oracle数据库来存储客户账户…...
Flutter-Web打包后上线白屏
问题描述 Flutter上线后进行测试发现界面白屏,打开开发者模式查看网络发现加载main.js文件404 问题原因 我上线的地址是https://xxx:8091/homedots,但是我打包后的index文件中的baseUrl是"/",将地址改成”/homedots/",注意homedots后面…...
解决linux访问huggingface的问题(操作记录)
目录 一、clash软件(linux)的下载 二、clash软件(linux)的使用 三、linux命令行访问huggingface 1、问题分析 2、设置命令行代理 四、补充(windows的linux虚拟机) 五、参考链接 一、clash软件&#…...
Android Studio 右侧Gradle窗口只有test的task问题解决
目录 运行环境问题现象解决方案1、打开Settings设置界面2、设置选项3、重启Android Studio4、重新Sync工程 运行环境 Android Studio Giraffe | 2022.3.1 Patch 3 Android SDK 33 Gradle 8.0.1 JDK 17 问题现象 Android Studio右侧Gradle窗口下只有test的task,其他…...
Spring AOP 的实现和切点表达式的介绍
1. 快速入手 AOP:就是面相切面编程,切面指的就是某一类特定的问题,也可以理解为面相特定方法编程,例如之前使用的拦截器,就是 AOP 思想的一种应用,统一数据返回格式和统一异常处理也是 AOP 思想的实现方式…...
【赛博保安】安全日记之常用术语(一)
"企业的信息安全治理水平,直接取决于安全团队人员的技术专业度,而非运营经验值。所谓的技术,并非指渗透和挖洞的能力,而是指软件开发、IT 架构、网络拓扑相关的知识和经验。 站在乙方的角度来看,技术薄弱的安全人…...
C++ 中的 string 类:全面解析与应用实践(上)
🤖🌟 欢迎降临张有志的未来科技实验室🤖🌟 专栏:C 👨💻👩💻 先赞后看,已成习惯👨💻👩💻…...
量化交易系统开发-实时行情自动化交易-8.7.文华平台
19年创业做过一年的量化交易但没有成功,作为交易系统的开发人员积累了一些经验,最近想重新研究交易系统,一边整理一边写出来一些思考供大家参考,也希望跟做量化的朋友有更多的交流和合作。 接下来会对于文华平台介绍。 文华财经…...
美畅物联丨如何通过 FFmpeg 解码视频
FFmpeg是一款功能强大、在多媒体处理领域广泛应用的开源工具。它可以处理多种音频和视频格式,包含编码、解码、转码、流媒体处理等众多功能。前两天,我们在《美畅物联丨如何通过FFmpeg排查视频问题》一文中介绍了借助FFmpeg程序来辅助判断视频播放异常的…...
机器学习任务功略
loss如果大,训练资料没有学好,此时有两个可能: 1.model bias太过简单(找不到loss低的function)。 解决办法:增加输入的feacture,设一个更大的model,也可以用deep learning增加弹性…...
Web Worker 和 WebSocket的区别
Web Worker(消息传递机制) 定义:是为了在浏览器中提供多线程支持,允许 JavaScript 在后台线程运行,而不阻塞主线程。它非常适合执行耗时的计算任务或处理大量数据,避免主线程(通常是 UI 线程&a…...
JMeter实时性能压测可视化系统整合
一、相关工具简介: JMeter、Grafana 和 InfluxDB 结合实时地收集、分析和展示性能测试数据,进行更好地理解系统的性能表现,及时发现潜在问题并进行优化。 1,JMeter 实时生成性能数据,并将其发送到 InfluxDB 进行存储。2,InfluxDB 存储的数据。3,通过Grafana的仪表板,用…...
无限加载和懒加载及路由滚动及路由滚动不生效
这里写目录标题 列表无限加载懒加载定制路由滚动使用scrollBehavior不起效不管用的原因使用scrollTo来实现路由滚动elMain && elMain.scrollTo(...) 的作用是: 无限加载和懒加载的区别 列表无限加载 无限加载功能在现代网页和移动应用中广泛应用࿰…...
CSS底层基础:小白速来
1. CSS简介 CSS (Cascading Style Sheets) 是一种用来描述HTML或XML文档样式的语言。它使得开发者能够控制网页的布局和外观,包括字体、颜色、间距等。CSS通过选择器来指定要应用样式的元素,并定义这些元素的具体样式属性。 基本结构示例: …...
【MySQL 进阶之路】索引概述
第06章_索引 1.什么是索引 索引是存储引擎用于快速找到数据记录的一种数据结构,就好比一本教科书的目录部分,通过目录中找到对应文章的页码,便可快速定位到需要的文章。MySQL中也是一样的道理,进行数据查找时,首先查…...
【C++boost::asio网络编程】有关异步读写api的笔记
异步读写api 异步写操作async_write_someasync_send 异步读操作async_read_someasync_receive 定义一个Session类,主要是为了服务端专门为客户端服务创建的管理类 class Session { public:Session(std::shared_ptr<asio::ip::tcp::socket> socket);void Conn…...
Elasticsearch 的存储与查询
Elasticsearch 的存储与查询 在搜索系统领域,数据的存储与查询是两个最基础且至关重要的环节。Elasticsearch(ES) 在这两方面进行了深度优化,使其在关系型数据库或非关系型数据库中脱颖而出,成为搜索系统的首选。 映射 (Mapping) 映射 (Ma…...
008静态路由-特定主机路由
按照如上配置,用192.168.0.1 电脑ping 192.168.1.1 发现能够ping通 用192.168.0.1 电脑ping 192.168.2.1 发现不能ping通 这是因为192.168.0.1 和 192.168.1.1 使用的是同一个路由器R1。 192.168.0.1 和 192.168.2.1 通信需要先经过R1,再经过R2 …...
SystemUI 下拉框 Build 版本信息去掉
需求及场景 去掉SystemUI 下拉框 Build 版本信息 如下图所示:去掉 12 (SP1A.201812.016) 了解 去掉之前我们先了解它是个什么东西:其实就是一个Build RTM 信息显示 Android_12_build_SP1A.210812.016 修改文件 /frameworks/base/packages/Syste…...
使用docker在3台服务器上搭建基于redis 6.x的一主两从三台均是哨兵模式
一、环境及版本说明 如果服务器已经安装了docker,则忽略此步骤,如果没有安装,则可以按照一下方式安装: 1. 在线安装(有互联网环境): 请看我这篇文章 传送阵>> 点我查看 2. 离线安装(内网环境):请看我这篇文章 传送阵>> 点我查看 说明:假设每台服务器已…...
Python爬虫实战:研究MechanicalSoup库相关技术
一、MechanicalSoup 库概述 1.1 库简介 MechanicalSoup 是一个 Python 库,专为自动化交互网站而设计。它结合了 requests 的 HTTP 请求能力和 BeautifulSoup 的 HTML 解析能力,提供了直观的 API,让我们可以像人类用户一样浏览网页、填写表单和提交请求。 1.2 主要功能特点…...
变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析
一、变量声明设计:let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性,这种设计体现了语言的核心哲学。以下是深度解析: 1.1 设计理念剖析 安全优先原则:默认不可变强制开发者明确声明意图 let x 5; …...
19c补丁后oracle属主变化,导致不能识别磁盘组
补丁后服务器重启,数据库再次无法启动 ORA01017: invalid username/password; logon denied Oracle 19c 在打上 19.23 或以上补丁版本后,存在与用户组权限相关的问题。具体表现为,Oracle 实例的运行用户(oracle)和集…...
业务系统对接大模型的基础方案:架构设计与关键步骤
业务系统对接大模型:架构设计与关键步骤 在当今数字化转型的浪潮中,大语言模型(LLM)已成为企业提升业务效率和创新能力的关键技术之一。将大模型集成到业务系统中,不仅可以优化用户体验,还能为业务决策提供…...
idea大量爆红问题解决
问题描述 在学习和工作中,idea是程序员不可缺少的一个工具,但是突然在有些时候就会出现大量爆红的问题,发现无法跳转,无论是关机重启或者是替换root都无法解决 就是如上所展示的问题,但是程序依然可以启动。 问题解决…...
定时器任务——若依源码分析
分析util包下面的工具类schedule utils: ScheduleUtils 是若依中用于与 Quartz 框架交互的工具类,封装了定时任务的 创建、更新、暂停、删除等核心逻辑。 createScheduleJob createScheduleJob 用于将任务注册到 Quartz,先构建任务的 JobD…...
c++ 面试题(1)-----深度优先搜索(DFS)实现
操作系统:ubuntu22.04 IDE:Visual Studio Code 编程语言:C11 题目描述 地上有一个 m 行 n 列的方格,从坐标 [0,0] 起始。一个机器人可以从某一格移动到上下左右四个格子,但不能进入行坐标和列坐标的数位之和大于 k 的格子。 例…...
(二)原型模式
原型的功能是将一个已经存在的对象作为源目标,其余对象都是通过这个源目标创建。发挥复制的作用就是原型模式的核心思想。 一、源型模式的定义 原型模式是指第二次创建对象可以通过复制已经存在的原型对象来实现,忽略对象创建过程中的其它细节。 📌 核心特点: 避免重复初…...
微服务商城-商品微服务
数据表 CREATE TABLE product (id bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 商品id,cateid smallint(6) UNSIGNED NOT NULL DEFAULT 0 COMMENT 类别Id,name varchar(100) NOT NULL DEFAULT COMMENT 商品名称,subtitle varchar(200) NOT NULL DEFAULT COMMENT 商…...
