02. 【Linux教程】GNU 项目简介

简介: 02. 【Linux教程】GNU 项目简介

1. GNU 项目简介

GNU 项目计划最开始是在 1984 年由美国著名的黑客理查德・斯托曼(Richard Matthew Stallman)发起的,GNU 获得了自由软件基金会(FSF)的资金支持一直是 GNU 的主要资金来源,该项目主要是为了建立免费的开源的 UNIX 类系统,其基本原则是程序源代码开放和软件思想共享。


GNU/Linux 是一种常见的并且广泛用于商业环境的免费开源操作系统。由于 GNU 将要实现 UNIX 类各系统的接口标准,因此 GNU 计划并不局限于 Linux 系统也可以开发其他不同的操作系统。GNU 计划大量采用了当时已经可自由使用的软件,例如 OpenOffice 排版系统和 X-Window 图形界面系统等。不过随着 GNU 计划的发展和壮大也开发了大批其他的自由软件,这些软件中的经典也被移植到其他操作系统平台上,例如 NC 工具就被移植到 Microsoft Windows、BSD 家族、Solaris 及 MacOS。


为了确保 GNU 系列软件可以真正地自由地 "使用、复制、修改和发布",所有 GNU 软件都包含有一份在禁止其他人添加任何限制的情况下,授权所有权利给任何人的协议框架,GNU 通用公共许可证协议(GNU General Public License,GPL)。这个就是被大家称为公共版权的含义。GNU 也针对不同场合,提供 GNU 宽通用公共许可证与 GNU 自由文档许可证这两种协议条款以便适用不同的使用场合。

2. GNU 的特点

GNU/Linux 将可以兼容并能够执行 UNIX 标准的程序,但是不会和 UNIX 系统完全一模一样,最大的不同是 GNU 计划拥有支持长文件名、版本号、一个健壮稳定文件系统,在某些情况下还有自动文件名补全、与使用终端无关的显示支持、可能最后还要有一个基于 x-windows 的视窗系统,以使好几个系统程序和普通的 UNIX 应用程序能共享同一屏幕。


C 语言将成为系统的程序语言。并且会想办法支持 UUCP,MIT Chaosnet,及 Internet 的通讯交流协议。 GNU 最初的目标是在有虚拟内存的 68000/16000 等系列机器上开发,因为这样的环境是最容易开发程序来实现 GNU 的运行。剩下来让 GNU 能在其它较小的机器上运行的工作,将会留给那些希望能在这些机器上使用的人。


GNU 不是公共的,毫无约束的软件(public domain)。GNU 计划允许每一个人修改及传播 GNU,但是绝不允许传播者对他传播的程序再加进其他的限制。也就是说,不允许将修改后的程序据为己有。GNU 计划希望能确保 GNU 所有的版本都能保持自由,所以 GNU 的核心精神是自由与分享,这和真正的 Hacker 精神有异曲同工之妙,虽不能说 GNU 精神就是 Hacker 精神,不过很难把两者清楚的分开,实际上很多 Hacker 都为 GNU 做出了巨大的贡献。对知识的渴求是支持他们探索的唯一动力。当然这里的 Hacker 黑客不是那些破坏计算机系统牟取私利而臭名昭著的骇客。

3. 发展历程

  • 1985 年,著名美国黑客理查德・斯托曼创立了 GNU 项目计划。 1985 年,同年查德・斯托曼创立了自由软件基金会(Free Software Foundation)来为 GNU 计划提供技术、法律以及资金支持。尽管 GNU 计划大部分时候是由大家自愿无偿贡献的,但 FSF 还是会聘请程序员帮助编写。当 GNU 计划开始逐渐获得成功时,一些商业公司开始介入开发和技术支持。当中最著名的就是之后被 Red Hat 红帽兼并的 Cygnus Solutions。
  • 1990 年,成熟的 GNU 计划已经开发出的软件包括了一个功能强大的文字编辑器 Emacs、C 语言编译器 GCC 以及大部分 UNIX 系统的程序库和工具。唯一依然没有完成的重要组件,就是操作系统的内核。
  • 1991 年,Linux 之父林纳斯・托瓦兹编写出了与 UNIX 兼容的 Linux 操作系统内核并在 GPL 条款下发布。Linux 之后在网上广泛流传,许多程序员参与了开发与修改。
  • 1992 年,林纳斯的 Linux 与其他 GNU 软件开始结合,完全自由的 Linux 操作系统正式诞生。该操作系统往往被称为 “GNU/Linux” 或简称 Linux。许多 UNIX 系统上也安装了 GNU 软件,因为 GNU 软件的质量比之前 UNIX 的软件还要好。GNU 工具还被广泛地移植到 Windows 和苹果 Mac OS 上。
  • 现在,GNU 项目计划十几年以来已经成为一个对软件开发主要的影响力量,创造了无数的重要的工具,例如:编译器,文本编辑器,甚至一个全功能的操作系统。这个工程是从 1984 年麻省理工学院的程序员理查德・斯托曼的想法得来的,他想要创建一个自由的和 UNIX 类似的操作环境。从那时开始,许多程序员聚集起来开始开发一个自由的、高质量、易理解的软件

