2.3 安装Linux前的规划
安装最重要的第一件事,就是要取得Linux distributions的光盘数据,该如何去下载? 目前有这么多的distributions,你应该要选择哪一个版本比较好?为什么会比较好? 在台湾,你可以在哪里下载你所需要的Linux distribution呢?这是这一小节所要讨论的喔!
2.3.1 选择适当的distribution
就如同第一章、Linux是什么里面的distributions谈到的, 事实上每个Linux distributions使用的都是来自于http://www.kernel.org官方网站所提供的Linux核心,各家distribution使用的软件其实也都是大同小异, 最大的差别或许就是在于软件的安装模式而已。所以,您只要选择其中一套,并且玩得出神入化, 那么Linux肯定可以学的成的。
不过,由于近年来网络环境实在不很安全,因此你在选择distribution时,特别要了解到该distribution适合的环境, 并且最好选择最新的distribution较佳喔! 以鸟哥来说,如果是将Linux定位在服务器上面的话,那么Red Hat Enterprise Linux及SuSE Enterprise Linux应该是很不错的选择,因为他的版本更动幅度较小,并且更新支持的期限较长的原因。
在我们这次的练习中,不想给大家太沉重的$$负担啦,所以鸟哥选择CentOS这一个号称与RHEL完全相容的版本来练习, 目前(2015/05)最新的版本是CentOS 7.1版。不过,从 CentOS 7.0 版本开始,安装光盘已经不再提供 386 相容版本了, 亦即仅有 64 位的硬件才能够使用该安装光盘来装系统了!旧的 32 位硬件系统已经不主动提供安装光盘了喔!
你可以选择到CentOS的官方网站去下载最新的版本,不过我们在台湾嘛!台湾有映设站台(mirror site), 所以由映设站台来下载比较快啊!下面列出CentOS的下载点:
- 国家高速网络中心:http://ftp.twaren.net/Linux/CentOS/7/isos/
- 昆山科技大学:http://ftp.ksu.edu.tw/FTP/Linux/CentOS/7/isos/
- CentOS官方网站:http://mirror.centos.org/centos/7/isos/
CentOS 7.x 有提供完整版本 (everything) 以及大部分安装软件的 DVD1 版本,鸟哥建议如果你的网络速度够大,下载 everything 版本即可, 如果你得要使用光驱来安装的话,那直接下载 DVD 版本并且烧录到 DVD 光盘上面即可安装了。如果不想要安装,只想要看看到底开机会是什么 Linux 环境, 可以下载 LiveCD/LiveGNOME/LiveKDE 等版本来测试喔!如果想要练功,可以直接使用最小安装光盘版 (Minimal) 来安装!
不知道你有没有发现,怎么我想要下载的文件名会是 CentOS-7-x86_64-Everything-1503-01.iso 这样的格式?那个 1503 是啥东西啊? 其实从 CentOS 7 之后,版本命名的依据就跟发表的日期有关了!那个 CentOS-7 讲的是 7.x 版本,x86_64 指的是 64 位操作系统, Everything 指的是包山包海的版本,1503 指的是 2015 年的 3 月发表的版本, 01.iso 则得要与 CentOS7 搭配,所以是 CentOS 7.1 版的意思! 这样有看懂吗?
Tips 你所下载的文件扩展名是.iso,这就是所谓的image文件(镜像文件)。这种image文件是由光盘直接烧录成文件的, 文件非常的大,建议你不要使用浏览器(IE/Firefox..)来下载,可以使用FTP用户端程序来下载,例如Filezilla (http://filezilla-project.org/download.php)等。这样比较不需要担心断线的问题,因为可以续传啊!
此外,这种镜像文件可不能以数据格式烧录成为光盘/DVD的!你必须要使用烧录程序的功能, 将他<u>以“镜像文件格式”烧录成为光盘或DVD才行</u>!切记不要使用烧录数据文件格式来烧录喔!重要重要!
2.3.2 主机的服务规划与硬件的关系
我们前面已经提过,由于主机的服务目的不同,所需要的硬件等级与配备自然也就不一样! 下面鸟哥稍微提一提每种服务可能会需要的硬件配备规划,当然,还是得提醒, 每个朋友的需求都不一样,所以设计您的主机之前,请先针对自己的需求进行考虑。而, 如果您不知道自己的考虑为何,那么就先拿一部普通的计算机来玩一玩吧!不过要记得! 不要将重要数据放在练习用的Linux主机上面。
打造Windows与Linux共存的环境:
在某些情况之下,你可能会想要在“一部主机上面安装两套以上的操作系统”, 例如下面这些状况:我的环境里面仅能允许我拥有一部主机,不论是经济问题还是空间问题~
- 因为目前各主要硬件还是针对Windows进行驱动程序的开发,我想要同时保有Windows操作系统与Linux操作系统, 以确定在Linux下面的硬件应该使用那个I/O port或者是IRQ的分配等等;
- 我的工作需要同时使用到Windows与Linux操作系统。
果真如此的话,那么刚刚我们在上一个小节谈到的开机流程与多重开机的数据就很重要了。 因为需要如此你才能够在一部主机上面操弄两种不同的操作系统嘛!
如果你的Linux主机已经是想要拿来作为某些服务之用时,那么务必不要选择太老旧的硬件喔! 前面谈到过,太老旧的硬件可能会有电子零件老化的问题~另外,如果你的Linux主机必须要全年无休的开机着, 那么摆放这部主机的位置也需要选择啊!好了,下面再来谈一谈,在一般小型企业或学校单位中, 常见的某些服务与你的硬件关系有哪些?
- NAT(达成IP分享器的功能):
通常小型企业或者是学校单位大多仅会有一条对外的连线,然后全公司/学校内的计算机全部通过这条连线连到网际网络上。 此时我们就得要使用IP分享器来让这一条对外连线分享给所有的公司内部员工使用。 那么Linux能不能达到此一IP分享的功能呢?当然可以,就是通过NAT服务即可达成这项任务了!
在这种环境中,由于Linux作为一个内/外分离的实体,因此网络流量会比较大一点。 此时Linux主机的网卡就需要比较好些的配备。其他的CPU、RAM、硬盘等等的影响就小很多。 事实上,单利用Linux作为NAT主机来分享IP是很不智的~因为PC的耗电能力比IP分享器要大的多~
那么为什么你还要使用Linux作为NAT呢?因为Linux NAT还可以额外的加装很多分析软件, 可以用来分析用户端的连线,或者是用来控制带宽与流量,达到更公平的带宽使用呢! 更多的功能则有待后续更多的学习啰!你也可以参考我们在服务器架设篇当中的数据啰!
- SAMBA(加入Windows网络上的芳邻):
在你的Windows系统之间如何传输数据呢?当然就是通过网络上的芳邻来传输啦!那还用问。 这也是学校老师在上课过程中要分享数据给同学常用的机制了。问题是,Windows 7 的网芳一般只能同时分享十部用户端连线,超过的话就得要等待了~真不人性化。
我们可以使用Linux上面的SAMBA这个软件来达成加入Windows网芳的功能喔!SAMBA的性能不错, 也没有用户端连线数的限制,相当适合于一般学校环境的文件服务器(file server)的角色呢!
这种服务器由于分享的数据量较大,对于系统的网卡与硬盘的大小及速度就比较重要, 如果你还针对不同的使用者提供文件服务器功能,那么/home这个目录可以考虑独立出来,并且加大容量。
- Mail(邮件服务器):
邮件服务器是非常重要的,尤其对于现代人来说,电子邮件几乎已经取代了传统的人工邮件递送了。 拜硬盘价格大跌及Google/Yahoo/MicroSoft公平竞争之赐,一般免费的email信箱几乎都提供了很不错的邮件服务, 包过Web接口的传输、大于2GB以上的容量空间及全年无休的服务等等。例如非常多人使用的gmail就是一例: http://gmail.com。
虽然免费的信箱已经非常够用了,老实说,鸟哥也不建议您架设mail server了。问题是, 如果你是一间私人单位的公司,你的公司内传送的email是具有商业机密或隐私性的,那你还想要交给免费信箱去管理吗? 此时才有需要架设mail server啰。在mail server上面,重要的也是硬盘容量与网卡速度,在此情境中,也可以将/var目录独立出来,并加大容量。
- Web(WWW服务器):
WWW服务器几乎是所有的网络主机都会安装的一个功能,因为他除了可以提供Internet的WWW连线之外, 很多在网络主机上面的软件功能(例如某些分析软件所提供的最终分析结果的画面)也都使用WWW作为显示的接口, 所以这家伙真是重要到不行的。
CentOS使用的是Apache这套软件来达成WWW网站的功能,在WWW服务器上面,如果你还有提供数据库系统的话, 那么CPU的等级就不能太低,而最重要的则是RAM了!要增加WWW服务器的性能,通常提升RAM是一个不错的考虑。
DHCP(提供用户端自动取得IP的功能):
如果你是个区域网络管理员,你的区网内共有20部以上的计算机给一般员工使用,这些员工假设并没有计算机网络的维护技能。 那你想要让这些计算机在连上Internet时需要手动去设置IP还是他可以自动的取得IP呢?当然是自动取得比较方便啦! 这就是DHCP服务的功能了!用户端计算机只要选择“自动取得IP”,其他的,就是你系统管理员在DHCP服务器上面设置一下即可。 这个咚咚的硬件要求可以不必很高啰。FTP:
常常看到很多朋友喜欢架设FTP去进行网络数据的传输,甚至很多人会架设地下FTP网站去传输些违法的数据。 老实说,“FTP传输再怎么地下化也是很容易被捉到的”啦!所以,鸟哥相当不建议您架设FTP的喔! 不过,对于大专院校来说,因为常常需要分享给全校师生一些免费的资源, 此时匿名使用者的FTP软件功能就很需要存在了。对于FTP的硬件需求来说,硬盘容量与网卡好坏相关性较高。
大致上我们会安装的服务器软件就是这一些啰! 当然啦,还是那句老话,在目前你刚接触Linux的这个阶段中,还是以Linux基础为主, 鸟哥也希望你先了解Linux的相关主机操作技巧,其他的建站,未来再谈吧! 而上面列出的各项服务,仅是提供给你,如果想要架设某种网络服务的主机时,你应该如何规划主机比较好!
2.3.3 主机硬盘的主要规划
系统对于硬盘的需求跟刚刚提到的主机开放的服务有关,那么除了这点之外,还有没有其他的注意事项呢? 当然有,那就是数据的分类与数据安全性的考虑。所谓的“数据安全”并不是指数据被网络cracker所破坏, 而是指“当主机系统的硬件出现问题时,你的文件数据能否安全的保存”之意。
常常会发现网络上有些朋友在问“我的Linux主机因为跳电的关系,造成不正常的关机,结果导致无法开机,这该如何是好?” 呵呵,幸运一点的可以使用fsck来解决硬盘的问题,麻烦一点的可能还需要重新安装Linux呢!伤脑筋吧!另外, 由于Linux是多用户多任务的环境,因此很可能上面已经有很多人的数据在其中了, 如果需要重新安装的话,光是搬移与备份数据就会疯掉了!所以硬盘的分区考虑是相当重要的!
虽然我们在本章的第二小节部分有谈论过磁盘分区了,但是,硬盘的规划对于Linux新鲜人而言,那将是造成你“头疼”的主要凶手之一! 因为硬盘的分区技巧需要对于Linux文件结构有相当程度的认知之后才能够做比较完善的规划的! 所以,在这里你只要有个基础的认识即可。老实说,没有安装过十次以上的Linux系统,是学不会Linux与磁盘分区的啦!
无论如何,下面还是说明一下基本硬盘分区的模式吧!
最简单的分区方法:这个在上面第二节已经谈过了,就是仅分区出根目录与内存交换空间( / & swap )即可。 然后再预留一些剩余的磁盘以供后续的练习之用。不过,这当然是不保险的分区方法(所以鸟哥常常说这是“懒人分区法”)! 因为如果任何一个小细节坏掉(例如坏轨的产生),你的根目录将可能整个的损毁~挽救方面较困难!
稍微麻烦一点的方式:较麻烦一点的分区方式就是先分析这部主机的未来用途,然后根据用途去分析需要较大容量的目录, 以及读写较为频繁的目录,将这些重要的目录分别独立出来而不与根目录放在一起, 那当这些读写较频繁的磁盘分区有问题时,至少不会影响到根目录的系统数据,那挽救方面就比较容易啊! 在默认的CentOS环境中,下面的目录是比较符合容量大且(或)读写频繁的目录啰:
- /boot
- /
- /home
- /var
- Swap
以鸟哥为例,通常我会希望我的邮件主机大一些,因此我的/var通常会给个数GB的大小, 如此一来就可以不担心会有邮件空间不足的情况了!另外,由于我开放SAMBA服务, 因此提供每个研究室内人员的数据备份空间,所以啰,/home所开放的空间也很大!至于/usr/的容量, 大概只要给2-5GB即可!凡此种种均与您当初预计的主机服务有关! 因此,请特别注意您的服务项目!然后才来进行硬盘的规划。
2.3.4 鸟哥的两个实际案例
这里说一下鸟哥的两个实际的案例,这两个案例是目前还在运行的主机喔! 要先声明的是,鸟哥的范例不见得是最好的,因为每个人的考虑并不一样。我只是提供相对可以使用的方案而已喔!
案例一:家用的小型Linux服务器,IP分享与文件分享中心:
提供服务:提供家里的多部计算机的网络连线分享,所以需要NAT功能。提供家庭成员的数据存放容量,由于家里使用Windows系统的成员不少, 所以创建SAMBA服务器,提供网芳的网络磁盘功能。
主机硬件配备:
- CPU使用 AMD Athlon 4850e 省电型 CPU
- 内存大小为 4GB
- 两张网卡,控制芯片为常见的螃蟹卡(Realtek)
- 只有一颗 640GB 的磁盘
- 显卡为 CPU 内的内置显卡 (Radeon HD 3200)
- 安装完毕后将屏幕,键盘,鼠标,DVD-ROM等配备均移除,仅剩下网络线与电源线。
硬盘分区:
- 分成 /, /usr, /var, /tmp等目录均独立;
- 1 GB的Swap;
- 安装比较过时的 CentOS 5.x 最新版
案例二:提供Linux的PC丛集(Cluster)计算机群:
提供服务:提供研究室成员对于模式仿真的软、硬件平台,主要提供的服务并非网际网络服务,而是研究室内部的研究工作分析。
主机硬件配备:
- 利用两部多核系统处理器 (一部 20核 40绪,一部 12核 24绪),搭配 10G 网卡组合而成
- 使用内置的显卡
- 运算用主机仅一颗磁盘,储存用主机提供 8 颗 2TB 磁盘组成的磁盘阵列
- 一部 128GB 内存,一部 96GB 内存
硬盘分区:
- 运算主机方面,整颗磁盘仅分 /boot, / 及 swap 而已
- 储存主机方面,磁盘阵列分成两颗磁盘,一颗 100G 给系统用,一颗 12T 给数据用。系统磁盘用的分区为 /boot, /, /home, /tmp, /var 等分区, 数据磁盘全部容量规划在同一个分区而已。
- 安装最新的 CentOS 7.x 版
在上面的案例中,案例一是属于小规模的主机系统,因此只要使用预计被淘汰的配备即可进行主机的架设! 唯一可能需要购买的大概是网卡吧!呵呵!而在案例二中,由于我需要大量的数值运算, 且运算结果的数据非常的庞大,因此就需要比较大的磁盘容量与较佳的网络系统了。 以上的数据请先记得,因为下一章节在实际安装Linux之前,你得先进行主机的规划呀!
原文: https://wizardforcel.gitbooks.io/vbird-linux-basic-4e/content/21.html