...
Шаг1. Настройка параметров VM
Для запуска тестов нужна виртуальная машина со следующими параметрами:
...
В репозитории находятся несколько версий, выбирайте ту, которая вам нужна для тестирования. Мы для примера выбираем последнюю версию.
...
Не забудьте поставить галочку Connected At Power On, чтобы при включении питания ISO-файл подключался автоматически.
...
Настройка сделана, можем запускать машину.
Шаг 2. Запуск VM
1. Для запуска машины выбираем в меню Power | Power On
...
3. Дальше на вкладке Boot Managerпередвигаем (используя +/- для передвижения вверх/вниз)находим EFI Vmware Virtual IDE CDROM Drive и нажимаем ENTER.
...
Шаг 3. Установка DilOS
После происходит загрузка VM с эмулируемого CD-ROM, т.е из выбранного ISO-файла. В меню illumos выбираем пункт Boot Multi User и нажимаем Enter.
...
Дальше происходит установка системы, на экране будут выводиться логи установки. По окончании установки нажимаем Enter для перезагрузки.
...
Шаг 4. Загрузка установленной системы.
...
После загрузки на виртуальную машину можно зайти не только через Web Console, но и удаленно по протоколу SSH. Для этого можно в терминале зайти по ssh с пользователем, которого Вы создали при установке. У нас это og.
Expand | |||||
---|---|---|---|---|---|
| |||||
После загрузки на виртуальную машину можно зайти не только через Web Console, но и удаленно по протоколу SSH. Для этого можно в терминале зайти по ssh с пользователем, которого Вы создали при установке. У нас это og. Возможно, Вы не создавали никаких ssh ключей, или они изменялись. Тогда у Вас появится ошибка, типа: Ssh порекомендует, что нужно сделать для исправления ошибки. В нашем случае это
В Вашем случае будет какая-то другая команда, можете просто ее скопировать и выполнить с терминала. Потом снова попытайтесь зайти через ssh. |
Шаг 5. Настройка apt, создание резервных BE и установка Open VM Tools
Дальнейшие действия требуют административных прав. Залогиньтесь под root:
...
Если все установилось и запустилось корректно, в vSphere для Вашей машины Вы должны увидеть ее IP адреса.
Info |
---|
Note :До выхода новой оттестированнойстабильной версии Вы можете использовать этот BE в качестве базового, т.е. все шаги, которые Вы выполнили от начала инструкции до этого места, можно будет пропустить. Для этого аналогично dilos_ISO_orig выполните команду:
А когда Вам понадобится загрузиться с этого BE, достаточно будет выполнить команды:
|
Expand | |||||
---|---|---|---|---|---|
| |||||
Для этого можно выполнить команду
|
Шаг 6. Подготовка машины для запуска тестов
Теперь подготавливаем машину для запуска тестов (все команды также должны запускаться из под root). Для входа в режим root-а можно воспользоваться командой:
...
Code Block | ||
---|---|---|
| ||
deb http://10.20.50.188/dilos dgdbg-unstable main contrib non-free deb http://10.20.50.188/dilos dilos2du2-unstable main contrib non-free |
или:
Code Block | ||
---|---|---|
| ||
cat > /etc/apt/sources.list <<EOT deb http://10.20.50.188/dilos dgdbg-unstable main contrib non-free deb http://10.20.50.188/dilos dilos2du2-unstable main contrib non-free EOT |
...
После перезагрузки снова логинимся под root.
Note |
---|
Если тестовая версия не загружается по каким-то причинам, её файлы можно посмотреть, как это описано здесь. |
Info |
---|
Note : В этом месте можно также при желании установить пакеты, нужные для выполнения конкретных групп тестов. Какие пакеты нужны, указывается в инструкции к конкретному виду тестов (LIBC, NET, OS и т.д.). Но это можно сделать и позднее. |
2. А здесь Вы можете запустить готовый скрипт или выполнить следующие шаги. Cоздаем юзера ztestТут Вы можете проверить, что установка прошла без проблем, если введёте следующую команду:
Code Block | ||
---|---|---|
| ||
root@dilos:~# useradd -m -d /var/ztest -g staff -s /bin/bash ztest
root@dilos:~# passwd ztest
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
root@dilos:~# echo "ztest ALL=(ALL:ALL) NOPASSWD: ALL" >> /etc/sudoers.d/ztest |
...
grep -e 'WARNING:' -e 'warning:' -e 'W:' -e 'error:' -e 'E:' -e 'cannot' /var/tmp/os-upgrade.log | sort -u |
2. А здесь Вы можете запустить готовый скрипт или выполнить следующие шаги. Cоздаем юзера ztest:
Code Block | ||
---|---|---|
| ||
root@dilos:~# useradd -m -d /var/ztest -g staff admin root@dilos:~#-s /bin/bash ztest root@dilos:~# passwd adminztest Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully root@dilos:~# echo "adminztest ALL=(ALL:ALL) NOPASSWD: ALL" >> /etc/sudoers.d/adminztest |
Expand | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
при тестировании DEBUG версии, устанавливаем сертификаты:
и перезагружаемся:
После перезагрузки опять логинимся под root. |
Проверяем, что admin
создался:
Code Block | ||
---|---|---|
| ||
root@dilos:~# ls /export/home admin og |
3. Настраиваем NAT по инструкции Как настроить сеть на Виртуальной Машине для глобальной зоны с коммутатором etherstub до создания зоны, потому что для тестов нужна зона dhcp.
Шаг 7. Создание тестовых зон
Шаги 1-3 Вы можете заменить запуском готового скрипта или выполнить их с проверками, как они описаны ниже.
...
Code Block | ||
---|---|---|
| ||
root@dilos:~# cat > dhcp.cmd <<EOT create -b set zonepath=/zones/dhcp set brand=dpkg set autoboot=true set ip-type=exclusive add fs set dir="/export/home/adminbuilds" set special="/export/home/adminbuilds" set type="lofs" end add fsnet set dirphysical="/export/buildsiz1" set specialglobal-nic="/export/builds" set type="lofs" end add net set physical="iz1" set global-nic="vsw0" add property (name=ip,value="vsw0" add property (name=ip,value="192.168.0.1") add property (name=netmask,value="255.255.255.0") add property (name=gateway,value="192.168.0.254") add property (name=primary,value="true") end add attr set name="resolvers" set type="string" set value="8.8.8.8" end verify commit EOT root@dilos:~# zonecfg -z dhcp -f dhcp.cmd root@dilos:~# zonecfg -z dhcp info zonename: dhcp zonepath: /zones/dhcp brand: dpkg autoboot: true bootargs: pool: limitpriv: scheduling-class: ip-type: exclusive hostid: fs-allowed: uuid: 46b79185-7320-4ab6-b700-15058bd49c02 fs: dir: /export/home/admin special: /export/home/admin raw not specified type: lofs options: [] add attr set name="resolvers" set type="string" set value="8.8.8.8" end verify commit EOT root@dilos:~# zonecfg -z dhcp -f dhcp.cmd root@dilos:~# zonecfg -z dhcp info zonename: dhcp zonepath: /zones/dhcp brand: dpkg autoboot: true bootargs: pool: limitpriv: scheduling-class: ip-type: exclusive hostid: fs-allowed: uuid: 46b79185-7320-4ab6-b700-15058bd49c02 fs: dir: /export/builds special: /export/builds raw not specified type: lofs options: [] net: address not specified allowed-address not specified defrouter not specified global-nic: vsw0 mac-addr not specified physical: iz1 vlan-id not specified property: (name=ip,value="192.168.0.1") property: (name=netmask,value="255.255.255.0") property: (name=gateway,value="192.168.0.254") property: (name=primary,value="true") attr: name: resolvers type: string value: 8.8.8.8 root@dilos:~# zoneadm -z dhcp install 2>&1 | /usr/bin/tee -a /var/tmp/dhcp-bts.log root@dilos:~# zoneadm -z dhcp boot zoneadm -z dhcp boot 2>&1 | /usr/bin/tee -a /var/tmp/dhcp-bts.log root@dilos:~# zoneadm list -civ ID NAME STATUS PATH BRAND IP 0 global running / dpkg shared 1 dhcp running /zones/dhcp dpkg excl |
Можно проверить, что установка зоны прошла успешно при помощи команды:
Code Block | ||
---|---|---|
| ||
grep -e 'WARNING:' -e 'warning:' -e 'W:' -e 'error:' -e 'E:' -e dpkg excl'cannot' /var/tmp/dhcp-bts.log | sort -u |
3. Заходим в зону, проверяем адреса и устанавливаем и запускаем сервер dhcp:
Code Block | ||
---|---|---|
| ||
root@dilos:~# zlogin dhcp root@dhcp:~# ifconfig lo0: flags=2001000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL> mtu 8232 index 1 inet 127.0.0.1 netmask ff000000 iz1: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 9000 index 2 inet 192.168.0.1 netmask ffffff00 broadcast 192.168.0.255 ether 2:8:20:92:59:94 lo0: flags=2002000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv6,VIRTUAL> mtu 8252 index 1 inet6 ::1/128 root@dhcp:~# apt install isc-dhcp-server -y 2>&1 | /usr/bin/tee -a /var/tmp/dhcp-bts.log root@dhcp:~# mv /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.conf.bckp root@dhcp:~# cat > /etc/dhcp/dhcpd.conf <<EOT # A slightly different configuration for an internal subnet. subnet 192.168.0.0 netmask 255.255.255.0 { range 192.168.0.100 192.168.0.200; option subnet-mask 255.255.255.0; option domain-name-servers 8.8.8.8; # option domain-name "internal.example.org"; option routers 192.168.0.254; option broadcast-address 192.168.0.255; default-lease-time 600; max-lease-time 7200; } EOT root@dhcp:~# ifconfig lo0: flags=2001000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL> mtu 8232 index 1 inet 127.0.0.1 netmask ff000000 iz1: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 9000 index 2 inet 192.168.0.1 netmask ffffff00 broadcast 192.168.0.255 ether 2:8:20:92:59:94 lo0: flags=2002000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv6,VIRTUAL> mtu 8252 index 1 inet6 ::1/128 root@dhcp:~# cat > /etc/default/isc-dhcp-server <<EOT # Defaults for isc-dhcp-server (sourced by /etc/init.d/isc-dhcp-server) # Path to dhcpd's config file (default: /etc/dhcp/dhcpd.conf). #DHCPDv4_CONF=/etc/dhcp/dhcpd.conf #DHCPDv6_CONF=/etc/dhcp/dhcpd6.conf # Path to dhcpd's PID file (default: /var/run/dhcpd.pid). #DHCPDv4_PID=/var/run/dhcpd.pid #DHCPDv6_PID=/var/run/dhcpd6.pid # Additional options to start dhcpd with. # Don't use options -cf or -pf here; use DHCPD_CONF/ DHCPD_PID instead #OPTIONS="" # On what interfaces should the DHCP server (dhcpd) serve DHCP requests? # Separate multiple interfaces with spaces, e.g. "eth0 eth1". INTERFACESv4="iz1" INTERFACESv6="" EOT root@dhcp:~# svcadm enable isc-dhcp-server 2>&1 | /usr/bin/tee -a /var/tmp/dhcp-bts.log root@dhcp:~# svcs -xv root@dhcp:~# svcs isc-dhcp-server STATE STIME FMRI online 10:46:50 svc:/network/isc-dhcp-server:default root@dhcp:~# dhcp-lease-list To get manufacturer names please download http://standards.ieee.org/regauth/oui/oui.txt to /usr/local/etc/oui.txt Reading leases from /var/lib/dhcp/dhcpd.leases MAC IP hostname valid until manufacturer =============================================================================================== root@dhcp:~# exit logout |
...