歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> 關於Linux >> 教你制做OEL/CentOS linux三合一U盤安裝盤

教你制做OEL/CentOS linux三合一U盤安裝盤

日期:2017/3/3 16:09:59   编辑:關於Linux

一次出差去客戶現場安裝新買的IBM服務器,沒想到服務器沒有配置光驅,現場沒有USB光驅,那次安裝折騰的夠戗,於是下定決心制作U盤安裝盤,經過多次安裝摸索。成功實現oel5.8,centos5.8,oel6.3U盤安裝的制做。記錄過程如下。

一、分區准備

1. 安裝前准備:

1). 金士頓 16G U盤

2). Windows版的syslinux.exe

3). Centos5.8 X64 系統DVD版ISO文件

4). OEL5.8 X64 系統DVD版ISO文件

5). OEL6.3 X64 系統DVD版ISO文件

6). Linux系統平台(或采用linux虛擬機)

2. U盤安裝達到的效果:

1). 自動/手動U盤安裝OEL 5.8 X64位版本

2). 自動/手動U盤安裝CentOS5.x 64位版本

3). 手動U盤安裝OEL 6.3 X64位版本

3. U盤安裝命名規則

1) U盤插在服務器上應該被認成時sdb, 在上面准備的linux系統上進行分區,將16G U盤劃分為4個分區(/dev/sdb1,/dev/sdb2,/dev/sdb3,/dev/sdb4)

說明: Linux對U盤進行分區後的U盤插在Windows 7系統上無任何問題,相反在Windows上進行分區後,U盤打開後會提示需要修復等問題,且打開U盤慢。

2) U盤分區方案

分區名 分區大小 分區類型

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

sdb1 1.7G msdos

sdb2 4.2G ext2

sdb3 3.9G ext2

sdb4 4.6G ext2

3) 分區使用情況

sdb1: 用於引導,劃分1.7GB還可以存儲一些資料當U盤使用。

sdb2: 用於放OEL5.8 X64 ISO文件

sdb3: 用於放OEL6.3 X64 ISO文件

sdb4: 用於放CentOS5.8 X64 ISO文件

說明:由於想sdb1分一些空間當U盤用,造成分區後空間基本用完。

二、開始分區

1. 將U盤插入電腦

1) 本文是采用VMware workstation方式進行的,將U盤插入電腦USB插口。

2) 點擊VMware workstation菜單"虛擬機","可移動設備","Kingston U盤->與主機進行連接"。

3) 登錄虛擬機中,就出現U盤/dev/sdb磁盤

2. 進行分區

# fdisk /dev/sdb

The number of cylinders for this disk is set to 11114.

There is nothing wrong with that, but this is larger than 1024,

and could in certain setups cause problems with:

1) software that runs at boot time (e.g., old versions of LILO)

2) booting and partitioning software from other OSs(e.g., DOS FDISK, OS/2 FDISK)

分區過程略

執行 n p 進行分區,分完後w退出fdisk 。

Command (m for help): p

Disk /dev/sda: 15.5 GB, 15510536192 bytes

90 heads, 26 sectors/track, 12946 cylinders

Units = cylinders of 2340 * 512 = 1198080 bytes

Device Boot Start End Blocks Id System

/dev/sdb1 * 1 1503 1758497 83 Linux

/dev/sdb2 1504 5260 4395690 83 Linux

/dev/sdb3 5261 8808 4151160 83 Linux

/dev/sdb4 8809 12946 4841460 83 Linux

3. 格式化分區

# mkfs.msdos /dev/sdb1

# mkfs.ext2 /dev/sdb2

# mkfs.ext2 /dev/sdb3

# mkfs.ext2 /dev/sdb4

# partprobe

4. 准備掛載分區目錄

# mkdir -p /mnt/usb1

# mkdir -p /mnt/usb2

# mkdir -p /mnt/usb3

# mkdir -p /mnt/usb4

# mkdir -p /mnt/iso

上面為掛載目錄,下面為ISO存儲目錄

# mkdir -p /iso

5. 上傳ISO文件到/iso目錄下

/iso/OracleLinux-R5-U8-Server-x86_64-dvd.iso

