【第二篇】Linux 基础操作与 SSH 远程连接实战

一、查看系统信息

1.uname -a

执行 uname -a 查看系统内核信息,输出显示当前运行的是 Linux 内核 6.8.0-31-generic,架构为 x86_64,系统为 GNU/Linux,确认虚拟机环境正常。

2.cat /etc/os-release

执行 cat /etc/os-release 查看系统版本详细信息,确认当前系统为 Ubuntu 24.04 LTS(代号 Noble Numbat),版本信息完整,系统安装正确。

89c5f8ddccb1dc2dfbf169b1e0ca84c4

3.两者区别

  uname -a cat /etc/os-release
显示内容 内核层信息 发行版信息
核心数据 内核版本、架构、编译时间 系统名称、版本号、代号
信息来源 Linux 内核本身 发行版厂商写的配置文件

 

 

 

 

4.实际使用场景

uname -a 的场景:

  • 安装驱动前确认内核版本(驱动必须匹配内核)
  • 排查内核级别的 bug
  • 确认系统是 32位还是 64位(x86_64)
  • 编译软件时需要知道内核版本

cat /etc/os-release 的场景:

  • 写脚本时判断是 Ubuntu 还是 CentOS,执行不同命令
  • 确认系统版本,查找对应文档
  • 运维交接时快速了解服务器环境
  • 安装软件时确认系统代号(比如 noble、focal)

5.小结

uname -a 查看的是 Linux 内核层信息,适合排查驱动兼容性、内核版本问题;cat /etc/os-release 查看的是发行版信息,适合确认系统版本、编写跨发行版脚本时的环境判断。两个命令互补,初次登录一台新服务器时建议两条都执行,快速掌握系统全貌。

 

二.查看网络信息

1.ip addr show

查看本机网络接口配置,输出显示网卡 ens33 状态为 UP,已通过 DHCP 获取 IP 地址 192.168.112.130/24。适用于确认本机网络配置、排查网卡状态

2.ping -c 4 baidu.com

向百度发送 4 个 ICMP 探测包,结果显示 4 包全部收到、0% 丢包,平均延迟约 132ms,确认虚拟机网络连通外网正常。

 

ddbad807acf2db52021171b9b56bb771

 二者区别:

ip addr show 是看自己的网络配置

2: ens33: ... state UP ← 网卡名 ens33,状态 UP(正常)inet 192.168.112.130/24 ← IPv4 地址,/24 是子网掩码

ping 是测和外部的网络连通性

4 packets transmitted, 4 received, 0% packet loss ← 4包全收,网络正常
rtt min/avg/max = 59/132/210 ms ← 延迟约 60-210ms

 

3.实际使用场景

用 ip addr show的场景:

  • 刚登录服务器,第一件事查自己 IP
  • 网络配置完后确认是否生效
  • 排查网卡是否启动(state UP / DOWN)
  • 配置防火墙规则前确认网卡名称
  • 多网卡服务器确认走哪个网口

用 ping 的场景:

  • 确认虚拟机能访问外网
  • 排查网络故障(能 ping 通网关但 ping 不通外网 = DNS 问题)
  • 测试两台服务器之间是否互通
  • 粗略判断网络延迟和丢包情况

4.小结

ip addr show 查看本机网络接口配置,输出显示网卡 ens33 状态为 UP,已通过 DHCP 获取 IP 地址 192.168.112.130/24。适用于确认本机网络配置、排查网卡状态。

ping -c 4 baidu.com 向百度发送 4 个 ICMP 探测包,结果显示 4 包全部收到、0% 丢包,平均延迟约 132ms,确认虚拟机网络连通外网正常。

排查网络故障的标准顺序:ip addr show 确认本机配置 → ping 网关确认局域网 → ping 外网 IP 确认路由 → ping 域名确认 DNS,逐层排查定位问题。

 

 

三.更新系统和换镜像源