4. 小结

本小节介绍了 GNU 项目和 Linux 的关系,还介绍了 GNU 项目的特点和 GNU 项目的发展历程,让读者熟悉了 GNU 项目的概念,对 GNU 项目有了一定的了解,帮助读者学习更多 Linux 相关的知识。

相关文章
|
3月前
|
弹性计算 安全 Linux
阿里云服务器ECS安装宝塔Linux面板、安装网站(新手图文教程)
本教程详解如何在阿里云服务器上安装宝塔Linux面板,涵盖ECS服务器手动安装步骤,包括系统准备、远程连接、安装命令执行、端口开放及LNMP环境部署,手把手引导用户快速搭建网站环境。
|
4月前
|
NoSQL 关系型数据库 Linux
ERPNext 搭建教程:Linux 一键部署与维护
ERPNext 是一款开源免费的企业资源计划系统,适用于中小企业信息化管理。基于 Python 和 Frappe 框架开发,支持财务、销售、人力、库存等模块,具备高度可定制性。本文介绍如何通过 Websoft9 在 Linux 下快速部署 ERPNext,并提供环境配置、系统维护等实用建议,适合开发者和企业用户快速上手。
570 7
ERPNext 搭建教程:Linux 一键部署与维护
|
4月前
|
Java Linux 网络安全
Linux云端服务器上部署Spring Boot应用的教程。
此流程涉及Linux命令行操作、系统服务管理及网络安全知识,需要管理员权限以进行配置和服务管理。务必在一个测试环境中验证所有步骤,确保一切配置正确无误后,再将应用部署到生产环境中。也可以使用如Ansible、Chef等配置管理工具来自动化部署过程,提升效率和可靠性。
446 13
|
3月前
|
Ubuntu 网络协议 Unix
Linux教程(Ubuntu为蓝本)之Linux介绍篇
SuSE嫁到了Novell,SCO继续顶着骂名四处强行“化缘”, Asianux, MandrakeSoft也在五年中首次宣布季度赢利。3月,SGI宣布成功实现了Linux操作系统支持256个Itanium 2处理器。[1-2]
|
3月前
|
Ubuntu Linux 数据安全/隐私保护
Win10安装Linux子系统教程!如何在Win10系统中安装Ubuntu!
登录系统后,输入cd /返回上一级,然后再输入“ls”查看一下系统文件目录,看看对不对!
|
Ubuntu 安全 Unix
Linux 简介与安装|学习笔记
快速学习 Linux 简介与安装
236 0
|
2月前
|
Linux 应用服务中间件 Shell
二、Linux文本处理与文件操作核心命令
熟悉了Linux的基本“行走”后,就该拿起真正的“工具”干活了。用grep这个“放大镜”在文件里搜索内容,用find这个“探测器”在系统中寻找文件,再用tar把东西打包带走。最关键的是要学会使用管道符|,它像一条流水线,能把这些命令串联起来,让简单工具组合出强大的功能,比如 ps -ef | grep 'nginx' 就能快速找出nginx进程。
331 1
二、Linux文本处理与文件操作核心命令
|
2月前
|
Linux
linux命令—stat
`stat` 是 Linux 系统中用于查看文件或文件系统详细状态信息的命令。相比 `ls -l`,它提供更全面的信息,包括文件大小、权限、所有者、时间戳(最后访问、修改、状态变更时间)、inode 号、设备信息等。其常用选项包括 `-f` 查看文件系统状态、`-t` 以简洁格式输出、`-L` 跟踪符号链接,以及 `-c` 或 `--format` 自定义输出格式。通过这些选项,用户可以灵活获取所需信息,适用于系统调试、权限检查、磁盘管理等场景。
251 137
|
2月前
|
安全 Ubuntu Unix
一、初识 Linux 与基本命令
玩转Linux命令行,就像探索一座新城市。首先要熟悉它的“地图”,也就是/根目录下/etc(放配置)、/home(住家)这些核心区域。然后掌握几个“生存口令”:用ls看周围,cd去别处,mkdir建新房,cp/mv搬东西,再用cat或tail看文件内容。最后,别忘了随时按Tab键,它能帮你自动补全命令和路径,是提高效率的第一神器。
577 57
|
29天前
|
存储 安全 Linux
Linux卡在emergency mode怎么办?xfs_repair 命令轻松解决
Linux虚拟机遇紧急模式?别慌!多因磁盘挂载失败。本文教你通过日志定位问题,用`xfs_repair`等工具修复文件系统,三步快速恢复。掌握查日志、修磁盘、验重启,轻松应对紧急模式,保障系统稳定运行。
250 2