制做OEL/CentOS linux三合一U盘安装盘

简介:

一次出差去客户现场安装新买的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文件以及启动内容文件即可。

 

本文转自 koumm 51CTO博客,原文链接:http://blog.51cto.com/koumm/1102463,如需转载请自行联系原作者


相关文章
|
2月前
|
Linux Shell 数据安全/隐私保护
Centos或Linux编写一键式Shell脚本创建用户、组、目录分配权限指导手册
Centos或Linux编写一键式Shell脚本创建用户、组、目录分配权限指导手册
151 3
|
2月前
|
Linux Shell
Centos或Linux编写一键式Shell脚本删除用户、组指导手册
Centos或Linux编写一键式Shell脚本删除用户、组指导手册
61 4
|
3月前
|
Linux Shell
在Linux、CentOS7中设置shell脚本开机自启动服务
以上就是在CentOS 7中设置shell脚本开机自启动服务的全部步骤。希望这个指南能帮助你更好地管理你的Linux系统。
166 25
|
1月前
|
Oracle 关系型数据库 Linux
MyEMS开源系统安装之CentOS/RHEL/Rocky/AlmaLinux/Oracle Linux
本指南介绍如何在CentOS/RHEL/Rocky/AlmaLinux/Oracle Linux服务器上部署MyEMS开源能源管理系统。内容涵盖系统准备、数据库配置、多个MyEMS服务(如myems-api、myems-admin、myems-modbus-tcp等)的安装与配置,以及Nginx服务器设置和防火墙规则调整。通过完成所有步骤,您将能够访问MyEMS Admin UI和Web UI,默认端口分别为8001和80,初始登录凭据已提供。
58 0
|
3月前
|
安全 Linux 网络安全
在Linux(CentOS和AWS)上安装更新的git2的方法并配置github-ssh
经过以上这些步骤,你现在就能在GitHub上顺利往返,如同海洋中的航海者自由驰骋。欢迎你加入码农的世界,享受这编程的乐趣吧!
117 10
|
4月前
|
存储 IDE Linux
零基础保姆级教程!手把手教你免费玩转Linux CentOS安装+学习环境搭建(附避坑指南)
本文详细介绍了在VMware虚拟机中安装CentOS 6.8的全过程。首先,需确保已安装VMware并开启V-CPU虚拟化功能,可通过BIOS设置或使用LeoMoon CPU-V工具检测。接着,下载CentOS镜像文件,并在VMware中新建虚拟机,配置CPU、内存、硬盘等参数。最后,加载ISO镜像启动虚拟机,按照提示完成CentOS的安装,包括语言、键盘、存储方式、地区、密码设置及硬盘分区等步骤。安装完成后,以root用户登录即可进入系统桌面,开始学习Linux命令和操作。
374 12
零基础保姆级教程!手把手教你免费玩转Linux CentOS安装+学习环境搭建(附避坑指南)
|
5月前
|
缓存 Ubuntu Linux
Linux中yum、rpm、apt-get、wget的区别,yum、rpm、apt-get常用命令,CentOS、Ubuntu中安装wget
通过本文,我们详细了解了 `yum`、`rpm`、`apt-get`和 `wget`的区别、常用命令以及在CentOS和Ubuntu中安装 `wget`的方法。`yum`和 `apt-get`是高层次的包管理器,分别用于RPM系和Debian系发行版,能够自动解决依赖问题;而 `rpm`是低层次的包管理工具,适合处理单个包;`wget`则是一个功能强大的下载工具,适用于各种下载任务。在实际使用中,根据系统类型和任务需求选择合适的工具,可以大大提高工作效率和系统管理的便利性。
456 25
|
6月前
|
安全 大数据 Linux
云上体验最佳的服务器操作系统 - Alibaba Cloud Linux | 飞天技术沙龙-CentOS 迁移替换专场
本次方案的主题是云上体验最佳的服务器操作系统 - Alibaba Cloud Linux ,从 Alibaba Cloud Linux 的产生背景、产品优势以及云上用户使用它享受的技术红利等方面详细进行了介绍。同时,通过国内某社交平台、某快递企业、某手机客户大数据业务 3 大案例,成功助力客户实现弹性扩容能力提升、性能提升、降本增效。 1. 背景介绍 2. 产品介绍 3. 案例分享
130 1
|
7月前
|
负载均衡 Ubuntu 应用服务中间件
nginx修改网站默认根目录及发布(linux、centos、ubuntu)openEuler软件源repo站点
通过合理配置 Nginx,我们可以高效地管理和发布软件源,为用户提供稳定可靠的服务。
490 13
|
9月前
|
Web App开发 搜索推荐 Unix
Linux系统之MobaXterm远程连接centos的GNOME桌面环境
【10月更文挑战第21天】Linux系统之MobaXterm远程连接centos的GNOME桌面环境
1569 5
Linux系统之MobaXterm远程连接centos的GNOME桌面环境