31 марта 2009 г.

Поддержка кириллицы в консоли Linux

Для настройки фреймбуфера и кириллицы в терминале пришлось сделать несколько телодвижений и отказаться от загрузки, такого симпатичного, splash-а...
В /boot/grub/menu.lst необходимо дописать vga=792 (фреймбуфер в режиме 1024х768 24м.цвет или 791) и комментируем splash из-за загрузки которого кириллица и пропадает... Должно получиться что-то подобное:

kernel /boot/vmlinuz-2.6.27-11-generic root=/dev/sda2 ro quiet vga=792 #splash

Для наших целей используем console-setup, который у нас уже установлен.Этот пакет предоставляет поддержку кириллицы в консоли Linux и предлагает множество настроек.
Необходимо запустить 'sudo dpkg-reconfigure console-setup' и настроить на шрифт terminus-bold (или с VGA), при локале UTF-8 c codeset KOI8... Так как мне это нужно, то в /etc/default/console-setup добавляем украинскую раскладку "ua"... 'winkeys' можно и не использовать - это дело предпочтений и привычки (Можно писать и ",ua(winkeys)").
Получаем cat /etc/default/console-setup:

# A configuration file for setupcon

# Change to "yes" and setupcon will explain what is being doing
VERBOSE_OUTPUT=no

# Setup these consoles. Most people do not need to change this.
ACTIVE_CONSOLES="/dev/tty[1-6]"

# Put here your encoding. Valid charmaps are: UTF-8 ARMSCII-8 CP1251
# CP1255 CP1256 GEORGIAN-ACADEMY GEORGIAN-PS IBM1133 ISIRI-3342
# ISO-8859-1 ISO-8859-2 ISO-8859-3 ISO-8859-4 ISO-8859-5 ISO-8859-6
# ISO-8859-7 ISO-8859-8 ISO-8859-9 ISO-8859-10 ISO-8859-11 ISO-8859-13
# ISO-8859-14 ISO-8859-15 ISO-8859-16 KOI8-R KOI8-U TIS-620 VISCII
CHARMAP="UTF-8"

# The codeset determines which symbols are supported by the font.
# Valid codesets are: Arabic Armenian CyrAsia CyrKoi CyrSlav Ethiopian
# Georgian Greek Hebrew Lao Lat15 Lat2 Lat38 Lat7 Thai Uni1 Uni2 Uni3
# Vietnamese. Read README.fonts for explanation.
CODESET="CyrKoi"

# Valid font faces are: VGA (sizes 8, 14 and 16), Terminus (sizes
# 12x6, 14, 16, 20x10, 24x12, 28x14 and 32x16), TerminusBold (sizes
# 14, 16, 20x10, 24x12, 28x14 and 32x16), TerminusBoldVGA (sizes 14
# and 16), Fixed (sizes 13, 14, 15, 16 and 18), Goha (sizes 12, 14 and
# 16), GohaClassic (sizes 12, 14 and 16).
FONTFACE="TerminusBoldVGA"
FONTSIZE="16"

# You can also directly specify nonstandard font and ACM to load:
# FONT=/usr/local/share/funnyfonts/sarge16.psf
# ACM=/usr/local/share/consoletrans/my_special_encoding.acm

# The following variables describe your keyboard and can have the same
# values as the XkbModel, XkbLayout, XkbVariant and XkbOptions options
# in /etc/X11/xorg.conf.
XKBMODEL="pc105"
XKBLAYOUT="us,ru,ua"
XKBVARIANT=",winkeys,winkeys"
XKBOPTIONS="grp:menu_toggle,grp_led:scroll"


# Do not update the following md5 sum if you change
# /etc/console-setup/boottime.kmap.gz and Debconf will not overwrite
# your custom keymap. Do not update it even if you want to make
# Debconf overwrite it. Instead simply specify the empty string as
# a md5 sum.

BOOTTIME_KMAP_MD5="aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"

#### end ####

Для изменения размера сплаш-изображения 'sudo vim /etc/usplash.conf' пишем значения 1024x768 (можно 'sudo dpkg-reconfigure usplash', но не обязательно), потому что с такими параметрами загружается наш терминал, но это если вам не столь важно иметь кириллицу сразу... Так вот, если у вас включен splash перезапуск console-setup подключает снова русский шрифт в консолях [1-6]: sudo /etc/init.d/console-setup restart

Так же можно установить и использовать пакет console-cyrillic, но не вижу в этом смысла ведь и так все работает, а сплаш не является чем-то критично важным... Тем более что перезапуск console-setup можно где-нибудь прописать, что бы он выполнялся автоматически после того как его настройки были сбиты...

P.S. Хотелось бы знать, что действительно и как правильно что-то изменить, чтобы получить и рус.консоль и загрузку системы со splash...

5 марта 2009 г.

TV-выход и NVIDIA geforce 6600

