kernel panic in userspace

my own self destruction
  • Blog
  • about
  • articles
    • Virtualbox bridge
    • linux blogging
    • Gentoo on Acer Extensa 5630Z
  • code
    • @unfollowr
    • WordPress
      • WordPress-bbPress syncronization
      • IE Warning
      • PostAds
    • Callisto overlay
    • @listwatcher
  • CV
  • belarusian
  • russian
  • english

ruby overlay and building

Jul 29 2008
7раса – Куклы становятся старше
  • belarusian
  • russian

В Gentoo до недавнего времени насладиться прелестями ruby ветки 1.9 могли только разработчики самого дистрибутива (ну и постоянные читатели багзиллы). Но буквально на днях overlay был выпущен для всеобщего использования. Точнее, сегодня, потому что сразу после объявления в списке мне его найти не удалось, даже пришлось писать письмо ответсвенному человеку.
Теперь можно просто добавить оверлей, размаскировать пакет и обновиться:

layman -L && layman -a ruby
echo >=dev-lang/ruby-1.9.0 >> /etc/portage/package.unmask

Установку необходимо проводить с FEATURES=”-sandbox”, иначе рискуете не собрать, получив ошибку:
./miniruby -I./lib -I.ext/common -I./- -r./ext/purelib.rb -I. -rrbconfig ./tool/compile_prelude.rb ./prelude.rb ./enc/prelude.rb ./gem_prelude.rb prelude.c
:0:in `require': no such file to load -- rbconfig (LoadError)
make: *** [prelude.c] Ошибка 1
make: *** Ожидание завершения заданий...
rbconfig.rb updated

Впрочем, ошибку можно и не получить, тут от погоды зависит. В дождь вот и без этого костыля как-то собралось. Правда, на том же терминале, видимо, запомнило переменные.
Ruby будет установлен в новый слот, так что останется ещё и ветка 1.8.

Компиляция encoding.c может занять много времени и системных ресурсов, не удивляйтесь, оно того стоит (см. ниже)

Со сборкой стандартного ruby из portage у меня были проблемы, если указан USE флаг doc. При сборке скрипт создания документации съедал всю память. Видимо, старые, уже сгенерированные документы не высвобождали память. С новым рубином такого замечено не было, что приятно.
Ну и немножно приятного, чего мне и хотелось от нового ruby. Имеем файл test-unicode.rb следующего содержания:

# coding:utf-8

str = "Руби - отличный язык высокого уровня!"
puts str.length
puts str[3]
puts str.split('').inspect

Заметили костыль в виде # coding:utf-8? Он и будет заниматься тем, что все символы будут корректно обрабатываться. Немножко не так просто, как хотелось бы, но уже что-то :)
Выполнение ruby18 test-unicode.rb выдаст нам следующую лабуду:
67
131
["\320", "\240", "\321", "\203", "\320", "\261", "\320", "\270", " ", "-", " ", "\320", "\276", "\321", "\202", "\320", "\273", "\320", "\270", "\321", "\207", "\320", "\275", "\321", "\213", "\320", "\271", " ", "\321", "\217", "\320", "\267", "\321", "\213", "\320", "\272", " ", "\320", "\262", "\321", "\213", "\321", "\201", "\320", "\276", "\320", "\272", "\320", "\276", "\320", "\263", "\320", "\276", " ", "\321", "\203", "\321", "\200", "\320", "\276", "\320", "\262", "\320", "\275", "\321", "\217", "!"]

Запуск же свежесобранного ruby19 test-unicode.rb покажет следующее:
37
и
["Р", "у", "б", "и", " ", "-", " ", "о", "т", "л", "и", "ч", "н", "ы", "й", " ", "я", "з", "ы", "к", " ", "в", "ы", "с", "о", "к", "о", "г", "о", " ", "у", "р", "о", "в", "н", "я", "!"]

Что ж, куда лучше, не правда ли? :) Очень советую тем, кто ищет что изучить, попробовать ruby, будете приятно удивлены элегантностью и гибкостью ;)
p.s.: заметки по портированию с 1.8 на 1.9 (англ.)

  • belarusian
  • russian

У Gentoo да нядаўніх часоў атрымаць асалоду ад фішак ruby галіны 1.9 маглі толькі распрацаўшчыкі самаго дыстрыбутыву, (ну й пастаянныя чытачы багзіллы). Але буквальна на днях overlay быў выпушчаны для агульнага карыстаньня. Дакладней, сёньня, бо пасьля абвесткі адразу ў сьпісе мне яго знайсьці не атрымаласа, нават ліставаў адказнаму чалавеку
Цяпер можна дадаць овэрлэй, размаскіраваць пакет і аднавіцца:

layman -L && layman -a ruby
echo >=dev-lang/ruby-1.9.0 >> /etc/portage/package.unmask

Усталёўку неабходна праводзіць зь FEATURES=”-sandbox”, інакш маеце рызыку не сабраць, атрымаўшы памылку:
./miniruby -I./lib -I.ext/common -I./- -r./ext/purelib.rb -I. -rrbconfig ./tool/compile_prelude.rb ./prelude.rb ./enc/prelude.rb ./gem_prelude.rb prelude.c
:0:in `require': no such file to load -- rbconfig (LoadError)
make: *** [prelude.c] Ошибка 1
make: *** Ожидание завершения заданий...
rbconfig.rb updated

