马哥sre云计算运维第一次作业
系统安装过程总结:
前言:
- 此次实验全部都在windows11上的vmware虚拟机上。
- 需要的资源,vmware17安装包, ubuntu24.04桌面版、服务器版 osi 镜像以及Rocky10.0 osi镜像。
- 镜像源准备。
- ubuntu os镜像下载:
- ubuntu 桌面版
- https://mirrors.qlu.edu.cn/ubuntu-releases/24.04.2/
- ubuntu server 版
- https://mirrors.qlu.edu.cn/ubuntu-releases/24.04.2/
- ubuntu 桌面版
- Rocky镜像源下载
- https://dl.rockylinux.org/vault/rocky/10.0/isos/x86_64/
- ubuntu os镜像下载:
- Vmware 官网。
- https://www.vmware.com/products/desktop-hypervisor/workstation-and-fusion
安装过程
-
vmware 17安装。
-
双击点击安装包一直下一步,直到需要选择安装目录。
-
选择要安装的目标目录,继续下一步,直到完成。
-
完成后输入许可证(自行网上查找)
-
安装完成自动会生成虚拟网卡:如下。
-

-
如果下面配置好网络后无法连接外网,可以查看网卡以及下面的服务,查看是否启用了。没有启动用的话手动启用就行。
-

-
-
编辑nat虚拟网卡,让虚拟机能使用外网。
-
配置nat的网络地址和网关,更好的管理网络。这里使用10.0.0.0/24的子网,网关配置为10.0.0.2这里面涉及的是网络相关的只是,先按照这么配置。之后的ubuntu两个版本以及Rocky配置为这个子网下的一个ip,方便通信。
-
-
-
ubuntu 桌面版 安装。
-
虚拟机的布置
-
点击创建新的虚拟机
-
选择典型安装
-
选择安装镜像,这里选择已经下载好的ubuntu 桌面版
-
配置账号和密码:
-
配置虚拟机安装路径,最好是有一个专门的文件夹安装,以便管理和安装。
-
配置分配给虚拟机的磁盘大小,看个人的电脑配置来进行分配,可以自主选择将虚拟机磁盘拆分或者不拆分。不拆分文件大一些,拆分文件多一些。
1.
-
配置虚拟机的内存和处理器,也是看个人配置,我选择2核4G。
-
将虚拟机的网络连接先断开,让他使用镜像安装,不然ubuntu桌面版会先使用网络安装,速度变慢。
-
-
ubuntu内部安装
-
打开虚拟机后选择第一个进行安装
-
稍微等待一会后会进行图形配置界面,选择简体中文。当然看个人喜欢,也可以选择其他语言。
-
之后一直下一步,遇到需要网络也下一步,暂时不需要网络。
-
安装ubuntu
-
交互式安装,需要配置一些东西
-
选择默认集合。
-
直接下一步
-
选择擦除,从头开始
-
配置相关的参数。账号密码和这台主机的主机名称
-
选择亚洲上海作为时区
-
在安装之前,配置一下这台电脑的网络,给他分配的时候10.0.0.13/24,网关和DNS配置为VMware我们配置的nat网关。
-
-
选择安装,后等待它安装好重启就行。
-
-
-
ubuntu server 安装。
- 虚拟机的布置 和 桌面版基本一致,除了不需要将在开机前断开网络。
- 内部安装
-
点击第一个进行安装,等待它自行加载。
-
选择语言,没有简体中文吗,所以选择英文。enter 选择
-
选择done。如果不小心移动到上面,使用table选择回来。
-
选择最小化安装,table移动到目标位置,空格选择。之后table移动回来。
-
配置ip地址
-
-
不用代理,直接done
-
等待搜索的源,然后done。
-
默认即可,done
-
继续done
-
continue
-
配置用户名和主机名
-
不升级,continue
-
选择安装SSH服务,因为之后要远程连接它。
-
选择安装服务,我不安装。
-
等待安装完成重启即可
-
-
按Enter即可。
-
登录成功
-
-
-
Rocky 10.0安装
- 虚拟机配置和上面基本类似,也是直接连接网络的。
- 内部安装
-
选择第一个
-
选择语言
-
选择安装目标,直接完成。
-
-
配置IP和主机名
-
-
配置时区
-
配置root用户,点击两下完成
-
-
创建一个正常用户,同样点击两次完成
-
开始安装
-
等待安装完成后重启
-
打开终端
-
-
远程连接
- ubuntu 默认情况下,没有安装ssh服务端,使用下面命令安装。
- sudo apt install openssh-server
- ubuntu 默认情况下,安装的软件,会自动启动服务。
- root用户远程连接,默认是拒绝的。
- 解决方法:让ssh支持root用户登录。
- 修改/etc/ssh/sshd_config 的 PermitRootLogin yes
- PermitRootLogin:这是一个关键字,用于指定是否允许 root 用户通过 SSH 登录服务器。
- prohibit-password:这是 PermitRootLogin 指令的一个参数值,表示禁止 root 用户使用密码进行
SSH 登录。即使 root 用户有密码,使用这个设置后,也不能通过密码登录。不过,这并不影响其他形式的登
录认证,比如使用 SSH 密钥对
- Rocky 点击文件方式修改
-

