Компютри


Първо, уточнявам, че не се оплаквам, както напоследък ми става навик. Второ, поводът е съвсем банален, но ме развесели. И тъй:

Днес решавам да добавя една мрежа, където да си клепам и тествам разни работи. Нарочно избирам 10.x.y.0/24, за да е ясно различима от 192.168.1.0/24 и за да не се притеснявам, ако случайно оклепам повече от предвиденото. И се почва веселото… Оказа се, че в 10.x.y.0/24 вече има хостове, хем не малко. Тогава ми присветна, че доставчикът вероятно се е замислил за добруването ми и е оставил нейде някакви благинки. След 5 минути ровене подозренията ми се потвърдиха — на един от хостовете има (kind of) публично достъпен SMB дял, с много content и — само по себе си забележително — нулево присъствие на порно. Не съм специално учуден, дет’ са вика, то си е в реда на нещата. Даже ми стана едно такова мило, че са се погрижили да предвидят нуждите на клиента. LAN-ска романтика…

Не знам какво му става на Пецо, държи се страшно нестабилно. Симптомите са такива:

  1. През 5-10 мин. екранът му угасва сам, без никакво съобщение за грешка.
  2. Компютърът продължава да работи.
  3. Не може да бъде спрян от ВКЛ/ИЗКЛ, също не може да бъде рестартиран от Reset.
  4. Ако го спра от контакта или от копчето до захранването, после 2-3 мин. не ще да запали.

Предположенията ми са/бяха следните:

  • дефектно захранване и/или захранващ кабел
  • проблем с NVidia драйвера (100.14.19)
  • неправилни настройки за температурата в BIOS

Последното предположение май го отхвърлих, тъй като докладваната температура е 42°C, а критичната граница е нагласена на 70°C. Така или иначе, изключих разните Smart Fan и Automatic Shutdown опции и си инсталирах lmsensors. От това последното като че няма много полза. През Gnome смъкнах честотата на процесорите (става дума за Athlon64 X2@2.1 GHz) до 1GHz, а sensors твърди, че:

k8temp-pci-00c3
Adapter: PCI adapter
Core0 Temp: +10°C
Core0 Temp: -2°C
Core1 Temp: +3°C
Core1 Temp: -3°C

WTF?! Компютърът е нов, купен преди около 3 месеца. Не съм го юркал за нищо. Кабелът изглежда изправен и работи добре с всякакви други монитори, принтери и т.н. Май остана причината да е в NVidia драйвера или захранването. Почвам сериозно да се плаша, честно. Ако някой има идея какво евентуално става, моля да даде акъл.

Вероятно и други са го срещали, но на мен ми е за пръв път. Преди малко цъкнах Go->Clear History и получих следното предупреждение: Are you sure you want to forget history? If you do, you will be doomed to repeat it.

Готино е :)

Днес е един от онези дни, в които съм твърдо убеден, че има Господ и Той е българин. Освен това изглежда, че чете какво пиша тук и в пристъп на благосклонност си е рекъл „какво пък, нека зарадваме момчето“. Причината за радостта ми е, че QNX Software Systems отварят кода на операционната си система, също на Photon и на Momentics. Май не е далеч денят, когато NetBSD+Photon ще бъде реалност :)) community.qnx.com е новото сборище на QNX общността, а добрата вест идва от OSnews.com.

Имам нова любов - QNX. Всъщност не точно QNX, а графичната му среда Photon: минималистична, удобна, функционална, бърза, красива. Самият QNX е система, която също притежава тези качества, но за свикналия с GNU или BSD софтуер е малко неинтуитивен. Например, няма команда man. За това пък всичката документация е налична в HTML. Включен е не лош Programmer’s Guide, а в Utilities Reference и Libraries Reference е събрана повечето нужна информация. Системата предоставя POSIX API, тъй че няма специални изненади. Шелът е PDKSH, което е прекрасна новина, предвид какви чудесии има в някои SysV. cc също е приятна изненада — представлява леко пипната (и малко стара) версия на gcc. Представата ми за идеална операционна система вече е комбинацията NetBSD+Photon. За жалост Photon е комерсиален продукт и едва ли ще го портнат за BSD. Вероятно е възможно да се инсталира BSD userland върху QNX, но засега не ща да се захващам с такива подвизи. Ето как изглежда и самият Photon:

QNX Photon