/iso/OracleLinux-R6-U3-Server-x86_64-dvd.iso

/iso/CentOS-5.8-x86_64-bin-DVD-1of2.iso

三、開始制作

1. 掛載目錄

# mount /dev/sdb1 /mnt/usb1

# mount /dev/sdb2 /mnt/usb2

# mount /dev/sdb3 /mnt/usb3

# mount /dev/sdb4 /mnt/usb4

2. 復制ISO文件操作

# cp /iso/OracleLinux-R5-U8-Server-x86_64-dvd.iso /mnt/usb2/

# cp /iso/OracleLinux-R6-U3-Server-x86_64-dvd.iso /mnt/usb3/

# cp /iso/CentOS-5.8-x86_64-bin-DVD-1of2.iso /mnt/usb4/

3. 掛載OEL5.8X64 ISO

說明: 准備采用OEL5.8X64的引導文件來實現所有系統的引導安裝。

# mount -o loop /iso/OracleLinux-R5-U8-Server-x86_64-dvd.iso /mnt/iso

# cd /mnt/iso

# cp -a isolinux /mnt/usb1/

# mv /mnt/usb1/isolinux /mnt/usb1/syslinux

# cd /mnt/usb1/syslinux

# mv isolinux.cfg syslinux.cfg

4. 掛載OEL6.3X64 ISO

說明: OEL6.3X64的引導文件來實現所有系統的引導安裝。

# umount /mnt/iso

# mount -o loop /iso/OracleLinux-R6-U3-Server-x86_64-dvd.iso /mnt/iso

# cd /mnt/iso

說明1: 拷貝images到/dev/sda3分區,就是放OEL6.3 ISO目錄下,這一步必須,否則無法通過本地磁盤加載iso文件進行導入,並會出錯退出。

說明2: OEL6.3在普通電腦上進行測試時為將U盤認為/dev/sda,自己可以實現識別。

# cp -a images /mnt/usb3/

# cd /mnt/iso/isolinux

# cp vmlinuz /mnt/usb1/syslinux/oel63vmlinuz

# cp initrd.img /mnt/usb1/syslinux/centosinitrd.img

5. 掛載CentOS5.8 X64 ISO

說明: CentOS5.8 X64的引導文件來實現所有系統的引導安裝。

# umount /mnt/iso

# mount -o loop /iso/CentOS-5.8-x86_64-bin-DVD-1of2.iso /mnt/iso

# cd /mnt/iso

說明:

# cd /mnt/iso/isolinux

# cp vmlinuz /mnt/usb1/syslinux/centosvmlinuz

# cp initrd.img /mnt/usb1/syslinux/centosinitrd.img

查看掛載情況

# df -h

Filesystem Size Used Avail Use% Mounted on

/dev/mapper/VolGroup00-LogVol00

38G 2.3G 34G 7% /

/dev/hda1 99M 12M 82M 13% /boot

tmpfs 345M 0 345M 0% /dev/shm

/dev/sda1 1.7G 155M 1.6G 10% /mnt/usb1

/dev/sda2 4.2G 3.7G 295M 93% /mnt/usb2

/dev/sda3 3.9G 3.7G 75M 99% /mnt/usb3

/dev/sda4 4.6G 4.3G 32M 100% /mnt/usb4

/iso/OracleLinux-R5-U8-Server-x86_64-dvd.iso

3.7G 3.7G 0 100% /mnt/iso

6. 修改sysconfig.cfg文件

# vi /mnt/usb1/syslinux/syslinux.cfg

default linux

prompt 1

timeout 600

display boot.msg

F1 boot.msg

F2 options.msg

F3 general.msg

F4 param.msg

F5 rescue.msg

label linux

kernel vmlinuz

append ks=hd:sdb1:/oel58h.cfg initrd=initrd.img

label auto

kernel vmlinuz

append ks=hd:sdb1:/oel58auto.cfg initrd=initrd.img

label oel63

kernel oel63vmlinuz

append ks=hd:sda1:/oel63h.cfg initrd=oel63initrd.img

label centos

kernel centosvmlinuz

append ks=hd:sdb1:/cent58auto.cfg initrd=centosinitrd.img

label hand

kernel centosvmlinuz

