您好,欢迎来到思海网络,我们将竭诚为您提供优质的服务! 诚征网络推广 | 网站备案 | 帮助中心 | 软件下载 | 购买流程 | 付款方式 | 联系我们 [ 会员登录/注册 ]
促销推广
客服中心
业务咨询
有事点击这里…  531199185
有事点击这里…  61352289
点击这里给我发消息  81721488
有事点击这里…  376585780
有事点击这里…  872642803
有事点击这里…  459248018
有事点击这里…  61352288
有事点击这里…  380791050
技术支持
有事点击这里…  714236853
有事点击这里…  719304487
有事点击这里…  1208894568
有事点击这里…  61352289
在线客服
有事点击这里…  531199185
有事点击这里…  61352288
有事点击这里…  983054746
有事点击这里…  893984210
当前位置:首页 >> 技术文章 >> 文章浏览
技术文章

linux U盘启动系统的制作

添加时间:2011-2-25  添加: admin 

linux系统被误删除文件,进不了系统了,里面的数据很重要,为了把硬盘中的数据进行恢复,想了多个办法,当然很多办法是可行的,比如把硬盘拿下来挂在另一个linux系统上,把数据考出来;比如跳过控制台进入系统进行考数据.后来我就想制作一个U盘启动的linux系统,以后做些东西就比较方便了,就研究了两个小时,下面是制作的过程,以供大家分享.在进行mknod时,着实看了不少的英语文档,后来终于明白了.

  一.对U盘进行处理

  1.分区:(插上U盘)

  # fdisk /dev/sdb

  d Enter 删除原有分区

  n Enter 新建一个主分区

  w Enter 保存设置

  # partprobe /dev/sdb 刷新U盘

  2.设定U盘分区为活动分区

  # fdisk /dev/sdb

  a Enter 设定为活动分区

  1 Enter 选择分区

  3.对硬盘分区进行格式化,格式化成ext3格式

  # mkfs.ext3 /dev/sdb1

  二.装filesystem包 (目的:生成根下的root,usr,var ...等目录)

  1.配置好yum

  2.加载U盘到/net下

  # mount /dev/sdb1 /net

  3.安装

  # yum -y install --installrot=/net filesystem

  安装完成后,可查看/net下生成了多个目录

  三.加载系统启动项

  1.# cp /boot/vmlinuz-2.6.18-128.el5 /net/boot/

  2.生成initrd.img `uname -r`为取系统版本号

  # mkinitrd --with=usb-storage /net/boot/initrd-usb.img `uname -r`

  3.查看/net/boot/下是否有vmlinuz和initrd

  四.制作boot loader(grub)

  1.# yum -y install --installroot=/net grub

  2.grub.conf不成自动生成,要手工创建

  # cp /boot/grub/grub.conf /net/boot/grub/grub.conf 并作修改

  # cat /net/boot/grub.conf

  default = 0

  timeout = 5

  title redhat-usb-linux

  root(hd0,0)

  kernel /boot/vmlinuz-2.6.18-128.el5 ro root=/dev/sdb1 init=/dev/bash

  initrd /boot/initrd-usb.img

  此处填写的内容要与/net/boot/grub/下的文件名一致

  五.安装命令库文件

  # yum -y install --installroot=/net bash coreutils pam setup vim-enhanced vim-minimal util-
linux net-tools SysVinit passwd shadow-utils authconfig

  可通过rpm -qf /bin/mount 查看包名

  此时chroot /net下可使用刚才安装的命令了

  六.创建磁盘分区

  # mknod /net/dev/sdb b 8 16

  # mknod /net/dev/sdb1 b 8 17

  b表示块设备,8为主设备号,16、17为次设备号

  --------------------------

  | 有关设备号的解释:

  | 1.对于一块SCSI/SATA硬盘(格式为sd*),主设备号为8,

  | 第一块硬盘的次设备号为0-15,第二块硬盘的次设

  | 备号为16-31,依次类推.对于硬盘来说,主分

  | 区最多为4个,可以3个主分区1个扩展分区,扩展分

  | 区仍然可以再分区,但是分区的总数最多为16个,所

  | 以每一块硬盘的次设备号为16个(0-15,16-31).

  | 2.对于一块IDE硬盘(格式为hd*),主设备号为3,次设

  | 备号第一块为0-63,第二块为64-127.

  | 3.# ls -l /dev/sd*

  | brw-r----- 1 root disk 8, 0 10-16 14:53 /dev/sda

  | brw-r----- 1 root disk 8, 1 10-16 14:54 /dev/sda1

  | brw-r----- 1 root disk 8, 2 10-16 14:53 /dev/sda2

  | brw-r----- 1 root disk 8, 3 10-16 14:54 /dev/sda3

  | brw-r----- 1 root disk 8, 16 10-16 15:50 /dev/sdb

  | brw-r----- 1 root disk 8, 17 10-16 15:50 /dev/sdb1

  | brw-r----- 1 root disk 8, 32 10-16 15:50 /dev/sdc

  | brw-r----- 1 root disk 8, 36 10-16 15:50 /dev/sdc4

  | 以上是我一台主机上插了1个硬盘,两个U盘的显示情况,我

  | 们可以看到设备号的显示情况.

  | 4.在linux中一切皆文件,硬件也是通过文件体现出来的,所

  | 有硬件设备都在/dev/有所显示.

  | 5.更具体的设备号研究可以查看下面的文件.

  | # yum install kernel-doc

  | # /usr/share/doc/kernel-doc-2.6.18/Documentation/devices.txt

  ---------------------------

  七.

  1.创建mtab

  # cat /net/etc/mtab

  /dev/sdb1 / ext3 rw 0 0
 2.创建fstab

  # cat /net/etc/fstab

  /dev/sdb1 / ext3 default 1 1

  八.安装grub

  # chroot /net

  # grub-install /dev/sdb1

  注:

  1.如果创建硬盘分区的时候没有配置正确,在第八步会报错:

  the file /boot/grub/stage1 not read correctly

  2.在用U盘启动后,进入到U盘中的系统,此时我们可以用已经

  安装过的命令集,但是此时的文件系统是只读的,我们不能vim,

  mount等的操作,此时用下面这个命令,进行重新读写挂载:

  # mount -o remount,rw /

  重挂载后,就可以了.

关键字:U盘、系统、硬盘

分享到:

顶部 】 【 关闭
版权所有:佛山思海电脑网络有限公司 ©1998-2024 All Rights Reserved.
联系电话:(0757)22630313、22633833
中华人民共和国增值电信业务经营许可证: 粤B1.B2-20030321 备案号:粤B2-20030321-1
网站公安备案编号:44060602000007 交互式栏目专项备案编号:200303DD003  
察察 工商 网安 举报有奖  警警  手机打开网站