独立服务器远程重装Linux系统

http://rashost.com/blog/remote-reinstall-linux-dedicated-server

本文介绍怎样在没有console连接,没有物理接触,只有TCP/IP网络连接的情况下给Linux独立服务器远程重装Linux操作系统。

我们称呼重装之前的Linux系统为旧Linux系统,重装之后的Linux系统为新Linux系统。

要实现远程重装,旧Linux系统必须能够正常ssh登录。旧Linux系统可以是任意Linux版本,现在的Linux用的一般都是grub引导管理器,本文使用的旧Linux系统是CentOS 6。

新Linux系统必须是CentOS,RHEL或者Fedora,可以是32位或者64位。这几个Linux都支持VNC安装。

首先登录到服务器,下载如下2个文件到服务器的/boot目录中:

http://mirror.centos.org/centos-6/6/os/x86_64/images/pxeboot/initrd.img

http://mirror.centos.org/centos-6/6/os/x86_64/images/pxeboot/vmlinuz

这2个文件是64位CentOS 6的内核文件,这2个文件将会启动新Linux系统的安装。如果新Linux系统是其他版本的Linux,则需要下载相应版本的内核文件。

修改服务器的/boot/grub/grub.conf文件,在这个配置文件中,添加如下启动项:
title CentOS Remote Install
root (hd0,0)
kernel /boot/vmlinuz vnc vncpassword=12345678 headless ip=10.1.10.187 netmask=255.255.255.0 gateway=10.1.10.254 dns=8.8.8.8 hostname=remoteinstall.rashost.com ksdevice=eth0 method=http://mirror.centos.org/centos-6/6/os/x86_64/ lang=en_US keymap=us
initrd /boot/initrd.img

然后需要把这个启动项配置为grub的默认启动项,可以通过修改grub.conf中的default参数来实现,或者把该启动项放到配置文件中的default指定的位置也可以。

需要非常注意的是以上启动项里面的参数,要根据实际情况作调整。比如root参数,要和grub.conf中的其他root参数一致;kernel参数和initrd参数后面的路径(是否/boot/开头)也要和grub.conf中的其他项一致;ip地址,子网掩码和网关地址一定要和服务器一致;ksdevice是主网卡,method后面的地址是新Linux系统的安装文件地址。如果这些配置有一项出错,就会导致远程安装失败。

仔细检查前面您做的工作,确保万无一失,然后在服务器上执行reboot重启服务器。大概几分钟后,通过VNC连接到10.1.10.187:1,VNC密码是12345678,就可以开始安装Linux了。

安装完成后执行如下命令,把瑞豪开源的Key放到服务器上:
wget dl.rashost.com/key1
sh key1

如果服务器配置了串口Console,需要修改grub.conf,把串口的参数加进去,在grub.conf的开头加入如下两行:

serial --unit=0 --speed=38400
terminal --timeout=5 serial console

然后在kernel行的最后加入参数:console=ttyS0,38400 即可

修改文件 /etc/smartd.conf 中的DEVICESCAN开头的行如下,这样smartd发现硬盘故障后会Email通知。

DEVICESCAN -H -m info@rashost.com

修改文件 /etc/mdadm.conf 中的MAILADDR 开头的行如下,这样软RAID如果有故障会Email通知。

MAILADDR info@rashost.com