Але, памылку можна і не атрымаць, тут ад надвор’я залежыць. У дождж сабралося і бяз гэтага кастыля. Праўда, на тым жа тэрмінале, магчыма, запомніла пераменныя.
Ruby будзе ўсталяваны ў новы слот, так што застанецца яшчэ і ветка 1.8.

Кампіляцыя encoding.c можа заняць шмат часу і сістэмных рэсурсаў, не зьдзіўляцеся, яно таго вартае (гл. ніжэй)

Са зборкай стандартнага ruby з portage у мяне были праблемы, калі указаны USE флаг doc. Пры зборцы сцэнар стварэньня дакумэнтацыі зьядаў ўсю памяць. Магчыма, старыя, ужо згенераваныя дакуманты не вызвалялі памяць. З новым рубінам такога заўважана не было, што прыемна.
Ну і трошкі прыемнага, чаго мне і хацелася ад новага ruby. Маем файл test-unicode.rb наступнага зьместу:

# coding:utf-8

str = "Рубі - выдатная мова высокага ўзроўню! ?yko?naja!"
puts str.length
puts str[3]
puts str.split('').inspect

Заўважылі кастыль ў выглядзе # coding:utf-8? Ён і будзе займацца тым, што ўсе сымбалі будуць карэктна апрацоўвацца. Трошкі ня так проста, як хацелася б, але ўжо штосьці :)
Выкананьне ruby18 test-unicode.rb выдасьць нам наступную лабуду:
82
131
["\320", "\240", "\321", "\203", "\320", "\261", "\321", "\226", " ", "-", " ", "\320", "\262", "\321", "\213", "\320", "\264", "\320", "\260", "\321", "\202", "\320", "\275", "\320", "\260", "\321", "\217", " ", "\320", "\274", "\320", "\276", "\320", "\262", "\320", "\260", " ", "\320", "\262", "\321", "\213", "\321", "\201", "\320", "\276", "\320", "\272", "\320", "\260", "\320", "\263", "\320", "\260", " ", "\321", "\236", "\320", "\267", "\321", "\200", "\320", "\276", "\321", "\236", "\320", "\275", "\321", "\216", "!", " ", "\305", "\240", "y", "k", "o", "\305", "\255", "n", "a", "j", "a", "!"]

