入门 Ubuntu 操作系统(超详细,巨简单,小白必看)
目标读者: 零基础小白、刚接触 Linux 的学生、想从 Windows 转向 Linux 的开发者
阅读时间: 约 30 分钟
所需准备: 一台电脑(Windows/Mac 均可)、VMware 或 VirtualBox 虚拟机软件
目录
- Linux 基本认识
- 安装 Ubuntu
- 更改 apt 下载源(换国内镜像)
- 设置中文显示与输入法
- Ubuntu 磁盘目录结构详解
- 常用指令实战案例
- Vim 编辑器从入门到会用
- 常用工具:远程连接与文件传输
一、Linux 基本认识
1.1 什么是 Linux?
Linux 是一种开源的类 Unix 操作系统。简单来说,它和 Windows、macOS 一样,都是用来管理电脑硬件、运行软件的操作系统。
但 Linux 有两个最大的不同:
| 特点 | 说明 |
|---|
| 🆓 开源免费 | 源代码完全公开,任何人都可以免费使用、修改、分发,不用花钱买授权 |
| 🚀 稳定可靠 | 很多服务器 24 小时 × 365 天运行几年都不重启,极少死机 |
1.2 Linux 系统组成(简单理解)
想象 Linux 是一台餐厅:
| 组件 | 餐厅类比 | 作用 |
|---|
| 内核(Kernel) | 后厨大厨 | 管理 CPU、内存、硬盘等硬件资源,是系统的"心脏" |
| Shell | 服务员 | 你(顾客)和大厨之间的桥梁,你通过 Shell 输入命令来"点菜" |
| 文件系统 | 仓库货架 | 管理所有文件和目录,Linux 采用树形结构,像一棵倒过来的树 |
| 应用程序 | 菜品 | 各种软件:浏览器、编辑器、数据库等 |
💡 Shell 是什么? 你可以把它理解为"命令解释器"。你在终端里敲的命令,Shell 负责翻译成内核能懂的语言。最常见的 Shell 叫 Bash。
1.3 常见 Linux 发行版
| 发行版 | 特点 | 适合人群 |
|---|
| Ubuntu | 界面美观、社区庞大、软件丰富、文档齐全 | ⭐ 初学者首选! |
| CentOS | 稳定、企业级、基于红帽 | 服务器运维人员 |
| Debian | 极度稳定、自由软件原则 | 追求稳定的用户 |
| Fedora | 红帽的试验田、技术前沿 | 想尝鲜的开发者 |
为什么选择 Ubuntu?
- 安装最简单,一路"下一步"就能装好
- 桌面环境友好,和 Windows 操作习惯接近
- 遇到问题百度/谷歌一搜一大把解决方案
- 软件安装方便,apt 一键搞定
二、安装 Ubuntu
2.1 下载 Ubuntu 镜像
官方下载地址: https://ubuntu.com/download/desktop
推荐下载 Ubuntu 22.04 LTS(LTS = Long Term Support,长期支持版本,稳定可靠,维护 5 年)
下载后你会得到一个 .iso 文件,比如 ubuntu-22.04.5-desktop-amd64.iso
2.2 在 VMware 虚拟机中安装(推荐新手使用)
为什么用虚拟机?
- ✅ 不影响你现有的 Windows 系统
- ✅ 搞坏了可以一键重置,不怕弄坏电脑
- ✅ 可以同时运行 Windows 和 Ubuntu
安装步骤:
Step 1:打开 VMware,点击"创建新的虚拟机"
选择 “典型(推荐)” → 点击"下一步"
Step 2:选择安装来源
选择 “安装程序光盘映像文件(iso)” → 点击"浏览"找到你下载的 .iso 文件 → 点击"下一步"
Step 3:设置用户信息
| 设置项 | 建议填写 |
|---|
| 全名 | 你的名字(如 Zhang San) |
| 用户名 | 登录用的名字,小写英文(如 zhangsan) |
| 密码 | 设置一个记得住的密码 |
| 确认 | 再输一遍密码 |
⚠️ 用户名只能用英文小写! 用中文或特殊字符后续会有很多麻烦。
Step 4:命名虚拟机并选择存储位置
- 虚拟机名称:随便取,如 Ubuntu-22.04
- 位置:建议选空间充足的磁盘,至少预留 50GB
Step 5:指定磁盘容量
- 建议设置 50GB 或更大
- 选择 “将虚拟磁盘存储为单个文件”(性能更好)
Step 6:自定义硬件(可选但建议调整)
点击"自定义硬件":
- 内存:建议分配 4GB(4096MB) 或更多
- 处理器:建议分配 2 个处理器核心
- 网络适配器:选择 NAT 模式(默认即可,能共享主机的网络)
Step 7:完成创建,开启虚拟机
VMware 会自动开始安装,整个过程大约 15-30 分钟。期间不需要操作,等待即可。
Step 8:安装完成,首次启动
安装完成后会提示重启,点击"重启现在"。重启后输入你的密码登录,就能看到 Ubuntu 桌面了!🎉
三、更改 apt 下载源(换国内镜像)
3.1 为什么要换源?
Ubuntu 默认从 国外服务器 下载软件,速度很慢甚至连不上。换成 国内镜像源 后,下载速度飞快!
3.2 推荐国内镜像源
| 镜像源 | 特点 |
|---|
| 阿里云 | 速度快,稳定,推荐 |
| 清华大学 | 教育网速度快 |
| 中科大 | 老牌镜像,可靠 |
| 腾讯云 | 华南地区速度快 |
3.3 换源步骤(图形界面方式,小白友好)
Step 1:打开"软件和更新"
点击左下角"显示应用程序"(九宫格图标)→ 搜索 “软件和更新” → 打开
Step 2:更换下载服务器
- 选择 “Ubuntu 软件” 标签页
- 找到 “下载自” 选项
- 点击下拉菜单 → 选择 “其他站点”
- 找到 “中国” → 展开 → 选择 " mirrors.aliyun.com "(阿里云)
- 点击 “选择服务器”
- 输入你的密码确认
Step 3:重新载入软件列表
点击 “关闭” → 弹出提示"可用的软件信息已过时" → 点击 “重新载入”
等待更新完成即可!
3.4 换源步骤(命令行方式,更快捷)
- # 1. 备份原来的源列表(以防万一)
- sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
- # 2. 编辑源列表
- sudo gedit /etc/apt/sources.list # 用图形编辑器
- # 或者
- sudo nano /etc/apt/sources.list # 用终端编辑器
复制代码
阿里云 Ubuntu 22.04 源配置:
把文件内容全部替换为:
- deb https://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse
- deb https://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse
- deb https://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse
- deb https://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse
复制代码
保存后执行:
- sudo apt update # 更新软件源列表
- sudo apt upgrade # 升级已安装的软件(可选)
复制代码
💡 apt update 和 apt upgrade 的区别:
- update:只是更新软件列表,告诉你有哪些新版本可用
- upgrade:真正下载并安装更新,升级系统
四、设置中文显示与输入法
4.1 设置系统语言为中文
Step 1:打开设置
点击左下角"显示应用程序" → 找到 “设置”(齿轮图标)→ 打开
Step 2:进入区域和语言设置
左侧菜单找到 “区域和语言”(Region & Language)→ 点击
Step 3:切换语言
- 在 “语言”(Language)一栏,点击当前显示的语言(如 English)
- 弹出语言选择框 → 找到并选择 “汉语(中国)” 或 “Chinese”
- 点击 “选择”(Select)
Step 4:应用到整个系统
点击 “管理已安装的语言”(Manage Installed Languages)
弹出"语言支持"窗口 → 点击 “添加或删除语言…”
在列表中找到 “中文(简体)” → 勾选 → 点击 “应用”
等待语言包下载安装完成…
Step 5:重启生效
安装完成后,点击右上角电源图标 → “关机/注销” → “注销”(Log Out)
重新登录后,系统界面就变成中文了!
4.2 处理文件夹名称弹窗
重启后可能会弹出一个对话框:
“Update standard folders to current language?”
是否将标准文件夹更新为当前语言?
选择 “Keep Old Names”(保留旧名称)
⚠️ 强烈建议保留英文文件夹名! 如果改成中文(如"桌面"、“下载”),后续在终端里操作路径会很麻烦,因为终端不支持中文路径输入。
勾选 “Don’t ask me this again” → 点击 “Keep Old Names”
4.3 安装中文输入法
Ubuntu 默认自带 IBus 输入法框架,但推荐安装更好用的 Fcitx5:
- # 1. 安装 Fcitx5 和中文拼音输入法
- sudo apt install fcitx5 fcitx5-chinese-addons fcitx5-frontend-gtk4
- # 2. 在"设置" → "区域和语言" → "输入源" 中添加"汉语(Intelligent Pinyin)"
- # 3. 重启系统或注销重新登录
复制代码
切换输入法快捷键: Win + 空格 或 Ctrl + 空格
五、Ubuntu 磁盘目录结构详解
Linux 有一个名言:“一切皆文件”。你的硬盘、键盘、鼠标、显示器,在 Linux 里都被看作"文件"来管理。
5.1 根目录 / — 一切的开始
/ 是整个文件系统的起点,像一棵倒过来的树的树根。所有文件和目录都从它开始分支。
- /
- ├── bin ← 基础命令(ls, cp, mv 等)
- ├── boot ← 系统启动文件
- ├── dev ← 设备文件(硬盘、键盘等)
- ├── etc ← 配置文件
- ├── home ← 普通用户的家目录
- ├── lib ← 共享库文件
- ├── media ← 自动挂载的可移动设备(U盘等)
- ├── mnt ← 手动挂载点
- ├── opt ← 可选第三方软件
- ├── proc ← 虚拟文件系统(系统运行时信息)
- ├── root ← root 用户的家目录
- ├── run ← 运行时临时文件
- ├── srv ← 服务数据
- ├── sys ← 内核接口
- ├── tmp ← 临时文件(重启后清空)
- ├── usr ← 用户应用程序
- └── var ← 经常变化的数据(日志等)
复制代码
5.2 重点目录详解(小白必知)
📁 /bin — 基础命令目录
存放系统最基本的命令,所有用户都能用。
- ls /bin # 你会看到 cat, cp, ls, mv, rm 等熟悉的命令
复制代码
这些命令在系统启动早期就能用,即使其他部分还没准备好。
📁 /sbin — 系统管理命令
存放管理员专用的命令,普通用户一般没有权限执行。
- ls /sbin # 看到 shutdown, reboot, fdisk 等
复制代码
📁 /etc — 配置文件的"大本营"
这是最重要的目录之一!系统和软件的配置文件都在这里。
| 重要文件 | 作用 |
|---|
| /etc/passwd | 用户账户信息 |
| /etc/group | 用户组信息 |
| /etc/fstab | 开机自动挂载的文件系统 |
| /etc/apt/sources.list | 软件源列表(我们刚才改的) |
| /etc/hosts | 本地域名解析 |
| /etc/hostname | 主机名 |
⚠️ 修改前务必备份! 改错了可能导致系统无法启动。
📁 /home — 你的"私人领地"
每个普通用户都有一个自己的文件夹,以用户名命名。
- /home/
- ├── zhangsan/ ← 用户 zhangsan 的家目录
- │ ├── Desktop/ ← 桌面
- │ ├── Documents/ ← 文档
- │ ├── Downloads/ ← 下载
- │ ├── Music/ ← 音乐
- │ ├── Pictures/ ← 图片
- │ └── Videos/ ← 视频
- └── lisi/ ← 用户 lisi 的家目录
复制代码
💡 快捷符号 ~:在终端里,~ 就代表当前用户的家目录。比如 ~/Desktop 等于 /home/zhangsan/Desktop。
📁 /root — 超级管理员的家
root 用户(超级管理员)的家目录,单独放在 /root,不和普通用户混在一起。
普通用户默认无法进入 /root 目录,权限不够。
📁 /dev — 设备文件
Linux 把硬件设备也当作文件来管理:
| 设备文件 | 代表什么 |
|---|
| /dev/sda | 第一块 SATA/SCSI 硬盘 |
| /dev/sda1 | 第一块硬盘的第一个分区 |
| /dev/tty | 终端设备 |
| /dev/null | “黑洞”,写入的数据会消失(常用于丢弃输出) |
| /dev/zero | 无限提供 0 字节(常用于创建空文件) |
| /dev/random | 随机数设备 |
📁 /tmp — 临时文件目录
系统和软件运行时产生的临时文件放在这里。
⚠️ 重要: /tmp 目录在系统重启后通常会被清空!不要把重要文件放这里。
📁 /var — 经常变化的数据
| 子目录 | 存放内容 |
|---|
| /var/log | 系统和应用的日志文件 |
| /var/mail | 用户邮件 |
| /var/cache | 缓存数据 |
| /var/spool | 队列数据(打印队列等) |
查看系统日志:
- sudo tail -f /var/log/syslog # 实时查看系统日志
- sudo tail -f /var/log/auth.log # 查看登录认证日志
复制代码
📁 /usr — 用户应用程序(系统最大的目录)
| 子目录 | 用途 |
|---|
| /usr/bin | 用户级别的命令(比 /bin 更丰富的软件) |
| /usr/sbin | 用户级别的系统管理命令 |
| /usr/lib | 用户级别的共享库 |
| /usr/share | 共享数据(文档、图标等) |
| /usr/local | 手动编译安装的软件默认放这里 |
💡 /usr/local 很重要! 你自己编译安装的软件(如源码安装的 Nginx、Redis)建议放在这里,和系统自带的软件分开。
六、常用指令实战案例
6.1 文件和目录操作
目录操作
- # 查看当前位置
- pwd
- # 输出:/home/zhangsan
- # 切换目录
- cd /home # 切换到 /home
- cd ~ # 切换到用户家目录(快捷方式)
- cd .. # 切换到上级目录
- cd - # 切换到刚才所在的目录(来回切换神器)
- # 创建目录
- mkdir myfolder # 创建单个目录
- mkdir -p a/b/c/d # 递归创建多级目录(-p = parents)
- # 删除空目录
- rmdir myfolder # 只能删空的!
复制代码
文件操作
- # 创建空文件
- touch hello.txt # 创建空文件
- touch a.txt b.txt c.txt # 同时创建多个
- # 复制
- cp hello.txt /tmp/ # 复制到 /tmp 目录
- cp -r myfolder /backup/ # 递归复制目录(-r = recursive)
- cp -i hello.txt /tmp/ # 覆盖前询问(-i = interactive)
- # 移动/重命名
- mv hello.txt world.txt # 重命名
- mv myfolder /backup/ # 移动目录
- mv -f file.txt /tmp/ # 强制覆盖(-f = force)
- # 删除(⚠️ 慎用!)
- rm hello.txt # 删除文件
- rm -i hello.txt # 删除前确认
- rm -r myfolder/ # 递归删除目录
- rm -rf myfolder/ # 强制递归删除(危险!)
复制代码
🔴 rm -rf 是 Linux 中最危险的命令!
rm = 删除, -r = 递归, -f = 强制
一旦执行,数据无法恢复!使用前务必确认路径正确。
文件内容查看
- # cat — 一次性显示全部(适合小文件)
- cat /etc/passwd
- cat -n file.txt # 显示行号
- # more — 百分比翻页(只能往下翻)
- more /var/log/syslog
- # 操作:空格(下一页)、回车(下一行)、q(退出)
- # less — 更强大的分页(推荐!)
- less /var/log/syslog
- # 操作:PgUp/PgDn(翻页)、/keyword(向下搜索)、?keyword(向上搜索)、n(下一个)、N(上一个)、q(退出)
- # head — 看开头
- head file.txt # 默认前10行
- head -n 5 file.txt # 前5行
- head -n -5 file.txt # 除了最后5行,前面全显示
- # tail — 看结尾(看日志神器!)
- tail file.txt # 默认最后10行
- tail -n 20 file.txt # 最后20行
- tail -f /var/log/nginx/access.log # 实时追踪新增内容(-f = follow)
复制代码
6.2 软件安装与管理
- # 更新软件源列表(安装软件前先执行这个!)
- sudo apt update
- # 安装软件
- sudo apt install nginx # 安装 Nginx
- sudo apt install -y nginx # 自动确认,不提示(-y = yes)
- # 卸载软件
- sudo apt remove nginx # 卸载,保留配置文件
- sudo apt purge nginx # 彻底卸载,删除配置文件
- # 查看已安装软件
- dpkg -l # 列出所有已安装包
- dpkg -l | grep nginx # 查找 nginx 相关
- apt list --installed # 另一种查看方式
- # 清理系统
- sudo apt autoremove # 自动删除不再需要的依赖
- sudo apt clean # 清理下载的软件包缓存
复制代码
6.3 用户和权限管理
- # 添加用户(交互式,会提示设置密码等信息)
- sudo adduser newuser
- # 删除用户
- sudo deluser newuser # 删除用户,保留家目录
- sudo deluser --remove-home newuser # 删除用户及其家目录
- # 切换用户
- su - zhangsan # 切换到 zhangsan(带环境变量)
- su zhangsan # 切换到 zhangsan(保留当前环境)
- exit # 退出当前用户,回到上一个
- # 修改文件权限
- chmod 755 script.sh # rwxr-xr-x
- chmod u+x script.sh # 给所有者添加执行权限
- chmod a+r file.txt # 给所有人添加读权限
- # 修改文件所有者
- sudo chown zhangsan:users file.txt # 改所有者和组
- sudo chown -R zhangsan:users myfolder/ # 递归修改目录
复制代码
6.4 网络操作
- # 查看网络配置
- ip addr # 查看 IP 地址(现代推荐)
- ifconfig # 传统方式(可能需要安装 net-tools)
- # 测试网络连通
- ping www.baidu.com # 测试能否上网
- ping -c 4 192.168.1.1 # 发送4个包后停止
- # 查看路由表
- ip route
- route -n
- # 查看端口占用
- ss -tlnp # 查看监听端口及进程(现代推荐)
- netstat -tlnp # 传统方式
- # 下载文件
- wget https://example.com/file.zip # 下载文件
- wget -c https://example.com/file.zip # 断点续传
- curl -O https://example.com/file.zip # 另一种下载方式
复制代码
6.5 进程管理
- # 查看进程
- ps aux # 查看所有进程(BSD格式)
- ps -ef # 查看所有进程(标准格式)
- ps aux | grep firefox # 查找 firefox 进程
- # 实时监控系统(类似 Windows 任务管理器)
- top
- # 操作:M(按内存排序)、P(按CPU排序)、q(退出)
- # 终止进程
- kill 1234 # 正常终止 PID 为 1234 的进程
- kill -9 1234 # 强制终止(无法被程序捕获)
- killall firefox # 按名称终止所有 firefox 进程
- # 查看进程树
- pstree -p # 显示 PID
- pstree -u # 显示用户
复制代码
七、Vim 编辑器从入门到会用
Vim 是 Linux 下最强大的文本编辑器,但学习曲线较陡。掌握以下基础操作,足以应对 90% 的日常需求。
7.1 打开文件
- vim file.txt # 打开或创建文件
- vim /etc/nginx/nginx.conf # 编辑系统配置文件(需要 sudo)
- sudo vim /etc/hosts # 编辑需要 root 权限的文件
复制代码
7.2 三种模式
Vim 有三种模式,就像键盘上的 Caps Lock,你必须知道自己当前在什么模式下:
- ┌─────────────┐ i/a/o ┌─────────────┐
- │ 命令模式 │ ───────────────→ │ 插入模式 │
- │ (Normal) │ ←─────────────── │ (Insert) │
- │ │ Esc │ │
- └──────┬──────┘ └─────────────┘
- │
- │ : ┌─────────────┐
- └────────────────────→ │ 末行模式 │
- │ (Command) │
- │ │
- └─────────────┘
复制代码
| 模式 | 特征 | 能做什么 |
|---|
| 命令模式 | 打开文件默认进入,左下角不显示 -- INSERT -- | 移动光标、复制粘贴、删除、搜索 |
| 插入模式 | 左下角显示 -- INSERT -- | 像普通编辑器一样输入文字 |
| 末行模式 | 左下角显示 : 开头的命令 | 保存、退出、查找替换、设置 |
7.3 模式切换
命令模式 → 插入模式:
| 按键 | 作用 |
|---|
| i | 在光标前插入(insert) |
| a | 在光标后追加(append) |
| o | 在光标所在行下方新建一行插入 |
| I | 在行首插入 |
| A | 在行尾追加 |
| O | 在光标所在行上方新建一行插入 |
任何模式 → 命令模式: 按 Esc 键(有时需要按两次)
命令模式 → 末行模式: 按 :(冒号)
7.4 命令模式常用操作
光标移动
| 按键 | 作用 |
|---|
| h j k l | 左、下、上、右(比方向键更顺手) |
| 0 | 跳到行首 |
| $ | 跳到行尾 |
| gg | 跳到文件开头 |
| G | 跳到文件末尾 |
| nG | 跳到第 n 行(如 10G 跳到第10行) |
| Ctrl + f | 向下翻一页(forward) |
| Ctrl + b | 向上翻一页(backward) |
复制、粘贴、删除
| 按键 | 作用 |
|---|
| yy | 复制当前行(yank) |
| nyy | 复制 n 行(如 3yy 复制3行) |
| p | 在光标下方粘贴(paste) |
| P | 在光标上方粘贴 |
| dd | 删除(剪切)当前行 |
| ndd | 删除 n 行 |
| x | 删除光标处的字符 |
| u | 撤销(undo) |
| Ctrl + r | 重做(redo) |
搜索
| 按键 | 作用 |
|---|
| /keyword | 从当前位置向下搜索 |
| ?keyword | 从当前位置向上搜索 |
| n | 查找下一个匹配 |
| N | 查找上一个匹配 |
7.5 末行模式常用操作
- :w " 保存(write)
- :q " 退出(quit)
- :wq " 保存并退出
- :x " 保存并退出(同 :wq)
- :q! " 强制退出不保存(! = 强制)
- :w !sudo tee % " 忘记用 sudo 打开时的救星(强制保存)
- :set nu " 显示行号(number)
- :set nonu " 隐藏行号
- :10 " 跳到第10行
- :1,10d " 删除第1到10行
- :%s/old/new/g " 全局替换(global)
- :%s/old/new/gc " 全局替换,每次确认(confirm)
复制代码
7.6 永久显示行号
- # 方法1:仅对当前用户生效
- echo "set nu" >> ~/.vimrc
- # 方法2:对所有用户生效(需要 root 权限)
- sudo vim /etc/vimrc
- # 在文件末尾添加:set nu
复制代码
7.7 Vim 快速上手流程
- 1. vim file.txt ← 打开文件(进入命令模式)
- 2. 按 i ← 进入插入模式
- 3. 输入你的内容 ← 像普通编辑器一样打字
- 4. 按 Esc ← 回到命令模式
- 5. 按 :wq 回车 ← 保存并退出
复制代码
💡 新手建议: 刚开始觉得 Vim 难用很正常!可以先使用系统自带的 gedit(图形界面文本编辑器)或 nano(更简单的终端编辑器),等熟悉 Linux 后再慢慢学 Vim。
八、常用工具:远程连接与文件传输
8.1 SSH 远程连接 Ubuntu
SSH(Secure Shell)是一种加密的网络协议,让你能安全地远程登录到另一台电脑。
服务端配置(在 Ubuntu 上)
- # 1. 更新系统
- sudo apt update
- # 2. 安装 OpenSSH 服务器
- sudo apt install openssh-server
- # 3. 启动 SSH 服务
- sudo systemctl start ssh
- # 4. 设置开机自启(可选)
- sudo systemctl enable ssh
- # 5. 检查 SSH 是否运行
- sudo systemctl status ssh
- # 看到 Active: active (running) 就是成功了!
复制代码
客户端连接(从其他电脑连到 Ubuntu)
方式 1:Windows 10/11 自带 SSH(推荐)
Windows 10 1809 版本后自带 ssh 命令,打开 CMD 或 PowerShell:
- ssh 用户名@Ubuntu的IP地址
- # 示例
- ssh zhangsan@192.168.1.100
复制代码
首次连接会提示:
- The authenticity of host '192.168.1.100' can't be established.
- Are you sure you want to continue connecting (yes/no)?
复制代码
输入 yes 回车,然后输入 Ubuntu 用户的密码,即可登录!
方式 2:使用 Xshell(功能更强大)
- 下载安装 Xshell(个人版免费)
- 点击"新建"会话
- 填写:
- 名称:随便取(如"我的Ubuntu")
- 主机:Ubuntu 的 IP 地址
- 端口号:22(默认)
- 点击"连接" → 输入用户名和密码
查看 Ubuntu 的 IP 地址
- ip addr | grep inet
- # 或
- hostname -I
复制代码
8.2 SCP 远程文件传输
SCP(Secure Copy)基于 SSH 协议,安全地传输文件。
从本地传到远程(上传)
- # 传单个文件
- scp 本地文件 用户名@远程IP:远程路径
- # 示例:把本地的 report.pdf 传到 Ubuntu 的 /home/zhangsan/
- scp report.pdf zhangsan@192.168.1.100:/home/zhangsan/
- # 传整个文件夹(加 -r)
- scp -r myproject/ zhangsan@192.168.1.100:/home/zhangsan/
复制代码
从远程传到本地(下载)
- # 下载单个文件
- scp 用户名@远程IP:远程文件 本地路径
- # 示例:把远程的 /var/log/nginx/access.log 下载到本地当前目录
- scp zhangsan@192.168.1.100:/var/log/nginx/access.log .
- # 下载整个文件夹
- scp -r zhangsan@192.168.1.100:/home/zhangsan/myproject ./
复制代码
💡 . 代表当前目录,是 Linux 中的快捷写法。
8.3 更高效的传输工具:rsync
- # 安装
- sudo apt install rsync
- # 同步本地文件夹到远程(增量传输,只传变化的部分)
- rsync -avz myfolder/ zhangsan@192.168.1.100:/home/zhangsan/myfolder/
- # 参数说明:
- # -a = 归档模式(保留权限、时间等)
- # -v = 显示详细过程
- # -z = 传输时压缩
复制代码
附录:新手常见问题 FAQ
Q1:我忘记了用户密码怎么办?
- # 重启进入恢复模式
- # 开机时按住 Shift 键 → 选择 Advanced options → Recovery mode
- # 选择 root Drop to root shell prompt
- # 重新设置密码
- passwd zhangsan
- # 输入新密码两次
复制代码
Q2:终端里怎么复制粘贴?
| 操作 | 快捷键 |
|---|
| 复制 | Ctrl + Shift + C(不是普通的 Ctrl+C!) |
| 粘贴 | Ctrl + Shift + V(不是普通的 Ctrl+V!) |
| 终止当前命令 | Ctrl + C |
为什么终端里 Ctrl+C 不是复制?因为在 Linux 终端中,Ctrl+C 是发送中断信号(SIGINT),用来终止当前运行的程序。
Q3:软件安装时提示 “Unable to locate package”?
- # 原因:软件源列表太旧,或者包名不对
- # 解决:
- sudo apt update # 先更新列表
- sudo apt search 关键词 # 搜索正确的包名
复制代码
Q4:怎么关闭 Ubuntu?
- # 命令行方式
- sudo shutdown -h now # 立即关机
- sudo reboot # 立即重启
- # 图形界面
- # 点击右上角电源图标 → 关机/注销
复制代码
Q5:Windows 和 Ubuntu 虚拟机之间怎么传文件?
方法 1:VMware 共享文件夹
- VMware 菜单 → 虚拟机 → 设置 → 选项 → 共享文件夹
- 启用 → 添加 Windows 上的文件夹
- 在 Ubuntu 中挂载到 /mnt/hgfs/
方法 2:拖拽(需安装 VMware Tools)
直接拖拽文件到虚拟机窗口
方法 3:SCP(推荐,通用)
用前面介绍的 scp 命令通过网络传输
总结:Ubuntu 学习路线图
- Week 1: 安装 → 熟悉桌面环境 → 学会打开终端 → 练习 cd/ls/pwd
- Week 2: 文件操作 → mkdir/touch/cp/mv/rm/cat/less → 理解权限概念
- Week 3: 软件管理 → apt 安装常用软件 → 换源 → 系统更新
- Week 4: 网络配置 → 查看IP → ping测试 → SSH远程连接
- Week 5: 进程管理 → ps/top/kill → 查看日志
- Week 6: Vim 基础 → 三种模式 → 保存退出 → 搜索替换
- Week 7+: 进阶 → Shell脚本 → 用户管理 → 定时任务 → 服务配置
复制代码
🎯 记住: Linux 不是学出来的,是用出来的!多敲命令,多试错,遇到问题先 man 或 --help,你一定能成为 Linux 高手!
扩展阅读: LinuxCool 命令大全 | Ubuntu 官方文档