经过漫长的等待之后安装终于完成了。我总算离开了光盘带着跟随我的那帮兄弟们在硬盘里落户了。用户随即发出命令重启我满怀信心的看着已经来到硬盘上的兄弟们我们就要开始一段新 的生活了希望大家能够作出最大的努力让用户认可我们这个系统。看着兄弟们意味深长的对我点了点头之后我静静的闭上了眼睛……

小子起床了

我睁开眼看看眼前站的人是门房的 GRUB大叔。仔细回忆了一下想起来了我刚刚被安装到一台电脑里这是我的第一次启动。

有人说你怎么记性这么差阿这刚才几秒钟发生的事情你怎么就还得回忆一下才知道呢您别奇怪这还是因为您跟我不是一个种族的不大了解。一方面几秒钟对我们软件来说已经是一个很长的时间了。另一方面我们linux编程软件在电脑断电不工作的时候是没有一点记忆的不像你们人类睡觉的时候还能做个梦啥的。我们睡觉的 时候也就是系统没启动的时候),是什么也不知道的之前发生的 事情需要记忆的我们都会在睡觉前写成文件放在我们住的硬盘里 这样下次起床就能回忆起来了。每次起床的时候都是由GRUB大叔 都来叫醒我。G大叔是一个启动管理器就住在传达室。所谓传达室 学名叫做 MBR是一个硬盘的入口第 0号扇区。传达室不属于任何 一个房间或者说MBR不属于任何一个分区。传达室很小只有512Byte因为就一个扇区嘛。由于传达室地方实在太小所以 G 大叔会把一些有用的东西放在我的硬盘空间里必要的时候来看看具体放的是什么咱们待会再说G大叔每天的职责就是叫床——叫我起床。有人说你不会自己定个闹钟阿这么大了还用人叫。我……-_-b再次重申我是一个软件OK我是一个操作系统操作系统也是个程序是个软件只不过特殊点而已。是软件就得被别人调用才能启动才能工作这个调用就是叫我起床的动作。G大叔就是负责叫我起床的软件那你可能 又要问了G大叔既然也是软件那谁负责叫他呢

话说有一种东西叫做 BIOS大家都听说过吧。就是主板上那个就是开机你按 del 进去的那个蓝屏幕不是所有主板都按 del  BIOSBIOS 这个家伙其实也是一个软件但他是一个比我和 G大叔还特殊的软件特殊到一般都不归在软件的行列里而是被叫做固件因为他住在主板上的一个芯片里而不像我们这样住在硬盘里。每当计算机的电源键被主人按下的时候一股温暖而舒适的电流就会从电源涌入流 遍整个主板流经每个元件流到 BIOS居住的那颗芯片并由芯片上的某一跟管脚流进芯片里面并准确无误的击中的 BIOS的身体于是——BIOS醒了。和着天天被电醒的真惨~)

BIOS 醒来之后就开始工作。他的工作平凡而重要复杂而机械就是去检查CPU 内存阿显卡阿啥的都是否正常。都检查一遍没有问题之后就来到我们住的硬盘这里来到MBR来到那间传达室完成他的最后一个任务——叫醒在门房值班的那个人。现在这里的门房自然是 G大叔了是在刚才我安装的时候把他安排到那里的。在 大叔入行之前很多linux 带的是一个叫做 LILO 的家伙。注意 LILO不是LOLILILO就是 LInux Loader 的意思。这家伙以前一直给各种 linux 充当门房。不过这家伙比较死心眼他不认字不认识分区阿目录啥的。他只记步数lilo不识别分区和目录只记录内核文件所在的扇区号),比如说要让他叫我起床那得先让他看好了我睡哪然后他自己记着从门房出来向东走多少步向南走多少步就走到我床前。下次要叫床的时候他就严格的按照自己的记录去走如果我睡的地方变了 他照样会走到我原来睡觉的地方对着空气叫那个不存在的我起床。所以每次我要 换地方睡觉还都得跟这死心眼打个招呼。用 lilo每次升级了内核都要重新安装 一边 lilo以便他能找到新的内核

大叔就不是这样了人家好歹认字能读文件。我会给他写个配置文件放在我那间大屋子的 /boot/grub/位置里叫做 grub.cfgG大叔每次起来后都来到这里拿 起文件看看。这就是我说的他寄放在我这里的文件之一。我会在上面给他写清楚我睡在哪里哪个分区哪个目录然后 G大叔一看就知道该到哪里去叫我了。如果我不睡在原来的地方也没关系只要把那个配置文件改了就好G大叔仍然可以找到我。 除了叫我G大叔也负责叫醒我的邻居隔壁的那个操作系统。那个操作系统我之前有所耳闻叫做查皮是一个叫做稍微有点软的公司做的。

