Linux学习第一天:基础入门详解
一、Linux的历史、特点和优势
表格:Linux与其他操作系统的比较
| 特点/优势 | Linux | Windows | macOS |
|---|---|---|---|
| 历史背景 | 由林纳斯·托瓦兹于1991年首次发布,基于Unix的开源操作系统 | 由微软公司开发的闭源商业操作系统 | 由苹果公司开发的闭源商业操作系统 |
| 开放性 | 完全开源,可以自由获取、修改和分发源代码 | 闭源,源代码不公开 | 闭源,源代码不公开 |
| 可定制性 | 高度可定制,可以根据需求进行裁剪和优化 | 可定制性有限,受限于闭源特性 | 可定制性有限,受限于闭源特性 |
| 稳定性与安全性 | 稳定性高,安全性好,因为开源社区可以快速修复漏洞和发布更新 | 稳定性和安全性相对较差,易受攻击 | 稳定性和安全性较好,但不如Linux |
| 成本 | 免费或低成本,因为大多数发行版都是免费的,且没有软件许可费用 | 高成本,需要购买软件许可 | 高成本,需要购买硬件和软件 |
| 社区支持 | 拥有庞大的开源社区,可以提供丰富的资源和支持 | 社区支持相对有限,主要由微软提供 | 社区支持相对有限,主要由苹果提供 |
| 应用领域 | 服务器、嵌入式系统、超级计算机、桌面等广泛领域 | 主要用于桌面和服务器领域 | 主要用于桌面和移动领域 |
Linux的特点与优势总结:
- 开源性:Linux是开源的,这意味着任何人都可以查看、修改和分发其源代码。这种开放性促进了创新和快速修复漏洞。
- 稳定性:Linux通常比其他操作系统更稳定,因为它经过了广泛的测试和修补。
- 安全性:由于Linux的开源性和庞大的社区支持,安全漏洞可以迅速被发现和修复。
- 可定制性:Linux可以根据特定需求进行裁剪和优化,使其非常适合各种应用场景。
- 低成本:大多数Linux发行版都是免费的,且没有软件许可费用,这使得Linux成为许多组织和个人的首选。
二、Linux发行版的选择和安装过程
表格:常见的Linux发行版及其特点
| 发行版 | 特点 |
|---|---|
| Ubuntu | 用户友好,适合桌面和服务器应用,拥有庞大的社区支持 |
| CentOS | 稳定的服务器发行版,基于Red Hat Enterprise Linux,免费且开源 |
| Debian | 高度可定制,适合需要精细控制的用户,是许多其他发行版的基础 |
| Fedora | 由Red Hat赞助的社区驱动发行版,注重创新和前沿技术 |
| openSUSE | 提供了良好的桌面和服务器体验,拥有强大的软件包管理系统 |
Ubuntu安装过程示例:
- 下载Ubuntu镜像:从Ubuntu官方网站下载最新版本的ISO文件。
- 创建启动盘:使用Rufus、Unetbootin等工具将ISO文件写入U盘或DVD。
- 启动计算机:将启动盘插入计算机,重启计算机并设置BIOS/UEFI以从启动盘启动。
- 安装Ubuntu:按照屏幕上的指示进行安装,包括选择语言、时区、键盘布局等。
- 设置用户账户:创建用户账户并设置密码。
- 完成安装:重启计算机,完成Ubuntu的安装过程。
三、Linux系统的初始配置
网络设置:
- 配置静态IP:编辑
/etc/network/interfaces文件(对于基于Debian的发行版)或/etc/sysconfig/network-scripts/ifcfg-eth0文件(对于基于Red Hat的发行版),设置IP地址、子网掩码、网关和DNS服务器。 - 配置动态IP:确保NetworkManager服务正在运行,并使用
nmcli命令或图形化网络管理工具进行配置。
用户管理:
- 添加用户:使用
adduser命令添加新用户。 - 删除用户:使用
deluser命令删除用户。 - 修改用户密码:使用
passwd命令修改用户密码。 - 查看用户信息:使用
id命令查看用户的UID、GID和所属组等信息。 - 用户组管理:使用
groupadd、groupdel和usermod -aG等命令管理用户组。
四、Linux的基本命令和文件系统结构
表格:常见的Linux基本命令及其功能
| 命令 | 功能 |
|---|---|
ls | 列出目录内容 |
cd | 更改当前目录 |
pwd | 显示当前工作目录的完整路径 |
mkdir | 创建新目录 |
rmdir | 删除空目录 |
rm | 删除文件或目录(使用-r选项递归删除目录) |
cp | 复制文件或目录 |
mv | 移动或重命名文件或目录 |
cat | 连接文件并打印到标准输出设备(通常是屏幕) |
more | 分页显示文件内容 |
less | 分页显示文件内容,但比more更灵活,支持向前翻页 |
head | 显示文件的开头部分(默认显示前10行,可以使用-n选项指定行数) |
tail | 显示文件的末尾部分(默认显示最后10行,可以使用-n选项指定行数) |
Linux文件系统结构:
Linux文件系统采用树状结构,根目录为/。以下是一些常见的目录及其功能:
/:根目录,包含所有其他目录和文件的顶级目录。/bin:包含基本的可执行程序,如ls、cp、mv等。/sbin:包含系统管理员使用的系统管理程序,如shutdown、fsck等。/etc:包含系统配置文件,如/etc/passwd(用户账户信息)、/etc/hosts(主机名与IP地址映射)等。/home:包含用户的主目录,每个用户都有一个以用户名命名的子目录。/root:超级用户(root)的主目录。/usr:包含用户级别的应用程序和库文件,如/usr/bin(用户级别的可执行程序)、/usr/lib(库文件)等。/var:包含系统运行时需要改变数据的文件,如日志文件(/var/log)、邮件队列(/var/spool/mail)等。/tmp:用于存储临时文件。/opt:用于安装第三方软件包。/mnt和/media:用于挂载文件系统(如CD-ROM、USB驱动器)的临时挂载点。
五、例子代码与代码运行流程图
例子代码:列出当前目录及其子目录中的所有文件
bash复制代码
#!/bin/bash
# 使用find命令递归列出当前目录及其子目录中的所有文件
find . -type f
六、总结
通过第一天的学习,你应该对Linux的历史、特点和优势有了基本的了解,掌握了Linux发行版的选择和安装过程,完成了Linux系统的初始配置(包括网络设置和用户管理),并掌握了Linux的基本命令和文件系统结构。这些基础知识将为你后续学习Linux的进阶内容打下坚实的基础。记得在实践中不断巩固所学知识,通过编写脚本和解决实际问题来提升自己的技能水平。