侧边栏壁纸
博主头像
phphi

phphi's blog

  • 累计撰写 51 篇文章
  • 累计收到 0 条评论

34-35.玩转Linux操作系统

2026-4-24 / 0 评论 / 2 阅读

玩转 Linux 操作系统

Linux 发展简史

  • 1969:Ken Thompson 在 PDP-7 上开发 Unix
  • 1973:Dennis Ritchie 用 C 语言重写 Unix
  • 1991:Linus Torvalds 在 Minix 基础上开发 Linux 内核

主流发行版:Ubuntu、CentOS、RedHat、Debian、Fedora

基础命令

系统信息

uname -a              # 查看系统信息
hostname              # 主机名
cat /etc/os-release   # 系统版本
w / who / last        # 登录用户
ps                    # 查看进程

文件操作

ls -la                # 列出文件(长格式,含隐藏)
cd / path / ..        # 切换目录
pwd                   # 当前目录
mkdir -p a/b/c        # 创建目录(含父目录)
touch file.txt        # 创建文件
cp src dst            # 复制
mv src dst            # 移动/重命名
rm -rf path           # 强制删除目录

# 查看文件
cat file.txt          # 全部内容
head -n 10 file.txt   # 前10行
tail -n 10 file.txt    # 后10行
less file.txt          # 分页查看

查找

find / -name "*.py"           # 按文件名查找
find . -type f -size +1M       # 按大小查找
grep -rn "keyword" ./         # 搜索文件内容
which python                   # 查找命令位置

压缩归档

tar -cvf archive.tar ./dir    # 归档
tar -xvf archive.tar          # 解归档
tar -czvf archive.tar.gz ./   # gzip压缩归档
tar -xzvf archive.tar.gz     # 解压
gzip/gunzip file              # 压缩/解压

管道和重定向

cmd1 | cmd2            # cmd1的输出作为cmd2的输入
cmd > file.txt         # 输出重定向(覆盖)
cmd >> file.txt        # 追加重定向
cmd 2> error.log       # 错误重定向
cmd &> all.log         # 输出和错误都重定向
cmd < file.txt         # 输入重定向

用户管理

useradd username       # 创建用户
userdel username       # 删除用户
passwd username        # 设置密码
su - username          # 切换用户
sudo cmd              # 以root执行
visudo                # 编辑sudoers文件

文件权限

# 权限:r(读4) w(写2) x(执行1)
# 对象:u(用户) g(组) o(其他) a(全部)

chmod 755 file         # 数字方式设置权限
chmod u+x file        # 字符方式添加执行权限
chown user:group file  # 改变所有者
chgrp group file       # 改变所属组

磁盘管理

df -h                 # 磁盘使用情况
fdisk -l              # 分区表
mount /dev/sdb1 /mnt  # 挂载
umount /mnt           # 卸载

Vim 编辑器

三种模式

  • 命令模式:启动后的默认模式,i 进入编辑,: 进入末行
  • 编辑模式Esc 返回命令模式
  • 末行模式:保存/退出/查找/替换

常用操作

命令 作用
i 进入编辑模式
dd 删除当前行
yy 复制当前行
p 粘贴
u 撤销
Ctrl+r 重做
/keyword 搜索
:wq 保存退出
:q! 强制退出
gg 到文件首
G 到文件尾
:行号 跳转到指定行
:%s/old/new/g 全局替换
:set nu 显示行号
:%!sort 排序

窗口操作

:sp file        # 水平分屏
:vs file        # 垂直分屏
Ctrl+w w        # 切换窗口

软件安装

yum(CentOS/RHEL)

yum search nginx       # 搜索
yum install nginx      # 安装
yum remove nginx       # 卸载
yum update             # 更新
yum list installed     # 已安装列表

rpm

rpm -ivh package.rpm   # 安装
rpm -e package         # 卸载
rpm -qa | grep name    # 查询

源码编译安装

./configure --prefix=/usr/local/app
make && make install

服务管理

systemctl start nginx    # 启动
systemctl stop nginx     # 停止
systemctl restart nginx   # 重启
systemctl enable nginx    # 开机自启
systemctl status nginx    # 状态

网络相关

ifconfig / ip addr      # IP地址
netstat -tlnp           # 监听端口
ss -tlnp                # 替代netstat
ping host               # 连通性
curl url                # HTTP请求
wget url                # 下载
ssh user@host           # 远程连接
scp file user@host:/path  # 远程拷贝

环境变量

echo $PATH              # 查看PATH
export PATH=$PATH:/new/path  # 添加(临时)
# 永久:写入 ~/.bash_profile 或 /etc/profile
source ~/.bash_profile  # 生效

常用文本处理

sed -i 's/old/new/g' file          # 替换
awk '{print $2}' file              # 取第2列
sort file | uniq                   # 排序去重
wc -l file                         # 统计行数
cut -d: -f1 /etc/passwd           # 剪切字段
tr 'a-z' 'A-Z' < file              # 字符转换

总结

  • 文件系统/etc配置、/home用户、/root管理员、/usr应用
  • 权限:chmod 数字或字符、chown 改所有者
  • Vim:三种模式切换,常用命令(dd/yy/p/u/:/wq)
  • 安装软件:yum/rpm 或源码编译
  • 服务systemctl start/stop/enable
  • 网络ifconfig/ss/curl/ssh/scp