1,Debian系(服务器主要用Debian的stable分支,ubuntu server虽然可以了,但是稳定性不放心)
2,RedHat系(如果不想购买服务,那么就是CentOS这个分支了,fedora社区版本,不适合)
3,BSD系(FreeBSD,OpenBSD,NetBSD)
其中,严格的说,第三个和Linux同属Unix-like的软件,但是不是Linux。Debian的stable或者CentOS(付费就RedHat)选择一个,两者都很问题。如果倾向于企业,则是CentOS或者RedHat,如果是社区,则Debian好些。
FreeBSD也很不错,但是要看是什么服务器。如果单纯做普通应用服务器,就很好用,但是如果有集中计算的,还是选择前两种Linux版本好些。linux服务器版本一般选择:centos,redhat的版本居多。centos是社区版的,完全免费。一些大的服务器供应商都在使用这个版本。debian也不错,但是一般入门都是用redhat版入门,所以总体来说还是centos还是占市场比较大的。
对于初学Linux建议2个:
一个是选择容易上手并且资料丰富的
另一个是选择企业应用广泛的
当然如果只是兴趣,不想找相关工作可以只考虑第1步
另外目前常见的Linux系统主要有下面:目前主流的有两大阵营,6个系统
- Redhat系列:包含CentOS,Fedora,Red Hat Enterprise Linux(RHEL)
- Debian系列:包含Debian,Ubuntu,Kali
还有其他阵营暂不考虑了
- CentOS: 目前国内企业应用最广泛的也是首推的Linux系统,主要用于服务端
- Ubuntu: 世界上应用范围很广,家用,企业用都有
- Fedora: 图形化很好,属于测试系统,稳定后,会生成REHL
- REHL: 也是红帽系统,商业版,需要订阅(收费)
- Debian: 属于Ubuntu的鼻祖,应用目前没有Ubuntu多
- Kali :也属于Debian系列,主要用于安全渗透等场景
个人建议:如果是靠这个吃饭,推荐CentOS熟悉一段时间再去看Ubuntu
注:我回答主要针对你的"吃饭","入行"需求,如果只想玩玩那就装个图形化Ubuntu点点就行
1、Arch Linux
也许 Arch 最主要的特点之一就是,它是一个独立的开放源代码的发行版(这意味着它不基于任何其他的发行版),
由于 Arch 采用滚动发布模式,因此你只要使用 pacman 执行定期的系统更新就可以获得最新的软件。
2、 CentOS
虽然社区企业 *** 作系统(Community ENTerprise Operating System)是用于 Linux 服务器的最有名、最常用的发行版,但是它的桌面版本还在继续不断完善中。
另外,它的稳健性、稳定性、和 100% 的二进制兼容性,也使之成为了 Red Hat Enterprise Linux 的头号备选——特别是对云 VPS 供应商而言——也许这就是发行版持续增长的主要原因之一。
3、Manjaro
基于 Arch Linux 的 Manjaro,目标在于利用让 Arch 成为一个伟大发行版的功能优势,同时提供一个更舒适的安装和运行体验,无论是新手还是有经验的 Linux 用户,都可以开箱即用。
Manjaro 预装了桌面环境、图形应用程序(包括软件中心)和用于播放音频和视频的多媒体解码器。
4、 Mageia
作为现在已经消失的 Mandriva Linux 的衍生品,受非盈利性组织支持的 Mageia 诞生于2010年,自那时起,成为了台式机和服务器上的著名的安全而稳定的 Linux 发行版。
5 Fedora
由 Red Hat 支持的 Fedora Project 构建和维护,这是一个世界性的志愿者和开发人员社区,Fedora 之所以能够持续几年成为使用最广泛的发行版之一,是因为它有三个主要的可用版本:Workstation (用于台式机) ,Server 和 Cloud 镜像,以及ARM 版本用于基于 ARM(通常为无 *** 控外设)的服务器。
不过,也许 Fedora 最显着的特点是,它总是在率先将新的软件包版本和技术整合到发行版中。此外, Red Hat Enterprise Linux 和 CentOS 的新版本都是基于 Fedora 的。
6、openSUSE
既是一个滚动发布版本,又可当作是一个独立的定期发布版本,openSUSE 根据其开发人员的不同,是系统管理员、开发人员和桌面用户 Linux 的发行版之选,无论你的经验水平处于哪种级别(受到初学者和极客们的一致好评)。最重要的是,著名又屡获殊荣的 SUSE Linux Enterprise 产品基于 openSUSE。
7、 Ubuntu
Canonical,这个 Ubuntu 背后的公司,一直致力于使 Ubuntu 成为一个流行和普遍的发行版,并且现在你可在智能手机、平板电脑、个人电脑、服务器和云 VPS 的上面看到 Ubuntu 的身影。
此外,Ubuntu 基于 Debian,并且是一款非常受新用户欢迎的发行版——这可能就是 Ubuntu 在一段时间内持续增长的原因。虽然在这个排名中没有计算进来,但 Ubuntu 是其他 Canonical 系列发行版,如 Kubuntu、Xubuntu、Lubuntu 的基础。
8 Debian
作为一个坚如磐石的 Linux 发行版,Debian 每2年发布新的稳定版本,并且你放心,每个版本都已经过彻底的测试。
虽然它主要用于服务器上,但现在它的桌面版本已经在功能和外观上得到了明显的改善。
9、 Linux Mint
Linux Mint 的著名口号 “From freedom came elegance” ,不只是说说而已。基于 Ubuntu 的 Linux Mint,是一个稳定、功能强大、完整、易于使用的 Linux 发行版——我们还有很多很多的褒义词可以用来形容 Mint。
Mint 最显著的特点之一是,在安装过程中允许你从一个列表中选择桌面环境,并且你可以放心,一旦它安装完了之后,你无需任何额外的配置步骤就能播放音乐和视频文件,因为标准安装提供了多媒体解码器的开箱即用。
Redhat系列
目前许多高手都使用它,长相一般但却很强悍,一般是Linux高手的首选系统,相比之下就是桌面系统有点不大一样,拥有强大的rpm软件包管理系统,界面更加简洁,如果你不喜欢太多花哨的桌面系统可以考虑用它! Redhat系列,包括RHEL(Redhat Enterprise Linux,也就是所谓的RedhatAdvance Server,收费版本)、FedoraCore(由原来的Redhat桌面版本发展而来,免费版本)、CentOS(RHEL的社区克隆版本,免费)。Redhat应该说是在国内使用人群最多的Linux版本,甚至有人将Redhat等同于Linux,而有些老鸟更是只用这一个版本的Linux。所以这个版本的特点就是使用人群数量大,资料非常多,言下之意就是如果你有什么不明白的地方,很容易找到人来问,而且网上的一般Linux教程都是以Redhat为例来讲解的。Redhat系列的包管理方式采用的是基于RPM包的YUM包管理方式,包分发方式是编译好的二进制文件。稳定性方面RHEL和CentOS的稳定性非常好,适合于服务器使用,但是Fedora Core的稳定性较差,最好只用于桌面应用。
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的资料也很丰富,有很多支持的社区,有问题求教也有地方可去。
Gentoo
Gentoo,伟大的Gentoo是Linux世界最年轻的发行版本,正因为年轻,所以能吸取在她之前的所有发行版本的优点,这也是Gentoo被称为最完美的Linux发行版本的原因之一。Gentoo最初由Daniel Robbins(FreeBSD的开发者之一)创建,首个稳定版本发布于2002年。由于开发者对FreeBSD的熟识,所以Gentoo拥有媲美FreeBSD的广受美誉的ports系统——Portage包管理系统。不同于APT和YUM等二进制文件分发的包管理系统,Portage是基于源代码分发的,必须编译后才能运行,对于大型软件而言比较慢,不过正因为所有软件都是在本地机器编译的,在经过各种定制的编译参数优化后,能将机器的硬件性能发挥到极致。Gentoo是所有Linux发行版本里安装最复杂的,但是又是安装完成后最便于管理的版本,也是在相同硬件环境下运行最快的版本。
FreeBSD
需要强调的是:FreeBSD并不是一个Linux系统!但FreeBSD与Linux的用户群有相当一部分是重合的,二者支持的硬件环境也比较一致,所采用的软件也比较类似,所以可以将FreeBSD视为一个Linux版本来比较。FreeBSD拥有两个分支:stable和current。顾名思义,stable是稳定版,而 current则是添加了新技术的测试版。FreeBSD采用Ports包管理系统,与Gentoo类似,基于源代码分发,必须在本地机器编后后才能运行,但是Ports系统没有Portage系统使用简便,使用起来稍微复杂一些。FreeBSD的最大特点就是稳定和高效,是作为服务器 *** 作系统的最佳选择,但对硬件的支持没有Linux完备,所以并不适合作为桌面系统。
OpenSUSE
OpenSUSE:在欧洲非常流行的一个Linux,由Novell公司发放,号称是世界上最华丽的 *** 作系统,独家开发的软件管理程序zypper|| yast得到了许多用户的赞美,和ubuntu一样,支持kde和gnome,xface等桌面,桌面特效比较丰富,缺点是KDE虽然华丽多彩,但比较不 稳定。新手用这个也很容易上手。
下面给为选择一个Linux发行版本犯愁的朋友一些建议:(仅供参考,我在这里引用的目的就是知道其他版本的LINUX的用途和长处在哪?)
如果你只是需要一个桌面系统,而且既不想使用盗版,又不想花大量的钱购买商业软件,那么你就需要一款适合桌面使用的Linux发行版本了;
如果你不想自己定制任何东西,不想在系统上浪费太多时间,那么很简单,你就根据自己的爱好在ubuntu、kubuntu以及xubuntu中选一款吧,三者的区别仅仅是桌面程序的不一样;
如果你需要一个桌面系统,而且还想非常灵活的定制自己的Linux系统,想让自己的机器跑得更欢,不介意在Linux系统安装方面浪费一点时间,那么你的唯一选择就是Gentoo,尽情享受Gentoo带来的自由快感吧;
如果你需要的是一个服务器系统,而且你已经非常厌烦各种Linux的配置,只是想要一个比较稳定的服务器系统而已,那么你最好的选择就是CentOS了,安装完成后,经过简单的配置就能提供非常稳定的服务了;
如果你需要的是一个坚如磐石的非常稳定的服务器系统,那么你的唯一选择就是FreeBSD。 如果你需要一个稳定的服务器系统,而且想深入摸索一下Linux的各个方面的知识,想自己定制许多内容,那么我推荐你使用Gentoo。
想了解Linux命令可查看《Linux命令大全》,具体查询方式如下图所示:
一、 Linux的主要特点 1符合POSIX 10031标准POSIX 10031标准定义了一个最小的Unix *** 作系统接口,任何 *** 作系统只有符合这一标准,才有可能运 行Unix程序。考虑到Unix具有丰富的应用程序,当今绝大多数 *** 作系统都把满足POSIX 10031标准作为实现 目标,Linux也不例外,它完全支持POSIX 10031标准。另外,为了使Unix System V和BSD上的程序能直接在 Linux上运行, Linux还增加了部分System V和BSD的系统接口,使Linux成为一个完善的Unix程序开发系统。 CT6itugCT6itug
2支持多用户访问和多任务编程Linux是一个多用户 *** 作系统,它允许多个用户同时访问系统而不会造成用户之间的相互干扰。另外, Linux还支持真正的多用户编程,一个用户可以创建多个进程,并使各个进程协同工作来完成用户的需求 CT6itug
CT6itug
3采用页式存储管理 页式存储管理使Linux能更有效地利用物理存储空间,页面的换入换出为用户提供了更大的存储空间。 CT6itug
CT6itug
4支持动态链接用户程序的执行往往离不开标准库的支持,一般的系统往往采用静态链接方式--即在装配阶段就已将 用户程序和标准库链接好,这样,当多个进程运行时,可能会出现库代码在内存中有多个副本而浪费存储 空间的情况。Linux 支持动态链接方式,当运行时才进行库链接,如果所需要的库已被其它进程装入内存, 则不必再装入,否则才从硬盘中将库调入。这样能保证内存中的库程序代码是唯一的。 CT6itug
CT6itug
5支持多种文件系统 Linux能支持多种文件系统。目前支持的文件系统有:EXT2、EXT、XIAFS、ISOFS、HPFS、MSDOS、UMSDOS、 PROC、NFS、SYSV、MINIX、SMB、UFS、NCP、VFAT、AFFS。Linux最常用的文件系统是EXT2,它的文件名长度可 达255字符,并且还有许多特有的功能,使它比常规的Unix文件系统更加安全。 CT6itug
CT6itug
6支持TCP/IP、SLIP和PPP在Linux中,用户可以使用所有的网络服务,如网络文件系统、远程登录等。SLIP和PPP能支持串行线上的 TCP/IP协议的使用,这意味着用户可用一个高速Modem通过电话线连入Internet网中。 CT6itug
CT6itug
除了上述基本特征外,Linux还具有其独有的特色: CT6itug
CT6itug
1支持硬盘的动态Cache 这一功能与MS DOS中的Smartdrive相似。所不同的是,Linux能动态调整所用的 Cache存储器的大小,以适合当前存储器的使用情况,当某一时刻没有更多的存储空间可用时,Cache将被减少, 以增加空闲的存储空间,一旦存储空间不再紧张,Cache的大小又将增加。2支持不同格式的可执行文件 Linux具有多种模拟器,这使它能运行不同格式的目标文件。其中,DOS和 MS Windows正在开发之中,iBCS2模拟器能运行SCO Unix的目标程序。(iBCS2 模拟器不是Linux标准核心的 一部分,但可从ftpinformatikhu berlinde:/pub/os/linux下载) CT6itug
CT6itug
二、 Linux的主要构成 CT6itug
CT6itug
Linux采用页式存储管理机制,每个页面的大小随处理机芯片而异。例如,Intel 386处理机页面大小 可为4KB和2MB两种,而Alpha处理机页面大小可为8KB、16KB、32KB和64KB。页面大小的选择对地址变换算 法和页表结构会有一定的影响,如Alpha的虚地址和物理地址的有效长度随页面尺寸的变化而变化,这种变 化必将在地址变换和页表项中有所反映。在Linux中,每一个进程都有一个比实际物理空间大得多的进程虚拟空间,为了建立虚拟空间和物理空 间之间的映射,每个进程还保留一张页表,用于将本进程空间中的虚地址变换成物理地址。页表还对物理页 的访问权限作出了规定,定义了哪些页可读写,哪些页是只读页,在进行虚实变换时,Linux将根据页表中规 定的访问权限来判定进程对物理地址的访问是否合法,从而达到存储保护的目的。 Linux存储空间分配遵循的是不到有实际需要的时候决不分配物理空间的原则。当一个程序加载执行时, Linux只为它分配了虚空间,只有访问某一虚地址而发生了缺页中断时,才为它分配物理空间,这样就可能 出现某些程序运行完成后,其中的一些页从来就没有装进过内存。这种存储分配策略带来的好处是显而易见的,因为它最大限度地利用了物理存储器。尽管Linux对物理存储器资源的使用十分谨慎,但还是经常出现物理存储器资源短缺的情况。Linux有一 个名为kswapd的守护进程专门负责页面的换出,当系统中的空闲页面小于一定的数目时,kswapd将按照一定的淘 汰算法选出某些页面,或者直接丢弃(页面未作修改),或者将其写回硬盘(页面已被修改)。这种换出方式不 同于较旧版本Unix的换出方式,它是将一个进程的所有页全部写回硬盘。相比之下,Linux的效率更高。 CT6itug
CT6itug
2进程管理在Linux中,进程是资源分配的基镜ノ唬 凶试炊际且越 涛 韵罄唇 蟹峙涞摹在一个进程的生 命期内,它会用到许多系统资源,会用CPU运行其指令,用存储器存储其指令和数据,它也会打开和使用文件 系统中的文件,直接或间接用到系统中的物理设备,因此,Linux设计了一系列的数据结构,它们能准确地描 述进程的状态和其资源使用情况,以便能公平有效地使用系统资源。Linux的调度算法能确保不出现某些进程 过度占用系统资源而导致另一些进程无休止地等待的情况。 CT6itug
CT6itug
进程的创建是一个十分复杂的过程,通常的做法需为子进程重新分配物理空间,并把父进程空间的内容全 盘复制到子进程空间中,其开销非常大。为了降低进程创建的开销,Linux采用了Copy on write技术,即不 拷贝父进程的空间,而是拷贝父进程的页表,使父进程和子进程共享物理空间,并将这个共享空间的访问权限 置为只读。当父进程和子进程的某一方进行写 *** 作时,Linux检测到一个非法 *** 作,这时才将要写的页进行复制 。这一做法免除了只读页的复制,从而降低了开销。Linux目前尚未提供用户级线程,但提供了核心级线程,核心线程的创建是在进程创建的基础上稍做修改, 使创建的子进程与父进程共享虚存空间。从这一意义上讲,核心线程更像一个共享进程组。CT6itug
CT6itug
3文件系统Linux最重要的特征之一就是支持多个不同的文件系统,前面我们已经看到,Linux目前支持的文件系统 多达十余种,随着时间的推移,这一数目还在不断增加。在Linux中,一个分离的文件系统不是通过设备标识 (如驱动器号或驱动器名)来访问,而是 把它合到一个单一的目录树结构中,通过目录来访问,这一点与Unix十分相似。Linux用 安装命令将一个新的文件系统安装到系统单一目录树的某一目录下,一旦安装成功,该目录下的所有内容将 被新安装的文件系统所覆盖,当文件系统被卸下后,安装目录下的文件将会被重新恢复。CT6itug
CT6itug
Linux最初的文件系统是Minix。该文件系统对文件限制过多,并且性能低下,如文件名长度不能超过14 个字符、文件大小不能超过64MB。为了解决这些问题,Linux的开发者们设计了一个Linux专用的文件系统EXT。 EXT对文件的要求放松了许多,但在性能上并没有大的改观,于是就有了后面的EXT2文件系统。EXT2文件系统 是一个非常成功的文件系统,它无论是对文件的限制还是在性能方面都大大优于EXT文件系统,所以,EXT2自 从推出就一直是Linux最常用的文件系统。为了支持多种文件系统,Linux用一个被称为虚拟文件系统(VFS)的接口层将真正的文件系统同 *** 作系统及 系统服务分离开。VFS掩盖了不同文件系统之间的差异,使所有文件系统在 *** 作系统和用户程序看来都是等同的。VFS允许用户同时透明地安装多个不同的文件系统。 CT6itug
CT6itug
4进程间通信Linux提供了多种进程间的通信机制,其中,信号和管道是最基本的两种。除此以外,Linux也提供 System V的进程间通信机制,包括消息队列、信号灯及共享内存。为了支持不同机器之间的进程通信, Linux还引入了BSD的Socket机制。 CT6itug
CT6itug
三、 Linux的不足及发展趋势Linux从出现到现今只经历了短短七年的时间,但其发展速度是惊人的,这与它的开放性和优良的性能 是密不可分的。不过我们应该看到,作为一个由学生开发的系统,Linux还有许多先天不足,它的设计思想 过多地受到传统 *** 作系统的约束,没有体现出当今 *** 作系统的发展潮流,具体表现在以下几个方面: CT6itug
CT6itug
不是一个微内核 *** 作系统;是一个分布式 *** 作系统;不是一个安全的 *** 作系统;没有用户线程;不支持实时处理; CT6itug
CT6itug
代码是用C而不是C++这样的现代程序设计语言编写的。尽管Linux有这样和那样的不足,但其发展潜力不容低估,其发展的动力就是遍布全球、为数众多的 Linux热心者。今后Linux将会朝着完善功能、提高效率的方向发展,包括允许用户创建线程、增加实时处 理功能、开发适合多处理机体系结构的版本。我们相信,Linux、Unix及NT三足鼎立的时代将为期不远。 Linux主要由存储管理、进程管理、文件系统、进程间通信等几部分组成,在许多算法及实现策略上, Linux借鉴了Unix的成功经验,但也不乏自己的特色。 CT6itug
CT6itug
1存储管理 作为一个 *** 作系统,Linux几乎满足当今Unix *** 作系统的所有要求,因此,它具有Unix *** 作系统的基本特征。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)