一、什么是Linux?

1.1 Linux的诞生

Linux由芬兰大学生林纳斯·托瓦兹(Linus Torvalds) 于1991年发布。最初只是他个人的兴趣爱好项目,如今已成为全球最重要的开源软件之一。

这里需要澄清一个概念:严格来说,“Linux”仅指系统内核(Kernel) 。我们平常所说的“Linux操作系统”,其实是 “Linux内核 + GNU工具链 + 各种应用软件” 的集合,更准确的叫法是 “GNU/Linux” 。

1.2 Linux的核心特点

  • 开源免费:内核源代码公开,任何人都可以查看、修改和二次开发。绝大多数发行版都可以免费使用。

  • 多用户多任务:支持多个用户同时登录系统,同时运行多个进程,资源调度高效。

  • 一切皆文件:这是Linux最核心的设计理念。硬件、进程、网络配置等均以文件形式存在。

  • 稳定高效:无图形界面的Linux服务器资源占用极低,可连续运行数月甚至数年不宕机。

  • 跨平台:支持x86、ARM等多种架构,可运行在服务器、嵌入式设备、个人电脑等多种硬件上。

1.3 常见Linux发行版

Linux有众多发行版,各有侧重:

发行版特点适用场景
Ubuntu派生自Debian,硬件兼容性好,用户量大桌面端、服务器入门
CentOSRHEL的免费编译版,稳定可靠企业服务器(已转向CentOS Stream)
Debian稳定性强,安全可靠服务器、嵌入式
Fedora红帽的实验版本,技术新桌面端、开发者
Deepin国产发行版,界面美观桌面端

对于初学者,推荐从Ubuntu入手,社区活跃、资料丰富、上手难度低。

二、核心设计哲学

理解Linux的设计哲学,能帮你更好地理解为什么Linux要这样操作。

2.1 一切皆文件

Linux将硬件设备、进程、网络连接等都抽象为文件接口。这意味着:

  • 硬盘是文件(/dev/sda)

  • 键盘是文件(/dev/input/...)

  • CPU信息是文件(/proc/cpuinfo)

你学会了操作文件,就学会了操作Linux的绝大部分内容。

2.2 小而专的工具

每个程序只做一件事,并做到极致。比如:

  • ls 只管列出文件

  • grep 只管文本搜索

  • wc 只管统计字数

2.3 组合优于集成

通过管道符 | 将多个小工具组合起来完成复杂任务。例如:

bash

# 统计当前目录下有多少个文件
ls -l | wc -l

三、环境搭建

在学习之前,你需要一个Linux环境。以下是几种常见方式:

3.1 虚拟机(推荐新手)

使用 VMware 或 VirtualBox 安装Ubuntu/CentOS虚拟机。这种方式最安全,不会影响你的主机系统。

3.2 WSL2(Windows用户)

Windows 10/11用户可以直接启用 WSL2(Windows Subsystem for Linux),在Windows中运行Linux子系统,无需虚拟机。

3.3 云服务器

购买一台云服务器(阿里云、腾讯云等),通过SSH远程连接。这是最接近生产环境的方式。

3.4 远程连接

通过SSH命令连接远程服务器:

ssh root@你的服务器IP

四、Shell与命令行基础

4.1 什么是Shell?

Shell 直译是“外壳”,它是用户与操作系统内核交互的界面。你在终端里看到的黑色窗口和闪烁的光标,就是Shell环境。

简单理解:Shell = 命令解释器。你输入命令,Shell把它翻译给内核执行,再把结果返回给你。

4.2 常用的Shell种类

目前最常用的是 Bash(Bourne Again Shell)。可以通过以下命令查看当前使用的Shell:

echo $SHELL

4.3 命令行提示符

登录后你会看到类似这样的提示符:

[root@localhost ~]#
  • root:当前用户名

  • localhost:主机名

  • ~:当前所在目录(~ 代表用户家目录)

  • #:代表当前是root用户(普通用户显示为 $

