OpenSolarisИмаше една статия в OVH Wiki , които обясняват как да се инсталира OpenSolaris на специален сървър, с помощта на Линукс и Xen. Тази статия е от особен интерес за тези, които имат специален сървър на хостинг компания, , но не разполагат с възможност за инсталиране на всичко друго, но Линукс дистрибуция.

За съжаление, конкретната статия привлече броя на спамерите Wiki и изчезна в морето на връзки към уебсайтове безскрупулни. Аз съм съживяването на тази статия тук, за тези заинтересовани.

Сценарий: Вие имате специален сървър (не само за гости Xen) с твърд диск и мрежова връзка, но няма реална CD / DVD карам и няма реална KVM. Имате Линукс дистрибуция и бихте желали да инсталирате OpenSolaris. Това е възможно, като следвате стъпките, описани в това ръководство.

Инсталацията е разделена на пет части:

  1. Инсталиране на Xen / Linux на един дял на сървъра.
  2. Създаване на втори дял на образа ISO, че ние ще се създаде. Създаване на трета деление, с тип Соларис. Тя ще бъде домакин на инсталация VM, на първо, и реалната окончателния монтаж, по-късно. Инсталиране на OpenSolaris DOMU (Xen гости машина).
  3. Създаване на потребителски OpenSolaris Live CD, чието зареждане скриптове може да намерите на ISO образ на дял HD, и го стоварвам върху дяла, който е създаден.
  4. Създаване на нов файл ZFS-система в корена си басейн DOMU да държи ядрото на изображението на ISO и микро-корен (ramdisk). Настройване на GRUB да ги използват.
  5. Рестартирайте и направете своя окончателен инсталация на дял Соларис!

Част 1. Инсталиране на Xen / Линукс

Създаване на база инсталация

Имате Линукс с Xen поддръжка (dom0, известен. домакин) инсталиран на вашия сървър. Подробните мерки за Правейки това зависи от вашия доставчик на хостинг услуги; Ето как можете да го направите на OVH:

  1. Отворете “Ръководител” уеб приложение, изберете желания от вас сървър, Кликнете върху “Услуги”.
  2. Кликнете върху “Възстановявам / Промяна на ОС”.
  3. Избор “Linux”, “База дистрибуции”, “Debian 5.0 (Лени)”, “64 бита”.
  4. Create a main ext3 partition of 2-4 GB. 2 GB трябва да бъде достатъчно; Вие можете да направите това по-голяма, ако искате да извърши допълнителни стъпки / персонализации, не само тези, описани тук.
  5. Ако трябва да, създаване на суап дял от всякакъв размер намерите за добре. Това ще бъде премахната в края на процедурата.

Персонализиране и добави Xen

distroconst.tar.gz съдържа файлове, необходими за да променят процеса на изграждане на промяна живо OpenSolaris CD, докато linuxroot.tar.gz съдържа файлове за поддръжка, използвани в Линукс.

Ако искате, вашето копие SSH ключ на отдалечен сървър да се даде възможност с парола по-малко работа:

REMIP=94.11.22.33
# Copy SSH key
scp .ssh/usual.pub root@$REMIP:.ssh/authorized_keys

После, използва SSH за да влезете в Линукс отдалечени сървъра, инсталирате Xen и преконфигурирате, ако е необходимо:

wget http://cr.opensolaris.org/~e.p/remote-install/distroconst.tar.gz
wget http://cr.opensolaris.org/~e.p/remote-install/linuxroot.tar.gz
tar xvfz linuxroot.tar.gz
apt-get update
mkdir /boot/grub
# We switch to Grub and remove named; we'll need the dns port for dnsmasq.
apt-get install lilo- bind9- grub xen-linux-system-2.6.26-2-xen-amd64 \
 wget libvirt-bin qemu psmisc less dnsmasq shorewall-perl bridge-utils \
 parted ethtool xauth

Изчакайте инсталацията да приключи, отговарянето на всякакви въпроси в процеса на, и да продължи:

# Configure the internal network for virtual machines.
cat >>/etc/network/interfaces <<EOF

auto virbr0
iface virbr0 inet static
    address 192.168.122.1
    netmask 255.255.255.0
    network 192.168.122.0
    broadcast 192.168.122.255
    pre-up brctl addbr virbr0
    pre-up ethtool -K virbr0 tx off
    post-down brctl delbr virbr0
EOF


# Configure shorewall so that virtual machines can talk to the Internet using NAT.
SHW=/etc/shorewall
echo startup=1 >> /etc/default/shorewall
echo IP_FORWARDING=On >> /etc/shorewall/shorewall.conf
cat > $SHW/zones <<EOF
fw firewall
net ipv4
vir ipv4
EOF


cat > $SHW/interfaces <<EOF
net eth0
vir virbr0
EOF


cat > $SHW/policy <<EOF
fw all ACCEPT
vir all ACCEPT
all fw ACCEPT
all all REJECT
EOF


cat > $SHW/masq <<EOF
eth0 virbr0
EOF


# Reconfigure dnsmasq
cat >>/etc/dnsmasq.conf <<EOF
interface=virbr0
dhcp-range=192.168.122.64,192.168.122.127,12h
EOF


