1. 简介与历史
1.1 起源
- 创始人:Linus Torvalds(芬兰赫尔辛基大学学生)
- 初衷:设计一个替代Minix的全功能Unix操作系统
- 首次发布:1991年10月5日,Linux v0.01版本
2. Linux特点
- 多用户多任务:用户间权限隔离,互不干扰
- 开源免费:可自由获取、修改源代码
- 更新便捷:如CentOS的yum在线升级
- 高度可定制:适应不同应用场景
3. 系统架构
3.1 核心组件
- 内核:管理系统进程、内存、设备驱动、文件和网络系统
- Shell:用户与内核的交互接口,兼具命令解释器和编程语言功能
- 文件系统:支持多种格式,统一管理存储资源
- 应用程序:包括文本编辑器、编程语言等多种工具
4. 启动流程
- BIOS自检,加载硬盘
- 读取并执行MBR引导
- GRUB引导菜单加载
- 加载内核,构建核心环境
- 启动init进程,设定运行级别
- 执行rc.sysinit文件配置
- 启动内核模块,执行级别脚本
- 运行rc.local脚本
- 启动mingetty,进入登录界面
5. 文件系统
5.1 主要目录结构
/bin
:二进制可执行文件/sbin
:系统管理员可执行文件/etc
:系统配置文件/usr
:共享系统资源/home
:用户主目录/root
:超级用户目录/dev
:设备文件/lib
:共享库和内核模块/mnt
:临时挂载点/boot
:系统引导文件/tmp
:临时文件/var
:可变数据文件
5.2 关键系统文件
/etc/passwd
:用户信息/etc/shadow
:加密用户密码/etc/group
:用户组信息/etc/gshadow
:用户组密码信息/var/*
:动态数据存储(日志、缓存等)
6. 常用命令
6.1 命令分类
- 内部命令:Shell解析器的一部分(如cd、pwd)
- 外部命令:独立程序文件(如ls、mkdir)
6.2 文件和目录操作
ls
:列出文件和目录cd
:切换目录pwd
:显示当前路径mkdir
:创建目录rm
:删除文件或目录cp
:复制mv
:移动或重命名touch
:创建空文件cat
、more
、less
:查看文件内容find
:查找文件
6.3 系统信息
uname
:显示系统信息dmidecode
:显示硬件信息hdparm
:硬盘参数操作
6.4 进程管理
ps
:显示进程状态kill
:终止进程
6.5 磁盘管理
du
:统计磁盘使用情况df
:显示文件系统使用情况
6.6 网络操作
ifconfig
:配置网络接口ping
:测试网络连通性netstat
:显示网络状态
6.7 系统控制
shutdown
、init
、halt
、reboot
:关机和重启命令
7. 权限管理
- 基本权限:读(R=4)、写(W=2)、执行(X=1)
- 权限设置:使用chmod命令,如
chmod 750 file.txt
8. VIM编辑器
8.1 工作模式
- 一般模式:默认模式,可执行复制、删除等操作
- 编辑模式:用于文本输入
- 末行模式:执行保存、退出等命令
9. SSH远程连接
- 协议:SSH2(安全加密)
- 常用实现:OpenSSH
- 服务端配置:
- 安装:
sudo apt-get install ssh
- 管理:
service ssh start/stop/restart/status
- 配置:编辑
/etc/ssh/sshd_config
- 安装:
- 客户端连接:使用MobaXterm等工具,设置协议、IP、用户名、端口
10. Linux与Windows的区别
-
费用:Linux免费,Windows需购买。
- 适用对象:Linux适合企业服务器,Windows适合大众。
- 操作风格:Windows界面化操作,Linux多命令行操作。
- 支持软件:Windows软件数量和质量有优势,Linux相对缺乏。
- 文件格式:Windows内核是NT,Linux是shell。
- 安全性:Linux较Windows安全,无需额外安全软件。
- 可定制性:Linux可定制性高,Windows受限制。
- 程序可移植性:Linux可移植性好,Windows程序基本不兼容Linux。
11. 学习建议
- 多动手实践,使用虚拟机或在线Linux环境
- 熟悉基本命令行操作
- 了解系统结构和文件系统层次
- 学习Shell脚本编程
- 关注Linux社区和最新发展