За онези от NetBSD потребителите, които са се опитвали да кирилизират конзолата и не са успели, давам тази връзка. Ако я няма, не съм виновен аз :) Инструкциите накратко, адаптирани за наши условия:

  1. Във /usr/src/sys/dev/wscons/wskbd.c променяте

    case KS_Mode_switch: update_modifier(id, type, 0, MOD_MODESHIFT);

    на

    case KS_Mode_switch: update_modifier(id, type, 1, MOD_MODESHIFT);

  2. Прекомпилирате ядрото. Изнамирате си отнякъде RAW шрифтове и keymap-ове. Копирате шрифтовете в /usr/share/wscons/fonts. Копирате keymap-овете в /usr/share/wscons/keymaps.

  3. Във /etc/wscons.conf добавяте редовете:

    • за CP1251
      encoding=us
      font cp1251 - - iso /usr/share/wscons/fonts/cp1251.816
      mapfile /usr/share/wscons/keymaps/pckbd.bg.qwerty.cp1251
      # Или pckbd.bg.bds.cp1251
    • за KOI8-R
      encoding=us
      font koi8r - - iso /usr/share/wscons/fonts/koi8r.816
      mapfile /usr/share/wscons/keymaps/pckbd.bg.qwerty.koi8-r
  4. В /etc/rc.local добавяте:

    for TTY in 1 2 3; do
    wsconsctl -f /dev/ttyE${TTY} -dw font=cp1251
    done

  5. В ${HOME}/.profile добавяте:

    export LANG=bg_BG.CP1251

    и евентуално

    export LC_CTYPE=bg_BG.CP1251

  6. Рестартирате.

Ако ви е нужен KOI8-R локал, просто копирайте ru_RU.KOI8-R.

Keymap-овете се разпространяват под BSD лиценз. Шрифтовете са отвсякъде, но повечето са от Slackware 8.1 или от пакета „Терминус“ на Димитър Жеков, като някои от тях са модифицирани. По-специално, iso*kg.816 шрифтовете покриват съответната ISO-8859 кодова страница, но знаците в диапазона 0×80-0×9F са приспособени да показват KOI8-R псевдографика.

28.X.2007 г.
Руската страничка за кирилизация на NetBSD окончателно се е изпарила. Тук публикувам една леко редактирана версия, която пазя локално. Вероятно в кеша на Google все още може да се намери нещо.

Максим С. Витвицкий (c0dez@mail.ru)
28.02.2005 11:23:22 GMT


Все опыты проводились на свежеустановленной NetBSD 2.0 с wscons драйвером консоли. ОК, начнем. Русификация консоли сводится: к обеспечению ввода русских букв с клавиатуры, выводе их на экран и установке системной локали. Сначала обеспечим ввод русских букв с клавиатуры, добавив русскую раскладку. Для этого, в файле /etc/wscons.conf добавим или раскомментируем следующую строку:

encoding=ru

Ввод русских букв происходит при зажатии одной из клавиш Alt, причем при зажатии левой кнопки Alt — ввод осуществляется в раскладке ЯВЕРТ, а при зажатии правой — ЙЦУКЕН. Но, набирать текст, зажимая одну или две клавиши — неудобно. Выход один — фиксированный переключатель. Для реализации фиксированного переключателя раскладки, нам понадобится пересобрать ядро с некоторыми изменениями. Скачайте и распакуйте файлы ядра. Затем в файле /usr/src/sys/dev/wscons/wskbd.c находим следующие строчки:

case KS_Mode_swith: update_modifier(id, type, 0, MOD_MODESHIFT);

и заменяем 0 на 1. Пересобираем и устанавливаем ядро. Пересборка ядра описана в документации и вопросов, надеюсь, не вызовет.Далее нам нужны консольные шрифты (в комплекте с системой не идут). Следовательно, нужно их загрузить, подойдут шрифты от OpenBSD или от FreeBSD (c некоторыми изменениями). Готовые можно взять здесь fonts.tar.gz.Если вы решили использовать шрифты от FreeBSD, то Вам надо выполнить команду:

uudecode -p </путь/к/koi8-r-8x16.fnt> /usr/share/wscons/fonts/koi8.816

Далее добавляем в файл /etc/wscons.conf следующие строки:

font koi8 - - iso /usr/share/wscons/fonts/koi8.816
mapfile /usr/share/wscons/keymaps/pckbd.ru.koi8-r

Перезагружаемся для того, чтобы изменения в wscons вступили в силу. После перезагрузки нужно активизировать шрифт на каком-нибудь терминале, вводим:

wsconsctl -f /dev/ttyE* -dw font=koi8

где * — номер консоли. Я бы рекомендовал загружать шрифты во все консоли, кроме 0, нулевая консоль должна остаться в случае любого краха системы — рабочей. Для удобства, я предлагаю проводить активизацию шрифтов во время загрузки системы, чтобы каждый раз при перезагрузке не делать этого руками. Для этого нужно просто добавить несколько строк в файл /etc/rc.local:

/sbin/wsconsctl -f /dev/ttyE1 -dw font=koi8 >/dev/null
/sbin/wsconsctl -f /dev/ttyE2 -dw font=koi8 >/dev/null
/sbin/wsconsctl -f /dev/ttyE3 -dw font=koi8

Эти команды активизируют русский шрифт в 1, 2 и 3 консоли, в последней строке я специально не убирал вывод сообщения об активизации шрифта, чтобы его было видно при загрузке системы.Последний штрих. Добавляем системную локаль, в файле ~/.login добавляем следующие строки:

setenv LC_CTYPE ru_RU.KOI8-R
#для C shell (csh, tcsh)
setenv LANG ru_RU.KOI8-R

или

export LC_CTYPE=ru_RU.KOI8-R
#для bash export LANG=ru_RU.KOI8-R

