中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » 其它操作系统综合讨论区 » Linux下硬盘分区的最佳方案 [转帖]
作者:
标题: Linux下硬盘分区的最佳方案 [转帖] 上一主题 | 下一主题
党委书记
高级用户

PCDOS


积分 912
发帖 217
注册 2002-10-17
来自 广东
状态 离线
『楼 主』:  Linux下硬盘分区的最佳方案 [转帖]


Linux下硬盘分区的最佳方案  

  在对硬盘进行分区前,应该先弄清楚计算机担负的工作及硬盘的容量有多大,还要考虑到以下几个问题:
  第一点也是最重要的一点,要知道当前安装LILO的版本,因为LILO2.21及早期版本对硬盘大小有限制,如果安装LILO到1023磁道以外即8G的空间以外,LILO就无法启动。 但一些BIOS较老的机器,LINUX仍然无法突破1024磁道的限制,因此这些BIOS无法认出大于1024的硬盘空间。
  还需要考虑的问题有:
  · 是否限制用户可使用的磁盘空间大小?
  · 在系统中需要安装哪些软件?
  · 交换分区需要多大?
  · 系统是否有多个硬盘?
  下面,我们按系统工作性质的不同对分区的划分提出了一些建议。当然,根据实际情况,在满足系统工作需求的前提下,下面的分区大小也可以灵活的变动。

  基本工作站的分区方案

  假设系统的硬盘大小是10G。
  /boot 20M
  Swap 128M
  /root 9.85G
  建立一个20M的/boot分区是为了避免将系统内核文件放到1024磁道以外,如果将/boot做为root分区的一个子目录,内核文件就会安装在root分区的任何地方,因为硬盘的大小超过了8G,所以在启动时就有可能出现问题。建议将交换分区的大小设置为内存的两倍,在这里我们假设系统的内存为64M。最后我们将硬盘的剩余空间全部分给了root分区。

  Red Hat Linux 6.2 及其早期版本上的基本服务器硬盘分区方案

  这里的服务器我们假设只提供几种通用的服务,如WWW服务及FTP服务等几种服务,通过telnet登录的用户数很少。假设其硬盘大小为25G。
  /boot 20M
  Swap 128M
  / 10G
  /home 13G
  /var 2G
 
  在硬盘的最前面创建20M大小的/boot分区,原因同上。 交换分区的大小也是128M,因为内存的大小为64M。
  / ,即root分区设为10G这么大是因为其中有一个/usr目录,这个目录可能会占用很多硬盘空间,特别是在安装了X Server,运行图形界面的应用程序的时候。
  /home分区是硬盘中最大的分区,这似乎与我们假设系统用户数不多有些矛盾。实际上在/home目录下确实没有几个用户目录,但在Red Hat6.2及更早的版本中,Apache服务器和wu-ftpd FTP服务器被放在了/home/httpd及/home/ftp目录中。所以这个分区这么大也是有原因的。
  最后,/var目录独自占用了一个分区,因为系统的所有日志都写到了/var/log目录下,这将会占用很大的硬盘空间。如果系统日志记录得非常详细,整个目录很快会被写满,导致系统工作呆滞。当然,可以通过系统日志后台守护程序syslogd来修改日志配置,避免发生这种情况。

  Red Hat 7及以上版本的基本服务器分区方案

  这种情况同前一个方案的情况相同,不同的是LINUX版本为Red Hat 7.0及其以上版本。
  /boot 20M
  Swap 128M
  / 10G
  /var 15G

  与RedHat6不同,在RedHat7中HTTP服务和FTP服务的目录现在位于 /var/www/和/var/ftp/,因此/var分区有15G之大也就不难理解了。

  多用户服务器分区方案

  在这种服务器系统中,同时有多个用户通过telnet, ssh, rlogin或其方式在远程访问系统。系统中有三个35G的硬盘驱动器,总共有105G的磁盘空间 。系统中用到了RAID 5技术做数据冗余。这种情况下,管理员必须为每个用户分配磁盘空间。 对RedHat 6.2及更早的版本,分区如下:
  Disk 1:

  /boot 20M
  / 4G
  /var 3GB
  /home 27.98G

  Disk 2:

  swap 20MB
  / 4GB
  /var 3GB
  /home 27.98GB

  Disk 3:

  swap 20MB
  / 4GB
  /var 3GB
  /home 27.98GB

  这样分区的原因:首先,Disk1上的20M /boot分区不属于任何RAID阵列,否则如果你将/boot放至RAID阵列中,以后就不能系统内核升级了。
  为了方便管理,在其它两个硬盘中建立了20M的交换分区。这种服务器一般配有1G以上的内存,因此交换分区的大小不成问题。如果增大交换分区,就会减少RAID分区空间,所以20M是足够的。RAID分区的分组如下:

  · 1-A, 2-A, and 3-A 一起组成一个8G的 RAID 5 驱动器,做为/根目录打开。
  · 1-B, 2-B, and 3-B 组成 6GB的 RAID 5 驱动器,做为 /var目录。
  · 1-C, 2-C, and 3-C 组成 55.96GB RAID 5 驱动器, 做为 /home.目录。
  这种分配方案总共有55.96G的空间分配给所有用户及Apache和FTP服务,在/var下用6G空间用做记录日志、邮件,这么大的空间是足够的。
  如果安装Red Hat7或以上版本,应给/var分区更大的空间,因为它同时还存放着WEB和FTP服务的两个目录。  




