LTSP/TroubleShooting: различия между версиями
м (→«Зависание» терминала на «Populating /dev:»: +link (thx snejok@)) |
(Добавлено про PepperFlash в Firefox) |
||
(не показано 11 промежуточных версий 2 участников) | |||
Строка 18: | Строка 18: | ||
А вот если из гигабита и Fast Ethernet терминальный адрес (192.168.0.1) «сел» на «сотку», хорошо бы это исправить. Для этого должно быть достаточно поменять местами слова eth0 и eth1 в файле {{path|/etc/udev/rules.d/70-persistent-net.rules}} и перезагрузить<ref>Если очень не хочется именно перезагружать, придётся выгрузить модули для <tt>eth0</tt> и <tt>eth1</tt>, загрузить их по новой, {{cmd|service network restart}} и перезапустить все зависимые от сети службы — но это практически то же и получится.</ref> терминальный сервер. | А вот если из гигабита и Fast Ethernet терминальный адрес (192.168.0.1) «сел» на «сотку», хорошо бы это исправить. Для этого должно быть достаточно поменять местами слова eth0 и eth1 в файле {{path|/etc/udev/rules.d/70-persistent-net.rules}} и перезагрузить<ref>Если очень не хочется именно перезагружать, придётся выгрузить модули для <tt>eth0</tt> и <tt>eth1</tt>, загрузить их по новой, {{cmd|service network restart}} и перезапустить все зависимые от сети службы — но это практически то же и получится.</ref> терминальный сервер. | ||
В текущих бетах на базе сизифа сделан эвристический алгоритм, который не допускает попадания нашего DHCP-сервера в локальную сеть, где один уже активен, а также старается учесть скорость интерфейсов; просьба [[LTSP/beta|тестировать]]. | |||
=== root login === | === root login === | ||
Поскольку терминалы загружаются не с общего корня (в котором есть пароль root'а и добавляются пользователи), а с маленького сетевого -- то при необходимости зайти непосредственно на терминал рутом следует сперва поставить известный пароль; для этого выполните от имени root на терминальном сервере: | Поскольку терминалы загружаются не с общего корня (в котором есть пароль root'а и добавляются пользователи), а с маленького сетевого -- то при необходимости зайти непосредственно на терминал рутом следует сперва поставить известный пароль<ref>В [[LTSP/beta|бетах]] с 20120308 в процессе установки заданный для системы пароль root переносится и в чрут.</ref>; для этого выполните от имени root на терминальном сервере: | ||
chroot /var/lib/ltsp/i586 | chroot /var/lib/ltsp/i586 | ||
passwd | passwd | ||
и теперь на терминале можно нажать Ctrl-Alt-F2 и посмотреть содержимое {{path|/var/log/Xorg.*.log}} либо вывод {{cmd|dmesg}}. | и теперь на терминале можно нажать Ctrl-Alt-F2 и посмотреть содержимое {{path|/var/log/Xorg.*.log}} либо вывод {{cmd|dmesg}}<ref>В [[LTSP/beta|бетах]] с 20120308 в чруте также доступна команда {{cmd|ltsp-sysreport}}</ref>. | ||
=== PXE NIC === | === PXE NIC === | ||
Строка 97: | Строка 99: | ||
=== «Зависание» терминала на «Populating /dev:» === | === «Зависание» терминала на «Populating /dev:» === | ||
Периодическое (или постоянное) «зависание» терминала на «Populating /dev:» может быть вызвано переполнением {{path|/dev/}} | Периодическое (или постоянное) «зависание» терминала на «Populating /dev:» может быть вызвано переполнением {{path|/dev/}} по объёму либо инодам ({{altbug|23608}}). Лечится подъёмом лимитов<ref>Пожалуйста, сообщите, если nr_inodes или size пришлось увеличивать.</ref> в переменной <code>tmpfs_options</code> в {{path|/var/lib/ltsp/i586/etc/udev/udev.conf}}. Например, так (учтено в {{pkg|ltsp-5.1.21-alt0.10}}): | ||
#tmpfs_options="size=192k,nr_inodes=2048" | #tmpfs_options="size=192k,nr_inodes=2048" | ||
tmpfs_options="size=384k,nr_inodes=6144" | tmpfs_options="size=384k,nr_inodes=6144" | ||
См. тж. [http://lists.altlinux.org/pipermail/sisyphus/2008-September/334061.html про noudev и отладку загрузки модулей]. | См. тж. [http://lists.altlinux.org/pipermail/sisyphus/2008-September/334061.html про noudev и отладку загрузки модулей]. | ||
Черный экран после «Populating /dev:». | |||
Добавить в ядро {{path|/var/lib/tftpboot/ltsp/i586/pxelinux.cfg/default}} опцию "nomodeset". | |||
Можно попробовать добавить явное указание VESA режима, например vga=773. | |||
<pre>#DEFAULT vmlinuz ro initrd=initrd.img root=/dev/nfs nfsroot=/var/lib/ltsp/i586,udp diskless fastboot ip=dhcp | |||
DEFAULT vmlinuz ro initrd=initrd.img root=/dev/nfs nfsroot=/var/lib/ltsp/i586,udp diskless fastboot ip=dhcp nomodeset vga=773 | |||
</pre> | |||
=== Сетевая установка (не поддерживается) === | === Сетевая установка (не поддерживается) === | ||
Строка 107: | Строка 116: | ||
=== Проброс локальных устройств === | === Проброс локальных устройств === | ||
Механизм с использованием ltspfs описан [http://ltsp4.2.revamp-it.ch/twiki/bin/view/ltsp/LtspFS здесь]. | Механизм с использованием ltspfs описан [http://ltsp4.2.revamp-it.ch/twiki/bin/view/ltsp/LtspFS здесь]. | ||
=== Аппаратные терминалы без XKB === | |||
Актуально, например, для ТОНК1202; решение в использовании [[LTSP/xmodmap|xmodmap/xrus и KOI-8 вместо UTF-8]]. | |||
=== PXELINUX не работает === | |||
Если при загрузке клиентов по сети появляется только надпись | |||
PXELINUX 4.04 0x547c793e Copyright (C) 1994-2011 H. Peter Anvin et al. | |||
и всё -- обратите внимание на {{altbug|31534}}. | |||
=== PeperFlash в браузере Firefox === | |||
При просмотре Flash контента в терминал выводится сообщение: | |||
<pre> | |||
[fresh] [error] ppb_graphics3d_create, unsupported g3d->depth (16) | |||
[fresh] [warning] handle_graphics_expose_event, can't get visual for depth 24, using default | |||
</pre> | |||
Проблема решается добавлением в lts.conf параметра X_COLOR_DEPTH=24 | |||
== Решение проблем с ALT Linux 4.0 Terminal == | == Решение проблем с ALT Linux 4.0 Terminal == | ||
Строка 128: | Строка 153: | ||
== Ссылки == | == Ссылки == | ||
* [http://linux.armd.ru/ru/forum/index.php?mode111=flat_list&f_id111=4&t_id111=3&from111=1#mess194 обсуждение на linux.armd.ru] | <!--* [http://linux.armd.ru/ru/forum/index.php?mode111=flat_list&f_id111=4&t_id111=3&from111=1#mess194 обсуждение на linux.armd.ru]--> | ||
* [[LTSP/FAQ|FAQ]] | * [[LTSP/FAQ|FAQ]] | ||
* [http://ltsp4.2.revamp-it.ch/twiki/bin/view/ltsp LTSP 4.2 wiki] | * [http://ltsp4.2.revamp-it.ch/twiki/bin/view/ltsp LTSP 4.2 wiki] | ||
* [http://wiki.ltsp.org/ LTSP 5 wiki] | |||
* [[Centaurus: Бездисковый клиент]] | |||
{{Category navigation|title=LTSP|category=LTSP|sortkey={{SUBPAGENAME}}}} | {{Category navigation|title=LTSP|category=LTSP|sortkey={{SUBPAGENAME}}}} |
Текущая версия от 16:13, 8 октября 2019
Решение общих проблем с ALTSP
Может иметь смысл заглянуть в баг #15333 — есть вероятность, что с подобной ошибкой уже столкнулись и порешали.
Начинаем с инсталера
Как озвучили в рассылке мы с Michael A. Kangin:
> Вообще с этой штукой лучше знакомиться, начиная с нашего > установочного диска и рекомендованной сетевой конфигурации, > чтоб не ломать голову, где из трёх областей (железо, начиная > с PXE-прошивки; сеть, т.е. адресация; терминальный сервер) > проблема-то. Или же идти строго по http://sourceforge.net/apps/mediawiki/ltsp/index.php?title=Ltsp_TroubleShooting :)
Порядок сетевых интерфейсов
Если, как и рекомендуется, задействовано два сетевых интерфейса — то они могут автоматически сконфигурироваться в двух комбинациях. Когда они одинаковы, при несовпадении логической и физической конфигурации можно просто поменять местами подключенные кабели.
А вот если из гигабита и Fast Ethernet терминальный адрес (192.168.0.1) «сел» на «сотку», хорошо бы это исправить. Для этого должно быть достаточно поменять местами слова eth0 и eth1 в файле /etc/udev/rules.d/70-persistent-net.rules и перезагрузить[1] терминальный сервер.
В текущих бетах на базе сизифа сделан эвристический алгоритм, который не допускает попадания нашего DHCP-сервера в локальную сеть, где один уже активен, а также старается учесть скорость интерфейсов; просьба тестировать.
root login
Поскольку терминалы загружаются не с общего корня (в котором есть пароль root'а и добавляются пользователи), а с маленького сетевого -- то при необходимости зайти непосредственно на терминал рутом следует сперва поставить известный пароль[2]; для этого выполните от имени root на терминальном сервере:
chroot /var/lib/ltsp/i586 passwd
и теперь на терминале можно нажать Ctrl-Alt-F2 и посмотреть содержимое /var/log/Xorg.*.log либо вывод dmesg[3].
PXE NIC
- Возможно, встроенная сетевая карта умеет загрузку по сети, но эта функция попросту выключена в BIOS — поищите в (обычно) Integrated Peripherals пункт Onboard LAN Boot ROM (или ещё что похожее) и удостоверьтесь, что он включен; также потребуется указать LAN/Network[4] как вариант загрузки перед жёстким диском.
Некоторые BIOS умеют перейти на однократную сетевую загрузку по нажатию F12 (ищите на экране со считалкой памяти при загрузке «Network boot» внизу или что-то в том роде).
- Если сетевая карта имеет PXE-стек, который представляется Intel Boot Agent 4.0.19 — его придётся перешивать на более старый или более новый. Для набортных сетевых это, как правило, означает вливание прошивки в материнскую плату (хотя с Award Modular BIOS теоретически можно извернуться иначе); впрочем, современные обычно не имеют таких проблем. На чипах VIA я лично (mike@) с ними не встречался никогда. См. тж. на linux.armd.ru.
Осенью 2007 года для Intel 82557 (8086:1229) на intel.com давали нерабочую прошивку — пришлось воспользоваться вытащенной из заведомо грузящейся карты.
- Некоторые старые PXE не могут загрузить c tftp-сервера дальнейший свой загрузчик из-за проблемы понять размер блока данных больший, чем 512 байт. По tcpdump'у клиент обращается по tftp к серверу, от него идёт несколько пакетов ответа, после чего обмен данными останавливается. В таких случаях может помочь указание tftpd не использовать опцию blksize (для tftp-hpa, что входит в альтлинукс, нужно в файле /etc/xinetd.d/tftp в опциях серверу добавить -r blksize). Это может замедлить скачивание данных с tftp-сервера и, соответственно, загрузку клиентов. Поэтому, если перепрошивка клиентов невозможна, в сети можно попробовать держать пару tftp-серверов — медленный, но совместимый, и быстрый.
Если же вариант с PXE не получается — возможна загрузка с помощью Etherboot или с CD, содержащего образ, сгенерированный ltsp-mkbootiso; в Terminal 4.0 и Линукс Терминал из комплекта ПСПО после инсталяции он уже доступен как /opt/ltsp-boot.iso.
Локальная загрузка (без PXE BIOS)
Существует возможность разместить загрузчик и ядро на локальном жёстком диске.
nfs not responding, still trying...
Некоторые сетевые карты (например, Realtek RTL8029[5]) и свичи (например, Dlink DGS-1008D[6]) плохо работают с большими пакетами; типичный признак:
nfs: server 192.168.0.1 not responding, still trying nfs: server 192.168.0.1 not responding, still trying nfs: server 192.168.0.1 OK nfs: server 192.168.0.1 OK nfs: server 192.168.0.1 not responding, still trying
Можно попытаться занизить размеры блоков чтения/записи в /var/lib/tftpboot/ltsp/i586/pxelinux.cfg/default.nfs до 8K или ещё ниже:
#DEFAULT vmlinuz ro initrd=initrd.img root=/dev/nfs nfsroot=/var/lib/ltsp/i586,udp diskless fastboot ip=dhcp DEFAULT vmlinuz ro initrd=initrd.img root=/dev/nfs nfsroot=/var/lib/ltsp/i586,udp,rsize=8192,wsize=8192 diskless fastboot ip=dhcp
«Курсор крестиком» на терминалах
Не удаётся подключиться к дисплей-менеджеру, запущенному на терминальном сервере.
Как правило, говорит о проблемах с DNS — настройки такового должны быть либо верными, либо отсутствующими.
Пока не выяснена причина такой проблемы с Линукс Терминал, о которой были сообщения при настройке второго Ethernet после (а не во время) установки — но упоминался, соответственно, объезд в виде настройки при установке.
Если столкнётесь — попробуйте поднять интерфейс руками (проверил, у меня работает); если сработает, то сделать резервные копии /etc/net/ifaces/ и /etc/resolv.conf и после удачной либо неудачной настройки сравнить их с актуальными при помощи diff -Naur. Результаты стоит сообщить в bugzilla.altlinux.org.
Старые NVIDIA
Если на терминалах установлены карты с чипами, поддерживаемыми драйверами nvidia legacy (например, 71.86) -- придётся удалить из терминального чрута драйверы nvidia вообще и, таким образом, воспользоваться драйвером nv:
chroot /var/lib/ltsp/i586 rpm -qa | grep nvidia | xargs rpm -e
Проблема в том, что x11presetdrv, который должен адаптировать симлинки, не может нормально отработать на readonly-корне бездискового клиента (в частности, выполнить depmod -a).
Также можно попытаться выкрутиться фигурной правкой файлов *.xinf.
Подземный стук с XDMCP
Если у вас спорадически не работает XDMCP со странной диагностикой в районе «authorization cookie rejected» — проверьте MTU в локальной сети и восстановите его в 1500 во всём сегменте.
Производительность NFS-сервера
> Если включить все терминалы на загрузку, то часть из них > на этой загрузке и застрянет.
Юзерспейсный NFS-сервер unfs3 по определению проигрывает в скорости kernelspace-ному nfs-server. Правда, и с тем 24 клиента грузились одновременно, хоть и не шибко весело.
Сделайте apt-get install nfs-server unfs3- (именно так, с минусом на конце — предложит вместе с unfs3 снести ltsp-server-basic, который метапакет; с этим можно согласиться).
Дело в том, что в 4.0 мы собирались сделать это всё запихивабельным ещё и под OpenVZ сразу — оно-то запихивается, но оптимизировать под это не стоило, поскольку всё равно ручная работа.
В бетах пятёрки это учтено.
«Замерзание» терминала
Если при работе с Firefox 1.x/2.x, OpenOffice.org ранее 2.4 или kpdf терминал на какую-то секунду «призадумывается» и перестаёт отвечать — это вызвано «разбуханием» X-сервера терминала под натиском запихиваемых в него xpixmap’ов (картинок) и заклиниванием ядра даже при наличии сетевого свопа.
От этой проблемы есть несколько слабо помогающих припарок, но радикальное решение — патч Peter Zijlstra от дедлоков при networked swap. Этот патч включен в сборки kernel-image-tmc-tc, а также релизы ALT Linux 4.0 Terminal и Линукс Терминал.
Firefox3 и OOo2.4 вроде как намного лучше — но, к сожалению, вероятность зависнуть зависит от «паршивой овцы» среди приложений… если, конечно, использовать обычное ядро.
Насколько мне (mike@) известно — на сейчас сборка в ALT Linux является уникальной среди всех дистрибутивов, поддерживающих LTSP5.
Сканер штрих-кодов
См. здесь.
Realtek 8103EL/8102EL
Не поддерживается нормально драйвером r8169.ko в 2.6.27 (добавили в 2.6.28). Как вариант, можно попробовать скопировать и установить в чруте "обычное" ядро, а затем скопировать из чрута в /var/lib/tftpboot/ltsp/i586/ vmlinuz и initrd к нему.[7]
«Зависание» терминала на «Populating /dev:»
Периодическое (или постоянное) «зависание» терминала на «Populating /dev:» может быть вызвано переполнением /dev/ по объёму либо инодам (altbug #23608). Лечится подъёмом лимитов[8] в переменной tmpfs_options
в /var/lib/ltsp/i586/etc/udev/udev.conf. Например, так (учтено в ltsp-5.1.21-alt0.10):
#tmpfs_options="size=192k,nr_inodes=2048" tmpfs_options="size=384k,nr_inodes=6144"
См. тж. про noudev и отладку загрузки модулей.
Черный экран после «Populating /dev:». Добавить в ядро /var/lib/tftpboot/ltsp/i586/pxelinux.cfg/default опцию "nomodeset". Можно попробовать добавить явное указание VESA режима, например vga=773.
#DEFAULT vmlinuz ro initrd=initrd.img root=/dev/nfs nfsroot=/var/lib/ltsp/i586,udp diskless fastboot ip=dhcp DEFAULT vmlinuz ro initrd=initrd.img root=/dev/nfs nfsroot=/var/lib/ltsp/i586,udp diskless fastboot ip=dhcp nomodeset vga=773
Сетевая установка (не поддерживается)
Скрипт настройки LTSP в инсталяторе рассчитывает на установку с CD/DVD; если невозможно обойтись USB-приводом, можно поставить обычный Desktop и добавить вручную необходимые пакеты и настройки.
Проброс локальных устройств
Механизм с использованием ltspfs описан здесь.
Аппаратные терминалы без XKB
Актуально, например, для ТОНК1202; решение в использовании xmodmap/xrus и KOI-8 вместо UTF-8.
PXELINUX не работает
Если при загрузке клиентов по сети появляется только надпись
PXELINUX 4.04 0x547c793e Copyright (C) 1994-2011 H. Peter Anvin et al.
и всё -- обратите внимание на altbug #31534.
PeperFlash в браузере Firefox
При просмотре Flash контента в терминал выводится сообщение:
[fresh] [error] ppb_graphics3d_create, unsupported g3d->depth (16) [fresh] [warning] handle_graphics_expose_event, can't get visual for depth 24, using default
Проблема решается добавлением в lts.conf параметра X_COLOR_DEPTH=24
Решение проблем с ALT Linux 4.0 Terminal
Эти замечания также относятся к дистрибутиву из комплекта ПСПО-2008 (Линукс Терминал), поскольку обусловлены недочётами в коде, присутствовавшем в 4.0/branch на момент их выпуска.
МП на GeForce 8200
Проблема: при установке не видно жесткого диска или оптического привода SATA.
Решение: необходимо в BIOS материнской платы выставить режим AHCI для контроллера SATA, при загрузке с загрузочного диска ядру указать параметр pci=nomsi.
AMD Geode
В силу наличия известной проблемы с видеодрайвером xorg-x11-drv-amd в версии X.org, входящей в состав ALT Linux 4.0 (апстрим внёс регрессию) — использование таких терминалов с ALTSP5 на сейчас затруднено необходимостью ручной сборки клиентского чрута с иной (более старой) версией xorg-x11. На сейчас подробного описания или готового варианта решения у меня (mike@) ещё нет.
Начиная с branch 4.0 X’ы пофикшены (snejok@):
10 апреля 2008 Valery Inozemtsev <shrek at altlinux.ru> 2:1.4.0.90-alt17 Xext: fixed memory corruption in ProcXResQueryClients() X86EMU: fixing X for GeodeLX (close #15300)
Примечания
- ↑ Если очень не хочется именно перезагружать, придётся выгрузить модули для eth0 и eth1, загрузить их по новой, service network restart и перезапустить все зависимые от сети службы — но это практически то же и получится.
- ↑ В бетах с 20120308 в процессе установки заданный для системы пароль root переносится и в чрут.
- ↑ В бетах с 20120308 в чруте также доступна команда ltsp-sysreport
- ↑ Тоже может варьироваться; возможно, это Boot From LAN First или подобное.
- ↑ http://lists.altlinux.org/pipermail/junior/2008-January/004541.html
- ↑ http://lists.altlinux.org/pipermail/ltsp-server/2008-February/001127.html
- ↑ Устройства "обычного" ядра могут переполнить /dev/ по объёму либо инодам.
- ↑ Пожалуйста, сообщите, если nr_inodes или size пришлось увеличивать.