新发布的DotAsterisk(点星PBX) 3.0 版本开始支持U盘安装系统,应@呆呆的要求,在几台实体机上做了下测试,记录一下测试过程和遇到的"坑",以备后续参考。
1. DotAsterisk 3.0 ISO镜像安装文件: DotAsterisk-3.0-Beta1-2-x86_64-DVD.iso 。
2. U盘启动制作工具—— UltraISO单文件版软件,用于将 点星PBX的安装镜像ISO文件写到U盘。
3. 物理机一台,有USB接口,不需要有光驱。
需要准备的软件如下图。
DotAsterisk(点星PBX) 的安装ISO镜像文件是基于CentOS 6 Linux系统打包的,所以本质上它就是一个Linux操作系统,我们可以采用UltraISO 自带的syslinux来制作可启动的点星pbx的linux安装U盘。
1:插入U盘。注意:请务必备份好U盘所有数据,因为下面的U盘刻录操作会格式化U盘,会清空U盘所有数据。
2:启动UltraISO软件之后,点击软件顶部“文件”——“打开”菜单
3:选择点星PBX镜像文件 DotAsterisk-3.0-Beta1-2-x86_64-DVD.iso ,如下图。
4:点击UltraISO软件顶部“启动”——“写入硬盘映像...”菜单 后,弹出 "写入硬盘映像"对话框,如下图。
5:在弹出对话框中选择需要写入的 "硬盘驱动器"(U盘),点击"写入"按钮,UltraISO便开始了制作启动U盘,如下图。
经过1-2分钟后,可引导启动U盘便制作完成,如下图。
至此,点星PBX的安装启动U盘制作成功。关闭 UltraISO 软件,拔出U盘。
说明:U盘安装过程和直接用光盘安装基本完全一致,但有如下两点需要注意。
1)U盘启动进入安装界面后选择“安装介质”的时候,请选择Hard Disk(硬盘)方式,因为我们不从光驱安装,我们是从U盘引导安装,U盘也是一种硬盘。此时会有至少两块硬盘以供选择,请选择对应的U盘分区。
2)安装完成后系统的grub默认写入U盘,如果装完后拔出了U盘,安装好的点星pbx系统就不能启动。所以系统安装完成后,首次重启进入系统前不要拔出U盘,依旧从U盘引导进入系统。进入系统后,登录控制台手动运行grub-install命令,将grub启动程序写入到磁盘后,以后再重启系统就可以不依赖于U盘了。下面会详细讲解。
下面开始进行安装
1. 关闭计算机电源并插上制作好的U盘
2. 开机并按住引导设备选择键
3. 选择您的USB设备并回车确认
4. 进入U盘系统。
下面是常用主板bios开机选择启动介质的快捷键,请参考下图。
5. 计算机从U盘引导启动,出现和cdrom光驱安装一样熟悉的安装菜画面,选择第1个菜单"Install DotAsterisk IPPBX"进入安装程序,如下图。
6. 选择安装介质为硬盘安装(Hard drive) , 因为U盘也是一种硬盘,如下图:
如下图,我的U盘在系统中是 "/dev/sdb4"。
剩下的安装无需人工参与,安装过程和光驱安装一样,耐心等待系统安装完成后重启即可。注意:安装完成后,第1次重启请勿拔掉U盘,因为默认grub引导程序可能会写入到U盘,系统启动还依赖U盘。请继续看下面教程。
前面有说过:安装完成后系统的grub默认写入U盘,如果装完后拔出了U盘,安装好的点星pbx系统就不能启动。所以我们需要修改系统的grub引导安装位置,释放U盘。
启动系统后,控制台登录点星pbx系统。下面需要用到“vi编辑器“软件,如果用户不会vi编辑器,请下载winscp软件,远程登录系统后进行编辑操作。
winscp的使用和普通的ftp远程连接原件类似,下载地址为:
https://winscp.net/eng/docs/lang:chs
下面采用远程终端登录系统,并使用vi编辑器进行grub引导程序重装。
1. 查看 /boot/ 目录引导程序安装的硬盘(考虑到用户有多个硬盘的情况)。
运行 grub命令,进入grub二级提示符后,输入"find /grub/stage1" 命令,系统会自动查找到boot程序安装的硬盘,如下。
[root@dotasterisk:~]# grub
Probing devices to guess BIOS drives. This may take a long time.
GNU GRUB version 0.97 (640K lower / 3072K upper memory)
[ Minimal BASH-like line editing is supported. For the first word, TAB
lists possible command completions. Anywhere else TAB lists the possible
completions of a device/filename.]
grub>
grub> find /grub/stage1
find /grub/stage1
(hd0,0) ##系统输出 hd0,说明点星pbx系统被安装到第1块硬盘,也就是 /dev/sda ,
grub>
grub>
可以看到系统输出 hd0,说明点星pbx系统被安装到第1块硬盘,也就是 /dev/sda 。如果是 hd1,那么就是第2块硬盘/dev/sdb, 如果是 hd2 ,那么就是第3块硬盘 /dev/sdc , 以此类推。
2. 输入quit命令,退出grub二级命令提示符,运行 "grub-install /dev/sdX" 命令,将grub引导程序安装到 对应硬盘的mbr。
grub>
grub> quit ##退出grub二级提示符
quit
[root@dotasterisk:~]#
[root@dotasterisk:~]# grub-install /dev/sda ##正如上面所说,grub里面的(hd0)对应系统里面的/dev/sda
Installation finished. No error reported.
This is the contents of the device map /boot/grub/device.map.
Check if this is correct or not. If any of the lines is incorrect,
fix it and re-run the script `grub-install'.
# this device map was generated by anaconda
(hd0) /dev/sda ##此行输出表示安装成功,在linux中grub的 hd0 对应操作系统的 /dev/sda
[root@dotasterisk:~]#
说明: 命令 "grub-install /dev/sdX" ,其中的"X"对应具体的硬盘顺序(a,b,c,d...),请替换为具体的硬盘,一般为/dev/sda , /dev/sdb 等。
3. 使用vi编辑器,修改 /etc/grub.conf 文件的引导程序加载硬盘顺序。
[root@dotasterisk:~]#vi /etc/grub.conf
[root@dotasterisk:~]#
如上图和注解所示,比如我这个例子, 只需要将 /etc/grub.conf 文件 "hd1" 字符串 修改为 "hd0" 即可。如果是自己的系统,请参考上述方法修改为对应的硬盘id序号即可。
4. U盘安装完成,请拔出U盘。后续重启系统后不再依赖于U盘。