好久没写 Blog忙啊什么的就不说了懒是最大的原因最近忙着给实验室做个网站除了我熟悉的 Web Design & Development 之外这次我还搭建了一台 Linux 服务器一方面用来放置我们的站点另一方面实验室放一台服务器也为实验室的成员们提供一些额外的服务方便科研和学习
虽然做 Web 我是轻车熟路了但倒腾 Linux 服务器我绝对还是个新手虽然平时为了开发也没少倒腾过但基本上都是调一下 Apache 或 PHP 之类的事情所以下面写的东西只是个记录不敢班门弄斧方法也都是 Google 来的如果您有什么意见建议欢迎您提出来
本文只写一下搭建基本服务器的部分发行版我选择的是 Ubuntu虽然我知道 CentOS 或是 RHEL 可能性能会更好点但毕竟 Ubuntu 比较熟悉也比较简单Ubuntu 本身有 Server 版而且可以几乎无需干预的安装好一台 LAMP Server但 Linux 本身的乐趣就在于折腾而且对于服务器我更希望知道到底都有什么东西在跑所以我决定从搭建一个干净的基本系统开始经过一番 Google我找到了一个近乎完美的教程Minimal Ubuntu Server Install下面的安装过程也基本就是按着这个教程来的稍微改进满足了一下实际需要
言归正传开始进入安装首先用 Ubuntu Desktop Live CD 引导服务器开一个 Terminal 就可以开工了
第一步启动分区工具对硬盘分区这里我使用的也是 cfdisk (不用 GPart 的原因是因为这台服务器压根就没鼠标 _b)对 G 的硬盘进行了分区命令如下
sudo su
cfdisk /dev/sda
首先分出 MB 主分区用作 /boot然后分 GB 逻辑分区作为根分区GB 逻辑分区作为交换分区剩下的分一个分区作为 /home 使用分好后不要忘了写入分区表
完成分区之后开始对各个分区进行格式化为了方便我只使用了 ext 这一种格式
mkfsext /dev/sda
mkfsext /dev/sda
mkfsext /dev/sda
mkswap /dev/sda
完成分区后可以装基本系统了这里需要使用 debootstrap具体命令是
mkdir /min
mount /dev/sda /min
mkdir /min/boot
mount /dev/sda /min/boot
mkdir /min/home
mount /dev/sda /min/home
aptget install debootstrap
在执行 debootstrap 之前建议先进行一下源设置因为这一步需要下载大量软件因此选用一个最快的源还是很有必要的这里我使用的是 cn 的源
nano /usr/share/debootstrap/scripts/hardy
找到类似下面的段落(default_mirror)改为您需要的源
case $ARCH in amd|i|sparc)
default_mirror
然后开始安装最小系统
debootstrap hardy /min
完成后我们需要对这个系统进行一番设置使其可用首先我们可以先将一些设置信息直接复制到目标系统中
cp /etc/hosts /min/etc/
cp /etc/network/interfaces /min/etc/network/
cp /etc/bash_completion /min/etc/
cp /etc/bashbashrc /min/etc/
此外我们还需要为光驱进行一些设置
mkdir p /min/media/cdrom
ln s cdrom /min/media/cdrom
建立 fstab
nano /etc/fstab
fstab 文件的内容大致如下
proc /proc proc defaults
/dev/sda / ext relatime
/dev/sda /boot ext relatime
/dev/sda /home ext relatime
/dev/sda none swap sw
/dev/cdrom /media/cdrom udfiso usernoautoexecutf
做完这一步我的系统基本上就装好了现在我们就可以 chroot 进去进行进一步的配置
mount ?Cbind /dev /min/dev
mount t proc proc /min/proc
mount t sysfs sysfs /min/sys
chroot /min
设定时区
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
安装一个文本编辑器我个人比较喜欢 nano当然你也可以装 vim
aptget install nano
建立源列表还是填入最快的源
nano /etc/apt/sourceslist
内容如下使用的是 cn 的源(我在教育网能到 M/s 的速度)
deb se
deb multiverse
deb multiverse
更新源并升级现有软件
aptget update
aptget distupgrade
设置 root 用户密码并新建一个用户并使它有 sudo 权限
passwd
adduser liuyang
addgroup admin
adduser liuyang admin
echo %admin ALL=(ALL) ALL>>/etc/sudoers
安装 grub使目标系统可以引导
aptget install linuximageserver grub
mkdir /boot/grub
updategrub
updateinitramfs u
目标系统已经设置完毕现在推出 chroot完成最后的操作 ?C 将 grub 装到 /dev/sda 的 MBR 上
exit
grubinstall ?Crootdirectory=/min ?Cnofloppy ?Crecheck /dev/sda
重新启动系统退出 Live CD如果一切正常的话你应该可以用一个干净的 Ubuntu 引导起你的服务器了