“UbuntuHelp:Installation/OverSSH”的版本间的差异
来自Ubuntu中文
小 (New page: {{From|https://help.ubuntu.com/community/Installation/OverSSH}} {{Languages|php5}} /!\ This is a work in progress, it is not mature yet and it may break your system! === Caveat === As you...) |
小 |
||
第14行: | 第14行: | ||
<pre><nowiki> | <pre><nowiki> | ||
# fdisk /dev/hda | # fdisk /dev/hda | ||
− | </nowiki></ | + | </nowiki></pre> |
Remember to set the root partition bootable! | Remember to set the root partition bootable! | ||
第22行: | 第22行: | ||
/dev/hda1 (83 Linux) - for /, | /dev/hda1 (83 Linux) - for /, | ||
/dev/hda2 (82 Linux swap) - as swap | /dev/hda2 (82 Linux swap) - as swap | ||
− | </nowiki></ | + | </nowiki></pre> |
==== Creating File Systems ==== | ==== Creating File Systems ==== | ||
第28行: | 第28行: | ||
<pre><nowiki> | <pre><nowiki> | ||
# mke2fs -j /dev/hda1 | # mke2fs -j /dev/hda1 | ||
− | </nowiki></ | + | </nowiki></pre> |
And the same for our swap partition. | And the same for our swap partition. | ||
第35行: | 第35行: | ||
# sync; sync; sync | # sync; sync; sync | ||
# swapon /dev/hda2 | # swapon /dev/hda2 | ||
− | </nowiki></ | + | </nowiki></pre> |
第45行: | 第45行: | ||
# mkdir /mnt/ubuntu | # mkdir /mnt/ubuntu | ||
# mount -t ext3 /dev/hda1 /mnt/ubuntu | # mount -t ext3 /dev/hda1 /mnt/ubuntu | ||
− | </nowiki></ | + | </nowiki></pre> |
==== Getting Debootstrap ==== | ==== Getting Debootstrap ==== | ||
第56行: | 第56行: | ||
# wget http://archive.ubuntu.com/ubuntu/pool/main/d/debootstrap/debootstrap_0.3.3.0ubuntu2_all.deb | # wget http://archive.ubuntu.com/ubuntu/pool/main/d/debootstrap/debootstrap_0.3.3.0ubuntu2_all.deb | ||
# dpkg -i debootstrap_0.3.3.0ubuntu2_all.deb | # dpkg -i debootstrap_0.3.3.0ubuntu2_all.deb | ||
− | </nowiki></ | + | </nowiki></pre> |
If your current system is rpm based, use alien to install it or find a rpm on the web (http://azhrarn.underhanded.org/debootstrap-0.2.23-1.i386.rpm). | If your current system is rpm based, use alien to install it or find a rpm on the web (http://azhrarn.underhanded.org/debootstrap-0.2.23-1.i386.rpm). | ||
第67行: | 第67行: | ||
# cd / | # cd / | ||
# tar zxvf work/data.tar.gz | # tar zxvf work/data.tar.gz | ||
− | </nowiki></ | + | </nowiki></pre> |
第75行: | 第75行: | ||
<pre><nowiki> | <pre><nowiki> | ||
# /usr/sbin/debootstrap --arch i386 dapper /mnt/ubuntu http://archive.ubuntu.com/ubuntu | # /usr/sbin/debootstrap --arch i386 dapper /mnt/ubuntu http://archive.ubuntu.com/ubuntu | ||
− | </nowiki></ | + | </nowiki></pre> |
(arch may be different for you, e.g. md64, hppa, ia64, powerpc, or sparc) | (arch may be different for you, e.g. md64, hppa, ia64, powerpc, or sparc) | ||
第84行: | 第84行: | ||
<pre><nowiki> | <pre><nowiki> | ||
# echo HOSTNAME > /mnt/ubuntu/etc/hostname | # echo HOSTNAME > /mnt/ubuntu/etc/hostname | ||
− | </nowiki></ | + | </nowiki></pre> |
==== fstab ==== | ==== fstab ==== | ||
<pre><nowiki> | <pre><nowiki> | ||
# vim /mnt/ubuntu/etc/fstab | # vim /mnt/ubuntu/etc/fstab | ||
− | </nowiki></ | + | </nowiki></pre> |
Put the following in fstab: | Put the following in fstab: | ||
第99行: | 第99行: | ||
/dev/hda1 / ext3 defaults,errors=remount-ro 0 1 | /dev/hda1 / ext3 defaults,errors=remount-ro 0 1 | ||
/dev/hda2 none swap sw 0 0 | /dev/hda2 none swap sw 0 0 | ||
− | </nowiki></ | + | </nowiki></pre> |
==== Networking ==== | ==== Networking ==== | ||
第118行: | 第118行: | ||
gateway 10.0.0.1 | gateway 10.0.0.1 | ||
netmask 255.255.255.0 | netmask 255.255.255.0 | ||
− | </nowiki></ | + | </nowiki></pre> |
Make sure to use your hostname and domain. | Make sure to use your hostname and domain. | ||
第124行: | 第124行: | ||
127.0.0.1 localhost | 127.0.0.1 localhost | ||
127.0.0.1 hostname.domain.tld hostname | 127.0.0.1 hostname.domain.tld hostname | ||
− | </nowiki></ | + | </nowiki></pre> |
You need a valid resolv.conf with at least one valid nameserver, e.g.: | You need a valid resolv.conf with at least one valid nameserver, e.g.: | ||
第130行: | 第130行: | ||
<pre><nowiki> | <pre><nowiki> | ||
nameserver 10.0.0.1 | nameserver 10.0.0.1 | ||
− | </nowiki></ | + | </nowiki></pre> |
第139行: | 第139行: | ||
mount -o bind /dev /mnt/ubuntu/dev | mount -o bind /dev /mnt/ubuntu/dev | ||
LANG= chroot /mnt/ubuntu /bin/bash | LANG= chroot /mnt/ubuntu /bin/bash | ||
− | </nowiki></ | + | </nowiki></pre> |
==== Change the root password ==== | ==== Change the root password ==== | ||
第145行: | 第145行: | ||
<pre><nowiki> | <pre><nowiki> | ||
# passwd | # passwd | ||
− | </nowiki></ | + | </nowiki></pre> |
==== Create a user and switch shadow password on ==== | ==== Create a user and switch shadow password on ==== | ||
<pre><nowiki> | <pre><nowiki> | ||
# dpkg-reconfigure --default-priority passwd | # dpkg-reconfigure --default-priority passwd | ||
− | </nowiki></ | + | </nowiki></pre> |
=== Installing Packages === | === Installing Packages === | ||
第156行: | 第156行: | ||
<pre><nowiki> | <pre><nowiki> | ||
# apt-get update | # apt-get update | ||
− | </nowiki></ | + | </nowiki></pre> |
==== Installing OpenSSH Server ==== | ==== Installing OpenSSH Server ==== | ||
<pre><nowiki> | <pre><nowiki> | ||
# apt-get install openssh-server | # apt-get install openssh-server | ||
− | </nowiki></ | + | </nowiki></pre> |
==== Install a Kernel ==== | ==== Install a Kernel ==== | ||
第167行: | 第167行: | ||
<pre><nowiki> | <pre><nowiki> | ||
# apt-get install linux-image-686 | # apt-get install linux-image-686 | ||
− | </nowiki></ | + | </nowiki></pre> |
第178行: | 第178行: | ||
vim /boot/grub/grub.conf | vim /boot/grub/grub.conf | ||
− | </nowiki></ | + | </nowiki></pre> |
<pre><nowiki> | <pre><nowiki> | ||
第189行: | 第189行: | ||
kernel /vmlinuz root=/dev/hda1 | kernel /vmlinuz root=/dev/hda1 | ||
initrd /initrd.img | initrd /initrd.img | ||
− | </nowiki></ | + | </nowiki></pre> |
<pre><nowiki> | <pre><nowiki> | ||
ln -s /boot/grub/grub.conf /boot/grub/menu.lst | ln -s /boot/grub/grub.conf /boot/grub/menu.lst | ||
− | </nowiki></ | + | </nowiki></pre> |
<pre><nowiki> | <pre><nowiki> | ||
# grub | # grub | ||
− | </nowiki></ | + | </nowiki></pre> |
<pre><nowiki> | <pre><nowiki> | ||
第204行: | 第204行: | ||
grub> setup (hd0) | grub> setup (hd0) | ||
grub> quit | grub> quit | ||
− | </nowiki></ | + | </nowiki></pre> |
第213行: | 第213行: | ||
# exit | # exit | ||
# cd / | # cd / | ||
− | </nowiki></ | + | </nowiki></pre> |
<pre><nowiki> | <pre><nowiki> | ||
第220行: | 第220行: | ||
# umount /mnt/ubuntu | # umount /mnt/ubuntu | ||
# reboot | # reboot | ||
− | </nowiki></ | + | </nowiki></pre> |
第231行: | 第231行: | ||
# echo 'LANG="en_US.UTF-8"' >> /etc/environment | # echo 'LANG="en_US.UTF-8"' >> /etc/environment | ||
# echo 'LANGUAGE="en_US:en"' >> /etc/environment | # echo 'LANGUAGE="en_US:en"' >> /etc/environment | ||
− | </nowiki></ | + | </nowiki></pre> |
==== Istall some more packages ==== | ==== Istall some more packages ==== | ||
<pre><nowiki> | <pre><nowiki> | ||
apt-get install ubuntu-standard | apt-get install ubuntu-standard | ||
− | </nowiki></ | + | </nowiki></pre> |
=== References === | === References === |
2007年5月13日 (日) 12:24的版本
/!\ This is a work in progress, it is not mature yet and it may break your system!
目录
Caveat
As you may already have guessed following this instruction may break your system and you are on your own to fix it again.
Scenario
This instruction describes how to install Ubuntu on a dedicated server over ssh. I assume that your provider provides you with a rescue system from which you can boot and prepare your system. An Online replacement is possible, but it is some more work and a lot more risky if things go bad (the basic idea is to temporarily disable your swap and install a transitional system on it).
Preparing the Hard Disk
Partitioning
Use fdisk
to partition your hard disk.
# fdisk /dev/hda
Remember to set the root partition bootable!
For the rest of this instruction we assume the following partition layout.
/dev/hda1 (83 Linux) - for /, /dev/hda2 (82 Linux swap) - as swap
Creating File Systems
Below is how we get our / populated with ext3.
# mke2fs -j /dev/hda1
And the same for our swap partition.
# mkswap /dev/hda2 # sync; sync; sync # swapon /dev/hda2
The Base System
Mounting Root
# mkdir /mnt/ubuntu # mount -t ext3 /dev/hda1 /mnt/ubuntu
Getting Debootstrap
Debootstrap is a collection of scripts that we will use in the next step to set up a base system. We need an appropriate version of debootstrap
from http://archive.ubuntu.com/ubuntu/pool/main/d/debootstrap/ to make this work.
Make sure that binutils
is installed on your system.
On an apt based system we can use dpkg
to install it.
# wget http://archive.ubuntu.com/ubuntu/pool/main/d/debootstrap/debootstrap_0.3.3.0ubuntu2_all.deb # dpkg -i debootstrap_0.3.3.0ubuntu2_all.deb
If your current system is rpm based, use alien to install it or find a rpm on the web (http://azhrarn.underhanded.org/debootstrap-0.2.23-1.i386.rpm).
If your system is neither, this might work.
# mkdir /work; cd /work # wget http://archive.ubuntu.com/ubuntu/pool/main/d/debootstrap/debootstrap_0.3.3.0ubuntu2_all.deb # ar -xf debootstrap-udeb_0.3.3.0ubuntu7_i386.udeb # cd / # tar zxvf work/data.tar.gz
Installing the Base System
# /usr/sbin/debootstrap --arch i386 dapper /mnt/ubuntu http://archive.ubuntu.com/ubuntu
(arch may be different for you, e.g. md64, hppa, ia64, powerpc, or sparc)
Basic Configuration
Set the Hostname
Change HOSTNAME to whatever suits your environment.
# echo HOSTNAME > /mnt/ubuntu/etc/hostname
fstab
# vim /mnt/ubuntu/etc/fstab
Put the following in fstab:
# /etc/fstab: static file system information. # # <file system> <mount point> <type> <options> <dump> <pass> proc /proc proc defaults 0 0 /dev/hda1 / ext3 defaults,errors=remount-ro 0 1 /dev/hda2 none swap sw 0 0
Networking
Make sure to use your network details instead.
#Network Config: # The loopback network interface auto lo iface lo inet loopback # The primary network interface auto eth0 iface eth0 inet static address 10.0.0.10 network 10.0.0.0 braodcast 10.0.0.255 gateway 10.0.0.1 netmask 255.255.255.0
Make sure to use your hostname and domain.
127.0.0.1 localhost 127.0.0.1 hostname.domain.tld hostname
You need a valid resolv.conf with at least one valid nameserver, e.g.:
nameserver 10.0.0.1
Enter the new environment
Before we chroot into the new environment we need to mount /proc and /dev
mount -t proc none /mnt/ubuntu/proc mount -o bind /dev /mnt/ubuntu/dev LANG= chroot /mnt/ubuntu /bin/bash
Change the root password
It is just bad if you forget this, so just ....
# passwd
Create a user and switch shadow password on
# dpkg-reconfigure --default-priority passwd
Installing Packages
# apt-get update
Installing OpenSSH Server
# apt-get install openssh-server
Install a Kernel
Choose the right kernel for your architecture. I go with:
# apt-get install linux-image-686
Installing GRUB
The boot loader is most important, so do:
apt-get install grub mkdir /boot/grub cp /lib/grub/i386-pc/* /boot/grub vim /boot/grub/grub.conf
# /boot/grub/grub.conf default 0 timeout 3 title=Ubuntu root (hd0,0) kernel /vmlinuz root=/dev/hda1 initrd /initrd.img
ln -s /boot/grub/grub.conf /boot/grub/menu.lst
# grub
grub> root (hd0,0) grub> setup (hd0) grub> quit
Reboot
# exit # cd /
# umount /mnt/ubuntu/proc # umount /mnt/ubuntu/dev # umount /mnt/ubuntu # reboot
Finishing
After the reboot ssh in again.
Generate locales
# locale-gen en_US.UTF-8 # echo 'LANG="en_US.UTF-8"' >> /etc/environment # echo 'LANGUAGE="en_US:en"' >> /etc/environment
Istall some more packages
apt-get install ubuntu-standard
References
- The Gentoo Handbook contains a very good (Gentoo specific) instruction on chrooted installation procedures.
- An other instruction from the Ubuntu Installation Guide is somewhat outdated and has shortcomings related to the bootloader installation.
- HOWTO - Install Debian Onto a Remote Linux System - A Debian specific HOWTO.