# Is everything OK? Go ahead, then.
grub-install /dev/sda
reboot

Вие трябва да бъдете в състояние да пинг-сървъра и да влезе отново през SSH. Командата “uname-а” трябва да покаже, че вие работите на Xen-ified ядро.

Част 2. Добави дялове, инсталиране на OpenSolaris DOMU

SSH-Х във вашия сървър Linux. Remember to use -X to forward X11 connections; ще трябва, че за монтажника OpenSolaris.

Ако сте създали за суап дял по време на инсталацията, да го спрете:

swapoff /dev/sda2

Стартиране любимите си разделяне инструмент (cfdisk, За пример). Изтриване на суап дял, ако има такива.

Create a small sda2 partition that will contain the modified live image; 800MB е разумен размер. Му вид е без значение, и то може да остане Linux; само се уверете, че видът не е Соларис, тъй като не може да има само един Соларис дял във всеки твърд диск.

Allocate the remaining free space to sda3, прави голям дял Соларис.

Вие ще се окажете с нещо подобно на това:

sda1        Boot        Primary   Linux ext3       [/]              4194.90
sda2                    Logical   Linux                              797.86
sda3                    Primary   Solaris2                           230003.51

Уверете се, че използвате BF дял тип за Solaris не и остарелите 82 (ще предизвика грешка в инсталатора: http://defect.opensolaris.org/bz/show_bug.cgi?id=4872)

Изтегляне и стартиране на OpenSolaris за гости

Въведете следните команди:

# Download OpenSolaris
wget -o osol-0906-x86.iso http://dlc.sun.com/osol/opensolaris/2009/06/osol-0906-x86.iso

# Reconfigure Xen for libvirt-bin
echo '(xend-unix-server yes)' >> /etc/xen/xend-config.sxp
/etc/init.d/xend restart

# Start VM

virsh create linuxroot/cd-osol.xml
virsh console osol

Отговор на първоначалния въпроси (по подразбиране са добре) и да преминете към бърз вход.

Не забравяйте, че само на потребителя “jack” мога да вляза в Live CD, с паржак “jack”.

Давам възможност на SSH сървъра

svcadm enable ssh

Изчакайте за виртуалната машина, за да бъде назначен собствените си IP адрес чрез DHCP от dnsmasq. Разберете, че ако се е случило с “/sbin/ifconfig xnf0″ във вътрешността на ВМ, or quit the console by pressing Ctrl-] и погледнете / VAR / дневник / Syslog в приемащата машина Linux. Когато адрес е възложено успешно, Вие ще видите линия DHCPACK.

Уверете се, че сте най-бърз на машината Линукс и издава следните команди, коригиране при необходимост на IP адрес:

VMIP=192.168.122.84
ssh -X jack@$VMIP pfexec gui-install

Отговорете на въпросите и да започнете инсталацията. Когато го завършва, Не натискайте “Рестартирайте”. вместо, затворите инсталатора и издава следната команда в черупката бърз Linux:

ssh jack@$VMIP 'pfexec sh -c "set -x; \
 /usr/sbin/zpool import -f rpool || true; \
 /usr/sbin/zfs set mountpoint=/newroot rpool/ROOT/opensolaris; \
 /usr/sbin/zfs mount rpool/ROOT/opensolaris; \
 (cd /newroot/platform; \
 tar cf - \`find i86xpv -name unix\` \`find i86pc -name boot_archive\`); \
 /usr/sbin/zfs set mountpoint=/ rpool/ROOT/opensolaris; \
 /usr/sbin/zpool export rpool"'
\
 | tar xf -

Това ще копира ядрото и на архива обувка от наскоро въведената ВМ върху вашата система Linux, Xen, така че може да го обувка.

Готово чрез издаване на:

ssh jack@$VMIP "pfexec /sbin/init 6 &"

(като определението VM е създаден така, че, при рестартиране, Xen не рестартира домейн, а по-скоро тя разрушава). Проверете дали наистина VM е изключена: издаване

virsh list

следва да се показват само “Съд-0″, и не “osol”.

Част 3. Създаване на живо CD

Забележка: предположим, че искате да направите това във вашия ВМ, спестявайки Ви спънки за качване на почти един гигабайт. Ако вашата интернет връзка не са сравнително бързо нагоре връзка, Това е начин да отида. Виж по-долу за алтернатива.

Когато VM е изключен, обувка го от rpool на твърдия диск:

virsh create linuxroot/hd-osol.xml

Когато тя е обувка горе и се е ПР (виж по-горе как да го проверите), ние трябва да се каже OpenSolaris да се изгради нова файлова система, разопаковам distroconst.tar.gz там, и да започне изграждането на компактдиска.

# Remove old SSH public key for server
rm -f .ssh/known_hosts
VMUSER=ep