五、必学的Linux基础命令

5.1 目录操作命令

命令作用示例
pwd显示当前所在目录的完整路径pwd
ls列出当前目录下的文件和文件夹ls -l(显示详细信息)
cd切换目录cd /home 或 cd ..(返回上级)
mkdir创建新目录mkdir myfolder
rmdir删除空目录rmdir myfolder

5.2 文件操作命令

命令作用示例
touch创建空文件或更新文件时间touch file.txt
cp复制文件或目录cp source.txt dest.txt
mv移动文件或重命名mv oldname.txt newname.txt
rm删除文件或目录rm -r folder(递归删除)
cat查看文件内容cat file.txt
head / tail查看文件开头/结尾tail -n 20 log.txt

5.3 系统信息命令

命令作用
whoami查看当前用户名
hostname查看主机名
uname -a查看系统内核信息
free -h查看内存使用情况
df -h查看磁盘使用情况
top实时查看进程和系统负载

5.4 常用快捷键

  • Ctrl + C:终止当前命令

  • Ctrl + D:退出当前终端

  • Tab:自动补全命令或路径

  •  / :查看命令历史

六、Linux文件系统

6.1 树形目录结构

Linux的文件系统是一个单根树形结构,最顶层是根目录 /与Windows不同,Linux没有C盘、D盘的概念——所有文件和设备都在根目录下。

可以把它想象成一棵倒挂的树:根目录在最上面,子目录像树枝一样向下延伸。

6.2 重要目录详解

Linux遵循 FHS(文件系统层次标准) 来组织目录:

目录用途
/bin存放系统最基本的命令(如ls、cp)
/boot存放启动引导文件,不要乱动 
/dev设备文件目录(硬盘、键盘等)
/etc系统配置文件目录
/home普通用户的家目录
/root超级管理员root的家目录
/lib系统库文件
/proc虚拟文件系统,存放进程和系统信息
/tmp临时文件存放目录
/usr用户程序和数据
/var经常变化的文件(日志等)

记住:在Linux中,一切皆文件。 学会操作文件,就学会了Linux的核心。

七、用户与权限管理

7.1 用户管理

Linux是一个多用户操作系统。常用用户管理命令:

命令作用示例
useradd创建新用户useradd -m zhangsan
passwd设置或修改密码passwd zhangsan
userdel删除用户userdel -r zhangsan
groupadd创建用户组groupadd devteam

7.2 文件权限

在Linux中,每个文件都有三组权限:

  • u(所有者) :文件的主人

  • g(所属组) :文件所属的用户组

  • o(其他人) :其他所有用户

每组权限由三个字符表示:

  • r(read):读取权限

  • w(write):写入权限

  • x(execute):执行权限

查看文件权限:

ls -l

输出示例:-rw-r--r-- 表示这是一个文件,所有者可读写,同组可读,其他人可读。

修改权限:

chmod 755 file.txt     # 数字方式
chmod u+x file.txt     # 符号方式
chown user:group file.txt  # 修改所有者[reference:56]

八、网络配置

8.1 查看网络信息

ip addr show        # 查看IP地址[reference:57]
ping baidu.com      # 测试网络连通性[reference:58]

九、软件安装

Linux安装软件主要有三种方式:

9.1 包管理器安装(最推荐)

包管理器相当于手机上的“应用商店”:

发行版包管理器安装命令
Ubuntu/DebianAPTsudo apt install 软件名
CentOS/RHELYUMsudo yum install 软件名

示例 - 安装Nginx:

# Ubuntu
sudo apt update && sudo apt install nginx

# CentOS
sudo yum install nginx

9.2 源代码编译安装

下载源码 → 编译 → 安装,适合需要定制化编译选项的场景。

9.3 RPM/DEB包安装

直接安装已编译好的软件包文件(.rpm 或 .deb),需要手动处理依赖关系。

Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