今天需要在戴尔R410服务器上装64位的Linux,师兄给了个14.04的server 64位镜像。一开始打算用U盘安装,用软碟通烧写镜像之后,在服务器端设置从U盘启动,但是安装到一半出现了光盘无法挂载的现象,如图所示:

百度,Google了一下,确实也有不少人碰到了这个问题,并且几乎都是在安装server版本时碰到的,Desktop版本的用U盘安装没有这个问题。
总结了一下解决方法:

  1. 换一个烧录工具,或者用光盘刻录安装没有这个问题,烧写U盘的工具有Win32 Disk Imager,但需要把ISO镜像后缀改成img,这个方法我试了但是没有成功。后来有百度到另一个工具ImageWriter,将ISO后缀改成raw,烧录我用这个方法U盘安装没有出现问题,成功安装。
  2. 还有一个方法,当U盘出现这个问题时,手动挂载镜像,但前提是这个U盘已经被(不合格的烧录工具如ulraISO等工具烧录的),再往U盘中拷贝整个文件的镜像,通过在终端中用mount命令手动挂载。
    具体方法如下:
    首先进入shell 用ls命令查看已经挂在的设备如
    /dev/sda /dev/sda1 /dev/sda3 /dev/sda5 /dev/sdb /dev/sdb1
    接着拔掉U盘再ls /dev/sd* 即可查看到
    /dev/sda /dev/sda1 /dev/sda3 /dev/sda5
    可以看出u盘就是dev/sdb,那么u盘上的分区就是dev/sdb1
    因而我们可以有mkdir udev在跟目录下建立一个空目录
    再把u盘挂载到这个目录下面 mount /dev/sdb1 /udev
    接着把里面的镜像在挂载进来mount /udev/ubuntu.iso /cdrom
    最后退出即可正常安装。
    安装结束之后今天又很诡异的碰到了另一个问题
    在重启时进入到了busybox 一直显示initramfs如下图

下图可以看到报错:
Gave up waiting for root device. Common problems;
-Boot args (cat /proc/cmdline)
-Check rootdelay = (did the system wait long enough?)
-Check root = (did the system wait for the right device?)
-Missing modules (cat /proc/modules; is /dev)
ALERT! /dev/disk/by-uuid/Bd12fd38-…………..does not exist. Dropping to a shell!
这个问题,经过我一番查找各种资料,是系统在启动时rootdelay时间不够,导致部分设备没有被系统加载进来,需要再引导程序grub中修改等待时间。
而且值得注意的是碰到这种情况输入exit即会出现正常的linux登录界面
但是重新启动每次都会陷入initramfs
但是看了一通别人都说是在sudo vi /boot/grub/menu.lis 文件中修改
可能是版本的问题,我在/etc/default/grub中直接修改,因此在其中将文件中的两个变量
GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash rootdelay=120”
GRUB_CMDLINE_LINUX = “quiet splash rootdelay=120”
修改完之后一定要记住!!!
sudo update-grub
这一步非常重要,是要将配置跟新到缓存中,因为运行中是将这一个配置文件更新到一个可执行文件,类似于linux中编译时产生的脚本文件,makefile是由automake等工具的配置文件导出的一样,直接在使用那个可执行文件运行的,所以此处务必将配置重新update到可执行文件中去。
OK,之后reboot系统即可
看到正常的登录界面

奇怪的是,我先后用U盘和光盘重装都出现了这个问题,修改了grub.cfg这个配置文件之后每次启动就OK了,可能是系统硬件和软件配置之间的问题,原来默认的rootdelay时间不够。
后记:
现在的这个markdown编辑器非常好用,希望能实时看到预览界面
这里给出ImageWriter.exe烧写工具的下载地址。
http://cloud.github.com/downloads/openSUSE/kiwi/ImageWriter.exe

最新文章

  1. python多线程学习记录
  2. 浅析word-break work-wrap区别
  3. arrayList的合并以及删除重复元素
  4. 在无修改权限的情况下修改文件hosts中的内容
  5. 在linux下运行apt-get update 时,报错/var/lib/apt/lists/lock
  6. Linux学习笔记(16)shell基础之Bash变量
  7. js 重载i
  8. linux编程获取本机网络相关参数
  9. Adobe Edge Animate --使用HTML5实现手机摇一摇功能
  10. mysql,left join on
  11. Cookie 添加,读取,删除
  12. iPhoneKeyboard
  13. js中exec、test、match、search、replace、split、indesOf()用法
  14. Webpack 资源管理
  15. Android/Linux Thermal框架分析及其Governor对比
  16. 18.QT-QPlainEdit 信号与槽
  17. [转帖]什么是Asp.net Core?和 .net core有什么区别?
  18. TypeScript 之 三斜线指令
  19. 阿里云 qW3xT.4 挖矿病毒问题
  20. SpringMVC之使用Servlet原生API作为参数

热门文章

  1. [moka同学笔记]yii2.0导航栏
  2. gcd和拓展gcd算法
  3. PowerBuilder反编译
  4. js一些小题(二)
  5. JavaScript基础11——js的全局函数
  6. IOS6学习笔记(一)
  7. sql和access中截取字符串的区别
  8. 微信CRM六大模块的详解
  9. [Microsoft Dynamics CRM 2016]Invalid Action – The selected action was not valid 错误的诱因及解决方法
  10. Disconnected: No supported authentication methods available (server sent: publickey)