oldbay писал(а):И потом выложу образ виртуального диска vdi в public на dropbox - откуда его можно будет скачать.
Сделал как обещал:
Выкладываю готовый образ системы в 2-х вариантах:архив vdi диска системы из virtualbox:
http://content.wuala.com/contents/oldbay/pub/dnc-st-vdi.7zустановка стандартная - разархивировать и просто скормить образ диска dnc_kassa.vdi виртуальной машине.
bzip архив файловой системы:
http://content.wuala.com/contents/oldbay/pub/dnc-st-0.1.tar.bz2Образ применим для установки на жесткий диск и в качестве бездисковой станции для загрузки по сети.
установка на жесткий диск(можно USB - но не твердотел):
на машине для установки запускается LiveCD(все что само может грузится) произвольного линукса(лучше конечно посвежее..я использую arch)
1) Создаются разделы и форматируется жесткий диск для установки, если памяти достаточно от 256(правда тут не уверен,так как на станции пускается postgres)-512 мб и более, то swap раздел можно не создавать. Создаются файловые системы - мы делали один раздел основной для для / и форматировали в ext3
Для операции применяются либо графические средства - скажем gparteg или qtpart. - либо консольные: fdisk или cfdisk - для разметки и mkfs.ext3 для создания файловой системы.
2) Созданный раздел с файловой системой монтируется к LiveCD (предположим что раздел /dev/sda1) и распаковываем ФС из архива.
создаем точку монтирования будущей ФС
- Код: Выделить всё
#mkdir /mnt/sys
монтируем подготовленный раздел жесткого диска к точке монтирования
- Код: Выделить всё
#mount /dev/sda1 /mnt/sys
копируем скаченный архив файловой системы в каталог /mnt/sys
распаковываем файловую систему из архива на диск
- Код: Выделить всё
#tar xvjpf dnc-st-0.1.tar.bz2
по окончанию разархивации удаляем архив ФС(он теперь просто занимает место)
- Код: Выделить всё
#rm /dev/sys/dnc-st-0.1.tar.bz2
3) Исправляем конфиг загрузчика grub
на образе ФС конфиг занрузчика grub /mnt/sys/boot/grub/menu.lst выглядит следующим образом:
- Код: Выделить всё
# (0) Arch Linux
title Arch Linux
root (hd0,0)
kernel /boot/vmlinuz26 root=/dev/disk/by-uuid/e5fcb65d-1cca-4ae6-bc29-ee8a8e801547 ro
initrd /boot/kernel26.img
# (1) Arch Linux
title Arch Linux Fallback
root (hd0,0)
kernel /boot/vmlinuz26 root=/dev/disk/by-uuid/e5fcb65d-1cca-4ae6-bc29-ee8a8e801547 ro
initrd /boot/kernel26-fallback.img
редактируем строку:
- Код: Выделить всё
kernel /boot/vmlinuz26 root=/dev/disk/by-uuid/e5fcb65d-1cca-4ae6-bc29-ee8a8e801547 ro
это путь загрузчика до корня файловой системы - в простейшем (нашем) случае следует заменить стоку таким образом(с учетом что root будет все таки располагаться на /dev/sda1):
- Код: Выделить всё
kernel /boot/vmlinuz26 root=/dev/sda1 ro
4) Указываем системе правильный видеодрайвер.
В сборку установлен весь спектр видеодрайверов из репозитория(отсутствую закрытые fglrx и nvidia - но в нашем случае их прекрасно заменяет открытые ati и nouveau). В принципе можно убрать из
/mnt/sys/etc/X11/xorg.conf.d - правила для настройки xorg:
- Код: Выделить всё
#cd /mnt/sys/etc/X11/xorg.conf.d
#rm 20-device.conf
#rm 20-monitor.conf
#rm 20-screen.conf
тогда видеодрайвер и пр настройки будут udev-ом определятся автоматически. Но я не люблю так делать...а делаю следующее:
определяю видеоадаптер:
* если на LiveCD подняты X-ы то можно запустить команду:
- Код: Выделить всё
$cat /var/log/Xorg.0.log|grep -i driver
следующий вывод:
- Код: Выделить всё
$ cat /var/log/Xorg.0.log|grep -i driver
[ 29.506] X.Org Video Driver: 12.0
[ 29.506] X.Org XInput driver : 16.0
[ 29.788] (II) Loading /usr/lib/xorg/modules/drivers/intel_drv.so
[ 29.893] Module class: X.Org Video Driver
[ 29.893] ABI class: X.Org Video Driver, version 12.0
[ 29.893] (II) intel: Driver for Intel Integrated Graphics Chipsets: i810,
[ 30.067] (II) intel(0): [DRI2] DRI driver: i965
[ 30.092] (II) UXA(0): Driver registered support for the following operations:
[ 30.100] (II) intel(0): [XvMC] xvmc_vld driver initialized.
[ 33.051] Module class: X.Org XInput Driver
[ 33.051] ABI class: X.Org XInput driver, version 16.0
................
сообщает что, в данном случае, в системе запущен видеодрайвер intel
* если Х-ы не запущены, определяем видеокарту как оборудование = запускаем команду:
- Код: Выделить всё
#lspci | grep VGA
получаем следующий выдод:
- Код: Выделить всё
00:02.0 VGA compatible controller: Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller (rev 09)
и ищем драйвер соответсвующий установленной железке, найти можно из описаний к пакету драйвера - можно просмотреть следующим образом:
- Код: Выделить всё
#chroot /mnt/sys
#pacman -Qs xf86-video-
смотрим список - выбираем что нужно, потом
- Код: Выделить всё
#exit
найденный дидеодравер записываем в /mnt/sys/etc/X11/xorg.conf.d/20-device.conf
- Код: Выделить всё
Section "Device"
Identifier "MyDevice"
Driver "vesa"
EndSection
в секцию Driver вместо "vesa"
5) Устанавливаем загрузчик на жесткий диск
отмонтируем жесткий диск от LiveCD
- Код: Выделить всё
#cd /
#unount /dev/sda1
запускаем консоль grub:
- Код: Выделить всё
#grub
получаем следующий вид консоли:
- Код: Выделить всё
GNU GRUB version 0.97 (640K lower / 3072K upper memory)
[ Minimal BASH-like line editing is supported. For the first word, TAB
lists possible command completions. Anywhere else TAB lists the possible
completions of a device/filename. ]
grub>
производим поиск загрузчика:
- Код: Выделить всё
find /boot/grub/stage2
скорее всего будет получен следующий вывод:
- Код: Выделить всё
grub> find /boot/grub/stage2
(hd0,0)
поле чего следует выполнить подряд 2 команды - которые установят зарузчик:
- Код: Выделить всё
root (hd0,0)
setup (hd0)
после чего выйти из меню grub - коммандой quit
все - загрузчик установлен, можно перезагружать компьютер и стартовать со свевжеустановленной системы.
установку в качестве бездисковой станции - сейчас описывать не буду = там много получится, по сути нужно писать начиная с настройки сервера tftp и уже потом что делать со станцией(на самом деле со станцией - немонго), лучше опишу саму станцию.....
Станция:Решил не изобретать велосипеда - а адаптировать для ДЭНСИ образ нашей кассовой станции. Имеется следующая специфика:
загрузка станции происходит стандартно (/etc/rc.conf - секция DAEMONS) до скрипта localstart - он перенаправляет загрузку в скрипт-селектор /opt/scr-conf/select в котором производится выбор варианта загрузки графической оболочки: либо стандартный рабочий стол LXDE(по умолчанию - скрипт /opt/scr-conf/lxde) либо openbox с запущенной сверху ДЭНСИ:Касса (скрипт /opt/scr-conf/dnc).
Чтобы не искать конфиги по системе симлинки на основные из них собраны в /opt/scr-conf/etc, там же есть набор правил для xorg(/opt/scr-conf/etc/xorg-duo) - если необходимо подключать 2 монитора.
В системе заведен 1 пользователь(помимо системных) - user, пароль:qazwsx. В каталоге ~/BUILD пользователя user находятся исходники денси, а в ~/BUILD/dnc_sources_1.2.6.patch5 распакованные и частично собранные исходники(до момента возникновения ошибки), измененный скрипт сборки make_all и лог этой самой сборки make.log.