Вот что-то надоело мне смотреть фильмы и аниме на мониторе и пришлось настраивать себе "второй монитор", а точнее TV-выход на свой "Sansung HDTV 1080i/720p Ready", которым я почти не пользовался со дня его покупки - ну так получилось :-) Из локалной сети беру фильмы/мульты и все без рекламы (депутатов и продуктов), которая ужасно надоела...

Так вот, к делу... У меня NVIDIA Geforce 6600 с tvout s-video на 9pin, о чем раньше не очень задумывался, пока спонтанно не купи кабель. По простоте душевной, не мог и подумать, что видов этих штекеров и т.д. так много... Так вот в наличии у меня оказался THOMSON KTV620 (Advent S-VHS -> S-VHS 10m, 4x4 pin). И уже думал, что нужно будет найти и купить переходник, которого у меня нет или перепаивать один штекер, но порыскав по "гуглу" случайно наткнулся на высказывание о возможности использовать и без переходников. Рискнул, но не многим, отломав стерженек в паяном штекере, который после этих несложных манипуляция вошел в гнездо видео карты. Далее оставалось только экспериментировать с выводом на сам телевизор, что раньше никогда не делал и даже не имел понятия с чего начать ;-)

Экспериментировал в основном с nvidia-settings, если запускать через sudo, то можно сразу внести изменения в /etc/X11/xorg.conf
В инете что-то читал и для начала выбрал в настройках режим TwinView, но мне не понравилось: монитор и все, что на не дублировалось на телевизоре причем с "неправильным" для меня разрешением на телевизоре (рабочий стол не влезает в экран), а так же запуск mplayera на мониторе был не на весь экран, а в четверть оного (вернее самого фильма) и т.д. Незнаю почему, но Xinerama мне тоже не нравится... Одним словом после разных проб пришел к решению настроить телевизор как отдельный монитор в режиме "Separate X screen". Теперь наслаждаюсь Работой на мониторе и возможностью запустить фильм на телевизоре. И к слову, таким образом Рабочий стол Гнома или флукса запускается в размер экрана телевизора, а не больше. Правда не получаю возможность использовать мыш или клавиатуру на телеке (работало только при TwinView), но для меня это не помеха, так как нужно это все только для фильмов (но хотелось бы знать, если такое возможно, как добиться такого результата). Может мои настройки и не самые лучшие, но я добился желаемого результата...

Вот еще что интересно! Использую fluxbox и он на телевизоре отображается без моих настроек (только панель), в Гноме тоже самое то с настройками по умолчанию. И где же менять для второго монитора эти настройки, вот в чем вопрос? ;-) Так же хотелось бы получить 100Hz, а не 50HZ на телевизоре и HorizSync, VertRefresh были автоматически получены от монитора LG что же родное от телевизора тут вписать не знаю и займусь этим когда-нибудь позже. Главное, что все работает так как мне было нужно.

Чуть не забыл написать, как что-нибудь запустить на телевизоре!
DISPLAY=":0.1" имя_программы, хотя использую только mplayer и запускаю фильмы так: 'mplayer -display :0.1 путь_фильм.avi', а если точнее то в tux commandere настроил меню для запуска на мониторе или телевизоре и нужной кодировкой субтитров. А вообще лучше настроить mplayer.conf что бы кучу параметров не вводить в консоли каждый раз...


Свой конфиг прилагаю: cat /etc/X11/xorg.conf

Section "ServerLayout"
Identifier "Layout0"
Screen 0 "Screen0" 0 0
Screen 1 "Screen1" 0 0
EndSection

Section "Module"
Load "glx"
EndSection

Section "ServerFlags"
Option "Xinerama" "0"
EndSection

Section "InputDevice"
Identifier "Generic Keyboard"
Driver "kbd"
Option "XkbRules" "xorg"
Option "XkbModel" "pc105"
Option "XkbLayout" "us,ru(winkeys),ua(winkeys)"
Option "XkbOptions" "grp:menu_toggle,grp_led:scroll"
EndSection

Section "Monitor"
Identifier "Configured Monitor"
EndSection

Section "Monitor"
Identifier "Monitor0"
VendorName "LG"
ModelName "LG FLATRON 795FT Plus"
HorizSync 30.0 - 96.0
VertRefresh 50.0 - 160.0
EndSection

Section "Monitor"
Identifier "Monitor1"
VendorName "Sansung"
ModelName "Samsung HDTV 1080i/720p Ready"
HorizSync 30.0 - 96.0
VertRefresh 50.0 - 160.0
EndSection

Section "Device"
Identifier "Configured Video Device"
Driver "nvidia"
Option "NoLogo" "True"
EndSection

Section "Device"
Identifier "Device0"
Driver "nvidia"
Option "NoLogo" "True"
VendorName "NVIDIA Corporation"
BoardName "GeForce 6600"
BusID "PCI:1:0:0"
Screen 0
EndSection