1.sudo sed -i 's|http://cn.archive.ubuntu.com|https://mirrors.aliyun.com|g' /etc/apt/sources.list.d/ubuntu.sources # 换源

2.sudo apt update # 刷新包列表

3.sudo apt upgrade -y # 安装更新

c188a91b496fea870c7b4231b4b4effd

 

565620573c09534b7aebcfaab7b70ff2

看到底部有报错,是下载 linux-firmware 时网络中断了,提示:

Error reading from server - read (5: Input/output error)
Unable to fetch some archives, maybe run apt-get update or try with --fix-missing

4.执行这个命令sudo apt upgrade -y --fix-missing这个参数会跳过下载失败的包,把能装的都装上

57e761bae4bcb3333cc5c5ec05bfc5ae

 5.看到最后出现 ubuntu@ubuntu-service:~$ 提示符,说明升级成功了!

先执行sudo reboot 进行重启,然后在连接 ssh ubuntu@192.168.112.130

四.安装常用工具

sudo apt install -y curl wget git net-tools

1189ed15ca2107969f38e956a093a8c7

 

curl

从命令行发送 HTTP 请求,或下载文件

# 下载文件
curl -O https://example.com/file.tar.gz

# 测试接口是否正常(后面学 Edgebox API 会大量用到)
curl http://192.168.1.100/api/status

# 查看自己的公网 IP
curl ifconfig.me

和 Edgebox 的关系:Edgebox 提供 REST API 接口,调试时全靠 curl 发请求验证。

wget

专门用来下载文件,比 curl 更简单直接

# 下载文件
wget https://example.com/file.zip

# 断点续传(网络中断后继续下载)
wget -c https://example.com/bigfile.iso

curl 和 wget 都能下载文件,区别是 curl 更强大(能发 POST、带 header),wget 更简单,适合单纯下载。

git

代码版本管理工具

# 克隆项目代码
git clone https://github.com/some/project.git

# 查看版本历史
git log

后续拉取 Edgebox 相关项目代码、部署示例程序都要用到。

net-tools

网络诊断工具包,包含几个经典命令

# 查看网络连接和端口(比 ip addr 更直观)
ifconfig

# 查看哪些端口在监听
netstat -tlnp

# 查看路由表
route -n

ifconfignetstat 是运维最常用的两个命令。

e5aaeed03263ef0bb4fa96975f126b37

五.基础 Linux 命令练习

1.pwd

/ ← 根目录,最顶层
├── home/ ← 所有用户的家目录
│ └── ubuntu/ ← 你现在在这里 ✅
├── etc/ ← 系统配置文件
├── var/ ← 日志、数据文件
└── usr/ ← 系统软件

3bdef4fd1f527f61c2b5c11b439bbaf6

 pwd 显示当前所在目录为 /home/ubuntu,即当前用户的家目录。Linux 用 / 作路径分隔符(Windows 用 \),所有路径从根目录 / 开始。

2.ls -la

ls -la 详解

ls = list(列出文件),-l = 详细格式,-a = 显示隐藏文件

拆解一行来看:

-rw-r--r-- 1 ubuntu ubuntu 559 Jun 23 08:21 file.tar.gz

字段 含义
-rw-r--r-- 权限:文件类型+所有者权限+组权限+其他人权限
1 硬链接数
ubuntu ubuntu 所有者 + 所属组
559 文件大小(字节)
Jun 23 08:21 最后修改时间
file.tar.gz 文件名

 

 

 

 

 

 

 

 

- rw- r-- r--
│ │ │ └── 其他人:只读
│ │ └────── 同组用户:只读
│ └────────── 所有者:可读可写
└──────────── 文件类型:- 是文件,d 是目录

ls -la 列出当前目录所有文件(含隐藏文件)。-l 显示详细信息包括权限、所有者、大小、时间;-a 显示以 . 开头的隐藏文件。权限字段如 -rw-r--r-- 分别代表文件类型、所有者权限、组权限、其他用户权限

3.mkdir test-dir # 创建单个目录

image

