网络运营

U盘系统安装

制作U盘系统的两个主要目的:
1、以U盘为救援系统来修复有故障无法启动操作系统
修复步骤:
1)选尝试从单用户模式启动
2)如果单用户模式也无法正常启动,可以考虑从光盘或者是U盘启一个linux操作系统,首选使用U盘
2、通过U盘系统的制作让你更了解一个主机上linux系统组成,以及启动流程。

一、部署应用软件

(a)分区格式化U盘,让U盘拥有启动功能
注意:先卸载U盘
dd if=/dev/zero of=/dev/sdb count=1 bs=512
# fdisk /dev/sdb –分区
# partprobe /dev/sdb
# fdisk -l /dev/sdb

Disk /dev/sdb: 2063 MB, 2063597568 bytes
226 heads, 39 sectors/track, 457 cylinders
Units = cylinders of 8814 * 512 = 4512768 bytes

Device Boot Start End Blocks Id System
/dev/sdb1 * 1 457 2013979+ 83 Linux

(a是sdb1在boot里面有*号,用sdb1作为引导分区)

# mkfs.ext3 /dev/sdb1
# mkdir /mnt/usb
# mount /dev/sdb1 /mnt/usb

二、安装必要的应用软件
# rpm -qf / filesystem-2.4.0-2 --第一需要安装的软件(生成根目录下的所有默认目录)
# mkdir /dev/shm/usb (先用内存安装,再拷贝到U盘,因为内存的处理速度比直接在U盘安装yum更快)
# yum -y install filesystem –installroot=/dev/shm/usb
# yum -y install coreutils openssh-clients rpm yum net-tools bind-utils passwd vim-enhanced findutils bash util-linux –installroot=/dev/shm/usb
(安装自己需要的软件)
# cp -arv /dev/shm/usb/* /mnt/usb/

三、部署内核

# cp /boot/xen.gz-2.6.18-164.el5 /mnt/usb/boot/
# cp /boot/vmlinuz-`uname -r` /mnt/usb/boot/
# cp -r /lib/modules/`uname -r` /mnt/usb/lib/modules/
# mkinitrd –with usb-storage /mnt/usb/boot/initrd-`uname -r`.img `uname -r`
解开initrd.img(临时根文件系统,是在系统加载根分区之前来驱动系统所需要驱动)文件
# mkdir /tmp/initrd
# cp /mnt/usb/boot/initrd-2.6.18-164.el5xen.img /tmp/initrd
# cd /tmp/initrd
# zcat initrd-2.6.18-164.el5xen.img | cpio -i
# rm -rf initrd-2.6.18-164.el5xen.img
# find . | cpio -oc >> ../initrd.img
# gzip -9 /tmp/initrd.img
# \cp /tmp/initrd.img.gz /mnt/usb/boot/initrd-2.6.18-164.el5xen.img
四、完善各类配置文件
(a)完善账号和密码
# \cp -a /etc/passwd /etc/shadow /mnt/usb/etc/

(b)完善U盘的自动挂载fstab
# blkid /dev/sdb1
/dev/sdb1: UUID=”2a59bc5c-7c35-4632-9db7-90bea7d9daf1″ SEC_TYPE=”ext2″ TYPE=”ext3″

# cp /etc/fstab /mnt/usb/etc
# vim /mnt/usb/etc/fstab
UUID=”2a59bc5c-7c35-4632-9db7-90bea7d9daf1″ / ext3 defaults 1 1
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0

(c)加载网卡的配置文件
# cp /etc/sysconfig/network-scripts/ifcfg-eth0 /mnt/usb/etc/sysconfig/network-scripts/
# vim /mnt/usb/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=none
IPADDR=192.168.0.83
NETMASK=255.255.255.0
ONBOOT=yes
TYPE=Ethernet

(d)完善用户的配置文件
# chroot /mnt/usb
bash-3.2# --找不到用户配置文件

bash-3.2# cp /etc/skel/.bash* /root --为root用户创建配置文件
bash-3.2# exit

[root@instructor etc]# chroot /mnt/usb
[root@instructor /]#

五、部署grub mbr
(a)安装grub使用

将 grub RPM包的grub程序复制到U盘
# rpm -ivh –force –nodeps –root=/mnt/usb grub-0.97-13.5.i386.rpm

(b)安装mbr
# grub-install –root-directory=/mnt/usb –recheck /dev/sdb

(c)生成grub.conf文件
# cp /boot/grub/grub.conf /mnt/usb/boot/grub/
# vim /mnt/usb/boot/grub.conf
default=0
timeout=5
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
hiddenmenu
title myusb system
root (hd0,0)
kernel /boot/xen.gz-2.6.18-164.el5
module /boot/vmlinuz-2.6.18-164.el5xen ro root=UUID=2a59bc5c-7c35-4632-9db7-90bea7d9daf1 selinux=0 quiet
module /boot/initrd-2.6.18-164.el5xen.img
# cp /boot/grub/splash.xpm.gz /mnt/usb/boot/grub/ –复制图片

# sync –把U盘对应的脏数据写回U盘

 

Be the First to comment.

Leave a Comment

电子邮件地址不会被公开。 必填项已用*标注