Section "Device"
Identifier "Device1"
Driver "nvidia"
Option "NoLogo" "True"
VendorName "NVIDIA Corporation"
BoardName "GeForce 6600"
BusID "PCI:1:0:0"
Screen 1
EndSection

Section "Screen"
Identifier "Default Screen"
Device "Configured Video Device"
Monitor "Configured Monitor"
DefaultDepth 24
EndSection

Section "Screen"
Identifier "Screen0"
Device "Device0"
Monitor "Monitor0"
DefaultDepth 24
Option "TwinView" "0"
Option "TwinViewXineramaInfoOrder" "CRT-0"
Option "metamodes" "CRT: 1600x1200 +0+0"
SubSection "Display"
Depth 24
EndSubSection
EndSection

Section "Screen"
Identifier "Screen1"
Device "Device1"
Monitor "Monitor1"
DefaultDepth 24
Option "TwinView" "0"
Option "metamodes" "TV: nvidia-auto-select +0+0"
Option "TVOutFormat" "SVIDEO"
Option "TVStandard" "PAL-B"
Option "ConnectedMonitor" "TV" #или "CRT, TV"
SubSection "Display"
Depth 24
EndSubSection
EndSection


*nvidia-auto-select у меня 1024х768, его можно указать и меньше, а также прописать вручную в конфигурационном файле.

Возможно можно и лучше все настроить и прописать вообще все вручную, но так уж вышло, что все работает и правка руками была минимальной и причем не обязательной, потому что заработало и без добавлений/советов которые нарыл в интернете... Спасибо людям писавшим на форумах о своих проблемах в тв-выходом из-за этого свои решил быстрее чего и вам желаю :-)

20 февраля 2009 г.

Удобство sudo для fluxbox

Для того чтобы мы могли перезапускать, останавливать и т.д. свою систему из терминала или через меню флукса нужно правильно настроить sudo. Данные команды используются без ввода пароля с возможностью использовать ввод типа: 'sudo shutdown -r now', а не писать полный путь 'sudo /sbin/shutdown -r now'
Желательно для изменения /etc/sudoers использовать visudo, то есть в терминале вводим 'sudo visudo' и правим файл. Такой подход дает возможность произвести проверку грубых ошибок в настройках судо, что вы не получаете, если правите файл напрямую.
 
Вот мой пример настройки...

paul@ubuntolog:~$ sudo cat /etc/sudoers
# /etc/sudoers
#
# This file MUST be edited with the 'visudo' command as root.
#
# See the man page for details on how to write a sudoers file.
#

Defaults        env_reset

# Host alias specification

# User alias specification

# Cmnd alias specification
Cmnd_Alias SHUTDOWN = /sbin/shutdown
Cmnd_Alias HALT = /sbin/halt
Cmnd_Alias REBOOT = /sbin/reboot
Cmnd_Alias MOUNT = /bin/mount
Cmnd_Alias UMOUNT = /bin/umount

# Usemnd_Alias
root    ALL=(ALL) ALL

# Uncomment to allow members of group sudo to not need a password
# (Note that later entries override this, so you might need to move
# it further down)
# %sudo ALL=NOPASSWD: ALL

# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL

paul ubuntolog = NOPASSWD: SHUTDOWN, HALT, REBOOT, MOUNT, UMOUNT


### конец
N.B. Очень важно! Строка ' = ' должна находится под строкой  '%admin ALL =...'
Не знаю почему, но иначе важи изменения не будут приносить желаемого эффекта.


После настройки прав для своего пользователя можно в меню флуксбокса добавить следующее:

      [exec] (остановить) {xterm -e sudo /sbin/shutdown -h now}
      [exec] (перезагрузить) {xterm -e sudo /sbin/shutdown -r now}
#    [exec] (ждущий режим) {/usr/sbin/pm-suspend}
#    [exec] (спящий режим) {/usr/sbin/pm-hibernate)
#    [exec] (halt sys) {xterm -e sudo /sbin/halt -p}
#    [exec] (reboot sys) {xterm -e sudo /sbin/reboot}


Конечно есть и другие вариации для настройки того же самого, например ввести:
paul ubuntolog = NOPASSWD: /sbin/shutdown -h now, /sbin/hal -p, ...
но мне нравится больше так как описано выше, потому что я получаю возможность сокращенной команды. Ведь так быстрее и удобнее. IMHO. И вообще см. man sudo и google. Одним словом гуглОмань :-)


19 февраля 2009 г.

Запуск имхоблога убунтологии :-)

Всем, привет! Вот и завел себе каплю в море информации. Как вы уже успели заметить, я использую на десктопе Убунту, практически с первых ее выпусков и надеюсь, что на ней и останусь. Мне нравится Гном, но из-за устаревания железа и просто из любопытства когда-то попробовал флуксбок да так на нем и остался. Особенно после обновления с 8.04 до 8.10 стало что-то "тяжеловато" в гноме... На сем сегодня закругляюсь ибо что-то позновато для длинных тирад...