Linux 操作系统入门指南
1. Linux 操作系统概述
Linux 是一款开源、免费的操作系统内核,最初由 Linus Torvalds 于 1991 年发布。它基于 Unix 的设计思想,具有多用户、多任务、稳定、安全、高效等特点,被广泛应用于服务器、嵌入式设备、超级计算机以及个人桌面环境。
Linux 的发行版众多,常见的有 Ubuntu、CentOS、Debian、Fedora、Arch Linux 等。不同发行版在包管理、默认软件和界面风格上有所差异,但底层内核和基本指令高度一致,因此掌握一套基础指令即可在不同发行版间迁移。
2. 常用目录结构
Linux 采用树状目录结构,所有文件和目录都从根目录 / 开始。以下是几个核心目录及其作用:
- /:根目录,所有目录和文件的起点。
- /bin:存放系统启动和用户常用的基本命令,如
ls、cp、mv。 - /etc:存放系统配置文件,如网络配置、用户账户信息等。
- /home:普通用户的主目录,每个用户对应一个子目录。
- /root:超级管理员(root)的主目录。
- /var:存放经常变化的文件,如日志、缓存、邮件等。
- /tmp:临时文件目录,系统重启后内容可能被清空。
- /usr:存放系统应用程序和文件,类似 Windows 的 Program Files。
- /dev:设备文件目录,硬件设备以文件形式呈现。
- /proc:虚拟文件系统,反映内核和进程的实时信息。
3. 基础指令
3.1 目录与文件操作
pwd # 显示当前所在目录
ls # 列出当前目录内容
ls -l # 以详细列表形式显示
cd /home # 切换到指定目录
mkdir mydir # 创建目录
rmdir mydir # 删除空目录
touch file.txt # 创建空文件
cp file.txt copy.txt # 复制文件
mv file.txt new.txt # 移动或重命名文件
rm file.txt # 删除文件
rm -rf mydir # 递归强制删除目录
3.2 查看与编辑文件
cat file.txt # 查看文件全部内容
less file.txt # 分页查看文件
head -n 10 file.txt # 查看文件前 10 行
tail -n 10 file.txt # 查看文件后 10 行
grep "keyword" file.txt # 在文件中搜索关键字
vi file.txt # 使用 vi/vim 编辑文件
3.3 权限与用户管理
chmod 755 file.txt # 修改文件权限
chown user:group file # 修改文件属主和属组
useradd newuser # 新建用户
passwd newuser # 设置用户密码
su - newuser # 切换用户
sudo command # 以管理员权限执行命令
3.4 系统与进程管理
ps aux # 查看所有进程
top # 实时查看系统资源占用
kill -9 PID # 强制结束指定进程
df -h # 查看磁盘空间使用情况
free -h # 查看内存使用情况
uname -a # 查看内核版本信息
reboot # 重启系统
shutdown -h now # 立即关机
3.5 网络相关指令
ping www.baidu.com # 测试网络连通性
ifconfig # 查看网络接口信息
ip addr # 查看 IP 地址(新版)
curl http://example.com # 发送 HTTP 请求
wget http://example.com/file.zip # 下载文件
4. 常用软件
Linux 生态中软件丰富,以下按用途列出几类常用软件:
- 文本编辑器:vim、nano、gedit、VS Code。
- 压缩解压:tar、gzip、zip、unzip。
- 开发工具:gcc、g++、make、git、Python、Node.js。
- 服务器软件:Nginx、Apache、MySQL、Redis、Docker。
- 系统监控:htop、iotop、netstat、nmon。
- 办公与浏览器:LibreOffice、Firefox、Chrome。
安装软件时,不同发行版使用不同包管理器:Debian/Ubuntu 使用 apt,CentOS/RHEL 使用 yum 或 dnf,Arch 使用 pacman。例如在 Ubuntu 上安装 git:
sudo apt update
sudo apt install git
5. 常用软件命令详解
5.1 vim 编辑器常用命令
vim 是 Linux 下最常用的文本编辑器之一,分为命令模式、插入模式和底行模式。以下是一些高频操作:
vim file.txt # 打开或创建文件
i # 进入插入模式(在光标前输入)
a # 进入插入模式(在光标后输入)
Esc # 返回命令模式
:w # 保存文件
:q # 退出 vim
:wq # 保存并退出
:q! # 强制退出不保存
dd # 删除当前行
yy # 复制当前行
p # 粘贴
u # 撤销
/word # 向下搜索 word
:n # 跳转到第 n 行
5.2 tar 打包与压缩命令
tar 用于打包和解包文件,常与 gzip 或 bzip2 配合实现压缩。常用参数:-c 创建、-x 解包、-v 显示过程、-f 指定文件名、-z 使用 gzip、-j 使用 bzip2。
tar -cvf archive.tar file1 file2 # 打包文件(不压缩)
tar -xvf archive.tar # 解包文件
tar -czvf archive.tar.gz dir/ # 打包并用 gzip 压缩
tar -xzvf archive.tar.gz # 解压 .tar.gz 文件
tar -cjvf archive.tar.bz2 dir/ # 打包并用 bzip2 压缩
tar -xjvf archive.tar.bz2 # 解压 .tar.bz2 文件
tar -tzvf archive.tar.gz # 查看压缩包内容列表
5.3 gzip 压缩命令
gzip 用于单个文件的压缩和解压,压缩后原文件会被替换为 .gz 文件。
gzip file.txt # 压缩文件,生成 file.txt.gz
gzip -d file.txt.gz # 解压文件
gzip -l file.txt.gz # 查看压缩文件信息
gzip -r dir/ # 递归压缩目录中的文件
gunzip file.txt.gz # 解压文件(等价于 gzip -d)
5.4 zip 与 unzip 压缩命令
zip 是跨平台常用的压缩格式,可同时压缩多个文件或目录,并保留目录结构。
zip archive.zip file1 file2 # 压缩多个文件
zip -r archive.zip dir/ # 递归压缩目录
zip -q archive.zip file.txt # 静默压缩
unzip archive.zip # 解压到当前目录
unzip archive.zip -d /tmp/ # 解压到指定目录
unzip -l archive.zip # 查看压缩包内容列表
unzip -o archive.zip # 覆盖已存在的文件
5.6 jupyter 常用命令
Jupyter 是一个基于 Web 的交互式开发环境,支持可执行代码、文档、图表等多种内容。安装后通过以下命令启动服务:
pip install jupyter # 安装 Jupyter
jupyter notebook --allow-root --ip=0.0.0.0 --port=8899 # 启动服务并允许远程访问
5.7 apt 包管理命令
apt 是 Debian/Ubuntu 系列发行版的包管理器,用于安装、更新和卸载软件包。
sudo apt update # 更新软件源镜像
sudo apt install 软件名 # 安装软件
sudo apt uninstall 软件名 # 卸载软件
5.8 ssh 远程连接命令
ssh 用于远程登录 Linux 服务器,默认端口为 22。Linux 作为服务器,Windows 可通过 ssh 远程连接。
sudo apt install openssh-server # 安装 ssh 服务
service ssh start # 启动 ssh 服务
ssh 用户名@公网IP # 远程连接服务器(输入密码,首次连接会提示记录 host 信息)
除了命令行,阿里云、腾讯云等云厂商自带工作台(workbench),也可以使用 Xshell 等客户端进行连接。
5.9 scp 远程拷贝命令
scp 是基于 ssh 协议的远程拷贝工具,用于在本地与远程服务器之间传输文件,弥补本地拷贝的不足。
scp 本地文件 用户名@公网IP:远程目录 # 本地文件上传到远程
scp 用户名@公网IP:远程文件 本地目录 # 远程文件下载到本地
5.10 服务管理指令
Linux 服务通常通过 systemctl 或 service 命令进行管理,常用操作如下:
sudo systemctl start 服务名 # 启动服务
sudo systemctl stop 服务名 # 停止服务
sudo systemctl restart 服务名 # 重启服务
sudo systemctl enable 服务名 # 设置开机自启
sudo systemctl status 服务名 # 查看服务状态
service 服务名 start # 启动服务(旧版方式)
Nginx 是一款高性能的 Web 服务器和反向代理服务器。安装后通常通过 systemctl 或 nginx 命令进行管理。
sudo apt install nginx # Ubuntu/Debian 安装
sudo yum install nginx # CentOS/RHEL 安装
sudo systemctl start nginx # 启动 Nginx
sudo systemctl stop nginx # 停止 Nginx
sudo systemctl restart nginx # 重启 Nginx
sudo systemctl reload nginx # 平滑重载配置
sudo systemctl enable nginx # 设置开机自启
sudo systemctl status nginx # 查看运行状态
nginx -t # 测试配置文件语法
nginx -s reload # 重载配置(无需 systemctl)
5. 总结
Linux 以其开源、稳定和灵活的特性成为开发与运维领域的基石。掌握常用目录、基础指令和常用软件,是入门 Linux 的第一步。建议读者在虚拟机或云服务器上动手实践,通过反复练习逐步熟悉命令行操作,为后续深入学习系统管理、网络配置和自动化运维打下坚实基础。
openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构
更多推荐

所有评论(0)