找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

1821

积分

0

好友

255

主题
发表于 2025-12-25 09:35:55 | 查看: 33| 回复: 0

Linux系统凭借其开源、稳定、安全等特性,已成为服务器领域的主流操作系统。对于初级运维工程师而言,扎实的Linux基础是开启职业生涯、胜任后续工作的前提。本文将系统梳理Linux系统认知、环境搭建、核心命令、用户权限管理与实用操作五大模块,帮助你快速构建企业级基础运维能力。

一、Linux系统与运维基础认知

1.1 什么是Linux?

Linux是由林纳斯·托瓦兹(Linus Torvalds)于1991年发起并维护的开源操作系统内核。你可以将内核理解为“毛坯房”,它负责管理硬件、进程、内存等底层核心资源。基于此内核,不同组织或个人封装了各种系统工具和应用软件,形成了多样的Linux发行版,即“精装房”,以满足不同场景的需求。

主流发行版主要分为以下几类,以适应不同的运维场景:

  • 企业服务器常用:CentOS(以稳定著称,现已停止官方维护,推荐其替代品Rocky Linux)、RedHat Enterprise Linux(商业版,提供官方支持)。
  • 开发与桌面常用:Ubuntu(社区活跃,易用性好)、Debian(稳定轻量,常用于服务器和嵌入式设备)。
  • 国产发行版:Deepin(桌面体验友好)、统信UOS/麒麟软件(适配国产化硬件与政务场景)。

1.2 Linux运维的核心优势

Linux之所以成为服务器首选,主要基于三大核心优势:

  • 稳定可靠:能够实现数月甚至数年不间断运行,为电商、金融等需要7x24小时高可用的业务场景提供坚实保障。
  • 高安全性:基于用户-用户组-其他用户的三级权限模型,结合SSH加密、防火墙等机制,构建了有效的安全防线。
  • 资源高效:对硬件资源需求相对较低,即使在配置一般的云服务器或老旧硬件上也能流畅运行,有助于降低企业IT成本。

1.3 初级运维工程师的核心职责

初级运维工程师通常需要负责以下基础而关键的工作:

  • 系统环境搭建:部署虚拟机、云服务器,并配置远程访问。
  • 日常命令操作:熟练使用命令进行文件管理、进程监控和软件安装。
  • 权限管理:创建用户/用户组,合理配置文件和目录权限,防止越权操作。
  • 基础故障排查:检查网络连通性、分析磁盘与内存使用情况等。

二、Linux运维环境搭建实战

“工欲善其事,必先利其器。”掌握多种环境搭建方式,能覆盖从学习到生产的全场景。

2.1 虚拟机搭建(学习与测试首选)

使用VMware Workstation或VirtualBox在本地计算机模拟完整的Linux服务器,适合深度学习和离线练习。

  • 步骤简述
    1. 下载并安装VMware。
    2. 获取Linux发行版ISO镜像(如CentOS 7.x或Ubuntu Server)。
    3. 创建新虚拟机,加载ISO镜像,按照向导完成系统安装(设置root密码、创建普通用户)。
  • 建议:务必启用虚拟机“快照”功能,以便在操作失误时快速回滚,避免重装。

2.2 WSL子系统(Windows快速学习)

Windows Subsystem for Linux (WSL) 可在Windows 10/11上原生运行Linux环境,无需虚拟化开销,启动迅速,适合快速验证命令和脚本。

2.3 云服务器(贴近生产环境)

使用阿里云、腾讯云等提供的云服务器(ECS),是体验真实生产环境的最佳途径。各大云平台通常提供新用户免费试用,是进行网络配置(如安全组规则)、服务部署等实战操作的理想场所。

三、Linux核心命令详解

命令行是运维人员的主要工作界面。以下是必须熟练掌握的高频命令分类解析。

3.1 文件与目录管理

Linux采用单根树形目录结构,所有操作都围绕此展开。

  • ls:列出目录内容。
    • ls -l:长格式显示,包含权限、所有者、大小、时间等详细信息。
    • ls -lh:以易读的单位(K, M, G)显示文件大小。
    • ls -a:显示所有文件,包括隐藏文件(以.开头的文件)。
  • cd:切换工作目录。
    • cd /home:切换到指定目录。
    • cd ..:返回上级目录。
    • cd ~cd:快速回到当前用户的家目录。
  • pwd:显示当前所在目录的绝对路径。
  • mkdir:创建目录。mkdir -p a/b/c可递归创建多层目录。
  • touch:创建空文件或更新文件时间戳。touch file.txt
  • cp:复制文件或目录。
    • cp file1.txt /tmp/:复制文件。
    • cp -r dir1 /tmp/:递归复制整个目录。
  • mv:移动或重命名文件/目录。
    • mv file1.txt file2.txt:重命名。
    • mv file1.txt /tmp/:移动文件。
  • rm:删除文件或目录。
    • rm file.txt:删除文件。
    • rm -r dir/:递归删除目录。
    • 慎用rm -rf /(强制递归删除根目录,会导致系统毁灭)。
  • find:强大的文件查找命令。
    • find / -name "nginx.conf":在全盘查找名为nginx.conf的文件。
    • find /var/log -name "*.log":在/var/log目录下查找所有日志文件。

