1. Linux系统基础操作入门指南
作为一名在Linux环境下工作多年的老鸟,我经常被问到"如何快速上手Linux基础操作"。今天我就把十年来积累的Linux入门经验整理成这篇万字指南,涵盖从系统安装到日常运维的全套基础技能。无论你是刚接触Linux的学生,还是准备转行做运维的职场人,这篇文章都能帮你少走弯路。
Linux作为服务器领域的绝对霸主,其重要性不言而喻。根据2023年Stack Overflow开发者调查,超过40%的专业开发者日常使用Linux系统。不同于Windows的图形界面操作,Linux更强调命令行的高效性——这既是它的优势,也是新手面临的第一个门槛。下面我们就从最基础的安装配置开始,逐步掌握这个强大系统的使用要领。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. Linux系统安装与环境配置
2.1 选择合适的Linux发行版
面对数百种Linux发行版,新手常会陷入选择困难。我的建议是:从主流发行版入手。Ubuntu LTS版(长期支持版)是最友好的入门选择,它有完善的社区支持和丰富的软件库。如果你计划从事运维工作,CentOS或Rocky Linux这类企业级发行版更值得学习。
提示:避免在实体机直接安装不熟悉的发行版,先用虚拟机(VirtualBox或VMware)练习安装过程。
安装时重点关注以下几个参数设置:
- 分区方案:建议新手选择"自动分区"
- 软件选择:桌面用户勾选"标准系统工具",服务器环境选择"最小安装"
- 网络配置:优先使用DHCP自动获取IP
2.2 首次登录后的必要配置
安装完成后,第一件事是更新系统:
bash复制sudo apt update && sudo apt upgrade -y # Ubuntu/Debian系
sudo yum update -y # CentOS/Rocky Linux系
接着配置基础环境:
- 创建日常用户(避免直接使用root):
bash复制sudo adduser yourname sudo usermod -aG sudo yourname # 授予管理员权限 - 设置静态IP(如需):
bash复制sudo nano /etc/netplan/01-netcfg.yaml # Ubuntu sudo nmtui # CentOS图形化配置工具 - 安装基础工具包:
bash复制sudo apt install -y vim git curl wget # Ubuntu sudo yum install -y vim git curl wget # CentOS
3. Linux文件系统与目录结构
3.1 理解Linux文件系统层次
Linux采用单一的树状目录结构,与Windows的盘符划分截然不同。关键目录包括:
/:根目录,所有路径的起点/home:用户主目录,相当于Windows的"用户"文件夹/etc:系统配置文件存放位置/var:经常变化的文件(如日志)/usr:用户程序和数据
查看目录大小的实用命令:
bash复制du -sh /path/to/directory # 查看目录总大小
df -h # 查看磁盘使用情况
3.2 文件操作基础命令
掌握这些命令可以完成90%的日常文件操作:
bash复制ls -alh # 详细列出文件(含隐藏文件)
cp -r source_dir target_dir # 递归复制目录
mv oldname newname # 重命名或移动文件
rm -rf dir_name # 强制删除目录(慎用!)
find / -name "*.log" # 全盘搜索.log文件
重要提醒:Linux没有回收站机制,
rm -rf删除的文件极难恢复,操作前务必确认路径!
4. 用户权限与进程管理
4.1 用户和权限体系
Linux采用严格的权限控制,每个文件和目录都有所属用户(user)、所属组(group)和其他人(other)的读写执行权限(rwx)。查看权限:
bash复制ls -l filename # 查看详细权限
chmod 755 script.sh # 修改文件权限
chown user:group file # 修改文件所有者
权限数字表示法:
- 4 = 读(r)
- 2 = 写(w)
- 1 = 执行(x)
- 7 = 4+2+1 (rwx)
- 6 = 4+2 (rw-)
4.2 进程监控与管理
基本进程命令:
bash复制ps aux | grep nginx # 查看nginx进程
top # 动态查看系统资源占用
kill -9 PID # 强制终止进程
systemctl start/stop/restart service_name # 服务管理
后台运行程序的小技巧:
bash复制nohup command & # 断开SSH后继续运行
screen -S session_name # 创建可断开的会话
5. 网络配置与常用服务
5.1 网络基础配置
查看网络信息:
bash复制ip addr # 查看IP地址
ping baidu.com # 测试网络连通性
netstat -tulnp # 查看端口监听情况
ss -tulnp # netstat的现代替代品
配置静态IP(以Ubuntu为例):
- 编辑网络配置文件:
bash复制sudo nano /etc/netplan/01-netcfg.yaml - 添加配置(示例):
yaml复制network: version: 2 ethernets: ens33: addresses: [192.168.1.100/24] gateway4: 192.168.1.1 nameservers: addresses: [8.8.8.8, 114.114.114.114] - 应用配置:
bash复制sudo netplan apply
5.2 常用服务安装
安装Docker:
bash复制curl -fsSL https://get.docker.com | sh # 一键安装
sudo systemctl enable --now docker # 设置开机自启
安装MySQL:
bash复制sudo apt install mysql-server # Ubuntu
sudo yum install mysql-community-server # CentOS
sudo systemctl start mysqld
sudo mysql_secure_installation # 安全初始化
6. 实用技巧与问题排查
6.1 提高效率的技巧
-
命令历史与补全:
bash复制history | grep apt # 搜索历史命令 Ctrl+R # 反向搜索历史命令 Tab键 # 自动补全命令和文件名 -
别名设置(添加到~/.bashrc):
bash复制alias ll='ls -alh' alias update='sudo apt update && sudo apt upgrade -y' -
管道与重定向:
bash复制cat access.log | grep "404" > 404.log # 过滤并保存结果 command 2>&1 | tee output.log # 同时输出到屏幕和文件
6.2 常见问题排查
-
权限被拒绝:
bash复制sudo !! # 用sudo重新执行上条命令 -
服务启动失败:
bash复制journalctl -xe # 查看系统日志 systemctl status service_name # 查看服务状态 -
磁盘空间不足:
bash复制du -h --max-depth=1 / # 查找大目录 find / -type f -size +100M # 查找大于100M的文件 -
网络连接问题:
bash复制traceroute baidu.com # 跟踪路由 mtr baidu.com # 更强大的网络诊断工具
7. 进阶学习路径建议
掌握基础操作后,可以逐步学习以下内容:
- Shell脚本编程(自动化重复任务)
- 正则表达式(高效文本处理)
- SSH密钥认证与安全加固
- 容器技术(Docker/Podman)
- 性能监控与优化(top/vmstat/iostat)
推荐的学习资源:
- Linux命令行大全(William Shotts著)
- Linux就该这么学(刘遄著)
- https://linuxjourney.com(免费在线教程)
最后分享一个我常用的命令备忘表:
| 功能 | 命令示例 |
|---|---|
| 查看帮助 | man ls / ls --help |
| 查找文件 | find / -name "*.conf" |
| 查看CPU信息 | lscpu / cat /proc/cpuinfo |
| 内存使用 | free -h |
| 压缩解压 | tar -czvf archive.tar.gz dir |
| 定时任务 | crontab -e |
| 查看内核版本 | uname -a |
| 查看环境变量 | printenv |
