|
Solaris on Intel - x86 FAQ(6.0) ПОСТУСТАНОВКА (НАСТРОЙКА) (6.1) Как добавить дополнительные устройства? IDE/ATAPI и SCSI диски уже форматированы на низком уровне. Если Вы хотите отформатировать SCSI диск, Вы можете использовать утилиту "format", которая поставляется с OS Solaris. При добавлении второго диска нужно будет использовать "format".
[Из Bob Palowoda's Solaris 2.4 x86 FAQ]
(6.2) Как добавить или сконфигурировать пользователей, принтеры, мат.обеспечение и т.д.? Используйте admintool под X Windows. Для настройки клавиатуры, дисплея и мыши используйте kdmconfig.
(6.3) Как запретить печать титульного листа (banner page) на принтере? Чтобы запретить печать титульного листа постоянно, проделайте следующие шаги:
Замечание: снятие отметки "Always print banner" в admintool или исполнение "lpadmin -p st -o nobanner" только позволит пользователям посылать запросы на печать без титульного листа (lp -onobanner filenamehere), но не запретит его печать по умолчанию. [Спасибо Youri N. Podchosov и Rob Montjoy's Sun Computer Admin. FAQ]
(6.4) Как установить/настроить HP-совместимый принтер для печати PostScript файлов? В сущности, установите GhostScript, затем используйте GhostScript (gs) в качестве фильтра для PostScript файлов при выводе на HP LaserJet-совместимые принтеры. Добавьте файл-фильтр в каталог /etc/lp/fd, чтобы вызвать GhostScript. Этот метод работает для любого принтера, который поддерживает GhostScript. Заметим, что лидирующие HP принтеры (LJ IV) также поддерживают печать PostScript непосредственно. Подробнее см. Alexander Panasyuk's GhostScript Solaris Printer HOWTO http://cfauvcs5.harvard.edu/SetGSprinter4Solaris.html John Groenveld дает следующие инструкции: Вот процедура, которой я придерживаюсь. Предполагается, что у Вас есть работающий ghostscript с драйвером для Вашего принтера и что он подсоединен к /dev/lp1. Между прочим, я видел проблему с Alexander Panasyuk's HOWTO. Он пишет прямо на device в своем фильтре. Я не задумываюсь о том, что фильтры должны делать, но это просто мое мнение. # Test your driver: /opt/gnu/bin/gs -q -dSAFER -dNOPAUSE -sDEVICE=laserjet -sOutputFile=/dev/lp1 \ /opt/gnu/share/ghostscript/5.50/examples/alphabet.ps # Create the printer: lpadmin -p lj6l_ps -v /dev/lp1 -o nobanner # Create the printer filter definition: cat > /etc/lp/fd/laserjet.fd <<eof Input types: postscript Output types: laserjet Printer types: any Printers: any Filter type: fast Command: /opt/gnu/bin/gs -q -dSAFER -dNOPAUSE -sDEVICE=laserjet -sOutputFile=- - eof # Add the filter name to the filter table: chown lp:lp /etc/lp/fd/laserjet.fd chmod 664 /etc/lp/fd/laserjet.fd lpfilter -f laserjet -F /etc/lp/fd/laserjet.fd # Configure the printer to use the LaserJet filter: lpadmin -p lj6l_ps -I laserjet # Enable the printer to accept jobs: enable lj6l_ps # Test: /usr/ucb/lpr -h /opt/gnu/share/ghostscript/5.50/examples/alphabet.ps (6.5) Как улучшить производительность диска и графики? Производительность диска (iozone) Типичный тест iozone с последовательным файлом размера от 10 до 20Мб дает около 2Мб/сек. запись/чтение на 50МГц ESIA (? Serg) системе на Maxtor 540SL (8.5 ms) диске с контроллером Adaptec 2740. Вы получите немного большую производительность на системе Pentium 90МГц Полностью побежденная система будет записывать 1Мб/сек. Я заметил, что NCR 810/825 и т.п, дает немного бОльшую производительность, особенно на PCI шине. ЗамечаниеЛ если Вы собираетесь использовать высокооборотные диски, 5400 или 7200 об/мин, в качестве загрузочных, Вы можете пожелать установить "set maxpgio=60" для дисков с 5400 об/мин в Вашем /etc/system файле, и "set maxpgio=80" для дисков с 7200 об/мин. Это сделает schedpaging более эффективным. ISA SCSI являются очень плохим выбором (используйте PCI), но Вы можете пожелать увеличить "lotsfree" в Вашем /etc/system файле, если у Вас много памяти (32Мб или больше). [Andrew Gabriel добавил для ATAPI/IDE: Читайте про drive0_block_factor и drive1_block_factor в /platform/i86pc/kernel/drv/ata.conf (man ata). Даже мои старые IDE диски поддерживают drive0_block_factor=0x10 без проблем.
Графическая производительность (xstone) Xstones is a little more of a subjective measurement of graphics performance. The comp.unix.x.i386 newsgroup keeps up on the latest xstone performance on graphics cards for PC's. [Из Bob Palowoda's Solaris 2.4 x86 FAQ]
NEI - это имя драйвера для семейства Novell/Eagle 2000-совместимых сетевых карт. Драйвер выключен по-умолчанию, поскольку определение (пробирование) его вызывает проблемы с другими картами (иногда это блокирует систему). Таким образом, Вы должны модифицировать файл /kernel/drv/nei.conf чтобы включить I/O адреса, прерывания. Например: name="nei" parent="isa" reg=0x1,0xf600,0x1f interrupts=11 ; Где name, "nei," это символическое имя, которое будет фигурировать в каталоге /dev. Parent, "isa", означает тип шины. Вводящий в заблуждение термин ISA включает и PCI шину. Для OS Solaris это либо sysbus, системная шина SPARC, либо isa, что означает все, что угодно, кроме SPARC sysbus. Флаг "0x1" означает, что далее идет определение диапазона I/O портов, а не смещения в памяти, 0xf600 показывает начальный I/O адрес address, в шестнадцатиричном виде и 0x1f есть смещение (?) I/O диапазона от начала. "interrupts=11" показывает IRQ 11, в десятичном виде. Таким образом, я имею Realtek 8029 PCI NE2000-совместимую карту, установленную в диапазон I/O адресов 0xf600-0xf61f, IRQ 11.
Вы должны также создать файл /etc/hostname.nei0 с IP адресом или hostname внутри.
Также добавьте в /etc/hosts строчку, например:
10.1.1.1 foo.bar.com Далее, из-под root'а наберите "touch /reconfigure; reboot" После перезагрузки напечатайте "ifconfig nei0 plumb" чтобы иметь уверенность, что карта опознана. Она должна появиться в сообщениях от "prtconf". Если карта "Plug and Play," Вы должны отключить эту особенность и сконфигурировать ее вручную, если возможно. Подробнее см. Sun FAQ 1105-02 http://access1.Sun.COM/cgi-bin/rinfo2html?110502.faq [Изменено из Iram Peerbhai]
(6.7) Как изменить IP адрес в Solaris/x86? См. инструкции в "man sys-unconfig" В сущности, sys-unconfig расконфигурирует машину, чтобы сделать е готовной опять к конфигурации во время загрузки. Это намного легче и менее подвержено ошибкам, чем обычная дюжина так называемых шагов, требуемых для уничтожения старого IP адреса. Любители приключений могут также делать это вручную редактируя следующие (или еще какие) файлы:
/etc/nodename Имя машины (если изменяется) /etc/hostname Требует редактирования, если меняется имя машины. /etc/hostname.le0 (или .hme0 или ?) Требует редактирования, если меняется имя машины. /etc/hosts Soft-linked на /etc/inet/hosts /etc/nsswitch.conf Редактируйте, если меняется порядок разрешения имен (files, NIS, DNS). /etc/resolv.conf Требует редактирования, если изменяется DNS. /etc/defaultdomain Установите domain name по-умолчанию, если изменилось. /etc/defaultrouter Установите IP адрес default router'а, если изменился. /etc/inet/hosts Проверьте, что Ваш IP адрес указан правильно в этом файле. /etc/inet/netmasks Установите номер Вашей сети и сетевую маску (netmask). /etc/inet/networks Установите имя сети, если изменилось. /etc/net/ticlts/hosts Для streams-level loopback interface. /etc/net/ticots/hosts Для streams-level loopback interface. /etc/net/ticotsord/hosts Для streams-level loopback interface. Чтобы проверить, что Вы изменили все необходимые файлы, наберите под root'ом: find /etc -type f -print|xargs grep `hostname` [Спасибо Parthiv Shah, Vijay Brian Gupta, и Michael Wang]
(6.8) Как сконфигурировать второй последовательный порт, /dev/ttyb (COM2)? По-умолчанию в OS Solaris разрешен только /dev/ttya. Но модем обычно подсоединяется к /dev/ttyb (или COM2), если у Вас есть еще мышь на последовательном порту. Если у Вас отсутствует файл /dev/ttyb, то Ваш второй последовательный порт не будет определен. В OS Solaris 7 используйте для этих целей admintool и выберите "Serial Ports." Ниже изложены инструкции для OS Solaris 2.6 и 2.5.1. Чтобы добавить второй последовательный порт, выполните от root'а нижеследующее. Для других последовательных портов и внутренних модемов выполните те же шаги, но раскомментируйте соответствующие строчки в файле asy.conf. Отредактируйте файл /platform/i86pc/kernel/drv/asy.conf следующим образом: Solaris 2.6: Замените /platform/i86pc/kernel/drv/asy.conf следующим: (предварительно сохраните существующий asy.conf, скажем, как asy.conf.ori)
name="asy" class="sysbus" interrupts=12,4 reg=0x3f8,0,0 ioaddr=0x3f8; ignore-hardware-nodes=1; name="asy" class="sysbus" interrupts=12,3 reg=0x2f8,0,0 ioaddr=0x2f8; Solaris 2.5.1: Удалите комментарий из следующей строки в файле /platform/i86pc/kernel/drv/asy.conf:
name="asy" class="sysbus" interrupts=12,3 reg=0x2f8,0,0 ioaddr=0x2f8;
[Изменено из Bruce Riddle's Solarisx86 2.5/Dialup PPP Configs FAQ]
(6.9) Как запретить проверку Бесперебойного Источника Питания (UPS) на COM2? Это можно сделать следующей командой, исполненной от root'а
# eeprom com2-noprobe=true Эта недокументированная опция команды eeprom запрещает проверку COM2 во время загрузки OS (вероятно сделано для обнаружения модемов). Команда eeprom изменяет boot сектор OS Solaris. Если UPS подсоединен к последовательному порту во время загрузки, то он может войти в режим самопроверки, выполнения shutdown или рекалибровки. Альтернативным решением является отсоединение кабеля последовательного порта на время загрузки. С очевидными поправками это также работает и для COM1. См. также BugID 4038351. [Спасибо Andy I. McMullin и John D. Groenveld]
(6.10) Как установить/настроить протокол PPP? "Жизнь слишком коротка для настройки плохого PPP." --Celeste Stokley Установка PPP с помощью системного aspppd может быть упражнением в самобичевании. Это оттого, что он базируется на старом BNU/UUCP сетевом матобеспечении, которое само-по-себе отвратительно трудно для установки. Конечно, аппаратура (модем и последовательный порт) также должны быть установлены правильно. Убедитесь, что разрешен hardware flow control. Лучшая документация по этому вопросу - это Bruce Riddle's PPP Configuration for Solaris/x86 на http://www.riddleware.com/solx86/ppp-config.html Другое хорошее руководство - http://www.kempston.net/solaris/. У Philip Brown имеется скрипт для автоматизации настройки asppp на http://www.bolthole.com/solaris/configppp.sh Ссылки на другие руководства приведены в Stokley's "Serial Port Resources" на http://www.stokely.com/unix.serial.port.resources/ Также смотрите Sun's "Expanding your Network with PPP" в TCP/IP и Data Communications Administration, at docs.Sun.COM and "SunService Tip Sheet for SunPPP" (InfoDoc ID 11976). Вот несколько замечаний, которые также могут помочь Вам с Sun's aspppd: 1. Проверьте, что у Вас установлены пакеты "Basic Networking", в противном случае выполните pkgadd SUNWbnur и SUNWbnuu. 2. добавьте IP адреса/имена машин в таблицу /etc/hosts. Ваш провайдер должен дать Вам имена, либо Вы можете поискать их в сети. 3. Создайте /etc/resolv.conf, и добавьте строчки для domainname и nameserver. Ваш провайдер может предоставить domainname (возможно в виде name-of-your-isp.com, если только у них нет multi-location operation). 4. Отредактируйте /etc/mail/sendmail.cf, чтобы relay mailer был ether, и этот хост должен быть сервером smtp. Этот hostname должен быть верным. 5. Большинство программ для чтения новостей (наподобие xvnews и Netscape) используют переменную окружения NNTPSERVER, указывающую сервер NNTP. Установите ее в Вашем окружении перед запуском программы. Это можно сделать в Ваших файлах .profile, .cshrc, либо где-то еще, в зависимости от того, какой shell Вы используете. 6. Для непосредственно PPP соединения, единственное, на что следует обратить внимание - это машина, с которой Вы соединяетесь (в большинстве случаев вероятно gateway машина). Вы должны будете отредактировать /etc/uucp/{Systems, Dialers, Devices} в соответствии с Вашими предпочтениями для модемных настроек, ели Вас не устраивают настройки по-умолчанию (мне, например, они не нравятся), dialing настройки для gateway машины (note that our PPP is broken, and ignores the time-to-call field, disaster for a lot of us), и номер последовательного порта, к которому подключен Ваш модем. Затем отредактируйте файл /etc/asppp.cf, чтобы настроить интерфейс ipdptp0.
Замечания для примера:
Примеры для моей домашней машины: /etc/hosts: 165.154.15.142 MyPCNameGoesHere 165.154.1.1 my-isp 127.0.0.1 localhost /etc/resolv.conf: domainname hookup.net nameserver 165.154.1.7 /etc/mail/sendmail.cf: # (Stuff not included here for brevity) . . . Dmether # (Stuff not included here for brevity) . . . DRmail.tor.hookup.net CRmail.tor.hookup.net # (Stuff not included here for brevity) . . . /etc/uucp/Dialers: wb144 =W-, "" \dAT\r\c OK\r \EATDT\T\r\c CONNECT /etc/uucp/Devices: ACUWB cua/0 - Any wb144 /etc/uucp/Systems (line split for readability, change the phone #): my-isp Any ACUWB 57600 555-2871 "" P_ZERO ogin: MyLoginNameGoesHere \ assword: MyPasswordGoesHere /etc/asppp.cf: ifconfig ipdptp0 plumb MyPCNameGoesHere my-isp netmask 0xffffff00 -trailers up path inactivity_timeout 900 interface ipdptp0 peer_system_name my-isp debug_level 8 default_route [Спасибо Dennis (из Bob's Solaris 2.4 x86 FAQ) и Wyatt Wong)]
(6.11) Предыдущий ответ был пыткой! Имеются ли другие открытые источники PPP, более легкие для использования? Да, как Вы можете видеть, aspppd, стандартный продукт для OS Solaris, труден в настройке и использовании ("отвратительный"). Частично проблема заключается в использовании старых BNU/UUCP программ и конфигурационных файлов, которые слишком общие и реально не предназначены для PPP. К счастью, PPPD был портирован на Solaris и он более простой в настройке лучше работает и все еще бесплатный. Он доступен у Peter Marelas на http://www.phase-one.com.au/solaris-x86/pppd/ Я использую PPPD с OS Solaris 7. PPPD 2.3.5 также работает с OS Solaris 2.5.1 и 2.6. Этот продукт не предназначен для использования на SMP машинах. Под Solaris 7 Вы можете использовать готовые пакеты, откомпилированные для OS Solaris 2.6 (но не для 2.5.1). Если Вы компилируете на OS Solaris 7, Вам понадобится модифицировать исходный файл common/zlib.c, чтобы он откомпилировался. Измените всюду переменную "u" на "u1". Она встречается 5 раз, в строчках 4215, 4290, 4329, 4337 и 4347. Например, измените "inflate_huft *u[BMAX];" на "inflate_huft *u1[BMAX];". Кроме PPPD, упомянутого здесь, Andrew Gabriel упоминает также DP (для Dialup PPP). DP документация и исходные коды доступны на http://www.acn.purdue.edu/dp/ У меня нет опыта использования этого пакета. Настройка PPPD Установите chat скрипт, чтобы удовлетворить ISP диалогу и введите номер телефона и другие параметры в конфигурационный файл pppd. Мои примеры ниже (файлы находятся в /etc/ppp, пока не указано другое). Я удалил файлы chap-secrets и pap-secrets, так как они мне не нужны. Файл connect-errors содержит сообщения об ошибках при плохом соединении. Фаил /etc/ppp/ip-down: #!/usr/bin/sh # Turn off IP forwarding /usr/sbin/ndd -set /dev/ip ip_forwarding 0
Файл /etc/ppp/ip-up: #!/usr/bin/sh # Turn on IP forwarding /usr/sbin/ndd -set /dev/ip ip_forwarding 1
Файл /etc/ppp/ppp-on: #!/usr/bin/sh # Set up a PPP link PEER=myisp LOCKDEV=ppp0 if [ -f /etc/ppp/$LOCKDEV.pid ] ; then echo "PPP device $LOCKDEV is locked" exit 1 fi /usr/local/sbin/pppd call $PEER exit 0 Файл /etc/ppp/ppp-off: #!/usr/bin/sh # /etc/ppp/ppp-off # Shutdown a PPP link LOCKDEV=ppp0 # If the ppp pid file is present then the program is running. Stop it. if [ -r /etc/ppp/$LOCKDEV.pid ] ; then kill -INT `cat /etc/ppp/$LOCKDEV.pid` # If unsuccessful, ensure that the pid file is removed. if [ ! "$?" = "0" ] ; then echo "removing stale /etc/ppp/$LOCKDEV.pid file." rm -f /etc/ppp/$LOCKDEV.pid exit 1 fi # Success. Terminate with proper status. echo "ppp link $LOCKDEV terminated" exit 0 fi echo "ppp link $LOCKDEV is not active" exit 1 Файл etc/ppp/peers/myisp: cua1 # modem is connected to /dev/cua1 (cua0 is usually the mouse) 115200 # bits per second (if too fast, use 38400 or 57600) crtscts # use hardware flow control noauth # don't require the ISP to authenticate itself defaultroute # use the ISP as our default route 204.94.88.94: # our ip address:gateway address (both are optional) connect '/usr/local/bin/chat -v -f /etc/ppp/peers/chat-myisp' Файл etc/ppp/peers/chat-myisp: ABORT "NO CARRIER" ABORT "NO DIALTONE" ABORT "ERROR" ABORT "NO ANSWER" ABORT "BUSY" ABORT "Username/Password Incorrect" "" "ATZ" OK "ATDT555-2871" CONNECT "" "ogin:" "^Updan" "ssword:" "\qaardvark" Последние два файла требуют наибольших модификаций. Смотрите "man pppd" и "man chat", а также FAQ и SETUP файлы, поставляемые с pppd. Сообщения пишутся в /var/adm/messages. Хороший PPP сеанс в журнале выглядит подобно этому: Oct 24 22:47:49 dan.cts.com pppd[1439]: Connect: ppp0 <--> /dev/cua1 Oct 24 22:47:50 dan.cts.com pppd[1439]: local IP address 204.94.88.94 Oct 24 22:47:50 dan.cts.com pppd[1439]: remote IP address 205.163.84.83 Oct 24 23:08:52 dan.cts.com pppd[1439]: Connection terminated. "netstat -rn" должен показывать строчки, похожие на эти: Destination Gateway Flags Ref Use Interface -------------------- -------------------- ----- ----- ------ --------- 205.163.84.83 204.94.88.94 UH 3 1 ppp0 default 205.163.84.83 UG 0 1 Для отладки pppd, я добавляю в /etc/syslog.conf следующую строчку и перестартовываю syslogd (поля разделяются символом табуляции (TAB)):
daemon.* /var/adm/messages Тогда chat script будет сохранен, что поможет выявить проблему. Напечатайте и прочитайте документацию, упомянутую выше, если Вы имеете проблему. Как только PPP заработал, Вы можете разрешить DNS следующим образом: Во-первых, модифицируйте соответствующую строчку в /etc/nsswitch.conf следующим образом:
hosts: files dns Во-вторых, добавьте строчки, подобные нижеследующим, в /etc/resolv.conf:
domain PutYourISPDomainNameHere.com nameserver 192.188.72.18 nameserver 192.188.72.21 Если Вы используете PAP авторизацию, Вы также должны создать файл /etc/ppp/pap-secrets следующего вида (поля разделяются табуляторами):
# /etc/ppp/pap-secrets # PPP User ID Server "Secret" IP Addresses MyUserIDGoesHere * "LetMeIn" Измените MyUserIDGoesHere на Ваш PPP login ID, а LetMeIn (С двойными кавычками, "") - на Ваш PPP PAP password. Добавьте следующую строку в /etc/ppp/peers/myisp:
-chap name MyUserIDGoesHere Где MyUserIDGoesHere - как и выше, а "-chap" запрещает Chap авторизацию.
(6.12) Имеются ли какие-либо коммерческие PPP, более легкие для использования? Да. Sun продает свой "Solstice PPP" продукт вместе с сервером. Он требует лицензии для server side (обычно для провайдеров), не не для client-side (если Вы имеете только одно подсоединение). Однако, Вы должны иметь доступ к Solaris server CDROM, чтобы получить этот продукт. См. http://www.Sun.COM/solstice/server/PPPbrief.html В основном, Вы будете использовать GUI программу pppinit для настройки PPP соединения. Запуск и останов PPP производится посредством "/etc/init.d/ppp start" (и stop), как и с aspppd, либо с помощью GUI программы ppptool. Solstice PPP документирован в Solstice PPP AnswerBook на http://docs.Sun.COM/ и более легок в установке, чем aspppd и pppd. Progressive Systems, Inc. продает Morning Star PPP, по всей видимости, наиболее удачный коммерческий PPP продукт. Для OS Solaris/x86 (и некоторых других систем) имеется 15-дневная пробная версия http://www.progressive-systems.com/
(6.13) Помогите! Мой внутренний модем USRobotics не работает с PPP. Если это WinModem, то Вам не повезло--Они работают только с MS Windoze и только со специальными драйверами. В них отсутствует критическое UART оборудование, которое эмулируется соответствующими программными и аппаратными интерфейсами. WinModem'ы (которые работают только в Windows) менее дорогие в производстве, поскольку они не содержат контроллер. Вместо этого они требуют специальных драйверов для Windows, которые переносят обработку на CPU. По каким-то причинам (расскажите мне, если Вы знаете), внутренние PCI модемы, похоже, являются WinModem'ами. Если Вы используете aspppd, поставляемый с OS Solaris, Вы можете либо перейти на другой PPP продукт, который работает с USRobotics Internal Sportster модемами, такой, как Solaris PPP (не бесплатный) или PPPd (бесплатный, см. выше) либо попробовать это: (из Alan Orndorff's "Solaris x86 Resources," http://www.mindspring.com/~dwarfie/): Модифицируйте Ваш /etc/uucp/Dialers файл следующим образом: Добавьте P_ZERO в строку определения Вашего модема для установки его в "no parity." Т.е.,
hayes =,-, "" P_ZERO "" \dA\pTE1V1X4Q0S2=255S12=255\r\c OK\r \EATDT\T\r\c CONNECT
(6.14) PPP работает черзвычайно медленно. Что не правильно? OS Solaris 2.5.1 patch 101945-34+ дает плохую производительность TCP на медленных соединениях, включая PPP. Патчи для этого, Bug ID 1233827, находятся здесь: http://soldc.Sun.COM/:
[Из Bruce Riddle's Solarisx86 PPP FAQ и Casper Dik's Solaris 2 FAQ]
(6.15) Как настроить PPP с использованием динамических IP адресов (DHCP)? Если Вы используете Solaris aspppd, Вам необходимо прописать имя 'void' в Вашем /etc/hosts файле. Просто добавьте следующую строчку:
0.0.0.1 void (Замечание: для OS Solaris 2.4 используйте 0.0.0.0 вместо 0.0.0.1) Измените строку ifconfig в /etc/asppp.cf, связав ее с именем void, а не с именем локальной машины в /etc/hosts. Затем добавьте "negotiate_address on" в Ваш /etc/asppp.cf файл. Если Вы используете pppd из открытых источников, просто не задавайте IP адрес в конфигурационном файле pppd. Если Вы используете коммерческий Solaris PPP, оставьте "none", что предлагается по-умолчанию, когда спрашивается IP адрес при исполнении pppinit. Отредактируйте файл /platform/i86pc/kernel/drv/asy.conf. Чтобы использовать DHCP, либо: (1) Добавьте файл /etc/dhcp.ppp0 (где ppp0 - имя Вашего TCP интерфейса, показываемое командой ifconfig; обычно le0 для Ethernet) со следующей строчкой: wait 60 Или (2) Отредактируйте файлы /etc/hostname.ppp0 (где ppp0 - имя интерфейса) и /etc/nodename, чтобы оба были пустыми (нулевой длины), затем перезагрузите систему. [Спасибо Bruce Riddle, Wyatt Wong, и Ed Ravin]
(6.16) Как сконфигурировать звуковую карту? Для OS Solaris 2.6 и 7 (для 2.5.1 инструкции ниже): Во-первых, попытайтесь от root'а: "touch /reconfigure; /usr/sbin/reboot". Вы должны увидеть два линка на /dev/sound и проиграйте .au файлы с помощью программы audiotool, если это работает. Если нет, то попробуйте следующую процедуру: 1. Исполните команду "prtconf -pv" чтобы посмотреть текущую конфигурацию системы:
Node 0xf5a33500 compatible: 'pnpCTL,00E4,0' + 'sbpro' dma-channels: 00000001.00000005 interrupts: 00000005 model: 'Audio' name: 'pnpCTL,0045' pnp-csn: 00000001 reg: 8e8c00e4.19f815e8.00000000.00000001.00000220.00000010 .00000001.00000330.00000002.00000001.00000388.00000004 unit-address: 'pnpCTL,00E4,19f815e8' ID устройства, которое я ищу - CTL0045. Оно появляется в строке "name: 'pnpCTL,0045'. Было показано множество других 'pnpXXX,DDDD' устройств. Но только одно было модели (строка 'model:') "Audio". 2. Согласно InfoDoc 15830, я использовал "CTL,0045" и отредактировал файл /platform/i86pc/boot/solaris/devicedb/master следующим образом:
< CSC0000|PNPB002|PNPB003|CTL0031|ESS1681 sbpro oth all sbpro.bef "Sound Blaster" - --- > CTL0045|CSC0000|PNPB002|PNPB003|CTL0031|ESS1681 sbpro oth all sbpro.bef "Sound Blaster" 3. Перезагрузил систему с обновлением devices.
# /usr/sbin/reboot -- -r 4. Я также исполнил Device Configuration Assistant (DCA) -- нажатием Escape во время загрузки -- просто проверьте, что Sound Blaster появляется в списке устройств. Он появляется, как "Sound Blaster." Поскольку я исполнял DCA загрузка в любом случае будет с ключом -r. 5. Когда система загрузилась, /dev/audio имел место быть. Да! Я только что слушал Sunday Blues real audio на http://www.sunday-blues.com/listen.html. Если вышеизложенная процедура не дает эффекта для OS Solaris 2.6 или 7 (как я делал для себя), попробуйте процедуру для OS Solaris 2.5.1, приведенную ниже. [Спасибо Park Byoung-Gi, Steve Krapp, Chris, Dave, и Norma] Для OS Solaris 2.5.1: Отредактируйте файл /platform/i86pc/kernel/drv/sbpro.conf, как рекомендовано внутри него (замечу, что рекомендации были удалены в OS Solaris 2.6 и выше!). Обычно это сводится к добавлению "dma-channels-1,5" в соответствующей строчке name="sbpro". Затем "touch /reconfigure" и "/usr/sbin/reboot" Например, имеется SoundBlaster 16 или AWE32 со следующими спецификациями: IRQ 2, Audio I/O Address 0x220, и 8 & 16 bit DMA channels 1 & 5:
name="sbpro" class="sysbus" interrupts=5,2 reg="-1",9,0,1,0x220,0x14 type="SB16" dma-channels=1,5; Для SoundBlaster PRO, это выглядит так (один каналe DMA: 1):
name="sbpro" class="sysbus" interrupts=5,2 dma-channels=1 reg="-1",1,0,1,0x220,0x14 type="SBPRO"; Остальные числа не трогайте. Убедитесь, что эти ресурсы сконфигурированы для карты и не используются другими устройствами. Например, NICs и параллельные порты часто используютen IRQ 5, а карты token ring часто используют IOA 0x220. Подробнее - "man sbpro." Коммерческой альтернативой является использование 4Front Technologies' Open Sound System (OSS). Имеется тестовая 10-дневная версия. После истечения этого срока, она стоит $30, но хороша для экономии времени. Для более новых карт, нежели SoundBlaster 16/32/Pro, есть только следующий путь. Возьмите tar.Z файл с http://www.opensound.com/, распакуйте, и запустите процедуру инсталяции ./oss-install и пусть она сама распознает звуковую карту. Перезагрузите OS (или по-крайней мере выполните sync), затем исполните "soundon", чтобы включить драйвер вручную (см. файл oss/Readme, как разрешить автоматически).
(6.17) Как разрешить audio выход с CDROM на SBPRO карту? Запустите audiocontrol, затем выберите "Record." Ха-ха, "Record" на самом деле означает "Sound Source ;-)." В record окне программы выберите "Internal CD" (другие меню - Microphone или Line in).
Программ audiocontrol должна быть запущена перед тем, как
Вы стартуете программу для проигрывания CD.
Я использую workman, но вы можете попробовать другие открытые программы,
такие, как xmcd.
Я не нашел графического CD player'а в OS Solaris.
Какие еще?
Robert Muir сообщает, что Вы можете воспользоваться этим не графическим
приложением:
[Спасибо Eugene Bobin и Robert Muir]
(6.18) Решена ли "проблема 2000 года" в Solaris/x86? Да - при наличии установленных патчей. Solaris 7, 2.6, 2.5.1, 2.5, и 2.4 можно сделать Y2K-безопасными, установив комплект Y2K патчей. Их можно взять здесь: http://sunsolve.Sun.COM/ Y2k информация по OS Solaris/x86 доступна на http://www.Sun.COM/y2000/ Из всех Y2K патчей только make и sccs патчи имеются в Recommended Patches set. Для OS Solaris/x86 Y2K рекомендованные патчи смотрите здесь: http://access1.Sun.COM/patch.y2k/ Полный Y2K patch cluster для каждой версии OS Solaris здесь: http://sunsolve.Sun.COM/pub-cgi/show.pl?target=patches/y2k-patches. Последняя ссылка может быть доступна только для зарегистрированных или лицензированных пользователей. Хотя, конечно, я не платил никаких денег для доступа к ней (возможно, кроме лицензии на OS Solaris).
Команда "showrev -p" показывает, какие патчи у Вас уже проставлены. Любой может получить рекомендованные патчи. Не рекомендованные патчи недостаточно важны и, как правило, требуют регистрации для доступа и скачивания.
(6.19) Можно ли использовать Solaris/x86 для установки "headless" сервера? Да, это может быть сделано, но это зависит от BIOS, т.к. многие BIOS'ы не будут загружать систему без клавиатуры или видеоадаптера. Консоль может быть сконфигурирована для последовательного порта, как описано ниже. 1. Установите на последовательном порту сигнал Carrier Detect (CD) в состояние HIGH и (для Solaris 2.6 только) сигнал Data Set Ready (DSR) тоже в HIGH. Если Вы не сделали этого -- грузиться не будет. Это может быть сделано с помощью подсоединения типа NULL modem, либо либо по следующей схеме, соответственно для 25-и и 9-и-штырьковых разъемов: DTE A DTE B 25 (9) 25 (9) ------ ------ FG 1 (-) ------ 1 (-) FG TD* 2 (3) ------ 3 (2) RD RD 3 (2) ------ 2 (3) TD* CTS 5 (8) -+---- 20 (4) DTR* DSR 6 (6) -| +- 5 (8) CTS CD 8 (1) -+ |- 6 (6) DSR DTR* 20 (4) ----+- 8 (1) CD SG 7 (5) ------ 7 (5) SG RTS* 4 (7) (nc) 4 (7) RTS* RI 22 (9) (nc) 22 (9) RI * DTE (terminal/computer) driven (nc) = нет соединения
Если NULL modem не полный ("incomplete"), то процесс загрузки
подвиснет вскоре после старта драйвера asy (после сообщения "asy0 is /isa/asy@1,3f8"
или соответственно asy1/2f8).
2. Установите Ваш терминал в (9600 bps,8 bits, No parity, 1 stop bit).
3. Для 2.6+ используйте команду eeprom, чтобы установить консоль (ttya, ttyb):
eeprom input-device=ttya output-device=ttya
(прям, как на SPARC'е? ;-)
setprop output-device com1 setprop input-device com1В Solaris 2.5.1 добавьте "set console = 1" в /etc/system. [Спасибо John Weekley, Scott Wedel, Kenneth Wagner, Andy Spitzer, Kai O'Yang, Michael Wang, David Page, и Andrew Schwabecher]
(6.20) Можно ли получить Sun-style клавиатуру (Ctrl & Caps Lock reversed) для Solaris/x86? Следующая информация взята у Don Christensen (6/1998): Я нашел две возможности, Sun PC-style type 5 keyboard от Workstation Express, и Sun Unix-style type 5 keyboard от NCD. Обе клавиатуры выглядят много более солидно, нежели обычная клавиатура PC, причем NCD, по моему мнению, слегка лучше (если не считать, что она Unix-style). С NCD клавиатурой есть небольшая проблема - три клавиши не "видятся" PC. Однако, имеется пять дополнительных клавиш, которые могут быть использованы вместо этих трех (пространство между клавишами курсоров, клавишами Insert, Del и т.д. заполнено пустыми клавишами). Немного усилий с xmodmap - и клавиатура будет функционировать отлично. Я не проверял, все ли клавиши "видны" на клавиатуре Workstation Express, но надеюсь, что она окажется такой же хорошей или даже лучше, чем NCD. У меня было больше проблем с моей Toshiba Tecra 740CDT. Когда просто втыкаешь, ни одна клавиатура не работает. К моему великому удивлению, обе клавиатуры работали, когда их подсоединяешь через Y adaptor (так что я мог также втыкать их в разъем mouse). Однако, многие клавиши на NCD клавиатуре не были "видны". Меньшее количество клавиш было не "видно" на клавиатуре Workstation Express, но вполне достаточно, чтобы считать ее не работоспособной. Служба поддержки NCD утверждает, что их клавиатура поддерживает "Scan Set 3", в то время как большинство клавиатур PC поддерживают "Scan Set 2". Я в действительности не знаком с аппаратной частью PC, но меня не удивляет, что контроллер клавиатуры был бы слишком "тупым", если бы не поддерживал любую клавиатуру. Это кажется весьма правдоподобным объяснением, по крайней мере для laptop'ов. Если я когда-нибудь найду прямой контакт с Toshiba, я надеюсь они смогли бы модернизировать BIOS, чтобы поддерживать эти клавиатуры (но я не затaиваю дыхания). Я просил наш IT отдел заказать клавиатуру для меня, так что у меня нет точных цифр, но Kathy Fulton из NCD (650-919-2888) сказала мне, что клавиатура стоит около $116. Номер модели - N-123UX (мне сказали, что номер модели - SU192, но на обратной стороне ее было обозначено N-123UX). [См. http://www.ncd.com/ - D.A.] У меня нет под рукой каталога Workstation Express. [Нет Web страницы! Звоните 1-800-844-5757. The part number is #DCA1905, with #DCA1645 (AT adapter) or #DCA1646 (PS/2). - D.A.] Лично я только логически меняю местами клавиши Control_L и Caps_Lock. Создайте следующий файл $HOME/.xmodmaprc: remove Lock = Caps_Lock remove Control = Control_L keysym Control_L = Caps_Lock keysym Caps_Lock = Control_L add Lock = Caps_Lock add Control = Control_Lи добавьте "xmodmap $HOME/.xmodmaprc" в Ваш $HOME/.dtprofile файл.
(6.21) Поддерживается ли несколько терминалов на консоли Solaris/x86 аналогичных в Linux, FreeBSD, Interactive Unix, и SCO? Да. Начиная с OS Solaris/x86 2.4, они больше не конфигурируются при инсталяции, но еще работают, если потом их сконфигурировать вручную. Sun исключил их, так они официально больше не поддерживаются и рекомендуется использовать CDE Workspace области для создания нескольких консольных экранов. К счастью, они не удалили функциональность из ядра, так что Вы можете сконфигурировать несколько виртуальных терминалов для себя следующим образом: Во-первых, от root'а, проверьте device's major number с помощью grep:
# grep -i chanmux /etc/name_to_major chanmux <number> Во-вторых, проверьте, что имеются /dev/vt* (с помощью ls -l /dev/vt*). Если их нет, то создайте /dev элементы, подставляя в качестве <number> все, что вы получите с помощью grep'а:
mknod /dev/vt01 c <number> 1 mknod /dev/vt02 c <number> 2 etc... Скопируйте следующие строчки в /etc/inittab (после записи "co:"), и убедитесь, что каждая занимает одну строку:
|
Украинская Баннерная Сеть
|