понедельник, 27 июля 2009 г.

Converting a VMWare image to Xen HVM (vmdk to xen)

Данный метод применим для "холодного" переноса виртуальной машины из vmware в xen.

1) Подготавливаем для преобразования vdmk-образ:
# vmware-vdiskmanager -r vm_image.vmdk -t 0 vm_image-flattened.vmdk

2) Преобразуем в "понятный" для xen'a формат:

# qemu-img convert vm
_image-flattened.vmdk
xen_image.img

Теперь образ готов для использования в DomU (замечу, что пока только в режиме полной виртуализации).

воскресенье, 12 июля 2009 г.

Инсталляция Debian lenny из-под OpenSUSE 11.1

Подготовка debootstrap:

# mkdir -p /home/xen

# cd /home/xen
# wget http://ftp.de.debian.org/debian/pool/main/d/debootstrap/debootstrap-udeb_1.0.13_all.udeb
# ar x debootstrap-udeb_1.0.13_all.udeb
# mkdir debootstrap
# cd debootstrap
# tar xvzf ../data.tar.gz
# cp -rf ./* /

Создаем образы дисков (разделы) для установки lenny:
# dd if=/dev/zero of=/home/xen/images/debian-gw2.img bs=1M count=10000
# dd if=/dev/zero of=/home/xen/images/debian-gw2-swap.img bs=1M count=512
# mkswap /home/xen/images/debian-gw2-swap.img
Setting up swapspace version 1, size = 524284 KiB
no label, UUID=21d835eb-b323-4b61-93d9-f5c5c5208b73
# mkfs.ext3 /home/xen/images/debian-gw2.img
mke2fs 1.41.1 (01-Sep-2008)
/home/xen/images/debian-gw2.img is not a block special device.
Proceed anyway? (y,n) y
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
640848 inodes, 2560000 blocks
128000 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=2621440000
79 block groups
32768 blocks per group, 32768 fragments per group
8112 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632

Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 36 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.

# mount -o loop /home/xen/images/debian-gw2.img /mnt

Теперь:
# debootstrap sid /mnt http://ftp.us.debian.org/debian/
I: Retrieving Release

Понятно, забыли указать архитектуру, указываем:
# debootstrap --arch=i386 lenny /mnt http://ftp.us.debian.org/debian/
I: Retrieving Release
I: Retrieving Packages
I: Base system installed successfully.

Далее надо будет установить ядро поддерживающее работу с xen.
Для этого надо в каталог /mnt/root скопировать закинем linux-image-2.6.26-2-xen-686_2.6.26-17_i386.deb и linux-modules-2.6.26-2-xen-686_2.6.26-17_i386.deb (забегая в перед скажу, что нужно будет еще и зависимости к пакетам установить: initramfs-tools_0.92o_all.deb, libvolume-id0_0.125-7+lenny1_i386.deb, locales-all_2.7-18_i386.deb, klibc-utils_1.5.12-2_i386.deb, udev_0.125-7+lenny1_i386.deb, libklibc_1.5.12-2_i386.deb)
# chroot /mnt /bin/bash
# dpkg -i linux-image-2.6.26-2-xen-686_2.6.26-17_i386.deb
и т.д.

Редактируем fstab:
# vi /etc/fstab
/dev/hda1 / ext3 defaults,errors=remount-ro 0 1
Запускаем программу base-config для установки базовой системы Debian.
# base-config new

dpkg -i libc6-xen

<статья в процессе написания!>

пятница, 10 июля 2009 г.

XDMCP доступ из MS Windows

Пару раз задавали вопрос о настройке сабжа. Есть хорошая статья для начала.

Автор статьи: Kotjara
Дата: 09.09.2004

НАСТРОЙКА СЕРВЕРА XDMCP ДЛЯ WINDOWS-КЛИЕНТОВ

В этой статье описана настройка сервера удаленного доступа к графической оболочке X Window компьютеров под управлением Linux Red Hat 7.2, 8.0, Linux Fedora и Linux XP. В качестве удаленных компьютеров выступают машины под управлением Windows.
В качестве эмулятора Х Window можно взять программу Xmanager по адресу www.netsarang.com/products/xmanager.html

Настройка GDM

1. В файле /etc/X11/gdm/gdm.conf в разделе [xdmcp] замените Enable=false на Enable=true. Этим Вы снимите запрет на удаленное подключение к X серверу.
Для ленивых: в режиме Х Window жмете на кнопку в левом нижнем углу интерфейса (например, красная шляпа в Red Hat или разноцветный шар в Linux XP) > Системные параметры > Экран входа в систему. На закладке XDMCP ставите галку в окошке «Включить протокол XDMCP» (“Enable XDMCP”).
2. Для того, чтобы кириллица корректно отображалась на Windows-клиентах, закомментируйте в файле /etc/X11/fs/config строку no-listen=tcp, чтобы дать доступ удаленным машинам к серверу шрифтов.
3. Перезагрузите сервер шрифтов:
/etc/rc.d/init.d/xfs restart

В случае, если gdm не стоит по умолчанию (как в Red Hat 9.0), может использоваться сервер XDM (самый первый и простой из серверов XDMCP), либо сервер KDM. Настройка XDM и KDM описаны в литературе, но мною не тестировались.

Настройка XDM

В файле /etc/X11/xdm/xdm-config закомментируйте строку
DisplayManager.requestPort: 0
Тем самым Вы разрешите XDM серверу принимать запросы на 177 порт. Кроме этого, можете ограничить доступ к серверу, прописав нужные узлы в файле /etc/X11/xdm/Xaccess.

Настройка KDM

В файле /etc/kde/kdm/kdmrc в секции [Xdmcp] пропишите
Enable=true.
Можете ограничить доступ к серверу, прописав нужные узлы в файле /etc/kde/kdm/Xaccess.

Настройка клиента

1. Инсталлируйте Xmanager.
2. Запустите Xconfig.
3. На вкладке Xwindow в окне Window Size выставите размеры эмулированного окна (можно выставить и полноэкранный режим).
4. На вкладке XDM выберите XDM Query и в окне Host пропишите имя или IP-адрес Linux-машины.
5. На вкладке Font нажмите кнопку Add Font Server и в появившемся окне пропишите имя Linux-машины.
6. Нажмите OK и выйдите из Xconfig.
7. Запустите Xmanager.

Возможные проблемы

1. В RedHat 8.0 я столкнулся с тем, что при использовании KDE возможен запуск под одним и тем же логином лишь одного X Window (на клиенте или на сервере). Активируется лишь тот Window Manager, который запускается последним. При входах под разными логинами такого не наблюдается. Эта функция появилась в версии 8.0, по крайней мере, в 7.2 ее не наблюдалось. Нет этого глюка и в Linux XP. Если Вам удастся справиться с этой проблемой, напишите мне.
2. Если будут проблемы с брандмауэром, пропишите в /etc/sysconfig/iptables
-A INPUT -p tcp -m tcp --dport 177 -j ACCEPT
-A OUTPUT -p tcp -m tcp --sport 177 -j ACCEPT
-A RH-Lokkit-0-50-INPUT -p tcp -m tcp --dport 7100 --tcp-flags SYN,RST,ACK SYN -j REJECT --reject-with icmp-port-unreachable

Рекомендуемая литература

1. XManager FAQ (http://www.netsarang.com/products/xmg_faq.html?PHPSESSID=0d32cbfee4ce8890a86fe29ffc8a4426#faq02)
2. Р.В.Смит Сетевые средства Linux, 2003