翻译:wd_afei
原文:wiki2.archlinux.org
提要:远程安装ArchLinux
+++++++++++++++++++++++++++++++++
远程安装ArchLinux
+++++++++++++++++++++++++++++++++
基于Tobias Kieslich的工作。他的原始版请看这里
http://www.justdreams.de/archlinux/docs/00_rootserver.html。
概述
这是一个建立Archlinux基本服务器的指南。Archlinux是一个很好的服务器系统,但是它通常不会被选择作为一个预装的发行版。在本机替换预装的系统非常容易。但是替换一个你只能通过SSH来操作的远程电脑可没那么容易,需要按照特定的顺序执行特定的步骤。请在操作之前确认你明白每一步会带来什么结果。如果不确定,请参考某些权威文档,例如man、Archlinux论坛或者Wiki。
我们将替换一个正在运行的远程系统。当你按照这个指南操作完毕,你将得到一个可以使用SSH登陆,通过参考其他地方的指南,建立Mail服务器或者Subversion或者Apache的Archlinux基本系统。
免责声明(Disclaimer):这是一项危险的操作,假定你已经知道你在做什么。这样做很有可能破坏你的系统或者丢失重要数据,你可能会花费一大笔钱让服务提供商来帮助你恢复。这些都要你自己负责。
(译者注:本文讲解的是通过网络来将远程计算机中的系统,例如RedHat之类替换为Arch。重点讲解的是通过在目前系统的swap分区上面建立一个中间系统(文中后面还叫做救援系统),然后用这个中间系统启动,把除swap分区之外的分区重新格式化安排一下,然后再在他们上面安装Arch。这样来实现最后的目的。)
简介
你需要事先安装好一个中间系统,启动并登陆这个系统,从那里来安装你的新的Archlinux服务器。这听起来似乎比实际情况要简单,因为你需要面对一个典型的情况:你需要干掉可以让你活动的主机(the system that hosts your activities)。As with many other things,有不止一种方法来完成这个操作。可能存在以下2个情况:
1 很多服务提供商提供被称作救援系统(rescue sytems)或者远程控制台(remote consoles)的系统,这些系统通常只是一个存放在网卡(network card)中的引导磁盘(bootdisc)。这些都是启动一个只存在于RAM中的基本系统(rudimentary sytem)。从而你可以随心所欲的对你的硬盘分区。
2 很多服务器都有swap分区。如果你的没有,你应该换一个提供商。你可以关闭那个swap分区,并且在那里安装你的中间系统。
本文以后面的这个情况为概要来讲解。如果你能控制远程控制台(译者注:因为你有这个的话,就相当于已经有了一个中间系统了,直接对硬盘操作即可),那么战斗就已经赢了一半。
备份和准备工作
在这个操作过程中,你将会清除你现在系统上面的所有数据。备份包括邮件、web服务器等在内的所有数据。把所有信息都放在手边。备份你所有的服务器配置文件、主机名等。
下面是一个你可能需要备份的数据的列表:
●你的IP地址。
●你的主机名(注意:rootserver通常也是提供商域名的一部分,在删除之前检查/保存你的/etc/hosts文件)。
●你的DNS设置(检查/etc/resolve.con)。
●你的SSH密钥(如果其他人也在你的服务器上面工作,他们需要接受新的密钥。这包括apache、邮件服务器、ssh服务器以及其他密钥。他们通常散布在你的系统中,至少都位于/etc目录(译者注:这里可能是讲license之类的东西。)。否则如果你有注册密钥,你还需要再为这些付费。你最好把他们都保存好了 ;-))。
●你的硬件信息(例如网卡。请查阅预装系统的/etc/modules.conf文件)。
●如果你的系统引导管理器已经在使用/boot/grub/menu.lst文件,请备份它。
总的来说,把原始的/etc目录在本地硬盘上做一个本地备份是个不错的注意。
准备中间系统
中间系统是用来实现新的磁盘规划并且安装最终系统的地方。不需要在它上面安装必须软件包之外的软件包。除了基本系统之外,你还需要安装wget来下载一些软件和ssl服务器。
创建一个新的swap文件
如果你是个妄想狂(paranoid),或者只有很小的RAM,那你在关闭swap分区之前或许需要添加一个swap文件。请注意你不需要运行一些类似于mail服务器、http服务器等的守护进程。你可以关闭他们释放远程机器的内存。
下列命令将首先创建一个填充满0的文件,然后格式化成swap分区格式,然后激活这个swap文件,强制将缓冲内容写入硬盘,然后检查激活的swap文件。
# dd if=/dev/zero of=/swapfile bs=1024 count=512288
# mkswap /swapfile
# swapon /swapfile
# sync
# cat /proc/swaps你似乎只有一块硬盘(否则你可以在你的另外一块硬盘上面创建你的中间系统)。使用cfdisk、检查/proc/swaps或者/etc/fstab找到你的swap分区。
假定你的硬盘上的swap分区位于hdaX(X是个数字),下列命令先关闭swap分区,并把它格式化,然后新建一个用来挂载它的文件夹,最后把它挂载到新建的文件夹,用来安装中间系统。
# swapoff /dev/hdaX
# mke2fs -j /dev/hdaX
# mkdir /mnt/newsys
# mount -t ext3 /dev/hdaX /mnt/newsysDavid Leinh?user (aka Calavera)写了一个bootstrap脚本,可以用来创建中间系统和最终系统。它让操作变的很简单。
可以来这里获取:http://bbs.archlinux.org/viewtopic.php?t=4020。
从本地机器复制这个文件到远程机器:
$ scp archbootstrap root@yourserver.org:/home# ./archbootstrap /mnt/newsys ftp://gd.tuwien.ac.at/opsys/linux/archlinux配置中间系统
当archbootstrap命令结束后,你将拥有一个原始系统(raw system),还需要你按照通常的Archlinux安装过程来提供更多的信息。这就是你从之前系统保存的所有信息。
在chroot到新系统之前,先调整以下文件中的设置:
●/mnt/newsys/etc/fstab
●/mnt/newsys/etc/resolv.conf
●/mnt/newsys/etc/hosts
●/mnt/newsys/etc/hosts.allow
●/mnt/newsys/etc/rc.conf
●/mnt/newsys/etc/modprobe.conf
特别的:
●添加新的root分区(以前的swap分区)到/mnt/newsys/etc/fstab文件:
/dev/discs/disc0/partX / ext3 defaults 0 1nameserver xxx.xxx.xxx.xxxrooditoottoot yyy.yyy.yyy.yyysshd:ALL警告:如果你不允许你的ssh守护进程自动启动,你将不能获取远程登陆系统的权限。如果你不在/etc/hosts.allow文件中允许ssh客户端登陆,你也将得到相同的结果,虽然他们技术原理不同。
●添加网卡到/mnt/newsys/etc/modprobe.conf
alias eth0 <your module>重启之前需要检查的内容
你必须chroot到你的新系统以便做一些设置。当你在新系统的时候,必须先为root用户设置一个密码,否则ssh不会让你登陆系统。还有你的系统引导程序应该定向到新系统。你或许还可以设置你的系统引导程序以便你可以进入旧系统。如果你有一个救援控制台的话,这些操作将会很简单。
●挂载基本系统(essential systems)
# mount -t devfs none /mnt/newsys/dev
# mount -t proc none /mnt/newsys/proc# chroot /mnt/newsys /bin/bashroot@tester root]# ifconfig
eth0 Link encap:Ethernet HWaddr 00:E0:81:24:77:5E
inet addr:192.168.0.7 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::2e0:81ff:fe24:775e/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:5259 errors:0 dropped:0 overruns:1 frame:0
TX packets:3266 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:6076799 (5.7 Mb) TX bytes:332020 (324.2 Kb)
Interrupt:209 Base address:0x2000
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)</kbd>
# pacman -Sy kernel26 openssh# (0) Arch Linux insert your old swap partition as new root
title Arch Linux [/boot/vmlinuz26]
root (hd0,1)
kernel /boot/vmlinuz26
root=/dev/discs/disc0/part2 ro# install-grub /dev/discs/disc0/disc /dev/discs/disc0/part2# passwd#exit如果你确定你的新系统可以启动,输入reboot命令。
为你的新系统准备一个home目录
给服务器一点时间等待它重启,之后可以ping一下它确定你能访问它。
通过SSH登录你的新系统。如果你忘记复制你的ssh密钥,那么输出会告诉你为什么。按照提示完成操作。请确认你知道你现在在哪里——在你之前系统的swap分区里面。在你私人的救援系统里面,你被你的旧系统的分区包围着。如果你 freaky enough to choose option #1 you are on your own for this part。使用parted并不是世界上最难的挑战。
1 你需要移动旧的数据到新的系统中。使用parted来创建一个救援分区,并且复制所有数据到那里面。
2 你已经在网络上某个地方备份了你的数据(好孩子!),那你可以在没有任何风险的情况下运行cfdisk规划你的新磁盘。
让我们先考虑一个比较好的规划。你现在在一个救援系统里面。非常有用,不是吗?当你的服务器被黑客攻击或者你必须在实际系统中工作,让我们在你的硬盘上拥有一个救援系统。如果你需要设置你的服务器并且需要打断你的工作的时候,这也会非常有用。怎么做呢,让你的服务器不设置防火墙和MySQL服务器的root密码?坏注意!重启到你的救援系统,只需等待重新ssh登陆继续你的工作。你也可以添加你工作所有需要的工具到这个系统,通过提供商提供的救援控制台(如果你有一个),你不会在这个迷你系统中受限制。现在,你当前所在的swap分区,通常位于你磁盘规划最先考虑的。不要浪费救援系统上面硬盘最快的部分。放置你的救援系统在你的磁盘规划的最后(或许是512-1024MB)。
现在整个磁盘规划的想法(它仍然依赖于之前的规划和你现在工作的分区的位置)。有些人或许需要使用Confixx或者Vistas来维持他们的域名和E-mail帐号。这需要一个不通的规划,但是这不在本文讨论的范围之内。我们建议使用以下规划:
●part1 swap分区 512MB
●part2 / 2048MB
●part3 /home 依赖于磁盘的大小
●part4 -- extended --
●part5 /backup 通常和/home分区的大小一样
●part6 / 救援系统1024MB
现在,实现你的规划。做如下操作的时候,不要忘记彻底离开你当前工作的分区。
# parted /dev/discs/disc0/disc# cfdisk /dev/discs/disc0/disc按照设想创建文件系统,并且挂载新的root分区到/mnt/newsys
# mkdir /mnt/newsys
# mount -t ext3 /dev/discs/disc0/part3 /mnt/newsys设置你的新系统
我们需要再次使用archbootstrap,这需要用到wget
# pacman -S wget你可以再次手动编辑/etc下面的文件,或者把它们复制过来。
# cat /etc/fstab > /mnt/newsys/etc/fstab
# cat /etc/pacman.conf > /mnt/etc/pacman.conf
# cat /etc/hosts > /mnt/etc/hosts
# cat /etc/hosts.allow > /mnt/etc/hosts.allow
# cat /etc/rc.conf > /mnt/etc/rc.conf
# cat /etc/modprobe.conf > /mnt/etc/modprobe.conf
# cat /etc/resolv.conf > /mnt/etc/resolv.conf#
# /etc/fstab: static file system information
#
# <file system> <dir> <type> <options> <dump> <pass>
none /proc proc defaults 0 0
none /dev/pts devpts defaults 0 0
none /dev/shm tmpfs defaults 0 0
tmpfs /tmp tmpfs defaults 0 0
#sysfs /sys sysfs defaults 0 0
usbdevfs /proc/bus/usb usbdevfs defaults 0 0
/dev/cdroms/cdrom0 /mnt/cd iso9660 ro,user,noauto,unhide 0 0
/dev/cdroms/cdrom0 /mnt/dvd udf ro,user,noauto,unhide 0 0
/dev/floppy/0 /mnt/fl vfat user,noauto,unhide 0 0
# the production system
/dev/discs/disc0/part1 swap swap defaults 0 0
/dev/discs/disc0/part2 / ext3 defaults 0 1
/dev/discs/disc0/part3 /home ext3 defaults 0 1
# the backup system
/dev/discs/disc0/part5 /mnt/backup ext3 defaults,noauto 0 1
# the rescue system if necessary
/dev/discs/disc0/part6 /mnt/rescue ext3 defaults,noauto 0 1# mkdir /mnt/backup# mount -t devfs none /mnt/newsys/dev
# mount -t proc none /mnt/newsys/proc# chroot /mnt/newsys /bin/bash
# passwd
# pacman -Sy kernel26 openssh mc wget nanoinstall-grub /dev/discs/disc0/disc /dev/discs/disc0/part2 尾注
现在你已经在你的服务器上面运行Archlinux了。为了让他能有实际用途还有许多事情需要做。但是那是另外一个故事,另外一个指南了。你想写么?请把他在wiki上面发表。不要忘记在你的救援系统中安装一些好用的工具,例如nmap、parted等。
评论
You can be sure to buy only
You can be sure to buy only authentic prada handbags, shipped directly from borse prada handbags make the difference for every lady who dress it, Le prada borse fanno sempre tendenza: On our cheap prada outlet store, we provide you prada scarpe handbags, louis vuitton borse donna, spaccio peuterey di raffinatezza ed esclusività con foto, caratteristiche e peuterey outlet . I modelli di Prada Borse diventati dei veri cult della moda sono.Miglior Scarpepradaitalia.com Se Vendita Professione Scarpe Prada,Gucci,Lacoste,Mocassins,da citta,Loisir 2011 Da Uomo E Donna 60% di sconto!We are sure you wear Peuterey jacken can enjoy yourself and surely spend wonderful days in cold weather,peuterey sale wintrjacken peuterey on sale .inpeuterey sito ufficiale ufficiale are low than other products. are all in good quality and fashion style. You can buy which you want to choose.