基本概念
概述
计算机有硬件和软件组成,操作系统就是硬件上面的第一层软件,它是硬件和其它软件沟通的桥梁。
Unix
1965 年,MIT、Bell(贝尔实验室)和GE(美国通用电气公司)合作准备搞个超级操作系统,取了个霸气的名字:Multics (Multiplexed Information and Computing System),多路复用信息和计算机系统。能让多个人可以同时干很多事,也叫多用户多任务操作系统。
1969 年,Multics 项目进展缓慢,被迫停止,参与项目的两个人 Ken Thompson(肯·汤普森)和 Dennis Ritchie(丹尼斯·里奇) 也闲了下来。他们都是贝尔实验室的人。没活干了,就打游戏。他们俩找了一台破电脑(PDP-7)准备玩以前开发的一个游戏(travel space:遨游太空),为了能在PDP-7 计算机上运行他的游戏,于是在1969 年夏天Ken Thompson(肯·汤普森)趁他夫人回家乡加利福尼亚渡假期间,在一个月内开发出了UNIX 操作系统的原型,UNIX于是就在1970年正式问世了,这就是Unix元年。自 1970 年后,UNIX 系统在贝尔实验室内部的程序员之间逐渐流行起来,当时使用的是BCPL 语言(基本组合编程语言),后经Dennis Ritchie 于1973 年用移植性很强的C语言进行了改写。
UNIX 的出现是由人 Ken Thompson(肯·汤普森)和 Dennis Ritchie(丹尼斯·里奇)在贝尔实验室工作期间开发出来的,自然版权属于贝尔实验室所有。一开始贝尔实验室并没有重视这个系统,导致这个系统的源代码在程序员之间不断分发导致美国很多机构、组织和高校都有非常多的人在使用这个UNIX,这就为UNIX的发展带来的高速的发展,但是随着UNIX发展的越来越好,这时候贝尔实验室就开始了商业运作了,他们决定要收回版权。但是从原来的免费获取使用变成后面的高价版权费用,很多人甚至是公司是接受不了的,所以这个商业运作进展缓慢,后面不得已就变成了,贝尔实验室收回版权,但是针对一些有合作的高校和机构,收取廉价或者是几乎免费的版权费用。
于是在20世纪70年代后期,与教育机构和外部商业组织共享了Unix,从而导致了许多不同版本Unix的诞生。其中最突出的是由加州大学伯克利分校的计算机系统研究小组构建的教育版本(BSD)。当然BSD又是另一段传奇故事了。
GUN
1983年9月,Richard Stallman宣布引入GNU计划(GNU代表的是GNU,不是Unix)。1985年,理查德(Richard)建立了自由软件基金会(FSF),这是一个非营利性组织,旨在促进软件开发的自由。GNU项目创建了许多重要的产品,如GNU Compiler Collection (gcc)、GNU Debugger、GNU Emacs text editor (Emacs)、GNU build automator (make)等,还有今天使用最广泛的:GNU通用公共许可证(GPL)。GNU项目取得了许多伟大的成就,创造了许多与Unix相似的工具。然而,GNU仍然缺少一个重要的组成部分:内核(用于处理与硬件设备(CPU、RAM、设备等)的控制和通信的部分)。
GNU项目的目标是创建一个自由的、类unix的操作系统,在这个系统中,人们人们可以自由地复制,开发,修改和分发软件,并且不受限制。

Minix
Minix诞生于1987年,由Andrew S. Tanenbaum(安德鲁·斯图尔特·塔能鲍姆,谭邦宁)教授编写,用作教学的微内核架构的类Unix系统。当时Unix系统由于AT&T的使用许可问题,Unix不能被大学使用,谭邦宁教授为了让学生能看到操作系统的运行机理,自己重新写了一个操作系统,就叫它Minix。
Linux
Linux内核最初只是由芬兰人Linus Torvalds(林纳斯·托瓦兹)在赫尔辛基大学上学时出于个人爱好而编写的。
Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。Linux能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。
目前市面上较知名的发行版有:Ubuntu(乌班图)、RedHat(红帽)、CentOS、Debain()、Fedora、 、OpenSUSE

下载地址
网易镜像:http://mirrors.163.com/
搜狐镜像:http://mirrors.sohu.com/
Linux特点
Linux里面一切皆是文件
Linux里面没有后缀名这一说
Linux和Windows区别
目前国内Linux更多的是应用与服务器上,而桌面操作系统更多使用的是window。主要区别如下。
| 比较 | Window | Linux |
|---|---|---|
| 界面 | 界面统一,外壳程序固定所有Windows程序菜单几乎一致,快捷键也几乎相同 | 圆形界面风格依发布版本不同而不同,可能互不兼容。GNU/Linux的终端机是从UNIX传承下来,基本命令和操作方法也几乎一致。 |
| 驱动程序 | 驱动程序丰富,版本更新频繁。默认安装程序里面一般包含有该版本发布时流行的硬件驱动程序,之后所出的新硬件驱动依赖于硬件厂商提供。对于一些老硬件,如果没有了原配的驱动有时候很难支持。另外,有时硬件厂商未提供所需版本的Windows下的驱动,也会比较头痛。 | 由志愿者开发,由Linux核心开发小组发布,很多硬件厂商基于版本考虑并未提供驱动程序,尽管多数无需手动安装,但是涉及安装则相对复杂,使得新用户面对驱动程序问题会一筹莫展。但是在开源开发模式下,许多老硬件尽管在Windows下很难支持的也容易找到驱动。HP、Intel、AMD等硬件厂商逐步不同程序支持开源驱动,问题正在得到缓解。 |
| 使用 | 使用比较简单,容易入门。圆形化界面对没有计算机背景知识的用户使用十分有利。 | 圆形界面使用简单,容易入门。文字界面,需要学习才能掌握。 |
| 学习 | 系统构造复杂、变化频繁、且知识、技能淘汰快,深入学习困难 | 系统构造简单、稳定,且知识、技能传承性好,深入学习相对容易 |
| 软件 | 每一种特定功能可能都需要商业软件的支持,需要购买相应的授权 | 大部分软件都可以自由获取,同样功能的软件选择较少。 |
目录结构

