Linux 操作系统入门指南:从目录结构到常用命令

大家好,Linux 是后端开发、运维部署和数据科学领域不可或缺的操作系统。与 Windows 不同,Linux 没有盘符的概念,一切从根目录 / 开始。本文将系统性地讲解 Linux 的目录结构 、文件操作 、用户管理 、权限控制 、网络配置 以及常用工具,帮助你快速上手 Linux 环境。


一、Linux 目录结构

Linux 采用树形目录结构,所有文件和目录都从根目录 / 开始,没有 Windows 中的 C 盘、D 盘概念。

1.1 重要目录说明

目录 说明
/ 根目录,整个文件系统的起点
/etc 系统配置文件目录(如 /etc/apt/sources.list 为软件源配置)
/root 超级管理员(root)的家目录
/home 普通用户的家目录(如 /home/zzy)
/lib 系统依赖库文件
/opt 第三方软件存放位置
/proc 进程目录,存放系统运行时的进程信息
/var 软件工作区,存放日志等动态数据
/tmp 临时文件目录,重启后通常被清空
/bin 普通用户可执行的命令
/usr/bin 普通用户可执行的命令
/sbin 管理员可执行的系统命令
/usr/sbin 管理员可执行的系统命令
复制代码
# 查看当前所在目录
pwd

# 查看根目录下的内容
ls /

二、文件与目录管理

2.1 查看目录内容:ls

ls 用于列出目录中的文件和文件夹。

选项 说明
-l 以列表形式展示详细信息
-h 以人类可读方式显示文件大小
-a 显示所有文件(包括以 . 开头的隐藏文件)
-d 显示目录本身的信息
复制代码
ls -l          # 列表形式展示
ls -lh         # 列表形式 + 人性化大小
ls -alh        # 显示所有文件(含隐藏)+ 列表 + 人性化大小

2.2 切换目录:cd

命令 说明
cd / 进入根目录
cd .. 进入父级目录
cd ~ 回到家目录
cd - 回到上次所在路径
复制代码
cd /           # 进入根目录
cd /home       # 进入 /home 目录(普通用户的家目录)
cd ..          # 回到上一级
cd ~           # 回到家目录
cd -           # 回到上次所在的路径

2.3 创建目录:mkdir

复制代码
mkdir my_folder              # 创建单个文件夹
mkdir folder1 folder2        # 创建多个文件夹
mkdir -p a/b/c               # 递归创建多级目录

2.4 删除目录:rmdir 与 rm -rf

复制代码
rmdir empty_folder           # 删除空文件夹
rm -rf my_folder             # 递归强制删除文件夹(含所有内容)

2.5 创建文件:touch

复制代码
touch file.txt               # 创建单个文件
touch file1.txt file2.txt    # 创建多个文件

2.6 删除文件:rm

复制代码
rm file.txt                  # 删除文件
rm -f file.txt               # 强制删除(不提示确认)

三、文件复制、移动与链接

3.1 复制:cp

复制代码
cp 源文件 目标路径/              # 复制到目标路径(保持原名)
cp 源文件 目标路径/新文件名       # 复制并重命名
cp -r 源目录 目标目录            # 递归复制整个目录

3.2 移动/重命名:mv

复制代码
mv 原文件 目标路径/              # 移动到目标路径
mv 原文件 目标路径/新文件名       # 移动并重命名
mv 旧文件名 新文件名              # 重命名(在同一目录下)

3.3 链接:ln

硬链接:多个文件名指向同一份数据,删除一个不影响另一个。

复制代码
ln 原文件 硬链接名
# 特点:
# - 不能连接文件夹
# - 文件大小与源文件一致
# - 修改一个文件,另一个同步更新
# - 删除一个文件,另一个正常使用

软链接:相当于快捷方式,指向源文件。

复制代码
ln -s 原文件 软链接名
# 特点:
# - 可以连接文件夹
# - 占用空间很小
# - 修改一个文件,另一个同步更新
# - 删除源文件,软链接失效

四、查看文件内容

4.1 基本查看命令

命令 说明
cat 查看整个文件
head -n 查看文件开头 N 行(默认 10 行)
tail -n 查看文件末尾 N 行(默认 10 行)
more 分页查看(每次翻一页)
less 分页查看(每次翻一行,适合仔细阅读)
复制代码
cat file.txt                 # 查看整个文件
head -n 5 file.txt           # 查看前 5 行
tail -n 20 file.txt          # 查看末尾 20 行
tail -f log.txt              # 实时追踪日志
more file.txt                # 分页查看(空格翻页,q退出)
less file.txt                # 分页查看(更细粒度)