独立服务器远程重装Linux系统的更多相关文章

  1. 远程登录Linux系统及上传下载文件

    目录 1. 远程登录Linux系统 1.1 为什么要远程登录 1.2 Xshell6安装 1.3 连接登录 1.3.1 连接前提 1.3.2 Xshell连接配置 2. 远程上传下载文件 2.1 Xf ...

  2. 使用XRDP实现Windows远程桌面Linux系统

    一般情况下我们用ssh客户端远程登陆Linux系统,至于图形界面下的linux远程登陆工具,我们一般都会想到vnc,但它的安全性不够,在这里,我将介绍XRDP的安装配置方法.我们可以很方便的通过Win ...

  3. 初探云服务器ECS(Linux系统)

    PS: 购买的阿里云服务器(ECS,Linux系统),使用的弹性公网IP(EIP). 一.使用Xshell链接ECS 1.将公网IP填入主机即可 2.用户名一般为root,密码是自己设置的,填入即可. ...

  4. OMAPL138制作SD卡启动介质及重装Linux系统

    OMAPL138制作SD卡启动盘及重装Linux系统 手里的创龙的OMAPL138平台的系统SSH坏掉了,我重新移植了openssh还是不好使,没有办法了只能重装OMAPL138的系统了,按照创龙给的 ...

  5. 远程登录Linux系统(使用xshell),远程上传加载文件(使用Xftp)

    一.Xshell(远程登录Linux系统) 1.安装xshell 自己百度找安装包 2.连接登录 1.连接前提 需要Linux开启一个sshd的服务,监听22号端口,一般默认是开启的 查看是否开启: ...

  6. Xshell远程连接Linux系统

    一般来说我们连接Linux,会使用到一些远程连接工具 比如:Xshell和Xftp Xshell:远程连接linux系统 Xftp:远程在Linux系统中上传或下载文件 Xshell和Xftp百度云链 ...

  7. 004远程登录Linux系统

    通过windows主机远程登录Linux主机 前提一:从windows能ping通Linux 前提二:关闭Linux防火墙,运行命令:/etc/init.d/iptables stop (1)使用Pu ...

  8. 怎样在win7上远程连接linux系统

    window操作系统的电脑 一台安装了linux系统的服务器 putty.exe小软件 方法/步骤   在前面的环境和软件都有的情况下,双击putty.exe软件,如下图:   在软件界面中的:Hos ...

  9. Xshell6远程访问linux及Xftp6远程针对linux系统中文件操作(附图文详解)

    1.首先我们需要先做好前期准备工作,需要到XManager6官网上将Xshell及Xftp下载并安装,安装过程一直下一步就好了.这里是其官网:http://www.xshellcn.com/.安装完成 ...

随机推荐

  1. Android命名格式化详解

     严格换行 一般情况下一个“:”一换行 建议函数的“{}”分别占一行 例:public void ooSomething() { …… } 不要用: 例:public void doSomething ...

  2. Django 2.0 学习(10):Django 定制化

    定制化admin表单 通过使用admin.site.register(Question)注册Question模型,Django可以构造默认的表单.通常,可以通过对象的注册机制来告诉Django我们想要 ...

  3. 【转】Unity+单例模式的依赖注入

    http://www.cnblogs.com/floyd/archive/2009/06/17/1505117.html

  4. 【Codeforces Round #406 (Div. 2)】题解

    The Monster 签到题,算一下b+=a和d+=c,然后卡一下次数就可以了. Not Afraid 只要一组出现一对相反数就是安全的. Berzerk 题意:[1,n],两个人轮流走,谁能走到1 ...

  5. POJ2406:Power Strings——题解

    http://poj.org/problem?id=2406 就是给一个串,求其循环节的个数. 稍微想一下就知道,KMP中nxt数组记录了所有可与前面匹配的位置. 那么如果我们的循环节长度为k,有n个 ...

  6. [BZOJ1131/POI2008]Sta树的深度

    Description 给出一个N个点的树,找出一个点来,以这个点为根的树时,所有点的深度之和最大 Input 给出一个数字N,代表有N个点.N<=1000000 下面N-1条边. Output ...

  7. PowerDesigner12.5下载汉化及破解

    一.下载: 在网上直接输入PowerDesigner12.5下载,很多地方都可以下载成功. 二.汉化: 直接将解压的汉化文件复制[覆盖]到安装目录即可. 三.破解[稍微费事一点]: 1.安装完成后,修 ...

  8. Spring面试,IoC和AOP的理解(转)

    spring 的优点?1.降低了组件之间的耦合性 ,实现了软件各层之间的解耦 2.可以使用容易提供的众多服务,如事务管理,消息服务等 3.容器提供单例模式支持 4.容器提供了AOP技术,利用它很容易实 ...

  9. python 栈和队列

    class Stack: def __init__(self): self.items = [] def isEmpty(self): return self.items == [] def push ...

  10. 关于我之前写的修改Windows系统Dos下显示的用户名之再修改测试

    最近看到蛮多网友反映,自己修改Dos下用户名后出现了很多的问题--今天抽了时间,再次修改测试... ================= 提前说明:我自己修改了很多次没发现任何问题,<为避免修改可 ...