Запуск сьвежасабранага ruby19 test-unicode.rb адлюструе наступнае:
49
і
["Р", "у", "б", "і", " ", "-", " ", "в", "ы", "д", "а", "т", "н", "а", "я", " ", "м", "о", "в", "а", " ", "в", "ы", "с", "о", "к", "а", "г", "а", " ", "ў", "з", "р", "о", "ў", "н", "ю", "!", " ", "?", "y", "k", "o", "?", "n", "a", "j", "a", "!"]

Ну што, куды лепей, ці ня так? :) Вельмі раю тым, хто жадае нешта вывучыць, паспрабаваць ruby, будзеце прыемна зьдзіўленыя элегантнасьцю і гнуткасьцю ;)
p.s.: нататкі па партаваньню з 1.8 на 1.9 (ангельская)

{ Comments : 2 Comments » }
{ Tags: bugs, coding, emerge, features, gentoo, howto, overlays, portage, ruby, unicode, use }

so lucky

Jul 25 2008
Stereophonics – Getaway
  • belarusian
  • russian

Мне в последнее время очень фортило, просто нездорово даже как-то. После того, как я поступил в БГУИР на AI на бюджет, я решил, что мне удача уже не так нужна, как некоторым моим любимым людям, и ритуально отсыпал её из открытых рукавов в сложенные ладошки девушки. “Надо просто пальцы вынимать из колеса фортуны”, – вспомнилось мне изречение.
В тот же день меня пытался укусить турникет в метро, что ему почти удалось. Затем я два раза на нервах переподавал документы, на вокзале я сломал эскалатор (?!), представляю, что со мной бы сделали, случись такое в Питере. Когда я приехал, отключили горячую воду, сегодня ночью отключили свет, у меня умер wifi в ноутбуке за день до этого, “разрывов” за вчера было штук 10. Ко всему этому у меня за ночь накидалось 400 спамовых комментов. И это ещё не всё.
Ну не прелестно ли? :)

  • belarusian
  • russian

Мне апошнім часам вельмі фарціла, проста неяк нездарова нават. Пасьля таго, як я паступіў у БДУІР на AI на бюджэт, я вырашыў, што мне такі шалёны посьпех не так патрэбны, як некаторым маім любімым людзям, і рытуальна адсыпаў форт з адкрытых рукавоў у складзеныя далонькі дзяўчыны. “Надо просто пальцы вынимать из колеса фортуны”, – узгадалася выказваньне.
У той жа дзень мяне паспрабаваў пакусаць турнікет у мэтро, што ў ягоамаль атрымалася. Потым я два разы на нэрвах перепадаваў дакуманты, на вакзале я зламаў эскалатар (?!), уяўляю, што са мной бы зрабілі ў Піцеры за такое. Калі я прыехаў, адключылі гарачую ваду, сёньня ноччу адключылі сьвет, у мяне памёр wifi у ноўтбуке за дзень да гэтага, “разрываў” за ўчора было штук 10. Да ўсяго гэтага за ноч у мяне накідалася 400 спамавых камэнтаў. І гэта яшчэ не ўсё.
Ну ці не шыкоўна? :)

{ Comments : 17 Comments » }
{ Tags: escalator, fortune, internet, life, light, lucky, me, wifi }

nano color highlight howto

Jul 24 2008
Radiohead – The Bends
  • belarusian
  • english
  • russian