4.2 统计:wc

选项 说明
-l 统计行数
-w 统计单词数
-m 统计字符数
复制代码
wc -l file.txt               # 统计行数
wc -w file.txt               # 统计单词数
wc -m file.txt               # 统计字符数

4.3 重定向与管道

复制代码
# 重定向(覆盖写入)
ls -alh > info.txt

# 重定向(追加写入)
ls -alh >> info.txt

# 管道:将左侧输出作为右侧输入
cat file.txt | more
ls -alh | grep "txt"

4.4 过滤:grep

复制代码
cat file.txt | grep "关键词"
cat file.txt | grep -n "关键词"    # 显示行号
ps -ef | grep nginx               # 查找指定进程

五、用户与权限管理

5.1 用户管理

复制代码
# 创建用户(-m 自动创建家目录,-s 指定 shell)
useradd -m -s /bin/bash 用户名

# 删除用户(-r 删除家目录)
userdel -r 用户名

# 设置密码
passwd 用户名

# 切换用户
su 用户名        # 切换到指定用户
su              # 切换到 root
exit            # 退出当前用户


# 用户组管理
groupadd 组名   # 添加组
groupdel 组名   # 删除组

5.2 权限管理

Linux 中每个文件/目录有三组权限:

权限位 含义
r 可读(4)
w 可写(2)
x 可执行(1)
- 无权限(0)

三组权限分别对应:所有者(u) 、组(g) 、其他用户(o)。

复制代码
# 数字方式修改权限
chmod 755 file.txt    # u=rwx, g=rx, o=rx
chmod 644 file.txt    # u=rw, g=r, o=r
chmod 777 file.txt    # 所有用户都有读写执行权限

# 符号方式修改权限
chmod u+x file.sh     # 为所有者添加执行权限
chmod go-w file.txt   # 移除组和其他用户的写权限
chmod -R 755 folder/  # 递归修改目录权限

# 修改文件所有者
chown 用户名:组名 文件名

六、系统信息与网络工具

6.1 系统信息

命令 说明
uname 查看操作系统信息
lscpu 查看 CPU 信息
free -h 查看内存使用情况
df -h 查看磁盘使用情况
复制代码
uname -a        # 查看系统详细信息
lscpu           # CPU 架构与核心信息
free -h         # 内存(人类可读格式)
df -h           # 磁盘分区使用情况

6.2 网络工具

命令 说明
ip address / ifconfig 查看 IP 地址
ping 测试网络连通性
netstat / ss 查看网络端口和连接
复制代码
ip addr          # 查看 IP 地址
ping baidu.com   # 测试网络连通
ss -tuln         # 查看监听端口(t=tcp, u=udp, l=监听, n=数字)

6.3 下载与请求

复制代码
wget https://example.com/file.zip      # 下载文件
wget -O newname.zip 网址               # 下载并重命名

curl https://api.example.com/data      # GET 请求
curl -I https://example.com            # 查看响应头

七、进程管理

复制代码
# 查看进程
ps -ef                   # 查看所有进程
ps aux                   # 查看所有进程(BSD 风格)
ps -ef | grep nginx      # 查找指定进程

# 终止进程
kill -9 PID              # 强制终止进程
pkill nginx              # 按名称终止进程

八、软件管理与远程连接

8.1 apt 软件包管理

复制代码
apt update               # 更新软件源索引
apt install 软件名        # 安装软件
apt remove 软件名         # 卸载软件
apt install vim          # 安装 vim 编辑器
apt remove vim           # 卸载 vim

8.2 SSH 远程连接

复制代码
# 安装 SSH 服务端
sudo apt install openssh-server

# 服务管理
service ssh status       # 查看状态
service ssh start        # 启动服务
service ssh stop         # 停止服务
service ssh restart      # 重启服务

# systemctl 方式(新版)
systemctl status ssh
systemctl start ssh
systemctl enable ssh     # 设置开机自启

# 远程连接
ssh 用户名@服务器IP

8.3 远程传输:scp

复制代码
# 上传文件到服务器
scp 文件名 用户名@IP:目标路径/

# 上传文件夹(-r 递归)
scp -r 文件夹名 用户名@IP:目标路径/

# 从服务器下载
scp 用户名@IP:文件名 本地路径/

九、Vim 编辑器基础

9.1 三种模式

模式 说明
普通模式 浏览、删除、复制、粘贴
插入模式 输入文本
命令模式 保存、退出、搜索

9.2 普通模式常用操作

