网络安装

Jump to: navigation, search

网络安装

Sometimes it is necessary to upgrade a machine that is only reachable over the network. openSUSE 有多种远程安装方式,包括:

  • ssh
  • VNC
  • serial 控制台

此处只是大概说明怎样 ssh 安装,VNC 是相似的过程,serial 控制台就更简单了。这些内容只是作为提示,而不是具体说明。

准备启动

准备安装需要的文件

你要做的就是通过远程计算机的安装 kernel和 initrd 启动。同时,你需要知道计算机的 IP 地址。这里假定计算机是固定的 IP 地址。如果你使用 dhcp,可以略过网络设定部分,直接使用 dhcp 服务器给你的 IP 。

首先,把 kernel 镜像和安装 initrd 拷贝到 /boot 目录

cd /tmp
wget -O vmlinuz.install ftp://<path to openSUSE>/boot/loader/linux
wget -O initrd.install ftp://<path to openSUSE>/boot/loader/initrd
cp linux /boot/vmlinuz.install
cp initrd /boot/initrd.install

举例 SUSE 10.0 w/mirrors.kernel.org

cd /tmp
wget http://mirrors.kernel.org/opensuse/distribution/SL-10.0-OSS/inst-source/boot/loader/linux
wget http://mirrors.kernel.org/opensuse/distribution/SL-10.0-OSS/inst-source/boot/loader/initrd
cp linux /boot/vmlinuz.install
cp initrd /boot/initrd.install

举例:最新开发代码 w/mirrors.kernel.org & i386

cd /tmp
wget http://mirrors.kernel.org/opensuse/distribution/SL-OSS-factory/inst-source/boot/i386/loader/linux
wget http://mirrors.kernel.org/opensuse/distribution/SL-OSS-factory/inst-source/boot/i386/loader/initrd
cp linux /boot/vmlinuz.install
cp initrd /boot/initrd.install

配置 GRUB

然后,配置 GRUB 从那些镜像启动。如果你的 IP 是 192.168.10.10,网关 192.168.10.1 且根 (/) 分区是 /dev/hda1,把类似于下面的几行加入 /boot/grub/menu.lst

title Boot -- SUSE LINUX 10.0
   root (hd0,0)
   kernel /boot/vmlinuz.install noapic usessh=1 sshpassword="12345678" install=ftp://<path to openSUSE> hostip=192.168.10.10 netmask=255.255.255.0 gateway=192.168.10.1 nameserver=192.168.10.1
   initrd /boot/initrd.install
注 
密码至少 8 个字节。

如果你不提供一个名称服务器,那就只能输入 IP 而不是名称。然后把这条分录设为默认,通过 menu.lst 下面这行

default 0

数字对应你加的分录。

注: 如果你只想下次以这部分启动,不要修改默认。而用 grubonce 0,数字对应你加的分录。

重启。

举例:最新开发代码 w/一个 the mirrors.kernel.org 站点

title Boot -- SUSE LINUX DEVEL INSTALL
   root (hd0,4)
   kernel /boot/vmlinuz.install usessh=1 sshpassword="12345678" install=http://204.152.191.7/opensuse/distribution/SL-OSS-factory/inst-source hostip=192.139.88.209 netmask=255.255.255.0 gateway=192.139.88.254 nameserver=192.139.88.1
   initrd /boot/initrd.install

开始安装

计算机会重新启动,这次从你的安装镜像启动,而不是从已有系统启动。为了能访问安装镜像,作一下 ssh :

ssh -X root@192.168.10.10

输入给 sshpassword 的密码(上面例子里面是 123454678)。然后启动 yast,进行一次普通安装。

注 
输入 root 密码前可能断线,几分钟以后重新连接,输入原先设置给grub menu.lst的安装密码,再 /usr/lib/YaST2/startup/YaST2.ssh 继续安装。

更多信息

kernel 行后面的参数列表在 /usr/share/doc/packages/linuxrc/linuxrc.html。使用除了冒号以外的符号给 kernel 传递参数。linuxrc 总是试图自己找出尽量多的信息,所以如果你不提供一个网络连接,它会用 dhcp 设置网络。