我完全同意设想建立DOS组织“DOS联盟” ,也就是说和Wengier、以及“起步”站长莫老师等DOS战友一起来建立这个“DOS联盟”,以发展我国自主OS(操作系统)的高度去完成我们共同的愿望。
                                                   ------党委书记
2003-4-16 00:00
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
党委书记
高级用户

PCDOS


积分 912
发帖 217
注册 2002-10-17
来自 广东
状态 离线
『第 2 楼』:  

如何在大硬盘上安装 Linux

许可证:
本文档的发布遵循 DGPL, 任何人有权免费获得, 阅览,
转载和发布本文档, 不得用于任何形式的商业用途.
本文档现在由 Rocky S. Lee 进行维护, 任何人可以对
其中存在的遗漏, 错误进行修改和指正. 修改者名单将列于
本文档的作者名后.
简短说明:
本文档的目的在于介绍如何利用 LILO (LInux LOader) 对安装在硬盘上
大于 1024 拄面 (一般来说是在大于 8 G 的硬盘分区上) 的 Linux 系统进行
正确和安全的引导. 如果您在阅都本文档并按照本文档介绍的方法后引导您的
Linux 系统时出了差错或者发现本文介绍的方法有误时, 请于作者联系.
本文档更加技术性的版本将在今后进行发布, 关注本文档的 Linux 用户
可以敬请留意以下站点:
华南木棉 BBS bbs.gznet.edu.cn
中国 Linux 论坛 www.linuxforum.net
西十八 BBS bbs.x18.scut.edu.cn
感谢 LinuxFarmer 在这篇文档的创作上给予的无私帮助.
一. 问题的提出
在 IBM 80x86 系列 PC 机中, 引导系统时对硬盘的寻址是采用的基本输入
输出系统 (BIOS) 根据 CMOS 中存储的硬盘参数进行引导的. 读取了硬盘的主
引导记录 (MBR, Main Boot Record) 后根据其内部存储的数据或者定位到相应
的分区而由该分区的引导扇区中的完成对该分区中系统的引导, 或者是直接从
主引导分区中加载引导所需要的信息完成引导, 比如 LILO.
由于历史的原因, 很多系统在引导时所使用的硬盘读取方式仍然为旧的中
断调用 int 13h. 该中断中对硬盘的寻址方式以三维的方式出现, 这三维分别
为: 柱面, 磁头, 磁道(CYLs, HEADs, SECs). 其中柱面号是保存在中央处理器
(CPU)的 CX 寄存器的高 10 位 (bit) 中, 占用 10 个二进制位(bit). 这样决
定了其寻址范围只能是 0 - 1023. 随着现在计算机科学的发展, 硬盘容量的不
断扩大, 该中断调用的局限也暴露出来. 这就是无法使用 LILO 引导安装在1024
柱面以后的 Linux 系统.
事实上, 并非完全不能. 对硬盘的访问还可以采取另外一种形式, 就是使
用线性地址空间, 不再使用柱面, 磁头, 磁道的三维地址定位方式. 这也是使
用 GNU / Linux 系统提供的 LILO 对安装在硬盘任何位置的操作系统进行引导
的关键.
二. 对 LILO 的分析
作为一个成熟的操作系统的引导系统, LILO 当然可以采用上面所说的两种
方式对硬盘中的系统进行引导. 当然一般的情况是使用常见的三维地址空间对
硬盘进行访问, 而对于一些比较特殊的系统是需要使用线性模式对硬盘进行访
问. 这时需要在要引导的系统对应的引导记录上加上参数, 以便 LILO 能够做
出正确的处理.
一般在进行 Linux 系统安装的时候, 执行到 LILO 的安装这一步时, 会问
你是否使用 linear 模式, 如果使用的话, 需要填上一些参数. 而这时的系统
提示是问你是否有比较特殊的系统与 Linux 共存. 这个消息实际上迷惑了几乎
所有人. (注: 这里所说的提示信息是 RedHat Linux 系列和一些在此基础上进
行改进版本的) 其实可以在这个时候加上一些特殊参数以实现一些特殊的功能.
具体的什么参数对应什么功能已经超出了本文的范围, 你可以参考 LILO 的手册
文档, 该文档已经由中国 Linux 论坛的 ZEO 翻译成中文. 这里只对其中的一个
参数感兴趣, 就是硬盘的 CHS 参数.
三. 问题的解决
如果你有一块超过 8 G 的大硬盘, 并且需要把 Linux 安装在比较靠后的位
置, 可以在安装的时候, 选择 linear 模式, 并且给它加上硬盘参数.
安装时候的硬盘参数可以这样写:
hd?=CYLs, HEADs, SECs
其中的大写字母需要用实际的硬盘参数来替换, 这些参数可以从硬盘的标枪
上查到, 也可以看看 BIOS 设置里硬盘参数对应 LBA 模式的那一行. 问号是根据
硬盘确定的, 实际使用的时候, 它可以是 a, b, c, d 四个字母中的一个. 比如:
hda=1869,63,255
这是 IBM 15.2G 硬盘的参数.
当然进入了 Linux 以后, 可以通过编辑 /etc/lilo.conf 加上这个文件, 然
后运行一遍 lilo 达到同样的目的. 下面是本人未加参数前的 lilo.conf
的内容:
boot = /dev/hda
map = /boot/map
install = /boot/boot.b
prompt
timeout = 50
image = /boot/vmlinuz
label = linux
root = /dev/hda1
initrd = /boot/initrd-2.2.12-20.img
read-only
按照 linear 方式加入参数以后是如下格式:
boot = /dev/hda
map = /boot/map
install = /boot/boot.b
prompt
linear <-----加进了这一行
timeout = 50
image = /boot/vmlinuz
label = linux
root = /dev/hda1
initrd = /boot/initrd-2.2.12-20.img
read-only
append = "hda=1869,63,255" <------加进了这一行
修改成这样以后, 保存, 在命令提示符下打 lilo 命令, 当再次起动 Linux

统的时候, LILO 就按照线性模式对系统进行引导.
除了在硬盘上寻址定位的方式不
同以外, 对其他方面没有什么影响.
上面只是举个例子, 实际上是没有什么实用的, 但请注意, append
参数是针对
每个系统引导记录的, 一定要放在 image 的下面或者是 other 的下面,
这样它才
可以发挥作用.
四. 参考
LILO.CONF 中文手册页  




我完全同意设想建立DOS组织“DOS联盟” ,也就是说和Wengier、以及“起步”站长莫老师等DOS战友一起来建立这个“DOS联盟”,以发展我国自主OS(操作系统)的高度去完成我们共同的愿望。
                                                   ------党委书记
2003-4-16 00:00
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: