![]() |
|
Spaces home I,亮子PhotosProfileFriendsMore ![]() | ![]() |
I,亮子 |
|||||||||||
|
March 31 索尼爱立信8GB存储W980真机曝光抢先看索尼爱立信8GB存储W980真机曝光抢先看 新年伊始索尼爱立信便开始了凶猛的进攻,在举世瞩目的全球移动大会(Mobile World Congress)开幕之际,索尼爱立信更是震撼发布了7款涵盖各个领域的高性能新品。其中,除了首度搭载Xperia新品牌和采用Windows Mobile操作系统的旗舰产品Xperia X1及G系列和C系列等手机
November 09 系统引导管理器GRUB,为初学者指南 GRUB是多系统引导管理器,简单的说既能引导Linux,同时也能引导Windows;本文重点介绍了GRUB的menu.lst的写法,另外通过GRUB命令行引导系统也做了详述;这些无论是对Windows版本的WINGRUB还是Linux版本的GRUB都是适用的;
一、什么是多重操作系统引导管理器,什么是GRUB;
系统启动引导管理器,是在计算机启动后运行的第一个程序,他是用来负责加载、传输控制到操作系统的内核,一旦把内核挂载,系统引导管理器的任务就算完成退出,系统引导的其它部份,比如系统的初始化及启动过程则完全由内核来控制完成; Windows也有类似的工具NTLOADER;比如我们在机器中安装了Windows 98后,我们再安装一个Windows XP ,在机器启动的会有一个菜单让我们选择进入是进入Windows 98 还是进入Windows XP。NTLOADER就是一个多系统启动引导管理器,NTLOADER 同样也能引导Linux,只是极为麻烦罢了; 在Powerpc 架构的机器中,如果安装了Linux的Powerpc 版本,大多是用yaboot 多重引导管理器,比如Apple机目前用的是IBM Powerpc处理器,所以在如果想在Apple机上,安装Macos 和Linux Powerpc 版本,大多是用yaboot来引导多个操作系统; 因为目前X86架构的机器仍是主流, 所以目前GRUB和LILO 仍然是我们最常用的多重操作系统引导管理器;
我们欣喜的看到LinuxSir.Org 社区的好多弟兄都曾经或正在写GRUB实践文档,也有的弟兄也总结了GRUB的一些基础知识,比如 probing兄弟的 《GRUB 学习笔记》;由于每个人的写文档时风格不同,可能同一份文档不同的人来写就有不同的风格;所以今天也抖胆也一篇入门级的教程,由于北南不会写高级教程,所以还得请高手弟兄指教,先谢过;
基于在X86架构的CPU而开发操作系统,系统引导管理器不仅仅有GRUB ,而且也有LILO,但对于多重系统引导管理器,你只能选择其一而用;不能两个同时使用; 目前这两个多重系统引导管理器是大家最常用的,也是主流Linux发行版而采用的;有的弟兄喜欢GRUB,比如我个人,有的弟兄喜欢LILO ; 主流发行版 Fedora、Redhat、Centos等基于RPM包的系统,在最新版本中都默认GRUB引导;Slackware 目前仍采用LILO;而Debian发行版目前最新的版本也是采用GRUB; 从目前看来,GRUB有逐渐取代LILO之势,GRUB 2.0正在开发之中;所以我们有理由用GRUB,我也有理由写GRUB使用教程;
GRUB不但有Linux版本,也有Windows版本;现我们一一介绍; 如前面所说,目前在在Unix类的操作系统中,大多是都有GRUB;GRUB几乎能引导所有X86架构的操作系统;功能之强,使用简单是GRUB最大的卖点;由于Windows 操作系统的先入为主的优势,使得大家对Windows的NTLOADER了解的比较多,而对开源社区的GRUB显得有点寞生,由此而带来使用上的“心理恐惧”;究其初学者对GRUB“恐惧”的主要原因还是对GRUB没有太多的了解和深入;无论是WINGRUB还是Linux版本的GRUB,最方便的还是对GRUB命令行的操作;一谈到命令行(Command)的操作,可能初学者对此恐惧;其实没有什么难的,象北南这样低级的写手,还能操作得起来,您也应该能行;
请参考:《以WINGRUB 引导安装Fedora 4.0 为例,详述用WINGRUB来引导Linux的安装》
其实对于Linux的GRUB,几乎所有的Linux主流发行版都有打包,如果您安装了Linux,并且在开机后出现GRUB字样的,证明您已经安装了GRUB;而无需再次安装;Linux的GRUB软件包安装部份并不是本文的重点; 如果您的Linux系统没有安装GRUB,或者采用的是LILO,而您想用GRUB,可以用系统安装盘自带GRUB软件包来安装,或者到相关发行版本的软件仓库下载后安装; GRUB 的Linux版本目前在各大发行版中都有打包;比如Fedora/Redhat/Centos/Mandrive/Mandriva/SuSE等以RPM包管理机制的系统,可以通过如下的命令来安装;
[root@localhost ~]# rpm -ivh grub*.rpm
如果是Slackware 您可以用如下的办法来安装;
[root@localhost ~]# installpkg grub*.tgz
其它的发行版本请用其自己特色的软件包管理工具来安装; 当然您也可以通过源码包,在任何Linux的发行版上安装;至于源码包的安装方法; 请参考:《如何编译安装源码包软件》
[root@localhost ~]#tar zxvf grub*.tar.gz
确认您是否成功安装了GRUB,您可以测试是否有如下两个命令;
[root@localhost ~]# grub
如果您不能找到这两个命令,可能您的可执行程序的路径没有设置; 当然您可以用绝对路径;比如下面的;
[root@localhost ~]# /usr/sbin/grub
如果您还是找不到GRUB软件包安装在哪了;您可以用下面的命令来解决和查找;
[root@localhost ~]# updatedb 注:这个要花很长时间;是索引slocate 的库,然后再通过locate来查找;
比如找到的是有类似如下的; [root@localhost ~]# locate grub
在一般情况下,在路径中带有bin或sbin中字样的,这些路径下都是可执行程序;sbin 是超级权限用户才能使用的管理命令;要使用这些命令一般的情况下得切换到root用户下才能使用;比如
[beinan@localhost ~]$ su - 注:切换到root用户,并且切换到其家目录;
grub-install 命令有何用呢?其实就是把我们前面已经安装的软件包中的一些文件复制到 /boot/grub中;对于新安装GRUB软件包后,也是一个必经的过程;我们前面所说的GRUB软件包的安装;而现在我们说的是GRUB配置的过程中的安装;虽然在洋文中都是install ,但表达的意思是不一样的; 我们首先要运行 fdisk -l 来确认到底是硬盘的标识; 这个过程主要是确认硬盘的标识是哪个调备,到底是/dev/hda还是/dev/hdb 还是其它的;
[root@localhost ~]# fdisk -l
如果通过fdisk -l 出现有/dev/hda字样的,我们就要用下面的命令来安装;
[root@localhost ~]# grub-install /dev/hda
如果是您fdisk -l 出现的有/dev/hdb呢,那就如下运行;
[root@localhost ~]# grub-install /dev/hdb
如果既有/dev/hda和/dev/hdb 就安装到/dev/hda中;
[root@localhost ~]# grub-install /dev/hda
值得注意的是如果您有一个/boot分区,应该用如下的办法来安装;
[root@localhost ~]#grub-install --root-directory=/boot /dev/hda
注解:具体是/dev/hda还是/dev/hdb,请以fdisk -l 为准;如果两个都有,就看您把/boot分区是放在第一块硬盘还是第二块硬盘上了,以实际情况为准;
[root@localhost ~]# grub
会出现grub>提示符,这是grub命令行模式 ,如果能在开机中出现提示符,没有引导不起来的系统,除非您的系统破坏的极为严重。如果仅仅是GRUB被破坏了,GRUB命令行是能让操作系统引导起来的; 接着看例子,我们要找到 /boot/grub/stage1的,在grub>后面输入;
grub> find /boot/grub/stage1
注解: (hd0,6) 这是/boot所在的分区;不要误解为是Linux 的/所在的分区,这是值得注意的;
grub>root (hd0,6) 注:这是/boot所在的分区;
注解: 上面这步骤是根据 find /boot/stage1而来的,仔细看一下就明白了;现在我们一般安装很少会把/boot分区列为一个单独的分区;不过有的弟兄可能也喜欢这么做;所以还是有必要说一下为好;
对于GRUB来说,如果没有配置menu.lst,无论是Linux版本的GRUB,还是WINGRUB,都会有命令行可用,通过命令行是一样能把操作系统引导起来的;有些弟兄总以为menu.lst 配置错了, 或者在机器启动后出现grub>命令行模式就要重新安装系统,其实根本没有这个必要;只要学会GRUB的命令行的用法,根本没有必要重装系统; menu.lst 位于/boot/grub目录中,也就是/boot/grub/menu.lst 文件;您可以用vi或您喜欢的编辑器来编辑他;如果您不会用vi,还是去学习一下吧;简单的用法怎么也得会,对不对?毕竟这个文档不是讲vi的用法的; 有的弟兄会说,我没有menu.lst怎么办?那就创建一个;用下面的命令;
[root@localhost ~]# touch /boot/grub/menu.lst
[root@localhost ~]# cd /boot/grub
现在我们来写GRUB的menu.lst了,因为/boot/grub/grub.conf是 /boot/grub/menu.lst的链接文件,改哪个都行。链接文件相当于Windows的快捷方式,这样可能能更好的理解;
首先我们看一下我的Fedora 4.0 中的/boot/grub/menu.lst 的内容;
default=0
注解: default=0
timeout=5
hiddenmenu
注解:隐藏GRUB的启动菜单,这项也是可选的,也可以用#号注掉; 一般的情况下对Linux操作系统的启动,一般要包括四行;title 行;root行;kernel 行;initrd 行;
title XXXXX 注:title 后面加一个空格,title 是小写的,后面可以自己定义;比如FC4,自己定义一个名字就行; 有的弟兄会问,root (hd[0-n],y)是怎么来的? 请参考:《在Linux系统中存储设备的两种表示方法》 kernel 一行,是通指定内核及Linux的/分区所在位置; 比如例子中是; kernel /boot/vmlinuz-2.6.11-1.1369_FC4 ro root=LABEL=/
kernel /vmlinuz-2.6.11-1.1369_FC4 ro root=LABEL=/
因为/boot所处的分区已经在title 下一行root (hd[0-n],y)中指定了,所以就无需要再指明内核处在哪个分区了;另外Linux系统的硬盘分区的挂载配置文件在/etc/fstab ,原理是通过 mount /dev/hd[a-z]X /boot 来进行的;您可以对照着来理解; ro 表示只读; root=LABEL=/ 来表示Linux的根所处的分区。LABEL=/ 这是硬盘分区格式化为相应文件系统后所加的标签;如果您不了解什么是标签,也可以直接以/dev/hd[a-z]X 或者/dev/sd[a-z]X来表示;就看您的Linux是根分区是在哪个分区了。比如我的是在/dev/hda7 , 那这里就可以写成root=/dev/hda7; 如果查看系统运行所挂载的分区,请用 df -lh 来查看,就能明白是不是/boot是独立的分区,或者查看/etc/fstab也能知道;
[root@localhost ~]# df -lh
在这个例子中,我们可以发现 /boot并没有出现只有/dev/hda7,这表示/boot并不是独立的一个分区;所有的东西都包含在/中;于是我们在/boot中查看内核版本; [root@localhost ~]# ls /boot/vmlinuz*
于是我们就可以这样kernel 这行了;
kernel /boot/vmlinuz-2.6.11-1.1369_FC4 ro root=/dev/hda7
如果是/boot独立一个分区,initrd 一行要把/boot中省略;如果/boot不是处于一个分区,而是和Linux的/分区处于同一分区,不应该省略; 比如我们在2)中用的例子;现在拿到这里,我们应该首先查看 /boot中的initrd的文件名到底是什么;
[root@localhost ~]# ls /boot/initrd*
如果是通过df -lh 得知或查看/etc/fstab 也行, 得知/boot是独立的分区;这时initrd 应该写成;
initrd /initrd-2.6.11-1.1369_FC4.img
如果是 /boot不是独处一个分区,而是在/同一处一个分区, 则要写成;
initrd /boot/initrd-2.6.11-1.1369_FC4.img
在这里,我们只说重要的,不重要的就一带而过了; 比如我们确认/boot和Linux的/分区同处一个分区;
[root@localhost ~]# df -lh
然后我们/etc/fstab 中,查看/分所在的分区或分区标签是什么; [root@localhost ~]# more /etc/fstab
经过上面的df -lh 和more /etc/fstab 的对照中得知,/boot并是独处一个分区,而是和/在同一个分区;这个Linux系统安装在/dev/hda7上,文件系统(此分区)的标签为LABEL=/ ,/boot也是处于/dev/hda7 ,/dev/hda7也可以说是 root (hd0,6);
[root@localhost ~]# ls -lh /boot/vmlinuz*
我们根据上面所提到的,可以写成如下的样子;
default=0
也可以写成;
default=0
注解:上面两个不同之处在于一指定Linux的根/所在的分区时,一个是用了文件系统的标签,另一个没有用标签; 本写法主要是把指定/boot所位于的所分区直接写入kernel 指令行;这样就省略了通过root (hd[0-n],y)来指定/boot所位于的分区;
有前面的那么多的讲解,menu.lst写法之二就好理解多了;也得分两种情况,咱们先把/boot并不是独处一个分区,而是和Linux的根分区处于同一个分区;我们以 4)menu.lst第一种方法的写法总结 的实例为例子;
default=0
注解: title FC4x 注:自己为这个Linux 起个简单的名,以title开头,然后一个空格,后面就自己发挥吧,FC4或FC4x都行; kernel 空格 (hd0,6)/boot/vmlinuz-2.6.11-1.1369_FC4 空格 ro 空格 root=/dev/hda7 kernel 这行这样理解 kernel (boot所在的分区)/boot/内核文件件全称 ro root=Linux根所位于的分区或标签 initrd 空格 (hd0,6)/boot/initrd-2.6.11-1.1369_FC4.img
比如我们查看到df -lh 得到的是 [root@localhost ~]# df -lh
我们再进一行查看/etc/fstab 得知; LABEL=/ / ext3 defaults 1 1
所以我们应该写成如下的;
title FC4x
因为Linux的根分区是/dev/hda7,通过/etc/fstab和df -h的内容得知标签为 LABEL=/的分区就是/dev/hda7 ,所以有;
title FC4x
GRUB的命令行才是王道,如果知道怎么用命令行来启动操作系统,那理解menu.lst的写法也不难;也就是说在开机的时候,不用GRUB的菜单,通过GRUB的命令也是一样能把操作系统引导起来。 因为menu.lst的内容就是GRUB的一个一个的指令集合;是不是Linux这玩意很神奇? 通过命令行来引导操作系统的流程,也没有什么难的;无非是把指令手工输入到grub>提示符的后面;在这个过程中,tab键的命令补齐功能就显得很重要了。如果您不知道有哪些命令,可以输入help;
grub>
只要您在grub>提示符的后面输入help 就能得到GRUB所有的命令提示;
grub> help
如果需要得到某个指令的帮助,就在 help 后面空一格,然后输入指令,比如;
grub>help kernel
cat指令是用来查看文件内容的,有时我们不知道Linux的/boot分区,以及/根分区所在的位置,要查看/etc/fstab的内容来得知,这时,我们就要用到cat (hd[0-n],y)/etc/fstab 来获得这些内容;注意要学会用tab键命令补齐的功能; grub> cat ( 按tab 键会出来hd0或hd1之类的;
有的弟兄可能会说,我不知道Linux安装在了哪个分区。那根据文件系统来判断一个一个的尝试总可以吧我;只要能cat出/etc/fstab就能为以后引导带来方便; 主要查看/etc/fstab中的内容,主要是Linux的/分区及/boot是否是独立的分区;如果没有/boot类似的行,证明/boot和Linux的/处于同一个硬盘分区;比如上面的例子中LABEL=/ 这行是极为重要的;说明Linux系统就安在标签为LABEL=/的分区中; 如果您的Linux系统/boot和/没有位于同一个分区,可能cat (hd[a-n],y) 查到的是类似下面的;
LABEL=/ / ext3 defaults 1 1
其实这个root (hd[0,n],y)是可以省略的,如果省略了,我们要在kerenl 命令中指定;我们前面已经说过 (hd[0-n],y) 硬盘分区的表示方法的用途;主要是用来指定 /boot所在的分区; 比如我们确认/boot和 (hd0,6),所以就可以这样来输入root (hd0,6) grub> root (hd0,6)
如果发现不对,可以重新来过;没有什么大不了的;
kernel 这个指令可能初学者有点怕,不知道内核在哪个分区,及内核文件名的全称是什么。不要忘记tab键的命令补齐的应用; 在这里 root=/dev/hd[a-z]X 是Linux 的/根所位于的分区,如果不知道是哪个分区,就用tab出来的来计算,一个一个的尝试;或用cat (hd[0-n],y)/etc/fstab 中得到Linux的/所在的分区或分区的标签;
grub> kernel /boot/在这里按tab键;这样就列出/boot中的文件了;
注解: root=LABEL=/ 是Linux的/所在的分区的文件系统的标签;如果您知道Linux的/在哪个具体的分区,用root=/dev/hd[a-z]X来指定也行。比如下面的一行也是可以的;
grub> kernel /boot/vmlinuz-2.6.11-1.1369_FC4 ro root=/dev/hda7
也可以把/boot所在的分区的指定 root (hd[0-n],y)这行省掉,直接在kernel 中指定/boot所在的分区;所以就在下面的语法; 如果是/boot和Linux的根同处一个分区; kernel (hd[0-n],y)/boot/vmlinuz ro root=/dev/hd[a-z]X
比如: grub>kernel
如果是/boot和Linux所在的根不在一个分区;则是; kernel (hd[0-n],y)/vmlinuz ro root=/dev/hd[a-z]X
grub> kernel (hd0,6)/boot/vmlinuz-2.6.11-1.1369_FC4 ro root=/dev/hda7
或下面的输入,以cat 出/etc/fstab内容为准;
grub> kernel (hd0,6)/boot/vmlinuz-2.6.11-1.1369_FC4 ro root=LABEL=/
grub> initrd /boot/initrd在这里tab 来补齐;
如果/boot是独立的一个分区,应该是如下样子的语法;比如下面的;
grub> initrd /initrd在这里tab 来补齐;
grub>boot
前面的几个步骤都弄好 。就进入引导;尝试一下就知道了。。 实例:/boot和Linux的/处于同一个硬盘分区; grub> cat (hd0,6)/etc/fstab
我们指定Linux的根时,可以用cat出来的fstab的内容中Linux的/分区文件系统标签来替代;也就是kernel 那行中 root=/dev/hd[a-z]X;
grub> cat (hd0,6)/etc/fstab
如果是/boot和Linux的根分区不在同一个分区,要把kernel和initrd 指令中的/boot去掉,也就是/vmlinuzMMMMMM 或 /initrdNNNN 也可以不用root (hd[0-n]来指定/boot所在分区,要在kernel 和initrd 中指定;比如Linux的/根所位于的分区和/boot所位于的分区都是(hd0,6),并且我们cat出来的/etc/fstab是Linux的/根分区的文件系统的标签为LABEL=/,引导操作系统的例子如下; grub>kernel (hd0,6)/boot/vmlinuz-2.6.11-1.1369_FC4 ro root=LABEL=/
或
grub>kernel (hd0,6)/boot/vmlinuz-2.6.11-1.1369_FC4 ro root=/dev/hda7
如果/boot位于 /dev/hda6,也就是(hd0,5),Linux的根/位于分区/dev/hda7,并且我们cat 出来的/etc/fstab 中/分区的标签为 LABEL=/。下面的两种方法都可以引导;
grub>kernel (hd0,5)/vmlinuz-2.6.11-1.1369_FC4 ro root=LABEL=/
或
grub>kernel (hd0,5)/vmlinuz-2.6.11-1.1369_FC4 ro root=/dev/hda7
如果您的Windows所处于的分区在(hd0,0),可以在menu.lst 加如下的一段就能引导起来了; title WinXp
如果您的机器有两块硬盘,而Windows 位于第二个硬盘的第一个分区,也就是(hd1,0) 您可以用grub的map来指令来操作把两块硬盘的序列对调,这样就不用在BIOS中设置了;在menu.lst中加如下的内容,比如下面的;
title WinXp
如果Windows的分区不位于硬盘的第一个分区怎么办呢?比如在(hd0,2); 这个也好办吧,把rootnoverify 这行的(hd0,0)改为 (hd0,2)
title WinXp
如果Windows的在第二个硬盘的某个分区,比如说是位于(hd1,2),则要用到map指令;
title WinXp
如果有多个Windows 系统,怎么才能引导出来呢?应该用hide 和unhide指令操作;比如我们安装了两个Windows ,一个是位于(hd0,0)的windows 98 ,另一个是安装的是位于(hd0,1)的WindowsXP;这时我们就要用到hide指令了;
title Win98
其实我们会写menu.lst了,在menu.lst中的除了title外,都是一条条指令;如果我们启动Windows ,只是输入指令就行了; 比如 Windows的分区在 (hd0,0),我们在开机后,按ctrl+c ,进入GRUB的命令模式;就可以用下面的
grub> rootnoverify (hd0,0)
其它同理... ... 如果GRUB是Linux版本才出会这样的问题;WINGRUB可以不写在MBR上;所以不会出现这样的问题。WINGRUB用起来比较简单。menu.lst 和命令行的用法和Linux版本的GRUB是一样的;
请参考:《Linux 系统的单用户模式、修复模式、跨控制台登录在系统修复中的运用》 首先:您根据前面所说grub-install来安装GRUB到/boot所在的分区;要仔细看文档,/boot是不是处于一个独立的分区是重要的,执行的命令也不同; 其次:要执行grub ,然后通过 root (hd[0-n],y)来指定/boot所位于的分区,然后接着执行 setup (hd0),这样就写入MBR了,比如下面的例子; grub>root (hd0,6)
存在的问题可能是/boot/grub/menu.lst丢失,要自己写一个才行;您可以用命令行来启动系统,进入系统后写一写menu.lst就OK了。前面已经谈过了; 写好后还要建一个grub.conf的链接,如下:
[root@localhost ~]# cd /boot/grubNovember 08 Ubuntu7.10硬盘安装(图文)第一步:下载
1) 下载ubuntu正式版安装iso镜像(693兆): http://releases.ubuntu.com/releases/.pool/ubuntu-7.10-alternate-i386.iso 2) 下载52abc打包的硬盘安装引导文件和硬盘分区软件(10.7兆): http://hibaidu.cn/52abc/ubuntu/ubuntu.rar 推荐使用迅雷下载,下载后第一件事先检校下载文件的md5的值,保证文件是正确的,然后才能进行下一步. 具体方法:解压ubuntu.rar,里面有个md5.exe,打开,检校文件值: ubuntu 7.10系统安装镜像的md5是9A4AE3CFD68911A861D094EC834C9B48 (官方提供!) 我打包的ubuntu.rar的md5是E5BBF7A5EDBD5CA73CD10C2D3817EED5 md5不正确可能是别人动过手脚了,谨慎使用!!! ![]() ubuntu-7.10-alternate-i386.iso下载后放置到C盘下备用,ubuntu.rar解压后复制放置C盘下备用. 文件列表: ![]() 看到有个menu.lst文件没有?如果你的内存不是512兆的你要改动一次: menu.lst的内容是: title Install Ubuntu // kernel (hd0,0)/ubuntu/vmlinuz root=/dev/ram0 ramdisk_size=512000 initrd (hd0,0)/ubuntu/initrd.gz 看到上面的512000 没有?内存是1G的就是改为1024000 ,内存是256的就是256000,以此类推. 文件放置位置示例: C:\ |-ubuntu-7.10-alternate-i386.iso *系统安装盘镜像 |-menu.lst *系统引导启动文件 |-grldr *grub for dos引导启动文件 |--/ubuntu *安装辅助文件夹 |-initrd.gz *安装引导文件 |-vmlinuz *安装引导文件 第二步分区: 安装我打包文件:硬盘无损分区软件PartitionMagicV8.05汉化版.exe 安装好就打开文件开始分区,要从硬盘里面分出2块空间来,大的一块用作ubuntu的系统分区,小的用来做虚拟内存的交换区. 第一块是EXT3格式,放置ubuntu系统用的,大小在5G以上,推荐10G,最好是15G以上,看你的情况. 图示: ![]() 第二块是SWAP格式,用作虚拟内存,大小是你内存的2倍左右,大了小了都不好. 图示: ![]() 最后一步: 我的电脑点右键—>属性->“高级”标签->“启动和故障恢复"栏—>设置->编辑系统启动文件boot.ini,加入启动项: c:\grldr="Install ubuntu" 存盘退出. 示例图: ![]() 好啦,重启,选择启动项Install ubuntu,就可以开始安装了.接下来的安装过程和一般软件大同小异,人家是不会为难你的,安装过程很人性,这个环节没有需要讲究的地方,安装过系统的人都能够轻松搞定. 强烈建议看一下详细图解:http://cang.baidu.com/52abc/snap/eb027ccbad561811a0758319.html 这里说些重要事项: 1.下载后第一步就是检校文件的md5,保证文件的正确性.为此我下载了2次,检校md5是正确的: ![]() 2.硬盘分区时先退出除了分区软件外的所有软件,否则可能会因为人品问题导致分区失败. 3.安装过程要仔细看,最好有初三80分的英语水平,可能出现的对话框是E文的,看不懂可以查字典,慢慢来,不要慌.确实不理解里面的意思,先退出吧,把提示抄下来,弄清楚了再继续. 4.安装好了之后可能正常启动后是黑屏,什么都没有,你也不要慌,你先关机,拔掉电源再插上,系统有缓存的.多启动2次都3次就可以了.还是不可以的话就在左下角选择启动会话是gnome,这样应该就可以进入桌面了. 5.安装后是多系统,之前的系统还可以用的,安装不成功就是浪费了15G空间而已,你可以在Windows下合并分区. 为什么要看本文?网络上不是有很多这样的教程么? 理由1.新鲜,网络上多是安装ubuntu 7.04的教程,现在这里说的是ubuntu 7.10,但7.04的安装过程还是值得借鉴的. 理由2.成功案例.本人反复安装3次,硬盘安装成功率100%.第一次成功安装,但有些怀疑文件的md5,再换个镜像下载,重新安装,发现md5是正确的,也成功安装了.ps:期间测试了一下刻盘镜像能不能硬盘安装,没成功,属于测试,不在讨论范围之内. 理由3.本文提供了ubuntu 7.10的引导安装文件和分区软件及使用方法,你只需要复制一下就可以了,不需要接触命令行,不需要到处去下载文件,下载一个压缩包就可以了,要用到的都为你准备好了. 好了,好的开端是成功的一半,我认为你做好上面的准备工作,你已经成功了90%了,祝你好运! Ubuntu 7.10的硬盘安装(超简单)(转贴)Ubuntu 7.10的正式版已经于10月18号公布了,我也已经在其网站上申请到了免费的光盘,但是光盘从欧洲邮寄到中国至少需要20天左右,所以为了尽早一睹新版系统的容貌就决定选用硬盘安装方法。 用硬盘安装Ubuntu 7.04的方法好像已经失效了,同学试了一次没成功。如果你用虚拟光驱把下载的系统镜像打开的话,你会发现Ubuntu 7.10的镜像文件比Ubuntu 7.04多了一个文件wubi-cdboot.exe,这就是Ubuntu的制作者们给大家提供的安装程序。安装方法如下: 首先将下载的Ubuntu 7.10镜像文件解压到U盘(容量至少1GB)的根目录下,然后双击wubi-cdboot.exe,就会安装该文件,你只需连续点击下一步就行了,之后电脑会重新启动,在启动的界面里会多一个安装LINUX的启动项,选择它即可进入Ubuntu的安装了,之后的安装步骤就不多言了。 在这里有一点要注意在安装wubi-cdboot.exe的时候,会给Windows增加一启动项,大家最好不要阻止,等你安装完Linux之后再次进入Windows时会自动提示你卸载wubi-cdboot.exe。还有个问题就是不知道为什么把解压的文件放在某个硬盘分区安装老是出问题,安装wubi-cdboot.exe的时候老是出错。 October 21 有限责任公司股东会决议参考样式北京XXXXXX有限公司 第X届第X次股东会决议 XXXX年XX月XX日在北京市海淀区XX路XX号召开了北京XXXX公司第X届第X次股东会会议,会议应到X人,实到X人,参加会议的股东在人数和资格等方面符合有关规定,会议形成决议如下: 变更名称:*同意 (企业名称)变更名称为北京 有限公司 变更住所:*同意变更地址为北京市海淀区 路 号 变更经营范围:同意将经营范围变更为 。
变更法定代表人:*同意免去XX执行董事职务(设执行董事不设董事会的企业适用,如有新、原股东会,为原股东会决议内容) 变更法定代表人:*同意选举XX为执行董事 (设执行董事不设董事会的企业适用,如有新、原股东会,为新股东会决议内容,)
变更法定代表人:*同意免去XX、XX、XX董事职务 (设董事会的企业适用,如有新、原股东会,为原股东会决议内容) 变更法定代表人:*同意选举XX、XX、XX为董事 (设董事会的企业适用,如有新、原股东会,为新股东会决议内容)
变更监事:*同意免去XX监事职务 (不设监事会的企业适用,如有新、原股东会,为原股东会决议内容) 变更监事:*同意选举XX为监事 (不设监事会的企业适用,如有新、原股东会,为新股东会决议内容)
变更监事:*同意免去XX、XX、XX监事职务 (设监事会的企业适用,如有新、原股东会,为原股东会决议内容) 变更监事:*同意选举XX、XX、XX为监事 (设监事会的企业适用,如有新、原股东会,为新股东会决议内容)
变更股东(转让出资):*同意股东XX在北京 (企业名称)的货币(或实物、非专利技术等)出资XX万元转让给XX(股东名称)(原股东会项目) 变更股东:*同意由XX、XX、XX组成新的股东会 *注册资本(金)XX万元不变,其中股东XX货币出资XX万元,股东XX货币出资XX万元(新股东会项目)
增加股东:*同意增加新股东XX、XX 变更注册资本:*同意增加(或减少)注册资本 万元、由股东XX增加(或减少)出资 万元、新股东XX出资 万元 变更经营期限:*同意延长 (企业名称)经营期限至 年。 增补执照正(副)本:*同意申请补发企业法人营业执照正本壹份、增发企业法人营业执照副本 份。 变更出资方式:*同意股东XX在 (企业名称)设立时实物出资 万元变更为货币出资 万元 财产转移:*同意股东XX在 (企业名称)设立时实物出资 万元转移到公司财产内计入公司会计科目。 设立分公司:*同意设立分公司名称为 公司注销:*依据《公司法》规定,经公司股东会讨论通过,决定注销本公司,并自即日起由XX、XX组成清算组,同时指定XX为清算组负责人,待清算后报股东会确认。(清算组成员须是股东会成员) 修改章程:*同意修改 (企业名称)章程 全体股东签字:
注: 1、 全体股东签字指法人股东要盖公章、法定代表人签字:自然人股东亲笔签字。 2、 公司股东会决议三十日内有效,请注意股东会召开的时间与申请变更的时间间隔不得超过30天。 3、 如变更股东需提交两届股东会决议、一届为原股东会成员签署、二届为新股东会成员签署,每换一次股东,股东会换一次届。 4、 如是集体所有(股份合作)制企业,应为全体股东和职工代表签字。 August 02 该内存不能read written常见原因使用Windows操作系统的人有时会遇到这样的错误信息:“0X????????指令引用的0x00000000内存,该内存不能written”,然后应用程序被关闭。如果去请教一些“高手”,得到的回答往往是“Windows就是这样不稳定”之类的义愤和不屑。其实,这个错误并不一定是Windows不稳定造成的。本文就来简单分析这种错误的常见原因。 一、应用程序没有检查内存分配失败 程序需要一块内存用以保存数据时,就需要调用操作系统提供的“功能函数”来申请,如果内存分配成功,函数就会将所新开辟的内存区地址返回给应用程序,应用程序就可以通过这个地址使用这块内存。这就是“动态内存分配”,内存地址也就是编程中的“指针”。 内存不是永远都招之即来、用之不尽的,有时候内存分配也会失败。当分配失败时系统函数会返回一个0值,这时返回值“0”已不表示新启用的指针,而是系统向应用程序发出的一个通知,告知出现了错误。作为应用程序,在每一次申请内存后都应该检查返回值是否为0,如果是,则意味着出现了故障,应该采取一些措施挽救,这就增强了程序的“健壮性”。 若应用程序没有检查这个错误,它就会按照“思维惯性”认为这个值是给它分配的可用指针,继续在之后的运行中使用这块内存。真正的0地址内存区保存的是计算机系统中最重要的“中断描述符表”,绝对不允许应用程序使用。在没有保护机制的操作系统下(如DOS),写数据到这个地址会导致立即死机,而在健壮的操作系统中,如Windows等,这个操作会马上被系统的保护机制捕获,其结果就是由操作系统强行关闭出错的应用程序,以防止其错误扩大。这时候,就会出现上述的“写内存”错误,并指出被引用的内存地址为“0x00000000”。 内存分配失败故障的原因很多,内存不够、系统函数的版本不匹配等都可能有影响。因此,这种分配失败多见于操作系统使用很长时间后,安装了多种应用程序(包括无意中“安装”的病毒程序),更改了大量的系统参数和系统文件之后。 二、应用程序由于自身BUG引用了不正常的内存指针 在使用动态分配的应用程序中,有时会有这样的情况出现:程序试图读写一块“应该可用”的内存,但不知为什么,这个预料中可用的指针已经失效了。有可能是“忘记了”向操作系统要求分配,也可能是程序自己在某个时候已经注销了这块内存而“没有留意”等等。注销了的内存被系统回收,其访问权已经不属于该应用 | ||||||||||