Linux入门——初识Linux
linux入门——初识linux
摘要:本文主要说明了linux是什么,linux发展历史,以及同linux系统有关的一些基本知识。
简介
操作系统
linux系统同windows系统、mac系统一样,都属于计算机的操作系统,当我们拥有了一台新电脑之后,要做的第一件事就是装系统,那么,什么是操作系统呢?
计算机,也就是我们常说的电脑,其实只是由一堆看得见摸得着的东西组成的机器,这些东西被称为硬件。
我们在电脑上用到的一些应用,比如:聊天用到的qq、微信,打游戏用到的英雄联盟、绝地求生,工作用到的word、excel、powerpoint。这些是在电脑本身不具备的东西,是通过安装相应的程序才能让它们在电脑上运行,这些东西被称为软件。
操作系统本质上是一套程序,是用来管理机硬件和软件的计算机程序,比如:它可以对磁盘进行分区管理,对连接计算机的输入输出设备进行管理,对网络通信进行管理,对系统里的文件进行管理,对程序运行的内存进行管理,有的操作系统还提供了一套自己的用户交互界面,等等。
因为操作系统本身不具备应用程序的功能,所以在安装了linux操作系统之后,根据不同的需求还需要在linux操作系统上安装不同的软件。
发展历史
上个世纪六十年代,计算机系统使用批处理,中途不需要用户的交互,别人也不能用,导致了计算机资源的浪费。
1965年,贝尔实验室(bell)、麻省理工学院(mit)以及通用电气(ge)联合起来准备研发一个分时多任务处理系统。
1969年,贝尔实验室退出,ken thompson用汇编语言写出了一组核心程序,同时包括一些核心工具程序,以及一个小小的文件系统,这个系统就是unix的原型。
1973年,柏克莱大学的bill joy在取得了unix的核心原始码后,着手修改成适合自己机器的版本,最终将它命名为berkeley software distribution(bsd)。这个bsd是unix很重要的一个分支,bill joy也是sun公司的创始人。
1984年,因为unix规定:“不能对学生提供源码”,tanenbaum老师自己编写兼容于unix的minix,用于教学。
1984年,stallman开始gnu(gnu's not unix)计划,创办fsf(free software foundation)基金会。完成一些重要软件的开发:emacs、gcc(gnu c compiler)、glibc(gnu c library)、bash shell。
1985年,为了避免gnu所开发的*软件被其他人所利用而成为专利软件,所以他与律师草拟了有名的通用公共许可证(gpl,general public license)。
1991年,芬兰的赫尔辛基大学的linus torvalds基于gcc、bash shell开发了针对386机器的linux内核。
1994年,torvalds发布linux-v1.0。
1996年,torvalds发布linux-v2.0,确定了linux的吉祥物:企鹅。
优缺点
系统稳定:linux本来就是基于unix概念而发展出来的操作系统,因此,linux具有与unix系统相似的程序接口跟操作方式,当然也继承了unix稳定并且有效率的特点。安装linux的主机连续运做一年以上而不曾当机、不必关机是稀松平常的事。
开源,免费:由于linux是基于gpl授权下的产物,因此任何人皆可以*取得linux。不同于unix需要负担庞大的版权费用,当然也不同于windows需要一而再、再而三的更新你的系统,并且缴纳大量费用。
安全性高,修复漏洞速度快:由于使用linux的人很多,有相当多的热心团体、个人参与其中的开发,因此可以随时获得最新的安全信息,并给予随时的更新,安全性相对较高。
允许多人共同使用:与windows系统不同,linux主机上允许多人同时使用,并且资源的分配较为公平,比起windows的单人多任务系统要稳定的多。可以在一个linux主机上添加不同身份的用户,而且每个用户登入系统时的工作环境都可以不相同,此外,还可以允许不同的使用者在同一个时间登入主机,同时使用主机的资源。
文件属性和用户组权限:在linux的系统中,文件的属性可以分为“可读、可写、可执行”,这些属性还可以分为三个种类,分别是文件拥有者、文件所在组、其他。这对于项目计划或者其他计划开发者具有相当良好的系统保密性。
相对节省资源:linux系统对主机的要求比较低,不需要很高的配置。
强大的网络支持:linux在通信和网络功能方面优于其他操作系统。其他操作系统没有如此紧密地和内核结合在一起的连接网络的能力,也没有内置这些联网特性的灵活性。而linux为用户提供了完善的、强大的网络功能。
发行版本
从技术上来说,linus torvalds开发的linux只是一个内核。内核指的是一个提供设备驱动、文件系统、进程管理、网络通信等功能的系统软件,内核并不是一套完整的操作系统,它只是操作系统的核心。一些组织或厂商将linux内核与各种软件和文档包装起来,并提供系统安装界面和系统配置、设定与管理工具,就构成了linux的发行版本。
在linux内核的发展过程中,各种linux发行版本起了巨大的作用,正是它们推动了linux的应用,从而让更多的人开始关注linux。因此,把red hat、ubuntu、suse等直接说成linux其实是不确切的,它们是linux的发行版本,更确切地说,应该叫作“以linux为核心的操作系统软件包”。
linux的各个发行版本使用的是同一个linux内核,因此在内核层不存在什么兼容性问题,每个版本有不一样的感觉,只是在发行版本的最外层(由发行商整合开发的应用)才有所体现。
redhat
redhat,应该称为redhat系列,包括rhel(redhat enterprise linux,也就是所谓的redhat advance server收费版本)、fedoracore(由原来的redhat桌面版本发展而来,免费版本)、centos(rhel的社区克隆版本,免费)。
redhat应该说是在国内使用人群最多的linux版本,甚至有人将redhat等同于linux,而有些老鸟更是只用这一个版本的linux。所以这个版本的特点就是使用人群数量大,资料非常多,言下之意就是如果你有什么不明白的地方,很容易找到人来问,而且网上的一般linux教程都是以redhat为例来讲解的。redhat系列的包管理方式采用的是基于rpm包的yum包管理方式,包分发方式是编译好的二进制文件。稳定性方面rhel和centos的稳定性非常好,适合于服务器使用,但是fedora core的稳定性较差,最好只用于桌面应用。
debian
debian,或者称debian系列,包括debian和ubuntu等。
debian是社区类linux的典范,是迄今为止最遵循gnu规范的linux系统。debian最早由ian murdock于1993年创建,分为三个版本分支(branch):stable,testing和unstable。其中,unstable为最新的测试版本,其中包括最新的软件包,但是也有相对较多的bug,适合桌面用户。testing的版本都经过unstable中的测试,相对较为稳定,也支持了不少新技术(比如smp等)。而stable一般只用于服务器,上面的软件包大部分都比较过时,但是稳定和安全性都非常的高。debian最具特色的是apt-get/dpkg包管理方式,其实redhat的yum也是在模仿debian的apt方式,但在二进制文件发行方式中,apt应该是最好的了。debian的资料也很丰富,有很多支持的社区,有问题求教也有地方可去。
slackware
slackware由patrick volkerding创建于1992年,是现存最古老的linux发行版。其受欢迎程度大幅下降与红帽linux和其它更易用发行版的发行有关,但slackware仍然是一个倍受赞赏且经营中更面向系统管理员技术和桌面用户的系统。slackware是一个高度技术性的,干净的发行版,只有少量非常有限的个人设置。它使用简单,基于文本的系统安装和比较原始的包管理系统,没有解决软件依赖关系。因此,slackware被认为是今天最为纯净和最不稳定的发行版。
suse
suse以slackware为基础,原来是德国的suse linux ag公司发布的linux版本,1994年发行了第一版,早期只有商业版本,2004年被novell公司收购后,成立了opensuse社区,推出了自己的社区版本opensuse。
suse在欧洲较为流行,在我国国内也有较多应用。值得一提的是,它吸取了red hat的很多特质。suse可以非常方便地实现与windows的交互,硬件检测非常优秀,拥有界面友好的安装过程、图形管理工具,对于终端用户和管理员来说使用非常方便。
gnome
gnome,基于kde的kubuntu,基于lxde的lubuntu以及基于xfce的xubuntu等。特点是界面非常友好,容易上手,对硬件的支持非常全面,是最适合做桌面系统的linux发行版本。
gentoo
gentoo,伟大的gentoo是linux世界最年轻的发行版本,正因为年轻,所以能吸取在她之前的所有发行版本的优点,这也是gentoo被称为最完美的linux发行版本的原因之一。
freebsd
freebsd,需要强调的是,freebsd并不是一个linux系统!但freebsd与linux的用户群有相当一部分是重合的,二者支持的硬件环境也比较一致,所采用的软件也比较类似,所以可以将freebsd视为一个linux版本来比较。
freebsd拥有两个分支:stable和current。顾名思义,stable是稳定版,而current则是添加了新技术的测试版。freebsd采用ports包管理系统,与gentoo类似,基于源代码分发,必须在本地机器编后后才能运行,但是ports系统没有portage系统使用简便,使用起来稍微复杂一些。freebsd的最大特点就是稳定和高效,是作为服务器操作系统的最佳选择,但对硬件的支持没有linux完备,所以并不适合作为桌面系统。
桌面环境
早期的linux系统都是不带界面的,只能通过命令来管理,比如运行程序、编辑文档、删除文件等。所以,要想熟练使用linux,就必须记忆很多命令。后来随着windows的普及,计算机界面变得越来越漂亮,点点鼠标就能完成很多工作,人们已经习惯了图形界面化的操作,很难再忍受一片漆黑的命令行窗口了。这推动了linux社区进行变革,很快推出了linux系统的图形界面环境。
linux中的桌面环境也是一个程序,它和内核不是绑定的,两者的开发也不是同步的。给不带界面的linux系统安装上一个桌面环境,你就能看到各种漂亮的窗口,并能用鼠标点击它们了。
kde桌面系统
kde是k desktop environment的缩写,中文译为“k桌面环境”。
kde基于大名鼎鼎的qt,最初于1996年作为开源项目公布,并在1998年发布了第一个版本,现在kde几乎是排名第一的桌面环境了。
许多流行的linux发行版都提供了kde桌面环境,比如ubuntu、linux mint、opensuse、fedora、kubuntu、pc linux os等。
kde允许你把应用程序图标和文件图标放置在桌面的特定位置上。单击应用程序图标,linux系统就会运行该应用程序。单击文件图标,kde桌面就会确定使用哪种应用程序来处理该文件。
kde项目组还开发了大量的可运行在kde环境中的应用程序,包括dolphin(文件管理工具)、konsole(终端)、kate(文本编辑工具)、gwenview(图片查看工具)、okular(文档及pdf查看工具)、digikam(照片编辑和整理工具)、kmail(电子邮件客户软件)、quassel(irc客户软件)、k3b(dvd刻录程序)、krunner(启动器)等,它们都是默认安装的。
gnome桌面环境
gnome是the gnu network object model environment的缩写,中文译为“gnu网络对象模型环境”。
gnome于1999年首次发布,现已成为许多linux发行版默认的桌面环境(不过用得最多的是 red hat linux)。
gnome的特点是简洁、运行速度快,但是没有太多的定制选项,用户需要安装第三方工具来实现。gnome甚至不包括一些简单的调整选项,比如更改主题、更改字体等,就这两种基本的调整而言,用户都需要安装第三方工具。所以,gonme适合那些不需要高度定制界面的用户。
gnome被用作fedora中的默认桌面环境,提供在几款流行的linux发行版中,比如ubuntu、debian、opensuse等。
unity桌面环境
unity是由ubuntu的母公司canonical开发的一款外壳。之所以说它是外壳,是因为unity运行在gnome桌面环境之上,使用了所有gnome的核心应用程序。
2010年,unity第一个版本发布,此后经过数次改进,如今和其它的桌面环境一样,也可以安装到其它的linux发行版上了。
unity使用了不同的界面风格,如果你用的是ubuntu linux发行版,你会注意到unity与kde和gnome桌面环境有些不一样。
unity在左边有一个启动器,位于启动器顶部的是搜索图标,又叫“dash”。在dash上搜索文件时,不仅会给出来自硬盘的搜索结果,还会给出来自在线来源的搜索结果,比如google drive、facebook、picasa、flick及其他。unity还提供了隐藏启动器、触摸侧边栏就显示的选项,用户还可以调高/调低显示启动器菜单的灵敏度。
unity很简单、运行速度快,但unity在系统设置下却没有定制桌面的太多选项,要想安装主题或者定制另外不同的选项,比如系统菜单是否应该总是可见,或者“从启动器图标一次点击最小化”,用户需要安装第三方工具。
ccsm和unity tweak tool是面向unity桌面环境的非常流行的定制工具。
mate桌面环境
上面我们提到,gnome 3进行了全新的界面设计,这招致一些用户的不满,他们推出了其它的桌面环境,mate就是其中之一。
mate是一种从现在无人维护的gnome 2代码库派生出来的桌面环境。
mate让人觉得在使用旧的桌面环境,但是结合了历年来界面方面的诸多改进。mate还非常适用于低配计算机,所以如果你有一台旧的或速度较慢的计算机,可以使用mate。
mate还是许多流行的linux发行版随带的,比如ubuntu、linux mint、mageia、debian及另外更多发行版。ubuntu mate头一回是官方版本。
mate自带的应用程序包括caja(文件管理工具)、pluma(文本编辑工具)、atril(文档查看工具)、eye of mate(图像查看工具)等,如果用户不需要其他功能完备的桌面环境的所有额外功能,那么mate对他们来说是一款简单的轻量级桌面环境。
cinnamon桌面环境
与mate类似,cinnamon是由linux mint团队因为不满gnome 3的改进而开发的另一种桌面环境。但cinnamon与mate不同之处在于,cinnamon建立在gnome 3的基础上。cinnamon是新的,而且在积极开发之中,但这款出色的桌面环境没有因新颖而在功能方面有所减弱。
cinnamon拥有gnome和unity等其它桌面环境所没有的种种功能。cinnamon是高度可定制的桌面环境,不需要任何外部插件、窗口组件和调整工具来定制桌面。cinnamon甚至可以通过设置管理器本身来下载并安装主题,甚至不需要打开互联网浏览器。
由于种种出色的所需功能,cinnamon对任何刚接触linux的新用户来说都非常方便。许多用户放弃使用linux,是因为他们并不了解linux的工作方式,但是我强烈建议新手应从cinnamon桌面环境开始入手。
许多流行的linux发行版提供了各自版本的cinnamon,比如ubuntu、fedora、opensuse、gentoo、arch linux等。cinnamon还是linux mint的默认桌面环境。
上一篇: NetCore的Docker部署
推荐阅读
-
Ubuntu Linux下编译PostgreSQL 8.3.4学习体会
-
Linux环境下发现并阻止系统攻击
-
MySQL数据库的导入导出与Linux的权限
-
Redhat Linux AS4下的LAMP与Discuz安装_PHP教程
-
Linux同平台Oracle数据库整体物理迁移
-
PHP在Linux下连接MSSQLServer的配置方法简述(一、Sybase库)_PHP
-
linux中cd命令使用详解,linuxcd使用详解
-
Install Oracle12cR1 on Oracle Linux 6.5 in VirtualBox
-
linux - CLI里CURL访问某URL速度正常,PHP环境下却访问很慢?
-
windows/linux中PHP文件上传大小修改_PHP教程