3.2 文本处理命令

查看、搜索、编辑文本文件是日常运维的核心工作。

  • cat:查看文件全部内容,适合小文件。cat /etc/hostname
  • more / less:分页查看大文件。按空格翻页,按q退出。
  • grep:文本搜索利器。
    • grep "error" /var/log/syslog:在系统日志中搜索包含“error”的行。
    • grep -n "root" /etc/passwd:显示匹配行及其行号。
  • vim:功能强大的文本编辑器,用于修改配置文件。需要掌握基本模式切换(i插入,Esc命令模式,:wq保存退出)。

3.3 系统监控与进程管理

及时掌握系统健康状况是运维的基本功。

  • top / htop:动态实时查看系统资源(CPU、内存)使用情况和进程列表。按q退出。
  • df:查看磁盘空间使用情况。df -h以易读格式显示。
  • free:查看内存使用情况。free -h以易读格式显示。
  • ps:查看进程快照。
    • ps aux:查看所有用户的所有进程详细信息。
    • ps -ef | grep nginx:结合grep查找Nginx相关进程。
  • kill:终止进程。
    • kill 1234:温和地终止PID为1234的进程。
    • kill -9 1234:强制终止该进程。

四、用户、组与权限管理

Linux的权限机制是其安全性的基石,必须透彻理解。

4.1 权限基础概念

权限分为三级:所有者(u)所属组(g)其他用户(o)。每级权限包含读(r)写(w)执行(x)三种。
权限有两种表示法:

  • 字符表示rwxr-xr--
  • 数字表示754(r=4, w=2, x=1, 三者相加。例如:rwx=7, r-x=5, r--=4)

4.2 用户与组管理命令

  • useradd:创建用户。useradd -m -s /bin/bash alice(创建用户alice并生成家目录,指定shell)。
  • passwd:设置用户密码。passwd alice
  • userdel:删除用户。userdel -r alice(同时删除家目录)。
  • groupadd:创建用户组。groupadd developers
  • usermod:修改用户属性。usermod -aG developers alice(将用户alice附加到developers组)。

4.3 文件权限修改命令 chmod

  • 数字法chmod 755 script.sh (所有者rwx, 组和其他用户r-x)。
  • 字符法chmod u+x,g-w,o=r file.txt
  • 递归修改chmod -R 755 /webroot/(修改目录及其内部所有内容)。

4.4 提权与sudo配置

为避免直接使用root账户,通常配置普通用户通过sudo执行特权命令。

  1. 编辑sudoers文件(务必使用visudo命令,它有语法检查):visudo
  2. 在文件末尾添加一行:alice ALL=(ALL) NOPASSWD: ALL(允许用户alice在所有主机上免密码执行所有命令)。
  3. 之后,alice用户即可使用sudo执行管理命令:sudo systemctl restart nginx

五、企业场景实用运维操作

5.1 软件包管理

不同发行版使用不同的包管理工具,这是环境搭建服务部署的基础。

  • CentOS/RHEL/Rocky Linux:使用yumdnf
    yum install -y nginx       # 安装
    yum remove nginx           # 卸载
    yum update                 # 更新所有包
  • Ubuntu/Debian:使用apt
    apt update                 # 更新软件源列表
    apt install -y nginx       # 安装
    apt remove nginx           # 卸载

5.2 网络配置与诊断

  • ip addrifconfig:查看网络接口和IP地址信息(ifconfig可能需要安装net-tools)。
  • ping:测试网络连通性。ping -c 4 8.8.8.8
  • netstatss:查看网络连接、路由表、接口统计。netstat -tlnp | grep :80(查看谁在监听80端口)。
  • systemctl:系统服务管理核心工具,用于管理如Nginx、MySQL、Docker等所有服务。
    systemctl start nginx      # 启动
    systemctl stop nginx       # 停止
    systemctl restart nginx    # 重启
    systemctl status nginx     # 查看状态
    systemctl enable nginx     # 设置开机自启

5.3 文件传输

  • scp:基于SSH的安全拷贝。
    • 本地传远程:scp local_file.txt user@remote_ip:/remote/path/
    • 远程传本地:scp user@remote_ip:/remote/file.txt ./local_path/
  • sftp:交互式的安全文件传输协议。
  • 推荐工具:使用如FinalShell、MobaXterm等图形化工具,通常支持直接拖拽上传下载,更加便捷。

总结

掌握Linux运维基础是一个循序渐进的实践过程。建议从虚拟机或WSL环境开始,反复练习核心命令,理解权限模型。随后,务必在真实的云服务器环境中进行实践,熟悉网络配置、服务部署与监控等生产级操作。遇到问题善于利用man命令、官方文档和社区资源,持续积累经验,才能稳步成长为一名合格的运维工程师




上一篇:Python argparse模块详解:命令行工具Sub-commands与Argument-groups的区别、使用场景与选择指南
下一篇:PCB设计为什么普遍采用偶数层?奇数层的工艺与性能劣势分析
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-1-10 18:19 , Processed in 0.289115 second(s), 37 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2025 云栈社区.

快速回复 返回顶部 返回列表