七天掌握Linux-第一天

107 阅读6分钟

Linux学习第一天:基础入门详解

一、Linux的历史、特点和优势

表格:Linux与其他操作系统的比较

特点/优势LinuxWindowsmacOS
历史背景由林纳斯·托瓦兹于1991年首次发布,基于Unix的开源操作系统由微软公司开发的闭源商业操作系统由苹果公司开发的闭源商业操作系统
开放性完全开源,可以自由获取、修改和分发源代码闭源,源代码不公开闭源,源代码不公开
可定制性高度可定制,可以根据需求进行裁剪和优化可定制性有限,受限于闭源特性可定制性有限,受限于闭源特性
稳定性与安全性稳定性高,安全性好,因为开源社区可以快速修复漏洞和发布更新稳定性和安全性相对较差,易受攻击稳定性和安全性较好,但不如Linux
成本免费或低成本,因为大多数发行版都是免费的,且没有软件许可费用高成本,需要购买软件许可高成本,需要购买硬件和软件
社区支持拥有庞大的开源社区,可以提供丰富的资源和支持社区支持相对有限,主要由微软提供社区支持相对有限,主要由苹果提供
应用领域服务器、嵌入式系统、超级计算机、桌面等广泛领域主要用于桌面和服务器领域主要用于桌面和移动领域

Linux的特点与优势总结

  • 开源性:Linux是开源的,这意味着任何人都可以查看、修改和分发其源代码。这种开放性促进了创新和快速修复漏洞。
  • 稳定性:Linux通常比其他操作系统更稳定,因为它经过了广泛的测试和修补。
  • 安全性:由于Linux的开源性和庞大的社区支持,安全漏洞可以迅速被发现和修复。
  • 可定制性:Linux可以根据特定需求进行裁剪和优化,使其非常适合各种应用场景。
  • 低成本:大多数Linux发行版都是免费的,且没有软件许可费用,这使得Linux成为许多组织和个人的首选。

二、Linux发行版的选择和安装过程

表格:常见的Linux发行版及其特点

发行版特点
Ubuntu用户友好,适合桌面和服务器应用,拥有庞大的社区支持
CentOS稳定的服务器发行版,基于Red Hat Enterprise Linux,免费且开源
Debian高度可定制,适合需要精细控制的用户,是许多其他发行版的基础
Fedora由Red Hat赞助的社区驱动发行版,注重创新和前沿技术
openSUSE提供了良好的桌面和服务器体验,拥有强大的软件包管理系统

Ubuntu安装过程示例

  1. 下载Ubuntu镜像:从Ubuntu官方网站下载最新版本的ISO文件。
  2. 创建启动盘:使用Rufus、Unetbootin等工具将ISO文件写入U盘或DVD。
  3. 启动计算机:将启动盘插入计算机,重启计算机并设置BIOS/UEFI以从启动盘启动。
  4. 安装Ubuntu:按照屏幕上的指示进行安装,包括选择语言、时区、键盘布局等。
  5. 设置用户账户:创建用户账户并设置密码。
  6. 完成安装:重启计算机,完成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和所属组等信息。
  • 用户组管理:使用groupaddgroupdelusermod -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:包含基本的可执行程序,如lscpmv等。
  • /sbin:包含系统管理员使用的系统管理程序,如shutdownfsck等。
  • /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的进阶内容打下坚实的基础。记得在实践中不断巩固所学知识,通过编写脚本和解决实际问题来提升自己的技能水平。