| 目录 | 描述 |
|---|---|
| / | 第一层次结构的根、整个文件系统层次结构的根目录。 |
| /bin/ | 需要在单用户模式可用的必要命令(可执行文件);面向所有用户,例如:cat、ls、cp,和/usr/bin类似。 |
| /boot/ | 引导程序文件,例如:kernel、initrd;时常是一个单独的分区[6] |
| /dev/ | 必要设备, 例如:, /dev/null. |
| /etc/ | 特定主机,系统范围内的配置文件。关于这个名称目前有争议。在贝尔实验室关于UNIX实现文档的早期版本中,/etc 被称为/etcetra 目录,[7]这是由于过去此目录中存放所有不属于别处的所有东西(然而,FHS限制/etc存放静态配置文件,不能包含二进制文件)。[8]自从早期文档出版以来,目录名称已被以各种方式重新称呼。最近的解释包括反向缩略语如:“可编辑的文本配置”(英文 “Editable Text Configuration”)或"扩展工具箱"(英文 “Extended Tool Chest”)。[9] |
| /home/ | 用户的家目录,包含保存的文件、个人设置等,一般为单独的分区。 |
| /lib/ | /bin/ and /sbin/中二进制文件必要的库文件。 |
| /media/ | 可移除媒体(如CD-ROM)的挂载点 (在FHS-2.3中出现)。 |
| /lost+found | 在ext3文件系统中,当系统意外崩溃或机器意外关机,会产生一些文件碎片在这里。当系统在开机启动的过程中fsck工具会检查这里,并修复已经损坏的文件系统。当系统发生问题。可能会有文件被移动到这个目录中,可能需要用手工的方式来修复,或移到文件到原来的位置上。 |
| /mnt/ | 临时挂载的文件系统。比如cdrom,u盘等,直接插入光驱无法使用,要先挂载后使用 |
| /opt/ | 可选应用软件包。 |
| /proc/ | 虚拟文件系统,将内核与进程状态归档为文本文件(系统信息都存放这目录下)。例如:uptime、 network。在Linux中,对应Procfs格式挂载。该目录下文件只能看不能改(包括root) |
| /root/ | 超级用户的家目录 |
| /sbin/ | 必要的系统二进制文件,例如: init、 ip、 mount。sbin目录下的命令,普通用户都执行不了。 |
| /srv/ | 站点的具体数据,由系统提供。 |
| /tmp/ | 临时文件(参见 /var/tmp),在系统重启时目录中文件不会被保留。 |
| /usr/ | 默认软件都会存于该目录下。用于存储只读用户数据的第二层次;包含绝大多数的(多)用户工具和应用程序。 |
| /var/ | 变量文件——在正常运行的系统中其内容不断变化的文件,如日志,脱机文件和临时电子邮件文件。有时是一个单独的分区。如果不单独分区,有可能会把整个分区充满。如果单独分区,给大给小都不合适。 |
远程连接主机的工具
通过SSH连接到远程主机有2种方式:
-
通过市面上常用的软件来进行连接。
远程ssh客户端软件:putty(开源免费的,超级轻量级的ssh连接工具),xshell(海螺,收费,但是可以试用)。
远程ftp客户端软件: xftp,filezilla, FlashFXP
远程ssh和ftp的客户端软件:FinalShell、Terminus、electerm
-
通过终端命令来进行ssh连接。
基于ssh协议远程登录的命令:ssh、ssh-keygen
ssh root@10.0.0.130
基于ftp协议进行传输的命令:scp
xshell的快捷键:
Ctrl+S 锁屏幕
Ctrl+Q 解除屏幕
shift+insert 把内容粘贴到远程终端。
Ctrl+C 终止操作
exit 退出
常用命令
系统信息
arch 显示机器的

Unix操作系统起源于Multics项目,由肯·汤普森和丹尼斯·里奇在贝尔实验室开发。后来,由于商业运作,Unix产生了多个版本,包括BSD。GNU计划由理查德·斯托曼发起,目标是创建一个自由的类Unix系统,最终Linux内核由林纳斯·托瓦兹编写,结合GNU组件形成了完整的Linux操作系统。Linux因其开源特性迅速发展,有多种发行版,如Ubuntu、RedHat等。在Linux中,一切都是文件,文件系统遵循特定的目录结构,例如/bin存放基本命令,/etc存储系统配置,/usr包含用户应用程序。
最低0.47元/天 解锁文章
2919

被折叠的 条评论
为什么被折叠?