Перезагружаемся и наслаждаемся русским языком в консоли.Для корректного отображения русских символов в некоторых readline приложениях (bash, mysql, psql, smbclient и т.д.) создадим файл ~/.inputrc, содержащий следующие строки:

set convert-meta off
set input-meta on
set output-meta on

Чуть не забыл про Samba, в файл /etc/samba/smb.conf добавляем следующие строки:

[global]

client code page = 866
character set = koi8-r

Все. Спасибо всем, кто помогал.

Тия от МРРБ толкова ли нямат един грамотен човек да им оправи сайта, бе?! Вече втори ден там се вижда само това:

Дизайн, батка!

В прилив на съмнения и ентусиазъм реших за последно да помъча build-a на NetBSD 3.1. Пак се чупи, но две минути по-късно — вече изкарва 37 :)

некъв_файл_дет_не_го_помня.c:(.text+0x42): undefined reference to 'неква_функция_дет_не_га_помня'

Убуу, ама цялата програма се линква само към libc. Значи:

$ nm /usr/lib/libc.so | grep неква_функция_дет_не_га_помня
deadbeef t неква_функция_дет_не_га_помня
$ nm /usr/src/obj.amd64/destdir.amd64/usr/lib/libc.so | \
> grep неква_функция_дет_не_га_помня
0badfeed t неква_функция_дет_не_га_помня

Добре, да кажем, че не си намира хедърите…

# make cleandir
# make obj
# make includes
# make build

некъв_файл_дет_не_го_помня.c:(.text+0×42): undefined reference to ‘неква_функция_дет_не_га_помня’

Кво не му ‘аресва бе, да му #$@ мамата!?

От вчера много сериозно взех да преосмислям престъпните си наклонности (в т.ч. активно торентстване). Причината е, че в САЩ борбата срещу „противообществените“ интернет прояви взема нови измерения. Там са наложили особено жестоко наказание на един провинил се — задължили са го да ползва Windows. У нас е по-просто — конфискуват ти компютъра (пу-пу!), а ти пиеш една студена и го прежалваш за минимум 2-3 години или направо завинаги. Ами ако българските органи решат да почерпят опит от хамериканските? Мале-е-е-е, страх!

19.IX.2007 г.
Енея е писала по темата тук.

Мразя, мразя, мразя браузърът да ми забива! Проклетата гадина все по-често го прави без видима причина и ако не престане, ще си сложа нещо по-просто и стабилно — lynx, например.

Та, след като се оплаках, да споделя случилото се от последните дни. Привърших прехвърлянето на всичките си файлове на новия компютър, лъскав Athlon 64 X2 4000+. Самото прехвърляне така и не започна няколко дена, защото се чудех как да подходя — с CD-та (бавно), NFS (също) или някак иначе. По същото време човърках fuse, тъй че в крайна сметка стана по третия начин — с sshfs. Да е жив и здрав, който го е написал, програмката е чудесна! Честно казано, не съм убеден, че sshfs е по-бързо от NFS, но дори само откритието си струваше.

Пак по това време се прежалих да пробвам NetBSD 3.1 и останах врло разочарован. Наблюдения:

1) Претаковали са build.sh.
2) Претаковали са целия build process.

Досега

./build.sh \
-V MKDYNAMICROOT=no \
-V OBJMACHINE=i386 \
-m i386 -a i386 \
-D /usr/src/obj.i386/destdir.i386 \
-R /usr/src/obj.i386/releasedir \
-T /usr/src/obj.i386/tooldir.NetBSD-2.1-i386 \
build

върху NetBSD/i386 си работеше unattended безпроблемно и свършваше за няколко часа. В резултат на това логично (?) предположих, че

./build.sh \
-V MKDYNAMICROOT=no \
-V OBJMACHINE=amd64 \
-m amd64 -a x86_64 \
-D /usr/src/obj.amd64/destdir.amd64 \
-R /usr/src/obj.amd64/releasedir \
-T /usr/src/obj.amd64/tooldir.NetBSD-3.1-x86_64 \
build

върху NetBSD/amd64 също ще си работи безпроблемно, но не би. На втората минута гърми, а ако го пусна без „екстри“, т.е. 3-ти и 4-ти ред — на 35-тата минута. Същото се отнася и за гол make:

make \
MKDYNAMICROOT=no \
# OBJMACHINE=amd64 \
# MACHINE=amd64 \
# MACHINE_ARCH=x86_64 \
DESTDIR=/usr/src/obj.amd64/destdir.amd64 \
RELEASEDIR=/usr/src/obj.amd64/releasedir \
TOOLDIR=/usr/src/obj.amd64/tooldir.NetBSD-3.1-x86_64 \
build

се дъни на същите места като build.sh.

Като изключим това, NetBSD си остава извънредно стабилно дистро, с добре подбрана base system и супер документация. Също и единственият UN*X, който зареди от раз amd64 ядро — прехваленото Ubuntu зависна, а Gentoo ми обясни, че не разбира от SATA. Засега оставам с Fedora/i386 (заради пустия Flash) и 2.1.0-STABLE. Като се появи 4.0, което май ще е скоро, ще видим пак.

« Previous PageNext Page »