mkdir test-dir创建名为 test-dir 的目录,命令执行成功无输出(Linux 下:无输出即成功)。左边文件管理器可观察目录看到已创建。

4.cd test-dir

cd 详细解

cd test-dir # 进入 test-dir 目录
cd .. # 返回上一级
cd ~ # 回到家目录(/home/ubuntu)
cd / # 去根目录
cd /etc # 直接跳到 /etc 目录(绝对路径)

image

 

ubuntu@ubuntu-service:~$ ← 在家目录
ubuntu@ubuntu-service:~/test-dir$ ← 在 test-dir 里

cd test-dir进入刚创建的目录,终端提示符相当于等于~/test-dir,用pwd确认当前位置为/home/ubuntu/test-dircd是Linux最常用的命令之一,cd ..返回上级,cd ~回家目录。

5.touch hello.txt

touch hello.txt执行成功 ✅

左边文件管理器实时显示hello.txt已经出现,大小0字节,说明是空文件。

touch有两个用途:

① 创建空文件(最常用)

touch hello.txt        # 创建空文件
touch a.txt b.txt c.txt  # 一次创建多个

② 更新文件时间

touch 已存在的文件.txt   # 不改内容,只更新"最后修改时间"

image

 touch hello.txt创建一个空文件,左侧文件管理器可看到文件实时出现,大小为0字节。touch的本意是更新文件计时器,文件不存在时自动创建,是Linux空文件创建的标准方式。

6.echo "Hello Edgebox" > hello.txt

左边文件管理器显示hello.txt0字节变成了14字节,说明内容已经写入!

echo 和 > 详细解

echo— 打印输出文字

echo "Hello"        # 直接在终端显示 Hello

>重定向符—把输出写入文件(覆盖)

echo "Hello" > hello.txt # 写入文件,原内容会被覆盖
echo "World" >> hello.txt # >> 是追加,不覆盖原内容

image

 

二者:区别

符号 作用
> 覆盖写入,文件原内容清空
>> 追加写入,保留原内容

 

 

 

 

echo "Hello Edgebox" > hello.txt将文字写入文件。echo负责输出文字,>是重定向符号将输出写入文件命令,文件大小从 0 改为 14 字节,可在右侧文件管理器中查看。注意>会覆盖文件原内容,追加内容应使用>>

7.cat hello.txt

cat = concatenate(连接/显示文件内容)

cat hello.txt           # 显示文件内容
cat file1 file2         # 连接显示多个文件
cat -n hello.txt        # 显示行号
cat /etc/os-release     # 查看系统配置(前面用过)

cat 适合看小文件,大文件用这些:

less hello.txt    # 分页查看,按 q 退出
tail -f log.txt   # 实时追踪文件末尾(看日志必用)
head -20 log.txt  # 只看前20行

image

 cat hello.txt显示文件内容,可以看到两行内容:(Hello覆盖>写入)和Word>>追加读取),分析验证了两种方向符号的区别。cat适合查看小文件,大文件建议用less(分页)或tail -f(实时跟踪日志)。

8.rm -rf test-dir

cd .. 和 rm -rf 详细解

cd ..— 返回上一级目录

cd ..        # 上一级
cd ../..     # 上两级
cd ~         # 直接回家目录

rm -rf test-dir— 删除目录

rm file.txt          # 删除单个文件
rm -r test-dir       # 删除目录(r = recursive 递归)
rm -rf test-dir      # 强制删除目录(f = force 不提示确认)

⚠️rm -rf是Linux最危险的命令,删除后无法恢复,没有恢复站!生产环境执行前必须确认路径。rm -rf /会删除整个系统,永远不要执行。

image

 

cd ..返回上级目录,rm -rf test-dir强制删除目录及其所有内容,网关文件管理器可洞察看到目录消失。注意:rm -rf删除后无法恢复,无恢复站,执行前务必确认路径正确。
posted @ 2026-06-23 17:05  WaitLove  阅读(26)  评论(0)    收藏  举报