第四章、首次登陆与线上求助 4.1 首次登陆系统 开机与登陆
开机 :按下电源键,系统开始引导
登陆界面 :图形界面或命令行界面
输入账号密码 :
账号:安装时创建的用户名
密码:输入时不会显示任何字符(安全机制)
命令行界面 (CLI) 如果进入的是图形界面,可以打开终端 (Terminal) 来使用命令行。
打开终端的方法:
桌面右键 → 打开终端
应用程序菜单 → 系统工具 → 终端
快捷键:Ctrl + Alt + T(Ubuntu)
基础操作指令 1. 显示日期:date 1 2 3 date date +%Y/%m/%d date +%H:%M:%S
2. 显示日历:cal 1 2 3 4 cal cal 2024 cal 1 2024 cal -3
3. 简单计算器:bc 1 2 3 4 5 bc scale=3 1/3 10+20*2 quit
使用管道直接计算:
1 2 echo "1+2+3" | bc echo "scale=2; 10/3" | bc
4. 重要的热键
热键
功能
Tab
命令/文件名自动补全(按两下显示所有选项)
Ctrl + C
终止当前运行的程序
Ctrl + D
退出当前终端(输入EOF)
Ctrl + L
清屏(等同于 clear 命令)
Ctrl + A
光标移动到行首
Ctrl + E
光标移动到行尾
Ctrl + U
删除光标前所有内容
Ctrl + K
删除光标后所有内容
Ctrl + R
搜索历史命令
↑ / ↓
浏览历史命令
5. 错误查看 当命令输入错误时,系统会显示错误信息:
1 2 3 4 5 6 7 8 9 10 11 $ cmdnotfound bash: cmdnotfound: command not found $ /etc/shadow bash: /etc/shadow: Permission denied $ cat /notexist cat : /notexist: No such file or directory
4.2 文字模式下指令的下达 指令的基本格式 1 command [-options] [arguments]
command :指令名称(如 ls, cp, mv)
-options :选项,通常以 - 或 -- 开头
arguments :参数,指令操作的对象
基础指令详解 1. 列出文件和目录:ls 1 2 3 4 5 6 7 8 ls ls -l ls -a ls -la ls -lh ls -ltr ls /etc ls *.txt
输出示例:
1 2 -rw-r--r-- 1 user group 1234 Jan 1 10:00 file.txt drwxr-xr-x 2 user group 4096 Jan 1 09:00 directory/
2. 切换目录:cd 1 2 3 4 5 6 7 8 cd /home/user cd ~ cd cd .. cd ../.. cd - cd / cd ~/Documents
3. 显示当前目录:pwd
4. 创建目录:mkdir 1 2 3 4 mkdir dirname mkdir dir1 dir2 dir3 mkdir -p parent/child mkdir -m 755 mydir
5. 删除文件或目录:rm 1 2 3 4 5 6 7 rm file.txt rm file1 file2 rm -i file.txt rm -f file.txt rm -r directory rm -rf directory rm *.log
⚠️ 警告: rm -rf / 会删除整个系统!使用时要特别小心。
6. 复制文件或目录:cp 1 2 3 4 5 6 7 8 cp source.txt dest.txt cp file.txt /path/to/ cp file1 file2 /dest/ cp -i file.txt dest.txt cp -f file.txt dest.txt cp -r dir1 dir2 cp -a dir1 dir2 cp -v source dest
7. 移动或重命名文件:mv 1 2 3 4 5 6 7 mv oldname newname mv file.txt /path/to/ mv file1 file2 /dest/ mv dir1 /path/to/ mv -i source dest mv -f source dest mv -v source dest
8. 查看文件内容 cat - 显示整个文件内容
1 2 3 4 5 cat file.txt cat -n file.txt cat -A file.txt cat file1 file2 > file3 cat > file.txt
less - 分页浏览(推荐)
head - 显示文件开头
1 2 3 4 head file.txt head -n 20 file.txt head -20 file.txt head -c 100 file.txt
tail - 显示文件结尾
1 2 3 4 tail file.txt tail -n 20 file.txt tail -f file.txt tail -f /var/log/syslog
wc - 统计文件
1 2 3 4 wc file.txt wc -l file.txt wc -w file.txt wc -c file.txt
sort - 排序
1 2 3 4 5 sort file.txt sort -r file.txt sort -n file.txt sort -u file.txt sort -t: -k3 -n /etc/passwd
uniq - 去重
1 2 3 4 uniq file.txt uniq -c file.txt uniq -d file.txt uniq -u file.txt
搜索与查找 find - 查找文件(强大但较慢)
1 2 3 4 5 6 7 8 9 find /path -name "file.txt" find /path -name "*.txt" find /path -type d -name "dir" find /path -type f -size +100M find /path -mtime -7 find /path -user username find /path -perm 644 find /path -name "*.log" -delete find /path -type f -exec ls -l {} \;
locate - 快速查找(基于数据库)
1 2 3 4 locate filename locate -i filename locate '*.txt' sudo updatedb
grep - 文本搜索(常用)
1 2 3 4 5 6 7 8 9 10 11 grep "pattern" file.txt grep -i "pattern" file.txt grep -v "pattern" file.txt grep -n "pattern" file.txt grep -r "pattern" /path/ grep -l "pattern" *.txt grep -E "pattern1|pattern2" file.txt grep -c "pattern" file.txt grep "^start" file.txt grep "end$" file.txt ps aux | grep "nginx"
which / whereis - 查找命令位置
1 2 3 4 which ls which -a python whereis ls whereis -b ls
系统信息 uname - 系统信息
1 2 3 4 uname -a uname -r uname -m uname -n
hostname - 主机名
1 2 3 hostname hostname -i hostnamectl
whoami / who / w - 用户信息
1 2 3 4 5 6 7 whoami who who am i w users last lastlog
df - 磁盘空间
1 2 3 4 5 df df -h df -T df -i df -h /home
du - 目录大小
1 2 3 4 5 du du -h du -sh /path du -h --max-depth=1 /path du -ah /path | sort -rh | head -20
free - 内存使用
1 2 3 4 5 free free -h free -m free -g free -s 5
top / htop - 系统进程
1 2 3 4 top top -u username top -p PID top -d 5
在 top 中可用的操作:
P - 按CPU使用率排序
M - 按内存使用率排序
T - 按运行时间排序
k - 杀死进程
q - 退出
ps - 进程状态
1 2 3 4 5 6 7 8 ps ps aux ps -ef ps aux | grep nginx ps aux --sort =-%cpu ps aux --sort =-%mem ps -u username ps -p PID -o pid,ppid,cmd,%cpu,%mem
lscpu / cat /proc/cpuinfo - CPU信息
1 2 3 4 5 lscpu cat /proc/cpuinfo cat /proc/cpuinfo | grep "model name" cat /proc/cpuinfo | grep -c "processor" nproc
lsblk / fdisk - 磁盘信息
1 2 3 4 5 6 lsblk df -h lsblk -f fdisk -l cat /proc/partitions blkid
ifconfig / ip / ss - 网络信息
1 2 3 4 5 6 7 8 9 ifconfig ip addr ip link ip route ss -tuln netstat -tuln ping google.com curl ifconfig.me hostname -I
env / printenv - 环境变量
1 2 3 4 5 6 7 env printenv printenv PATH echo $PATH echo $HOME echo $USER export VAR=value
history - 命令历史
1 2 3 4 5 6 7 8 history history | less history | grep "apt" !100 !! !apt history -c history -w
关机与重启 shutdown - 安全关机
1 2 3 4 5 6 7 shutdown now shutdown +5 shutdown 14:00 shutdown -r now shutdown -r +5 shutdown -c shutdown -h now
reboot / poweroff / halt
1 2 3 4 5 6 7 reboot poweroff halt init 0 init 6 systemctl reboot systemctl poweroff
sync - 同步数据到磁盘
⚠️ 重要提示 :关机或重启前,建议先执行 sync 命令,确保数据已写入磁盘。
4.3 Linux系统的线上求助man page与info page man page 手册页 Linux 系统内置了详细的帮助文档,称为 manual pages(手册页) ,简称 man page。
基本用法 1 2 3 4 man command man ls man -f command man -k keyword
手册页的分类(Sections) 手册页分为不同的章节:
章节
内容
1
用户命令(普通用户可执行的命令)
2
系统调用(内核提供的函数)
3
库函数(程序库中的函数)
4
特殊文件(通常在 /dev 中的设备)
5
文件格式和规范(如 /etc/passwd)
6
游戏和屏保
7
杂项(包括宏包和约定)
8
系统管理命令(通常需要 root 权限)
9
内核例程
指定章节查看:
手册页中的导航 进入 man page 后,可以使用以下按键导航:
按键
功能
空格 / Page Down
向下翻页
Page Up / b
向上翻页
↓ / Enter
向下滚动一行
↑
向上滚动一行
g
跳转到开头
G
跳转到结尾
/keyword
向下搜索关键词
?keyword
向上搜索关键词
n
跳转到下一个匹配
N
跳转到上一个匹配
h
显示帮助
q
退出 man page
手册页的结构 一个典型的 man page 包含以下部分:
1 2 3 4 5 6 7 8 9 NAME # 命令名称和简要描述 SYNOPSIS # 语法格式 DESCRIPTION # 详细描述 OPTIONS # 选项说明 EXAMPLES # 示例 EXIT STATUS # 退出状态码 SEE ALSO # 相关参考 BUGS # 已知问题 AUTHOR # 作者信息
info page 信息页 GNU 项目开发的另一种帮助系统,比 man page 更详细,支持超链接导航。
基本用法 1 2 3 4 info command info ls info info coreutils
导航按键
按键
功能
Enter
跟随光标下的超链接
Tab
跳转到下一个链接
n
下一节
p
上一节
u
上一级
l
返回上一页
空格
向下翻页
Del / Page Up
向上翻页
s
搜索
q
退出
? / h
显示帮助
info page 的优点
超链接导航 :可以像浏览网页一样跳转
层级结构 :清晰的章节组织
更详细的说明 :通常比 man page 更详尽
示例丰富 :提供更多使用示例
其他求助方式 1. –help 选项 大多数命令都支持 --help 选项,显示简要帮助:
1 2 3 ls --help cp --help systemctl --help
优点:
快速查看,无需进入 man page
显示常用选项
适合快速参考
2. whatis 命令 显示命令的简要描述:
1 2 3 whatis ls whatis cp whatis man
3. apropos 命令 通过关键词搜索相关的命令:
1 2 3 apropos editor apropos copy apropos "list directory"
4. 在线资源
官方文档 :各发行版的官方 Wiki 和文档
Stack Overflow :技术问答社区
GitHub :开源项目托管平台
Linux 中国 :中文 Linux 社区
鸟哥的 Linux 私房菜 :经典教程网站
5. /usr/share/doc 目录 许多软件包会在此目录下安装额外的文档:
1 2 ls /usr/share/doc/ ls /usr/share/doc/bash/
帮助系统的选择建议
场景
推荐方式
快速查看命令用法
command --help
查看详细文档
man command
查看GNU工具的详细说明
info command
不知道命令名字
apropos keyword
快速了解命令功能
whatis command
搜索具体问题的解决方案
在线搜索
实践练习
使用 man 查看 ls 命令的手册页,找出如何按时间排序的选项
使用 info 查看 coreutils 的文档
使用 apropos 搜索与 “delete” 相关的命令
使用 whatis 查看常用命令(cat, grep, find, chmod)的功能描述
比较 man ls 和 ls --help 的输出差异
4.4 超简单文书编辑器:nano nano 简介 nano 是一个简单易用的文本编辑器,适合初学者。它比 vi/vim 更容易上手。
启动 nano 1 2 3 nano nano filename.txt nano +10 filename.txt
基本操作 界面说明 1 2 3 4 5 6 GNU nano 2.9.3 filename.txt [文件内容显示区域] ^G 帮助 ^O 保存 ^W 搜索 ^K 剪切 ^J 对齐 ^X 退出 ^R 读取 ^Y 上一页 ^C 位置 ^T 拼写
^ 表示 Ctrl 键
^G = Ctrl + G
常用快捷键
快捷键
功能
Ctrl + G
显示帮助
Ctrl + O
保存文件
Ctrl + X
退出 nano
Ctrl + R
插入其他文件
Ctrl + W
搜索
Ctrl + V / Page Down
下一页
Ctrl + Y / Page Up
上一页
Ctrl + K
剪切当前行
Ctrl + U
粘贴
Ctrl + J
对齐当前段落
Ctrl + C
显示光标位置
Ctrl + T
拼写检查
Ctrl + _ / Ctrl + /
跳到指定行
Alt + U
撤销
Alt + E
重做
编辑操作
移动光标 :使用方向键
输入文本 :直接打字
删除 :使用 Backspace 或 Delete
保存 :Ctrl + O,然后按 Enter 确认
退出 :Ctrl + X,如有修改会提示保存
搜索和替换 搜索:
按 Ctrl + W
输入要搜索的文本
按 Enter
按 Alt + W 查找下一个
替换:
按 Ctrl + \
输入要搜索的文本,按 Enter
输入替换文本,按 Enter
按 Y 确认替换,N 跳过,A 全部替换
nano 配置 配置文件位置
系统级配置:/etc/nanorc
用户级配置:~/.nanorc
常用配置选项 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 set linenumbersset autoindentset tabstospacesset tabsize 4include "/usr/share/nano/*.nanorc" set smoothset constantshowset mouseset wordwrapset tabsize 4
nano 与 vi/vim 的选择
编辑器
优点
缺点
适用场景
nano
简单易学,界面直观
功能相对简单
新手入门,简单编辑
vi/vim
功能强大,效率高
学习曲线陡峭
专业用户,频繁编辑
建议:
初学者先用 nano 入门
熟练后学习 vim,提高工作效率
服务器环境通常都有 vi,nano 可能需要额外安装
实践练习
使用 nano 创建一个文本文件,输入一些内容,保存并退出
使用 nano 打开系统配置文件(如 /etc/hosts),观察界面
在 nano 中使用搜索功能查找特定文本
配置 nano 的行号显示和语法高亮
比较 nano 和 vim 的使用体验
4.5 正确的关机方法 为什么需要正确关机 Linux 是多用户、多任务系统,后台可能有许多进程在运行。直接断电可能导致:
数据丢失 :未写入磁盘的数据会丢失
文件系统损坏 :正在写入的文件可能损坏
系统不稳定 :下次启动可能出现错误
查看系统状态 在关机前,可以先查看系统状态:
关机命令 shutdown(推荐) 功能最强大的关机命令,可以定时关机、重启,并发送通知给所有用户。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 shutdown now shutdown +10 shutdown 14:00 shutdown -r now shutdown -r +5 "System will reboot in 5 minutes" shutdown -h now shutdown -c
发送消息给所有用户:
1 shutdown +10 "System will shutdown for maintenance in 10 minutes. Please save your work."
poweroff 直接关闭系统并切断电源。
1 2 3 poweroff poweroff -f poweroff -p
halt 停止系统运行,但不一定断电。
reboot 重启系统。
1 2 3 reboot reboot now reboot -f
init 通过改变运行级别来关机或重启。
运行级别(Runlevel) Linux 系统有不同的运行级别,对应不同的系统状态:
运行级别
说明
0
关机
1
单用户模式(救援模式)
2
多用户模式(无网络)
3
完全多用户模式(命令行)
4
保留,未使用
5
图形界面模式
6
重启
查看当前运行级别:
1 2 3 runlevel who -r systemctl get-default
切换运行级别:
1 2 3 4 init 3 init 5 systemctl isolate multi-user.target systemctl isolate graphical.target
使用 systemd 管理电源 现代 Linux 发行版(如 CentOS 7+、Ubuntu 15+)使用 systemd 作为初始化系统。
关机:
1 2 systemctl poweroff systemctl halt
重启:
挂起和休眠:
1 2 3 systemctl suspend systemctl hibernate systemctl hybrid-sleep
注意事项
保存工作 :关机前确保所有重要数据已保存
通知用户 :多用户系统应提前通知其他用户
关闭程序 :尽量正常关闭应用程序
避免强制关机 :除非系统无响应,否则不要使用强制关机
定期重启 :长期运行的系统建议定期重启以清理内存
实践练习
查看当前系统的运行级别
使用 shutdown 命令设置 10 分钟后关机,然后取消
查看 reboot 命令的手册页
使用 systemctl 查看系统的电源管理命令
了解你的系统的默认运行级别(目标)
4.6 重点回顾
Linux 系统有图形界面和命令行界面两种操作方式
基础命令:date, cal, bc, ls, cd, pwd, mkdir, rm, cp, mv, cat, less, head, tail
重要热键:Tab(补全),Ctrl+C(中断),Ctrl+D(退出)
使用 man, info, --help 获取帮助
文本编辑器 nano:简单易学,适合初学者
正确关机很重要,使用 shutdown, reboot, poweroff 等命令
4.7 本章习题
如何查看当前日期和时间?如何显示2024年的日历?
列出当前目录下所有文件(包括隐藏文件)的详细信息。
如何在后台运行一个程序?如何终止它?
使用 man 查看 cp 命令的手册页,找出如何保留文件属性的选项。
使用 nano 创建一个文件,输入一些内容,保存并退出。
系统将在10分钟后关机,如何取消这个关机计划?
解释 df, du, free 命令的区别。
如何查看系统的内存使用情况?如何查看磁盘使用情况?
4.8 参考资料与延伸阅读