Linux简介

1.Linux定义

Linux 是免费使用和自由传播的类 Unix 操作系统,是基于 POSIX 和 UNIX 的多用户、多任务、支持多线程和多 CPU 的操作系统。Linux 能运行主要的 UNIX 工具软件、应用程序和网络协议。它支持 32 位和 64 位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是性能稳定的多用户网络操作系统。最初是为个人计算机设计的,但由于其开放性、稳定性和灵活性,逐渐发展成为各种设备(包括服务器、超级计算机、移动设备、嵌入式系统等)的主流操作系统。

2.Linux 发行版

将 Linux 内核与应用软件做一个打包。市面上较知名的发行版:Ubuntu、RedHat、CentOS、Debian、Fedora、SuSE、OpenSUSE、Arch Linux、SolusOS 等。这些发行版有不同的特点和应用场景,例如 Ubuntu 是用户友好的桌面发行版,CentOS 和 Debian 是常用的服务器发行版。

3.Linux应用领域

(1)服务器:Linux 是服务器操作系统的主流选择,因其稳定性、安全性和高性能而广泛应用于企业服务器、云计算和数据中心。

(2)嵌入式系统:很多嵌入式设备,如路由器、智能电视等使用 Linux。

(3)超级计算机:Linux 占据超级计算机操作系统的绝大多数份额。

(4)移动设备:Android 操作系统基于 Linux 内核,是全球最流行的移动操作系统。

4.Linux与Windows的区别

Windows :

(1)界面:界面统一,外壳程序固定所有 Windows 程序菜单几乎一致,快捷键也几乎相同。

(2)驱动程序:驱动程序丰富,版本更新频繁。默认安装程序里面一般包含有该版本发布时流行的硬件驱动程序,之后所出的新硬件驱动依赖于硬件厂商提供。对于一些老硬件,如果没有原配的驱动有时很难支持。另外,有时硬件厂商未提供所需版本的 Windows 的驱动,也会比较头痛。

(3)使用:使用比较简单容易入门。图形化界面对没有计算机背景知识的用户使用十分有利。

(4)学习:系统构造复杂、变化频繁,且知识、技能淘汰快,深入学习困难。

(5)软件:每一种特定功能可能都需要商业软件的支持,需要购买相应的授权。

Linux:

(1)界面:图形界面风格依发布版不同而不同,可能互不兼容。GNU/Linux 的终端机是从 UNIX 传承下来,基本命令和操作方法也几乎一致。

(2)驱动程序:由志愿者开发,由 Linux 核心开发小组发布,很多硬件厂商基于版权考虑并未提供驱动程序,尽管多数无需手动安装,但是涉及安装则相对复杂,使得新用户面对驱动程序问题(是否存在和安装方法)会一筹莫展。但是在开源开发模式下,许多老硬件尽管在Windows下很难支持的也容易找到驱动。HP、Intel、AMD 等硬件厂商逐步不同程度支持开源驱动,问题正在得到缓解。

(3)使用:图形界面使用简单容易入门,文字界面需学习才能掌握。

(4)学习:系统构造简单、稳定,知识、技能传承性好,深入学习相对容易。

(5)软件:大部分软件都可以自由获取,同样功能的软件选择较少。

5.开源与自由软件

Linux 是开源软件,意味着源代码公开,任何人可以查看、修改和分发。Linux 使用的开源协议主要是 GNU 通用公共许可证(GPL)。Linux 提供免费使用,用户可以根据需求修改和发布。

6.Linux 内核

内核是 Linux 操作系统的核心,负责管理硬件资源和提供系统基础服务,如进程管理、内存管理、文件系统管理、网络堆栈等。Linux 内核不断更新,拥有活跃的开发社区,功能和性能持续得到优化和增强。

7.类 Unix 设计

Linux 继承了 Unix 系统的设计理念,强调"简单工具、组合功能"的原则。每个工具或命令都专注于完成特定任务,这些工具可以通过管道和重定向来组合实现复杂功能。Unix 和 Linux 的指令、文件系统结构、权限管理等类似,Unix 用户能够较快适应 Linux 系统。

8.多用户、多任务

Linux 支持多个用户同时访问同一台计算机,并为每个用户提供独立的文件系统和权限管理。Linux 可以同时运行多个任务,并提供进程优先级和资源分配机制来确保系统的稳定性和性能。

9.文件系统

Linux 一切皆文件,硬件设备、网络接口等都被视为文件,简化操作和管理。常用的文件系统类型包括 EXT4、XFS、Btrfs 等,Linux 文件系统结构清晰,通常有固定的目录结构,如 /etc、/usr、/var、/home 等。

10.命令行界面(CLI)

Linux 提供强大的命令行接口,通过 Shell(如 bash、zsh)可以完成几乎所有系统操作。命令行的灵活性和可编程性是 Linux 系统的一个显著优点。许多系统管理、编程和文件操作的任务可以通过简单的命令完成,且 Linux 支持脚本编程,大大提高了自动化效率。

11.软件包管理

Linux 有丰富的包管理系统,不同的发行版使用不同包管理工具(如 Debian 系的 apt,Red Hat 系的 yum 和 dnf),方便用户安装、更新和管理软件。软件包管理器负责解决依赖关系,保证安装软件与系统兼容。

12.安全与权限管理

Linux 提供严格的权限管理机制,通过用户和组权限控制对文件和目录的访问。还有高级的安全机制如 SELinux(安全增强的 Linux)和 AppArmor,用于强化系统的访问控制,防止恶意软件的侵害。

相关推荐
wxl7812275 分钟前
如何使用本地大模型做数据分析
python·数据挖掘·数据分析·代码解释器
NoneCoder5 分钟前
Python入门(12)--数据处理
开发语言·python
pq113_613 分钟前
ftdi_sio应用学习笔记 3 - GPIO
笔记·学习·ftdi_sio
澄澈i17 分钟前
设计模式学习[8]---原型模式
学习·设计模式·原型模式
LKID体1 小时前
Python操作neo4j库py2neo使用(一)
python·oracle·neo4j
意疏1 小时前
【Linux 篇】Docker 的容器之海与镜像之岛:于 Linux 系统内探索容器化的奇妙航行
linux·docker
虚拟网络工程师1 小时前
【网络系统管理】Centos7——配置主从mariadb服务器案例(下半部分)
运维·服务器·网络·数据库·mariadb
BLEACH-heiqiyihu1 小时前
RedHat7—Linux中kickstart自动安装脚本制作
linux·运维·服务器
爱米的前端小笔记1 小时前
前端八股自学笔记分享—页面布局(二)
前端·笔记·学习·面试·求职招聘
小尤笔记1 小时前
利用Python编写简单登录系统
开发语言·python·数据分析·python基础