Наверняка многие не привыкли пользоваться vim как стандартным текстовым редактором и до сих пор пользуются nano. Признаться честно, я для быстрого редактирования и сам к нему прибегаю. Мне куда быстрее в нём быстро исправить что-то, сохраниться сочетанием клавиш и сочетанием же выйти. В vim я такое пока не осилил (каюсь, буду исправляться).
Но дело не в сочетаниях клавиш, дело в подсветке синтаксиса. Подсветка – очень приятная вещь даже при быстром редактировании. Возможно, это на подсознательном уровне так, потому что особой разницы нету, если знаешь, где что и как править. Но всё равно цветные буковки воодушевляют :-)
В Gentoo, в отличие от Archlinux, у меня автоматической подсветки синтаксиса нету. Но руки у меня пока не отсохли, поэтому всё достаточно просто прикручивается. Достаточно выполнить только ниженаписанный спелл:
for i in /usr/share/nano/*; do echo $i | grep '\.nanorc$' | sed -r 's/^\//include \//'; done >> ~/.nanorc
Всё, теперь все поддерживаемые типы файлов будут подсвечиваться. Дополнительно для Gentoo можно использовать несколько дополнительных файлов подсветки, которые вкладываются в ~/.nanorc как и описано по ссылке.
p.s.: подсветка работает только с расширениями файлов

  • belarusian
  • english
  • russian

Напэўна многія не прывыклі карыстацца vim як стандатным тэкставым рэдактарам і да гэтае пары выкарыстоўваюць nano. Прызнацца сумленна, я для хуткага рэдагаваньня і сам ім карыстаюся. Мне куды прасьцей у ім хутка выправіць нешта, захаваць зьмены злучэньнем клявіш і злучэньнем жа выйсьці. У vim я такога пакуль не асіліў (каюсь, буду выпраўляцца).
Але справа не ў клявішных злучэньнях, справа ў падсьветцы сінтаксісу. Падсьветка – дужа прыемная рэч нават пры хуткім рэдагаваньні. Магчыма, гэта на падсумленным узроўні так, таму што асаблівай розьніцы няма, калі ведаеш, што дзе і як выправіць Але ўсё роўна каляровыя літаркі узнімаць духоўна :-)
У Gentoo, у адрозьненьне ад Archlinux, у мяне аўаматычнай падсьветкі сінтаксісу няма. Але рукі ў мяне пакуль не адсохлі, таму ўсё дастаткова проста прыкручваецца. Дастаткова выканаць толькі ніжэйнапісаны спел:
for i in /usr/share/nano/*; do echo $i | grep '\.nanorc$' | sed -r 's/^\//include \//'; done >> ~/.nanorc
Усё, цяпер усе падтрымліваемыя тыпы файлаў будуць падсьвечвацца. Дадаткова для Gentoo можна выкарыстоўваць некалькі дадатковых файлаў падсьветкі, якія укладаюцца ў ~/.nanorc як і апісана па спасылцы.
p.s.: падсьветка працуе толькі па файлавых пашырэньнях :(

  • belarusian
  • english
  • russian

In Gentoo, unlike Archlinux, I have no automatic syntax highlight in nano. It simple to fix that problem in one bash line:
for i in /usr/share/nano/*; do echo $i | grep '\.nanorc$' | sed -r 's/^\//include \//'; done >> ~/.nanorc
All types of files will be highlighted. Extras can be used for Gentoo: few extra highlight files, which may be included in ~/.nanorc as described by link.
p.s.: highlight will only work with file extensions :-(
p.p.s.: my English worse and worse with time, sorry =(

{ Comments : 8 Comments » }
{ Tags: archlinux, bash, editors, gentoo, highlight, hotkeys, howto, nano, spells, syntax, vim }

block ssh bastards

Jul 21 2008
Radiohead – Videotape
  • belarusian
  • russian

Захотелось немножко защитить свой нынче безащитный ноутбук, хостящийся по адресу bobrik.homelinux.org (ftp, http & ssh) от атак навязчивых эмокидов, стремящихся захватить меня в ботнет. FTP только анонимный, http вообще пока не для того висит, поэтому надо было защитить ssh. После недолгих раздумий и проб вариантов мой выбор пал на denyhosts. С первоначальной настройкой были сложности, потому считаю не лишним поделиться и разбавить социалку в блоге :-)
Для установки denyhosts в Gentoo необходимо выполнить следующие действия:
bobrik ~ # echo 'net-misc/openssh tcpd' > /etc/portage/package.use
emerge net-misc/openssh
/etc/init.d/sshd restart
emerge app-admin/denyhosts

Без tcp-wrappers, которые ставятся благодаря USE=”tcpd”, sshd будет просто игнорировать /etc/hosts.deny.
После неудачных попыток залогиниться с хоста не с тем паролем, получаю такое сообщение:
bobrik@voldemar:~$ ssh bobrik.homelinux.org
ssh_exchange_identification: Connection closed by remote host

Теперь почему denyhosts. Во-первых, тут очень неплохой функционал и настройка через конфиг, варианты запуска (daemon или cron). Во-вторых, blocksshd мне не подходит, потому что тянет кучу перловых модулей, а sshguard отказался блокировать навязчивые попытки моего брутфорса.
p.s.: есть подозрения, что в /etc/sshd_config выставление
SyslogFacility AUTH
LogLevel INFO

не будут лишним

  • belarusian
  • russian

Захацелася мне трошкі абараніць свой безахоўны ноўтбук, які зараз зосьціцца па адрасе bobrik.homelinux.org (ftp, http & ssh) ад атак навязьлівых эмакідаў, якія хочуць захапіць мяне ў ботнэт. FTP толькі ананімны, http увогуле пакуль не дзеля таго вісіць, таму трэба было абараніць ssh. Пасьля нядоўгіх роздумаў і спроб варыянтаў мой выбар паў на denyhosts. З першапачатковай наладкай былі цяжкасьці, таму лічу ня лішнім падзяліцца і разбавіць сацыялку ў блёгу :-)
Для ўсталёўкі denyhosts у Gentoo неабходна выканаць наступныя дзеяньні:
bobrik ~ # echo 'net-misc/openssh tcpd' > /etc/portage/package.use
emerge net-misc/openssh
/etc/init.d/sshd restart
emerge app-admin/denyhosts

Бяз tcp-wrappers, якія ставяцца дзякуючы USE=”tcdp”, sshd будзе проста ігнараваць /etc/hosts.deny.
Пасьля няўдалых спроб залёгініцца з хосту ня з тым паролем, атрымліваю наступнае паведамленьне:
bobrik@voldemar:~$ ssh bobrik.homelinux.org
ssh_exchange_identification: Connection closed by remote host

Тяпер чаму denyhosts. Па-першае, тут вельмі неблагі функцыянал і наладка праз конфіг, варыянту запуску (daemon ці cron). Па-другое, blocksshd мне не падыходзіць, таму што цягне кіпу пярловых модуляў, а sshguard адмовіўся блякаваць навязьлівыя спробы майго брутфорсу.
p.s.: ёсьць падазрэньні, што ў /etc/sshd_config выстаўленьне
SyslogFacility AUTH
LogLevel INFO

ня будзе лішнім

{ Comments : 7 Comments » }
{ Tags: blocksshd, denyhosts, gentoo, homelinux, hosts.deny, howtos, installation, notebook, perl, portage, securyty, ssh, sshguard, tcp-wrappers, tcpd, use }

whats wrong with me?

Jul 20 2008
  • belarusian
  • russian

Что во мне такого, что ко мне так часто пристаёт всякое быдло? Дай позвонить/закурить/чего-такой-дерзкий. Это уже не смешно становится, честное слово. Где же наша доблестная милиция, которая должна порядок охранять? Ах да, как же, как же. Милиция же у нас печется о том, чтобы чистота была, а не правопорядок. Это мы намедни узнали возле Ледового Дворца. Главное толпами не ходить. А ещё милиция заимела моду не представляться в принципе, а действовать как и гопы. Опять же в стиле “че делаете ваще”?
80/20 уже вовсе не 80/20, первое значение неумолимо растёт. А ещё и министерство образование и президент решили отупить школьное образование. Отупить и идеологизировать, чтобы проще управлять. Back to USSR
Пускай это звучит цинично, но родину действительно спасут только расстрелы. Только вот всё не тех стрелять привыкли
p.s.: ничего против милиционеров как класса не имею
p.p.s.: может сложиться впечатление, что меня волнуют только гопники, образование и radiohead. это не так ;)

  • belarusian
  • russian

Што ва мне такога, што да мяне апошнім часам ліпне ўсялякае быдла? Дай пазваніць/закурыць/што-такой-дзерзкій. Гэта ўжо ня сьмешна становіцца, чэснае слова. Дзе ж нашая ахвігенная міліцыя, якая павінна парадак ахоўваць? Ах так, як жа, якжа. Міліцыя ж у нас пячэцца пра тое, каб чысьціня была, а не правапарадак. Гэта мы нядаўна каля Лядовага Палацу даведаліся. Галоўнае натоўпамі не хадзіць. А яшчэ міліцыя займела моду не прадстаўляцца ў прынцыпе. Зноў жа ў стылі “че делаеце вашчэ”?
80/20 ужо зусім не 80/20, першы паказальнік расьце бесперапынна. А яшчэ і міністэрстпва адукацыі з прэзыдэнтам вырашылі атупіць школьную адукацыю. Атупіць і ідэялягізаваць, каб прасьцей было кіраваць. Back to USSR
Няхай гэта гучыць цынічна, але радзіму насамрэч выратуюць толькі расстрэлы. Вось толькі ўсё ня тых расстрэльваць прывыклі
p.s.: нічога супраць міліцыянтаў як клясы ня маю
p.p.s.: можа скласьціся ўражаньне, што мяне хвалююць толькі гопнікі, адукацыя і radiohead. гэта ня так ;)

{ Comments : 16 Comments » }
{ Tags: belarus, education, life, me, militia, people, radiohead }

« Previous Entries

RSS antisocial feeling

  • Ворачиваться в страну шпрот собираешься?
  • (via priskorbno) хочу. давно хотел. где купить?
  • ??
  • "((foldl (+) 0 [1..100]) ^ 2) - (foldl (+) 0 (map (^ 2) [1..100]))"
  • ?

Tags

bash belarus blog blogs bugs coding concerts download friends fun gentoo google images internet javascript kde language life links linux livejournal me money music overlays perl photos php plugins portage projects rss school shell social social networks ssh studying tests twitter ubuntu univer vkontakte wifi wordpress

links

  • asocial feeling
  • Callisto overlay
  • daThumbs
  • last.fm
  • twitter
  • Vkontakte
  • ~idioteque

Recent Comments

  • bobrik on @listwatcher
  • Process_of_illumination on WordPress-bbPress syncronization
  • Process_of_illumination on WordPress-bbPress syncronization
  • Aviva Gabriel on @listwatcher
  • Aviva Gabriel on @listwatcher
  • Larry D. Halstead on @listwatcher
  • neagaoleg on Hide Mentions in Twitter Web Interface
  • neagaoleg on about
  • Martina Bella on @unfollowr
  • gamersroute.com on WordPress-bbPress syncronization

Archives

  • January 2010 (1)
  • November 2009 (2)
  • October 2009 (5)
  • September 2009 (2)
  • August 2009 (2)
  • July 2009 (3)
  • June 2009 (1)
  • April 2009 (2)
  • March 2009 (1)
  • February 2009 (1)
  • January 2009 (2)
  • December 2008 (12)
  • November 2008 (17)
  • October 2008 (20)
  • September 2008 (13)
  • August 2008 (25)
  • July 2008 (18)
  • June 2008 (15)
  • May 2008 (7)
  • March 2008 (1)
  • February 2008 (9)
  • January 2008 (11)
  • December 2007 (24)
  • November 2007 (27)
  • October 2007 (21)

Meta

  • Log in
  • Entries RSS
  • Comments RSS
  • WordPress.org

Creative Commons License rss comments rss valid xhtml