当前位置: 技术问答>linux和unix
如何在移动硬盘上装LINUX系统?
来源: 互联网 发布时间:2015-10-30
本文导语: 我有一三星的40G移动硬盘,分两个区,我想在其中一个区中装LINUX系统,能实现吗?如果能应该怎么办呢? 谢谢(我是新手,说得越详细越好) | 我试过RH9,2.4.20-8核心的,是发行版。 不过我没有直接...
我有一三星的40G移动硬盘,分两个区,我想在其中一个区中装LINUX系统,能实现吗?如果能应该怎么办呢? 谢谢(我是新手,说得越详细越好)
|
我试过RH9,2.4.20-8核心的,是发行版。
不过我没有直接进行安装,而是用VMWare把整个硬盘挂上一台虚拟机上装完了再调整的。
有个老外的网页说得很清楚,不过我一下子忘了地址了。
关键是几点:
一、不用GRUB,而是用syslinux比较容易成功,其中又有:
a、这样你需要一个DOS分区来启动,在移动硬盘上先分一个小的(大的也可以,不过要升级syslinux,如果什么都不想下载升级,就分小的)主分区,格式化成FAT16,并设定为活动分区用来启动。找个98启动盘来把sys它,把它整成可以启动DOS7的。(这些也可以在虚拟机下完成)
b、syslinux RH9自带的,关于升级和安装,不多说了。
c、用了syslinux,很明显,在安装RH9的过程中没有必要安装GRUB或是LILO启动器了。
二、定制initrd镜像,细节有:
a、可以拿安装后/boot里安装时的标准initrd.img来定制。办法是把它拷到一个临时目录,改成.gz后缀后,然后gunzip它,然后mount -o loop 它 到一个空的临时目录。比如是/mnt/floppy
b、需要两个工具来帮忙,也是系统带的,一个是sleep,用于在initrd启动过程中适当地延时,一个是sfdisk,用于刷新查看硬盘的分区表。把它们都拷到initrd文件所挂在的位置的bin目录下。同时还要ldd看一下需要什么动态链接库,相应地在initrd挂载目录下的lib的相应目录下复制这些文件。
c、把usbcord.o、usb-uhci.o、ehci-hcd.o、usb-storage.o这四个文件从/lib/modules/2.4.20-8/kernel/drivers/usb目录及相应子录目下复制到initrd挂载目录下的lib目录中。
四、最关键的是调整initrd目录下linuxrc脚本文件中的顺序,依次为:
a、建立proc文件系统,这个原来在后面,要把它调到前面来
b、安装jbd、ext3文件系统驱动
c、安装scsi支持,如果是在虚拟机上装的,这个里面有了。
d、加入拷进上去的 usbcord.o
e、如果想要又能在VMWare下启动,又能单独挂在主机上启动,可以先后加挂usb-storage.o和BusLogic.o
f、加入usb-uhci.o(通用USB 1.1驱动,只是为了在不支持2.0的情况下也能启动)
g、延时 5 秒钟让USB设备就序
h、加入ehci-hcd.o(USB 2.0驱动,让硬盘可以工作得快一些,倒,在USB 1.1下要是对一个8G的ext3文件系统进行fsck,要十几分钟)
i、再延时 5秒钟让硬盘从1.1的总线上离开进入2.0的总线
j、创建dev
k、sfdisk -R /dev/sda重新读取硬盘分区表
后面的照旧的
三、最后把定制好的initrd文件去挂载后重新压缩成gz文件,把新的initrd镜像文件和核心文件复制到启动的DOS分区的根目录上,设定syslinux.cfg文件加入新的启动项,核心文件、initrd=intird镜像文件 init=linuxrc root=LABEL=/ vga=normal,倒,这些可以自已看了。
重启,在VMWARE下会使用BusLogic的驱动,关机用这个硬盘启动,会使用usb-storage驱动,主硬盘都是/dev/sda,
不过我没有直接进行安装,而是用VMWare把整个硬盘挂上一台虚拟机上装完了再调整的。
有个老外的网页说得很清楚,不过我一下子忘了地址了。
关键是几点:
一、不用GRUB,而是用syslinux比较容易成功,其中又有:
a、这样你需要一个DOS分区来启动,在移动硬盘上先分一个小的(大的也可以,不过要升级syslinux,如果什么都不想下载升级,就分小的)主分区,格式化成FAT16,并设定为活动分区用来启动。找个98启动盘来把sys它,把它整成可以启动DOS7的。(这些也可以在虚拟机下完成)
b、syslinux RH9自带的,关于升级和安装,不多说了。
c、用了syslinux,很明显,在安装RH9的过程中没有必要安装GRUB或是LILO启动器了。
二、定制initrd镜像,细节有:
a、可以拿安装后/boot里安装时的标准initrd.img来定制。办法是把它拷到一个临时目录,改成.gz后缀后,然后gunzip它,然后mount -o loop 它 到一个空的临时目录。比如是/mnt/floppy
b、需要两个工具来帮忙,也是系统带的,一个是sleep,用于在initrd启动过程中适当地延时,一个是sfdisk,用于刷新查看硬盘的分区表。把它们都拷到initrd文件所挂在的位置的bin目录下。同时还要ldd看一下需要什么动态链接库,相应地在initrd挂载目录下的lib的相应目录下复制这些文件。
c、把usbcord.o、usb-uhci.o、ehci-hcd.o、usb-storage.o这四个文件从/lib/modules/2.4.20-8/kernel/drivers/usb目录及相应子录目下复制到initrd挂载目录下的lib目录中。
四、最关键的是调整initrd目录下linuxrc脚本文件中的顺序,依次为:
a、建立proc文件系统,这个原来在后面,要把它调到前面来
b、安装jbd、ext3文件系统驱动
c、安装scsi支持,如果是在虚拟机上装的,这个里面有了。
d、加入拷进上去的 usbcord.o
e、如果想要又能在VMWare下启动,又能单独挂在主机上启动,可以先后加挂usb-storage.o和BusLogic.o
f、加入usb-uhci.o(通用USB 1.1驱动,只是为了在不支持2.0的情况下也能启动)
g、延时 5 秒钟让USB设备就序
h、加入ehci-hcd.o(USB 2.0驱动,让硬盘可以工作得快一些,倒,在USB 1.1下要是对一个8G的ext3文件系统进行fsck,要十几分钟)
i、再延时 5秒钟让硬盘从1.1的总线上离开进入2.0的总线
j、创建dev
k、sfdisk -R /dev/sda重新读取硬盘分区表
后面的照旧的
三、最后把定制好的initrd文件去挂载后重新压缩成gz文件,把新的initrd镜像文件和核心文件复制到启动的DOS分区的根目录上,设定syslinux.cfg文件加入新的启动项,核心文件、initrd=intird镜像文件 init=linuxrc root=LABEL=/ vga=normal,倒,这些可以自已看了。
重启,在VMWARE下会使用BusLogic的驱动,关机用这个硬盘启动,会使用usb-storage驱动,主硬盘都是/dev/sda,
|
简单点 就新建个 "/" 分区EXT3格式,这个是安装LINUX文件系统的地方,搞个5,6G就可以了.然后一个SWAP分区,是你内存的大一倍,128MB就要128-256MB大小...
这样就可以了,具体还有很多弄法,不过这样弄先,以后会了再弄其他,現在比较难说的~········
这样就可以了,具体还有很多弄法,不过这样弄先,以后会了再弄其他,現在比较难说的~········
|
这个有意思,是不是用虚拟机,在移动硬盘上装一个Linux,然后拿出来用移动硬盘上的Linux在虚拟机之外启动?
|
U口的移动硬盘在启动时如果主板支持的话应该可以
|
请给我一点点分