cat distroconst.tar.gz | ssh $VMUSER@$VMIP 'pfexec sh -c "\
 set -x; \
 export PKG_CACHEDIR=/var/pkg/download; \
 export PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/gnu/bin; \
 /usr/bin/pkg install SUNWdistro-const; \
 /usr/sbin/zfs create rpool/constructor || true; \
 /usr/sbin/zfs set mountpoint=/constructor rpool/constructor; \
 cd /constructor; \
 /usr/gnu/bin/tar xfz - ; \
 /usr/bin/distro_const build ./slim_cd_x86.xml"'

Какво има в distroconst.tar.gz?

Досието съдържа модифицирана версия на манифеста, която изгражда стандарт OpenSolaris живеят на CD. The modifications are the following:

  1. тя изпълнява add_driver_aliases.sh скрипт след инсталиране на пакети
  2. После, тя изпълнява разшири-Live-FS-root.sh скрипт

add_driver_aliases.sh е мястото, където искате да се ощипвам драйверите си така, че системите ботуши ОК. В този случай тя е четири неща, всичко за цел да подобри съвместимостта с Kimsufi хардуера OVH's XL платформа:

  1. заменя ‘НЕП’ шофьор в 111b с редакцията 116, извлечена от SXCE - необходими за да работи правилно на дънната платка на Kimsufi XL's;
  2. НЕП позволява на водача за MCP78S;
  3. дава възможност на AHCI драйвер за MCP78S;
  4. MSI забраните като решение за грешка в подкрепа MCP78S's AHCI.

разшири-Live-FS-root.sh, от друга страна:

  1. поставя listhd полезност в образа;
  2. лепенки на живо-FS-корен метод служба, така че тя изглежда в дялове HD за живи изображения.

Може би искате да правите различни неща; например, замени “жак”‘s password with a custom one, и т.н..

Копиране на компактдиск до крайната си дестинация

В края на процеса, ще имате изображение OpenSolaris.iso в / конструктор / медии във вътрешността на ВМ. Ако не искате да преминете през процес на изграждане и вече имате такава промяна на изображението (Това не е просто фондовата Live CD!), можете да го изтеглите там.

След това натиснете на своя дял:

ssh $VMUSER@$VMIP 'pfexec sh -c "set -x; \
/usr/bin/dd if=/constructor/media/OpenSolaris.iso \
of=/dev/rdsk/c7t0d0p2 bs=8192k"'

Част 4. Създаване на зареждане на ОС

Ние трябва да се извлече ядро и microroot от това Live CD и да ги копирате върху основата басейн ZFS.

ISADIR=/amd64
(cat <<EOF
default 0
timeout 5

title Live image boot
findroot (pool_rpool,2,a)
bootfs rpool/liveboot
kernel\$ /platform/i86pc/kernel${ISADIR}/unix -B livemode=text,livessh=enable
module\$ /boot${ISADIR}/x86.microroot

EOF

) | ssh $VMUSER@$VMIP 'ISADIR=amd64/ \
ISO=/dev/dsk/c7t0d0p2 \
MOUNTPOINT=/tmp/iso.$$ \
DISK=/dev/rdsk/c7t0d0s0 \
pfexec sh -c "set -x; \
mkdir -p \$MOUNTPOINT; \
/sbin/mount -F hsfs -o ro \$ISO \$MOUNTPOINT; \
/usr/sbin/zfs create rpool/liveboot || true; \
/usr/sbin/zfs set mountpoint=/liveboot rpool/liveboot; \
( cd \$MOUNTPOINT; \
tar cf - \`find . -name unix\` \`find . -name x86.microroot\` ) \
| ( cd /liveboot; tar xf - ); \
/bin/sync; \
/sbin/umount \$MOUNTPOINT; \
/bin/rmdir \$MOUNTPOINT; \
cat > /rpool/boot/grub/menu.lst; \
/sbin/installgrub -fm /boot/grub/stage1 /boot/grub/stage2 \$DISK "'

Това, което правите тук, на OpenSolaris е ВМ:

  1. подготвяме mountpoint както и монтиране на изображението ISO;
  2. ние създаваме нова файлова система, наречен “liveboot”, на основата басейн;
  3. ние екстракт от ядки и microroots към новата файлова система;
  4. ние демонтирането на ISO;
  5. ние презапишете конфигурация ровя с един-менюто, че ботуши това ядро и microroot;
  6. ще свършим installgrub и презапишете MBR.

И накрая, спиране на ВМ отново:

ssh $VMUSER@$VMIP 'pfexec /sbin/init 6 &'

Част 5. Рестартиране на Linux / Xen машина и инсталирате

Рестартирайте вашата Линукс машина. След малко трябва да бъде в състояние да пинг на сървъра, SSH-Х и в него като “жак”.

От там, мине през обичайните “pfexec GUI-инсталирате” рутинни. Просто се уверете, че не се докоснат до дела, на който те заряза на живо CD (защото инсталатора се нуждае от, и поради това може да се окаже полезен по-късно, ако нещо се afoul).

Подобни публикации:

  1. X сървър със звук вътре в OpenVZ / Proxmox контейнер
  2. NginX Компилиране на Debian / Ubuntu
  3. ръководство: Защитна стена и рутер с Proxmox – Разширяване на неговото използване
  4. ръководство: Защитна стена и рутер с Proxmox