来源链接:https://www.bilibili.com/video/BV1cq421w72c/
Linux 入门笔记
1. Linux 简介
- Linux 是一种开源、免费的类 Unix 操作系统,由 Linus Torvalds 在 1991 年首次发布。
- Linux 内核 是 Linux 系统的核心,负责管理硬件资源和提供基础服务(如设备驱动、进程管理、内存管理、文件系统、网络协议等)。
- 开源 :Linux 使用 GNU General Public License (GPL) 许可证,允许任何人自由使用、修改和分发。
- 发行版:基于 Linux 内核的完整操作系统,如 Ubuntu、Debian、CentOS、Kali 等,每个发行版有其特定的目标用户和特性。
2. Linux 系统结构
- 内核(Kernel):Linux 系统的核心,负责底层资源管理。
- 系统库(System Libraries) :提供开发应用程序所需的函数接口,如 C 标准库(
glibc)。
- Shell :命令行解释器,是用户与 Linux 系统交互的界面。常见的 Shell 包括
Bash、Zsh 等。
- 应用程序(Applications):用户日常使用的软件,如浏览器、编辑器、办公软件等。
3. Linux 发行版介绍
| 发行版 |
特点 |
| Ubuntu |
适合个人桌面用户,易于上手,社区支持强大 |
| Kali Linux |
用于网络安全和渗透测试,预装大量安全工具 |
| Alpine Linux |
体积小巧,适用于容器化应用 |
| Fedora |
由 Red Hat 支持,注重创新和前沿技术 |
4. 安装和配置 Linux 环境
4.1 虚拟机工具推荐
- VirtualBox:跨平台虚拟机工具,适合 Windows 和 macOS 用户。
- VMware:功能强大,适合企业级用户。
- WSL(Windows Subsystem for Linux):在 Windows 上直接运行 Linux 环境。
- Macs :推荐使用 Vagrant 或 Docker 来快速搭建 Linux 环境。
4.2 Mac 上的工具
- Vagrant:轻量级工具,支持多种虚拟化后端(如 VirtualBox、VMware)。
- Docker:用于容器化部署,便于多节点环境搭建(如 Kubernetes 集群)。
4.3 其他工具
- UTM:基于 QEMU 的虚拟机工具,支持多种 CPU 架构(如 x86、ARM、M1/M2)。
- Cloud 服务:如 AWS、Google Cloud 等,提供一键部署 Linux 实例的方案。
5. 常用命令
5.1 文件操作
ls :列出目录内容。
- 示例:
ls -l 显示详细信息;ls -a 显示隐藏文件。
touch:创建空文件或更新文件时间戳。
cat:查看文件内容。
cp :复制文件或目录(需加 -r 参数复制目录)。
mv:移动文件或重命名文件。
rm :删除文件或目录(-r 删除目录)。
mkdir:创建目录。
rmdir:删除空目录。
5.2 权限管理
chmod :修改文件权限。
- 示例:
chmod +x file.sh 添加可执行权限。
- 数字表示法:
755 表示所有者可读、写、执行,其他用户可读、执行。
- 权限分类 :
- 所有者(User):
u
- 组(Group):
g
- 其他(Other):
o
5.3 目录操作
pwd:显示当前工作目录。
cd :切换目录。
- 示例:
cd .. 返回上一级目录;cd / 切换到根目录。
du :查看目录或文件大小。
tree:显示目录结构(需安装)。
6. Vim 编辑器
- Vim 是一个强大的文本编辑器,常用于 Linux 系统中。
- 三种模式 :
- 命令模式:默认模式,用于执行命令。
- 插入模式:用于输入文本。
- 可视模式:用于选择文本。
- 常用快捷键 :
i:进入插入模式。
Esc:退出插入模式。
:wq:保存并退出。
:q!:强制退出不保存。
dd:删除当前行。
yy:复制当前行。
p:粘贴。
7. 其他重要概念
- 符号链接(Symbolic Link):类似于快捷方式,指向另一个文件或目录。
- 硬链接(Hard Link):共享文件的 inode,文件内容相同。
- inode:文件系统的元数据,包含文件权限、大小、时间等信息。
- 路径 :
- 绝对路径 :从根目录开始,如
/home/user/file.txt。
- 相对路径 :相对于当前目录,如
./file.txt、../parent_dir。
8. 小结
- Linux 是一个强大且灵活的操作系统,广泛应用于服务器、开发环境和嵌入式系统。
- 掌握基本命令和文件管理是学习 Linux 的关键。
- 通过虚拟机、容器或云服务可以快速搭建 Linux 环境。