操作 命令
光标移动 h 左、j 下、k 上、l 右
文件开头 gg
文件末尾 G
跳转到指定行 :行号
复制当前行 yy
复制 N 行 N yy
粘贴 p
删除当前行 dd
删除字符 x
删除光标后内容 D
撤销 u
重做 Ctrl + r

9.3 插入模式

命令 说明
i 光标前插入
I 行首插入
a 光标后插入
A 行尾插入
o 当前行下方新建一行
O 当前行上方新建一行

9.4 命令模式

复制代码
:wq              # 保存并退出
:q!              # 强制退出(不保存)
:set nu          # 显示行号
:set nonu        # 隐藏行号

# 搜索
/关键词           # 向下搜索
?关键词           # 向上搜索
n                # 查找下一个
N                # 查找上一个

9.5 交换文件处理

非正常关闭 Vim 会产生 .swp 交换文件。处理方法:

复制代码
# 查看并删除 .swp 文件
ls -la           # 找到 .file.txt.swp
rm .file.txt.swp # 删除交换文件
vim file.txt     # 重新打开

十、Nginx 与 Ollama

10.1 Nginx 安装与使用

复制代码
# 安装
apt install nginx

# 服务管理
systemctl start nginx
systemctl stop nginx
systemctl restart nginx
systemctl status nginx

10.2 Ollama 部署

复制代码
# 安装 Ollama
curl -fsSL https://ollama.com/install.sh | sh

# 启动服务(允许远程访问)
OLLAMA_HOST=0.0.0.0:11434 ollama serve

# 模型管理
ollama list          # 查看已下载的模型
ollama pull 模型名    # 下载模型
ollama rm 模型名      # 删除模型
ollama run 模型名     # 运行模型(未下载则自动下载)
ollama ps            # 查看正在运行的模型
ollama stop 模型名    # 停止模型

10.3 CUDA 简介

CUDA 是 NVIDIA 推出的并行计算平台,允许程序利用 GPU 进行加速运算。在部署 AI 模型时,安装 CUDA 可以显著提升推理速度。


十一、常用命令速查表

分类 常用命令
目录操作 pwd、ls -alh、cd ~、mkdir -p
文件操作 touch、cp -r、mv、rm -rf、ln -s
文件查看 cat、head -n、tail -f、less、wc -l
文本处理 grep -n、`
权限管理 chmod 755、chown user:group
用户管理 useradd -m、passwd、su、groupadd
进程管理 ps -ef、top、kill -9
网络工具 ip addr、ping、ss -tuln、wget、curl
软件管理 apt update、apt install
远程连接 ssh user@ip、scp、service ssh start
Vim 编辑 i(插入)、dd(删除行)、:wq(保存退出)

十二、总结

分类 核心内容
目录结构 根目录 / 为起点,无盘符概念
文件操作 ls、cp、mv、rm、ln -s
权限管理 r=4、w=2、x=1,chmod 数字/符号方式
用户管理 useradd、passwd、su、exit
文本处理 cat、head、tail、grep、wc、管道
网络工具 ping、ssh、scp、curl、wget
进程管理 ps、top、kill
软件管理 apt update、apt install、systemctl

Linux 操作系统的学习重在实践。建议在自己的服务器或虚拟机中反复练习这些命令,逐步形成操作习惯。掌握这些基础技能,是迈向运维开发、服务部署和自动化管理的重要一步。

如果觉得这篇内容对你有帮助,欢迎收藏备用。

相关推荐
且从容.1 小时前
Ubuntu安装flume
linux·ubuntu·flume
承渊政道1 小时前
Linux网络学习【Reactor反应堆模式】
linux·网络·学习·ubuntu·reactor
讯捷蓝达3 小时前
戴尔R720xd服务器卡死在 “Configuring Memory...Done“,换了内存还是卡?问题根本不在内存
运维·服务器
且从容.4 小时前
ubuntu安装flink
linux·ubuntu·flink
数字新视界6 小时前
动环监控信创适配在智能机房管理中的应用价值与未来展望
大数据·服务器·数据库·动环监控系统·动力与环境监控系统
爱和冰阔落6 小时前
【Linux网络】TCP 服务器如何并发处理多个客户端?从 fork、僵尸进程到双重 fork
linux·运维·服务器·网络
程序员沉梦听雨6 小时前
WSL2的安装与使用
linux·wsl
微小的鱼6 小时前
Linux的渲染与显示系统链路
android·java·linux
lisanmengmeng6 小时前
alertmanger 标签 rules 打上分组标签
linux·运维·服务器
Android系统攻城狮7 小时前
Linux FFmpeg深度解析之av_write_frame调用流程与实战(三十三)
linux·运维·服务器·ffmpeg·音视频进阶·ffmpeg音视频