查皮这家伙名气可是大的很全世界没几个不认识他的。这名气一大呢脾气就大了 作事情也从来不考虑一下别人。为什么这么说呢还得从传达室说起。传达室现在住 着跟我一起来的 G大叔我们来之前整个电脑只有查皮一个人住的时候传达室是没人的而是放了一个简单的类似门铃的装置BIOS来传达室叫人的时候只要按一下那个铃就可以了那边的查皮就知道该起床了。G大叔搬进去之后会考虑到原有 的查皮系统留着叫醒查皮的那个开关。当用户启动电脑G大叔被叫醒的时候G大叔会一脸严肃的问用户要用哪个系统一个 ubuntu一个查皮给你 10快选 如果用户选我G大叔就来叫醒我如果选查皮G大叔就去按那个铃。虽然 G大叔说话有点不客气不过还是尽职尽责的作为一个启动管理器就要负责好硬盘上每个系统的启动工作。可是查皮就不一样了如果硬盘上已经住进了我门房里已经有了 G大叔这时候重装查皮系统的话查皮会不管三七二十一的把 G大叔赶出来在 传达室装好他的起床铃就走了不管我这边的情况。电脑再启动的时候BIOS自 然就找不到G大叔了就只能去按那个铃直接启动了查皮我的存在就完全被无视了。

那如果这样的惨剧不幸的事情发生了怎么半呢他能把 G大叔赶出来我照样能 在让 G大叔再搬进去想强拆没门不过虽然说是这么说这要想把 G大树搬回 去前提是我得启动了才可以呀处于睡觉状态的我是什么也干不了的。可是 G大叔 已经被赶走了没法叫我起床了我又怎么启动呢还记得那张安装光盘么还记得 我说那是一张 LiveCD还记得系统出问题的时候可以用他来修复么没错就是那 张赶紧让你家狗狗把他叼回来现在用上了用 LiveCD启动电脑就能够启动光盘上的 ubuntu系统这时候电脑可就归我们linux系统命令管啦嘿嘿小小的查皮算什么 你敢把我们的 G大叔撵走想的美LiveCD启动之后打开命令行运行 sudo -i获取权限。然后mount /dev/sdax /media/sdax就是你安装Ubuntu的时候用作根目录”/”的那个分区如果你还单独分了 /boot分区那就还得 mount /dev/sday /media/boot/

 

当然这里的 sdax,sday都需要根据你的实际分区情况修改可能是 sda1,sda4或者 sdb2,sdc8都没准。mount 好了之后运行 grub-install –root-directory=/media/ /dev/sda就好了。最后重启电脑熟悉的 G大叔又回来了。

当然以上说的都是以后可能发生的情况目前在我这里还没有这样的事情隔 壁那个查皮睡的死猪一样不会有什么举动的。而 G大叔早在安装的时候就自动设置 好了多重系统启动刚刚就是用户告诉 G大叔来叫醒我去干活的。

起床之后用户似乎对 G大叔的举动不是很满意打算要修改一下 G大叔的配置 文件。刚才我们说了G大叔启动的时候会去找 /boot/grub/grub.cfg文件这里面记录 了一些 G大叔应该做的事情。比如去×××我去哪里叫醒查皮等待 10秒没有动静 的话就默认叫醒我等等。不过主人要想修改这些设置的话可不需要修改这个文件而是要该 /etc/default/grub文件。这个文件里简单明了的记录了 G大叔应该做的一些 动作。只见用户下达了命令sudo gedit /etc/default/grub这命令的意思就是以 root

 

户的身份命令 gedit软件去打开 /etc/default/grub文件。之前我们说过安装的时候 创建的那个用户不是一般的用户是拥有能变身成 root的能力的用户。这个 sudo 意思就是我要变身输入这个命令之后我会要求用户再输入一边他自己的密码 注意是当前用户的密码比如我这里就是 lanwoniu这个用户),不是 root的密码 真正的 root用户的密码……是个迷。输入了密码确认了他就是安装时的那个用户后 就可以以 root的权限去执行后面的命令了gedit /etc/default/grub这个 gedit是一个小的文本编辑器要编辑文本文件用他最方便了。linux程序设计gedit小弟身轻如燕迅速的从硬盘 里爬起来越进内存里打开那个 grub文件显示在屏幕上。只见文件里写着162847705.jpg

GRUB_DEFAULT=0 这行说的就是让 G 大叔在用户没有选择的情况下默认来叫醒我。因为在电脑启动的时候G大叔给用户的选项里叫醒我是排在第一个的。 但是 G大叔数数喜欢从 0开始数所以是“=0”用户似乎就是看着这个不大顺眼 把这个改成了4。我掐指一算改成 4也就是启动时 G大叔给用户的第 5个选项……是去叫醒查皮。用户的意思是如果他没有选择就让 G大叔去叫醒查皮。哎……看来还是不喜欢我阿。另外这一行GRUB_TIMEOUT=10也被用户改成了 5。这行 是 G大叔等待用户选择的时间原本是等 10如果用户不选择的话就去叫醒查皮 现在改成 5秒了看来这用户还是个急性子。改完了之后保存了这个文件gedit小弟继续回硬盘里睡觉去了。但是还没完光改了这个文件是不管用的G大叔真正关 心的是 /boot/grub/grub.cfg文件阿。还得运行一下 sudo update-grub这样就会根据刚才修改的 grub文件自动生成一个给 G大叔看得新的grub.cfg文件。这才算改完。