-

-
输入自己的密码验证
-

-

- PasswordAuthentication yes 这个也修改
-
修改完成
-
- 解决方法:让ssh支持root用户登录。
- mobaxterm 连接
-
- ubuntu 默认情况下,没有安装ssh服务端,使用下面命令安装。
文件系统基本原理和常用命令。
文件系统基本原理
-
在linux系统下,一切都是文件。
-
文件系统:
- 组织文件数据的一种风格方式(分类方式)
- 不同的风格就代表不同的文件系统
- ext4, xfs…
-
文件系统目录结构:
-

-
解释:
目录 功能 /(根目录) linux文件系统的起点,所有文件和目录的源头 /bin(常用命令目录) 存储系统所有用户可用的命令文件的目录 /boot(引导文件目录) 存储启动linux系统需要的文件 /dev(设备文件目录) 存储系统所有的设备(磁盘,键盘等),用文件的方式存放 /etc(配置文件目录) 存储主要的配置文件,比如用户的密码文件等 /home(普通用户家目录) 存储普通用户的个人数据 /root(root用户的家目录) 存储root用户的个人数据 /run(运行目录) 存储系统运行时的动态数据(进程PID、状态信息等),重启即失 /sbin(系统命令目录) 存储只有root才能使用的系统管理命令 /tmp(临时文件目录) 存储由用户或系统产生的临时文件,重启清空 /usr(用户软件资源目录) 存储用户安装的应用程序和文件的目录 /var(动态数据目录) 存储系统运行时动态数据,如系统日志等 /lib(库文件目录) 系统的动态连接库目录 /mnt(挂载目录) 用于临时挂在外部设备目录
-
-
如何找文件–按照什么路径找
- 路径的入口: / 根路径
- 路径的层级关系:/ 斜杠来标识
- 绝对路径:/usr/local/a.txt
- 相对路径:
- ./ 当前目录
- …/ 上一级目录
- ~ 家目录
- 如果是root, 那它的家目录就是 /root
- 如果是liming, 那它的家目录就是 /home/liming
- - 当前所在的目录
-
文件的颜色
- 普通文件 txt 白色 -
- 目录文件 /boot 蓝色 d
- 链接文件 浅蓝色 l
- 设备文件 /dev 黄色 b、c
- 执行文件 ls :其实也就是普通文件能够执行
- socket文件 紫色 s
-
如何解决windows系统的文件和linux系统文件的不同。
- 问题:不同系统对于文件里面的特殊符号处理不一样。
- 处理方式:转换格式
- 编写文件的时候,使用linux编码风格
- 格式转换命令
- dos2unix: 需要安装这个程序。
-
文件符号
- 通配符: 筛选文件的时候用的。
- 通配符: 筛选文件的时候用的。
-
数据的存储方式
-

-
找文件:
-

-

-
inode 列表 和 datablock 列表两块。
- 报错现象: No space left on device
- 第一印象理解:没有存储空间了(datablock用满了)
- 原因1:当前系统大量的小文件占用了inode, inode没有空闲。一旦分配给一个inode的空间只放了很少的一部门,系统也认为这个空间被占满了。每一个inode对应一个数据空间,有主就不能继续放了。
- 解决方法:
- 情况1:立刻生效
- 清理无效的小文件
- 情况2:没有生效,看看文件被哪个程序使用,重启该程序即可。
- 有问题:有的文件正在被使用。
- 内存空间里面的数据正在被使用:
- 关闭使用文件的程序
- 关闭系统
- 有问题:有的文件正在被使用。
- 情况1:立刻生效
- 解决方法:
- 原因2:当前系统正常存储下,存储容量空间被数据占满。
- 解决方法:
- 清除无效文件
- 加磁盘。
- 解决方法:
- 怎么看存储空间使用率: df -h
- 怎么看inode使用的百分比: df -i
- 报错现象: No space left on device
-
-
链接文件
-
ln -s 源文件 目标文件, 不加s是硬链接。
-
快速定位 xx 文件
-
类型:
- 软连接 占比99.99%
-

-
支持文件和目录
-
stat查看软连接目录后面不要加上/,不然查到的是软连接指向的目录,而不是软连接本身。
-
- 硬链接 占比0.01%
-
通过文件系统的inode(索引节点)连接来产生新文件名的方式,而不是创建新文件,这意味着多个文件名可以只想同一个inode号,因此他们共享相同的文件数据。
-
特点:
- 硬链接不会增加inode的数量,也不会消耗额外的磁盘空间(除了连接本身所占用的少量空间)
- 删除任何一个硬链接文件名,只要还有其他的硬链接存在,文件数据就不会被删除。
- 硬链接有一些限制,如不能跨文件系统创建,也不能直接链接到目录。

-
- 如果全部删除的话,也就是没有inode指向了,linux系统会在一定时间后将内容给清空,将磁盘释放。
- 但是它如果删除源文件,硬链接没有影响,依旧可以指向数据块。
-
- 软连接 占比99.99%
-
如果可以,使用绝对路径,有时候相对路径会出问题。
文件系统常用命令
- 关于路径相关的命令。
| 命令 | 作用 | 参数以及作用 | 示例 |
|---|---|---|---|
| ls | 查看当前目录下有什么文件 | -a:查看隐藏文件,-l:显示更全的信息, ll等价于 ls-al | ls a.txt |
| pwd | 查看当前在什么目录 | pwd | |
| cd | 切换目录 | 具体如何切换参考上面找文件 | cd /usr/local |
| tree | 用树机构的方式查看目录 | -L 数字:只显示层级的目录结构 | tree . |
- 关于创建文件和目录的命令
| 命令 | 作用 | 参数以及作用 | 示例 |
|---|---|---|---|
| mkdir | 创建目录 | -p:递归创建目录 | mkdir -p /a/b/c |
| touch | 创建文件 | touch hello.txt |
- 文件或目录的复制
| 命令 | 作用 | 参数以及作用 | 示例 |
|---|---|---|---|
| cp | 复制文件 | -r:递归复制文件 | cp -r /usr ~ |
- 文件或目录的移动和剪切
| 命令 | 作用 | 参数以及作用 | 示例 |
|---|---|---|---|
| mv | 移动或剪切文件 | mv /usr/a.txt /bin/: 如果移动到同一个目录下,那就是改名,如果是其他的文件就是剪切 |
- 文件或目录的删除
| 命令 | 作用 | 参数以及作用 | 示例 |
|---|---|---|---|
| rm | 删除文件或目录 | -r: 删除目录, -f:删除不询问 | rm -rf a |
- 查看文件
| 命令 | 作用 | 参数以及作用 | 示例 |
|---|---|---|---|
| cat | 查看文件 | -A:查看隐藏的内容, -n: 查看的时候显示行号 | cat -An a.txt |
| more | 查看文件 | 按q推出,enter下一行,空格下一页 | more a.txt |
| less | 查看文件 | 按q推出,enter下一行,空格下一页,-N显示行号 | more-N a.txt |
| head | 查看文件开头 | -n N:显示前 N 行,-c N:显示前 N 个字节,-q:不显示文件名(多文件时) | head -n 5 a.txt |
| tail | 从文件末尾开始查看 | -n N:显示前 N 行,-c N:显示前 N 个字节,-f: 实时跟踪文件新增内容 | tail -f /var/log/syslog |
- 文件对比
| 命令 | 作用 | 参数以及作用 | 示例 |
|---|---|---|---|
| diff | 逐行比较两个文件的差异 | -c:上下文格式显示(带上下行),-u: 统一格式显示(最常用),-q:只报告文件是否不同 | diff -q file1 file2 |
- 文件类型查看
| 命令 | 作用 | 参数以及作用 | 示例 |
|---|---|---|---|
| file | 识别文件类型 | -b:不显示文件名,只显示类型 | file -b file.txt |
- 查看文件状态
| 命令 | 作用 | 参数以及作用 | 示例 |
|---|---|---|---|
| stat | 查看文件状态 | -f:显示文件系统信息 | stat a.txt |
常用命令:
-
linux命令的标准格式:命令 子命令 -选项 参数
-
系统信息查看
命令 作用 参数以及作用 示例 lscpu 查看CPU架构和详细信息 -a:显示所有CPU信息 lscpu uname 显示系统内核信息 -a:显示所有信息-r:显示内核版本-s:显示内核名称-n:显示主机名,-m:显示硬件架构 uname -a ps 查看当前进程状态 -e:显示所有进程,-aux:显示所有用户进程 ps aux pstree 以树状图显示进程关系 -p:显示进程PID,-h:高亮当前进程 pstree -p env 显示或设置环境变量 env free 显示内存使用情况 -h:人类可读格式,-m:以MB为单位 free -h timedatectl 查看和修改系统时间/日期 status:显示当前状态,list-timezones:列出时区,set-timezone:设置时区,set-time:设置时间 timedatectl status date 显示或设置系统日期时间 +格式:自定义输出格式,-s:设置时间,-d:显示指定时间 date “+%Y-%m-%d %H:%M:%S” -
用户 命令
命令 作用 参数以及作用 示例 id 显示用户和组的ID信息 -u:只显示用户 UID id whoami 查看当前登录的用户名称 whoami,who am i su 切换用户身份 -切换环境变量 su -(切换到 root 并加载环境),su - liming exit 退出当前 shell 或登录会话 exit sudo 以其他用户(默认 root)身份执行命令 sudo apt install passwd 修改用户密码 sudo passwd wangbo -
安装命令
命令 作用 参数以及作用 示例 apt Debian/Ubuntu 系列的包管理器 list:列出包,install:安装软件包,update:升级所有包 apt install nginx yum/dnf /CentOS/RHEL 的包管理器 list:列出包,install:安装软件包,update:升级所有包 dnf install nginx -
查看命令帮助命令
命令 作用 参数以及作用 示例 man 查看系统手册页 man ls info 查看 GNU 项目的详细文档 info ls help Bash 内置命令的帮助 help cd cmd -h/–help 命令自带的简短帮助 ls -h -
关机重启命令
命令 作用 参数以及作用 示例 shutdown 关闭或重启系统(安全方式) -h:关机,-r:重启(reboot) shutdown -h now reboot 重启系统(直接方式) -f:强制重启 reboot -
别名命令
命令 作用 参数以及作用 示例 alias 创建或查看命令别名 alias alias 删除已创建的别名 -a:删除所有别名 unalias ll help Bash 内置命令的帮助 help cd cmd -h/–help 命令自带的简短帮助 ls -h -
关机重启命令
命令 作用 参数以及作用 示例 shutdown 关闭或重启系统(安全方式) -h:关机,-r:重启(reboot) shutdown -h now reboot 重启系统(直接方式) -f:强制重启 reboot -
别名命令
命令 作用 参数以及作用 示例 alias 创建或查看命令别名 alias alias 删除已创建的别名 -a:删除所有别名 unalias ll
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐





























































所有评论(0)