append ks=hd:sdb1:/cent58h.cfg initrd=centosinitrd.img

label local

localboot 1

label memtest86

kernel memtest

append -

說明:

每個系統都是采用自己的內核與啟動文件進行啟動,這樣就可以實現多系統的安裝。

7. 創建自動與手動ks配置文件

說明: kickstart文件可以直接采用自己安裝成功/root/anaconda-ks.cfg的文件進行修改,

也可以用別人直接修改使用。

(1) OEL5.8手動ks文件

# vi /mnt/usb1/oel58h.cfg

install

harddrive --partition=sdb2 --dir=/

說明:

1). 通過ks文件可以直接定位iso文件位置,無需要手動選擇local disk,然後選擇iso磁盤。

2). 如果ks文件指定目錄錯誤,也可以通過手動選擇local disk,然後選擇iso磁盤的方式進行安裝。

(2) CentOS 5.8手動ks文件

# vi /mnt/usb1/cent58h.cfg

install

harddrive --partition=sdb4 --dir=/

(3) OEL5.8手動ks文件

# vi /mnt/usb1/oel63h.cfg

install

harddrive --partition=sdb3 --dir=/

 

(4) OEL5.8自動ks文件

# vi /mnt/usb1/oel58auto.cfg

install

harddrive --partition=sdb2 -dir=/

lang zh_CN.UTF-8

keyboard us

xconfig --startxonboot

network --device eth0 --bootproto static --ip 192.168.14.100 --netmask 255.255.255.0 --gateway 192.168.14.2 --nameserver 202.100.192.68 --hostname oa

rootpw --iscrypted $1$H0bnNoWM$HE1R/mWv6LqbhUGI8Xw/t.

firewall --disabled

authconfig --enableshadow --enablemd5

selinux --disabled

timezone Asia/Shanghai

bootloader --location=mbr --driveorder=sda --append="rhgb quiet"

# The following is the partition information you requested

# Note that any partitions you deleted are not expressed

# here so unless you clear all partitions first, this is

# not guaranteed to work

clearpart --linux

part /boot --fstype ext3 --size=100

part pv.3 --size=100 --grow

volgroup vg --pesize=32768 pv.3

logvol swap --fstype swap --name=swap --vgname=vg --size=6112

logvol / --fstype ext3 --name=root --vgname=vg --size=14240

%packages

@admin-tools

@base

@chinese-support

@core

@development-libs

@development-tools

@dialup

@editors

@gnome-desktop

@games

@graphical-internet

@graphics

@java

@legacy-software-development

@legacy-software-support

@office

@printing

@sound-and-video

@text-internet

@base-x

system-config-kickstart

kexec-tools

iscsi-initiator-utils

fipscheck

squashfs-tools

device-mapper-multipath

sgpio

imake

emacs

libsane-hpaio

xorg-x11-utils

xorg-x11-server-Xnest

xorg-x11-server-Xvfb

%post

service sendmail stop

8. 將U盤退出虛擬機

(1) 從虛擬機中退出U盤

1) 點擊VMware workstation菜單"虛擬機","可移動設備","Kingston U盤->與主機斷開連接"。

2) windows中"我的電腦"就出現U盤圖示,認出了1.7GB的磁盤空間,或也可以將U盤插入其它window電腦上。

(2) 寫入引導信息

需要下載syslinux工具寫入mbr引導信息與ldlinux.sys引導文件(系統隱藏)在msdos分區上。

win7必須管理員權限下執行cmd操作才能成功,64位系統選擇win64目錄的工具。

syslinux下載地址: http://www.kernel.org/pub/linux/utils/boot/syslinux/4.xx/syslinux-4.04.zip

cmd中

d:

cd \syslinux-4.04\win32

syslinux.exe -a -m i:

四、 安裝測試

1. 重啟BIOS中設置USB-HDD啟動

輸入oel即可進行OEL5.8手動安裝測試

2. 修改啟動菜單進行個性化提示界面

# vi /mnt/usb1/syslinux/boot.msg

3. 其它維護

如果要安裝其它版本的linux系統,可以直接替換ISO文件以及啟動內容文件即可。

Copyright © Linux教程網 All Rights Reserved