本篇内容主要讲解“Linux的基础知识讲解”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Linux的基础知识讲解”吧!
1、计算机组成。
CPU,: 运算器、控制器、寄存器、缓存;
存储器: 内存(Random Access Memory);
Input:disk,adapter,keyboard,mouse
Output:disk,adapter,display
2、内核(kernel)
基于硬件的第一层软件扩充,提供操作系统最基本的功能:
驱动底层硬件;
将底层资源抽象(接口)供程序调用;
管理各种运行的程序,分配有限的资源,保证各程序相安无事(欺骗程序,模拟所有资源给程序占有随时调用);
完整的OS: kernel+ app
狭义上的OS: kernel
OS接口:
GUI:Graphic User Interface;
CLI: Command Line Inerface;
(linux的桌面只是其一个应用程序)
内核的辉煌发展历史,精彩程度不逊于量子物理:
Multics (Multiplexed Information and Computing Service):
1964年由贝尔实验室、麻省理工学院及美国通用电气公司所共同参与研发的,其目的是为了开发出一套安装在大型主机上多人多工的操作系统;
Ken Thompson(后被称为UNIX之父),将“Space Travel"的程序移植到一部被闲置的PDP-7(Digital的主机);
1973年Ken Thompson 与Dennis Ritchie用C语言重写了Unix的第三版内核;
Unix第五版以“仅用于教学目的”的协议,提供给各大学作为教学之用,成为当时操作系统课程中的范例教材;
1979年Unix的版本V7开始,Unix的许可证开始禁止大学使用Unix的源码,包括在授课中学习;----埋下伏笔了
Berkeley: BSD Unix
AT&T : System V
SUN: solaris;
IBM: AIX
HP : HP-UX
类Unix操作系统
1990 minix
1991 Linus Benedict Torvalds (他老爸是共产主义者)Linux出世,遵从GPL,它的出现为GNU组织提供了内核,GNU为Linux提供了大量的APP;
TCP/IP成熟及http的应用,linux根植于互联网,在随后的几年网络大爆发,开源的linux极速发展;
Larry Wall 虔诚的基督徒 研发了patch,互联网协调开发
缺点:
超牛的人开发的app,通常不适合桌面终端,但也可以做的非常漂亮;
开源起初被认为不稳定(编译环境不一致经常出错),非商业化的特点(都说IOS稳定,都说安卓系统...),这种现象在移动互联网发展后逐渐消失;
3、常见Linux的发行版,不同发行版之间的联系与区别。
为何有不同的版本?
编译环境不一致衍生不同版本,需要提供方进行维护?加入不同的app产生差异?
一个典型的Linux发行版包括:Linux内核,一些GNU程序库和工具,命令行shell,图形界面的X Window系统和相应的桌面环境。
POSIX: Portable Operating System Interface 可移植操作系统接口
POSIX标准定义了操作系统应该为应用程序提供的接口标准,为一个POSIX兼容的操作系统编写的程序,应该可以在任何其它的POSIX操作系统(即使是来自另一个厂商)上编译执行。
ABI:Application Binary Interface 编译好的目标代码在使用兼容ABI的系统中无需改动就能运行。
常见的linux发行版:
Debian: 非商业化,但要求有技术的;
Unbutu(人性)----桌面化 mint
knopix---- 安全系统;
Slackware: KISS(Keep It Simple Stupid)原则
Suse(商业)
openSuse:欧洲非常流行
SLES:SUSE Linux Enterprise Server
Redhat:
Redhat9.0以后
RHEL: Red Hat Enterprise Linux 商业
提供源码,不提供编译,要交费才提供服务,如补丁升级之或咨询服务。 (这个补丁升级搞一下攻防演练就知道其价值)
red hat对这种centos发行版的态度是:"我们其实并不反对这种发行版,真正向我们付费的用户,他们重视的并不是系统本身,而是我们所提供的商业服务。"
CentOS:
RHEL 一直都提供源代码的发行方式,CentOS 就是将 RHEL 发行的源代码重新编译一次,形成一个可使用的二进制版本。
CentOS 并不向用户提供商业支持,当然也不负上任何商业责任(非商业化的特点啊)
Fedora:由全球社区爱好者构建维护,红帽公司定位为新技术的实验场。个人领域的应用。
Gentoo:Linux世界最年轻的发行版本,Portage技术,软件包管理系统。
kali: 自带各种渗透工具;
LFS: Linux from Scratch ;自己构建Linux
版本号:
major , minor, release
linux内核; 0.99 ; 2.2; 2.4; 2.6; 3.0; 4.0
各发行版的版本:
RHEL: 5.x 6.x 7.x
rpm,yum,dnf
Debian: 8.x
dkpg, apt-get
OpenSuse: 13.x
rpm,zypper
4、常见的开源协议(GPL,LGPL, BSD,Apache等)
GNU: Richard Stallman ; is not Unix
自由含义 : 自由学习和修改; 自由使用;自由分发;自由创建衍生版;
1985年创建FSF,大量重量级app加入,重要组件操作系统的内核(称为HURD)未实现,刚开始时只能用Unix内核,直到遇上了linux;
X-window gcc(GUN C Complier--->GNU Compiler Collection) VI(visual interface) ,app很多很强大,
FSF : free software Foundation 自由软件基金会,为NU计划提供技术、法律以及财政支持
GPL:General Public Licence 开源协定,
1)要求软件以源代码的形式发布,并规定任何用户能够以源代码的形式将软件复制或发布给别的用户。
2)如果用户的软件使用了受 GPL 保护的任何软件的一部分,那么该软件就继承了GPL软件,并因此而成为GPL软件,也就是说必须随应用程序一起发布源代码。
3)GPL并不排斥对自由软件进行商业性质的包装和发行,也不限制在自由软件的基础上打包发行其他非自由软件。
老毒锋的毒蛇毒-->南希仁-->软猬甲-->杨康--->彭连虎(这例子不好啊)。
LGPL: GNU Lesser General Public License; GNU宽通用公共许可证,宽松程度上与BSD, Apache相似
BSD: Berkeley Software Distribution 伯克利软件发行版
1)如果再发布的产品中包含源代码,则在源代码中必须带有原来代码中的BSD协议;
2)如果再发布的只是二进制类库/软件,则需要在类库/软件的文档和版权声明中包含原来代码中的BSD协议;
3)不可以用开源代码的作者/机构名字和原来产品的名字做市场推广;
Apache:非盈利开源组织Apache采用的协议
5、Linux的哲学思想
1)一切皆文件;
open(); read(); write(); create(); close(); delete();
2)由众多功能单一的程序组合去实目标,一个程序只做一个事情;
3)尽量避免和用户打交道:以编程的方式实现自动化任务;
4)使用文本文件保存配置信息;
6、linux目录结构以及目录结构命名规定
结构:倒置树状结构 目录+文件
文件命名: 区分大小写;
可以除了使用除斜线(/)以外的任意字符;
以点号开头的文件为隐藏文件;
不能超过255个字符;
路径: 绝对路径 /PATH/basename
相对路径 ./basename
到此,相信大家对“Linux的基础知识讲解”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。