2008-10-17

Fiat Bravo

Знакомство с моей будущей (я надеюсь) машиной началось вот с этого ролика:


Тепрь я знаю, что песню из ролика исполняет итальянская певица Gianna Nannini. Название песни Meravigliosa Creatura - Удивительное Создание. Что цвет машины в ролике Maranello Red - дань Феррари. Что на создание этой модели ушло 18 месяцев - своеобразный рекорд. Что на её базе созданна новая Lanica Delta и создаётся Alfa Romeo 149.

Ролик одно время был вывешен на сайте Фиата. Но я был не сильно склонен к Фиату как таковому и Браво в частности. Не рассматривал машины дороже 15 тыс., да и курс евро не располагал.

Мы с женой просмотрели множество машин которые нас интересовали: Mazda 3 и 2, Toyota Auris и Yaris, Suzuki Swift и SX-4, VW Golf & Polo, KIA Cee'd & Rio, Ford Focus & Fusion, Pegeot 107, 207 & 308, Renault Megane & Clio, Citroen C3.

Более всего нам понравился Аурис. Но он был дороговат для нас на то время. Да и прав у меня ещё не было. Потом был просмотрен Сузуки SX-4. Он нам то же понравился, как и Свифт.

И вот в конце весны я проехался на Сузуки Свифт робот. Мне понравился, и цвет был синий. Я договорился в салоне что я его беру. Уговор был на то, что я ищу кредит в течении 2-3 дней и покупаю машину. Но на следующий день мне перезвонил менеджер и сказал: "вы знаете, к нам тут пришол клиент, и купил его сразу заплатив деньги. Но вы не переживайте, у нас есть вам предложить SX-4, да и вообще тот Свифт был 2007 года выпуска." Я был огорчен... Ошибка моя была в том, что я не подписывал договор.

Ещё до этого мы интересовались Фиат 500. Очень интересно было на него посмотреть. Посмотрели на выставке - он нам очень понравился. Сходили в салон и заодно уже посмотрели Grande Punto. В салоне был и Браво. Я и его посмотрел, он был хорош, но по цене выходил выше бюджета - евро тогда ещё не упал. Фиат 500 всё таки отпал из-за размеров - уж больно не практично для первой и единственной машины. Хотя сам автомобиль супер.

После отпуска мы ещё раз съездили в салон Фиат, проехались на тестдрайве Гранде Пунто. Время шло, и я стал посматривать на Браво. Почитал обзоры, отзывы, форумы. Затем прокатился на 120 сильном Браво, тот который с турбо мотором TJet 1.4 литра. Живой мотрочик, после 2-ух тысяч тянет очень бодро.

И решил, что хочу вот такую машину: красивую, стильную, приятную, редкую. И плевать на то, что Фиаты у нас не котируются, что у него есть ряд конструктивных недостактов и болячек, что сервис у нас не идеальный (зато не будет очередей), что ценник в хорошей комплектации выходит за 20 тыс. долларов, что... да много чего можно найти в Браво, если искать с лупой и калькулятором. Такие машины выбирают не с калькулятором под подушкой, а сердцем/душой. Ведь главное, что бы машина нравилась, что бы было приятно в ней находиться и ехать.

Авто-мото

2008-01-09

Format test post

This post will be test playground for various formating tests.

$some-command
Console output CSS version 1.0.
Some additional command output.
bla bla


Test line.

2008-01-07

Добавим места малышу Eee PC

Добавим места и скорости малышу Eee PC: сожмём /usr используя aufs и squashfs.

Для начала соберём и поставим aufs и squashfs.

Ставим нужные пакеты: sudo apt-get install aufs-modules aufs-tools squashfs-modules squashfs-tools.

Фиксим багу в сорцах squashfs. Для этого в начале распаковываем их:
$cd /usr/src
$sudo tar xjv squashfs.tar.bz2


Затем качаем патч. Я взял его отсюда.
Накладываем его:
$cd /usr/src/modules/squashfs/linux-2.6
$sudo patch inode.c 03-remove-slab.dpatch


Компиляем squashfs и aufs.
$sudo module-assistant -O build squashfs
$sudo module-assistant build aufs


Опция -O нужна для того что бы module-assistant не распаковывал сорцы squashfs затирая патч.
deb пакеты собираются в /usr/src. Ставим их и проверяем загрузку:
$sudo modprobe aufs
$sudo modprobe squashfs
$lsmod | egrep \(aufs\|squashfs\)


Теперь создадим и смонтируем образ /usr

Создаём сжатый образ /usr:
$sudo mksquashfs /usr /usr.sqfs -noappend -always-use-fragments


Монтируем его:
$sudo mkdir /usr-ro
$sudo mount -t squashfs -o loop /usr.sqfs /usr-ro


Монтируем всё вместе через aufs:
$sudo mkdir /usr-rw
$sudo mount -t aufs -o dirs=/usr-rw:/usr-ro=ro none /usr


В конечном итоге мы получаем наш родной /usr состоящий из двух частей:
1. RO часть лежащая в /usr-ro и являющаяся подмонтированным образом /usr.sqfs
2. RW часть содержащая изменения в RO части и лежащая в /usr-rw


Последнюю часть я пока ещё не сделал. Сжатие данных штука не быстрая. Кроме того, я не знаю как бы так аккуратнее подменить реальный /usr, что бы ничего не упало :).

В дальнейшем можно заново собирать usr.sqfs из /usr. Чистить /usr-rw. И работать со сжатой ФС.

Update


Сделал таки squashfs + aufs. Squashfs файл занимает ~40% (780Мб)от оригинального /usr (1.8Гб) - можно сказать 1 Гиг места. Пока что не удаляю оригинальный /usr, монтирую поверху. Потестирую потом снесу родной /usr.

Пока настраивал сделал косяк. Хотел сделать /usr-rw закрытым для юзерей (хез зачем;) ):
$sudo chmod a-rwx /usr-rw
$sudo chmod u+rwx /usr-rw


Настроил всё что надо в fstab, ребут и получаю окошко с квадратиками вместо GDM. Полез в консоль, глядь а /usr то dwrx------ :). Думаю: ага aufs юзает пермишены rw директории. Давай чепятать sudo chmod +rx /usr-rw. bash: chmod: command not found было мне ответом. Single mode полечил граблю.

Забавно что можно на лету mount/umount /usr без особых последствий.

По скорости видны земедления, по крайней мере при старте программ. Не критично, но есть. Чуть более долгая (3-4 сек) загрузка Гнома после логина. Так же чуть дольше (1-2) секунды стартует OO.

Ну и напоследок немного конфигов и статистики:

$cat /etc/fstab
# /etc/fstab: static file system information.
#
# <file system=""> <mount point=""> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
# /dev/sda1
UUID=4020dd57-e983-46bc-8890-b62a44605da8 / reiserfs notail,noatime 0 1
/dev/scd0 /media/cdrom0 udf,iso9660 user,noauto,exec 0 0
tmpfs /var/log tmpfs defaults,noatime 0 0
#tmpfs /var/cache/apt/archives tmpfs defaults,noatime 0 0
/usr.sqfs /usr-ro squashfs ro,defaults,loop 0 0
usr-aufs /usr aufs dirs=/usr-rw:/usr-ro=ro 0 0

$cat /etc/mtab
/dev/sda1 / reiserfs rw,noatime,notail 0 0
proc /proc proc rw,noexec,nosuid,nodev 0 0
/sys /sys sysfs rw,noexec,nosuid,nodev 0 0
varrun /var/run tmpfs rw,noexec,nosuid,nodev,mode=0755 0 0
varlock /var/lock tmpfs rw,noexec,nosuid,nodev,mode=1777 0 0
udev /dev tmpfs rw,mode=0755 0 0
devshm /dev/shm tmpfs rw 0 0
devpts /dev/pts devpts rw,gid=5,mode=620 0 0
lrm /lib/modules/2.6.22-14-generic/volatile tmpfs rw 0 0
tmpfs /var/log tmpfs rw,noatime 0 0
/usr.sqfs /usr-ro squashfs ro,loop=/dev/loop0 0 0
usr-aufs /usr aufs rw,dirs=/usr-rw:/usr-ro=ro 0 0
securityfs /sys/kernel/security securityfs rw 0 0
binfmt_misc /proc/sys/fs/binfmt_misc binfmt_misc rw,noexec,nosuid,nodev 0 0
/dev/sdb1 /media/disk-1 vfat rw,nosuid,nodev,shortname=mixed,uid=1000,utf8,umask=077,usefree 0 0


$df | grep usr-ro; du /usr-ro | tail -n 1
/usr.sqfs 767744 767744 0 100% /usr-ro
1834825 /usr-ro

libnotify - работа из под рута

Заметил одну особенность Ubuntu support скрипты для Eee PC не выводят OSD сообщение на включение/выключение WiFi и Overclock-а. Хотя по описанию должны. Поковырялся внутрях и нашол скрипт на перле который выводил сообщения через libnotify. Но этот скрипт нигде не вызывался. И даже если он как-то вызывается, всё равно он ничего не выведет ибо запуск из под рута выдаёт ошибку связанную с доступом к DBus.

Погуглив, нашол в чём грабли. Первое: надо найти корректный DBus Session ID. И второе: надо запускать send-notify от того польозователя что и ранает иксы.

Вот решение:

#!/bin/bash
# 2008-01-07
# (c) Aleksei Antonovich google mail: aleksei.antonovich.
# Licensed under GPL.

# Ensure that the script is run as root
if [ `id -u` != 0 ]
then
echo "ERROR: this script is intended to be run as root."
exit 1
fi

# Ugly way to find an running X programs for all users
pids=`pgrep gnome-panel`

for pid in $pids; do
#Search for DBus for that process
DBUS=`grep -z DBUS_SESSION_BUS_ADDRESS \
/proc/$pid/environ | sed -e "s/DBUS_SESSION_BUS_ADDRESS=//"`

#Grab user of Gnome process
UNAME=`grep -z USERNAME \
/proc/$pid/environ | sed -e "s/USERNAME=//"`
# echo "user is: "$UNAME
# echo "DBUS is: "$DBUS
DBUS_SESSION_BUS_ADDRESS=$DBUS \
sudo -u $UNAME notify-send "$@"
done


Несколько кривовато определение программ запущенных под иксами, но работает. Если потом руки дойдут - сделаю более универсально.

2007-12-22

Убунтизация Eee PC

Xandros прожила на малыше всего 2-3 дня. После этого была "снята с производства" и заменена на Ubuntu 7.10. На работе нашолся DVD-RW USB box с которого и была произведенна установка. Благодаря замечательному EEE-PC Support in Ubuntu/Gutsy всё заработало как надо. На работе есть зеркало этой самой Убунты, с него я обновился и доставли полезный и нужный софт.

Был чутка почищен стартап. Загрузка до login screen занимает около 35-ти сукунд. Много, посему буду рыть в сторону upstart.

Так же планирутся хард мод: вставка внутрь USB Hub-а на 4-е порта. Хаб включается на место веб камеры, один из портов уходит в неё же. К ещё одному пояется USB Bluetooth и ложится внтури корпуса. А ещё два разводятся вниз тушки на место не распаянного MiniPCI порта. Отличный мод найденный тут: USB Hub integration without soldering PROJECT... possible???.

Забавный скрин:


Многое вылазит за экран. Практически каждый 2-ой диалог. Часть диалогов просто не уменьшаются до 480 по высоте. Часть из них (GConfTool, Synaptic) имеют области с фиксированным минимальным размером с пол экрана.

Закупил зверю 1 Гиг памяти. Пока не почувстовавал, ибо и 512 не сильно занимались. Завтра планирую купить наклейки прозрачные русские на клавиатуру. И там же, если будет не дорогой, в районе 10$, USB Bluetooth адаптер.

Вот такие пироги ;).

2007-12-16

Мой новый девайс: мининоутбук ASUS Eee PC

Закупился сегодня мини ноутбуком от ASUS: Eee PC 701 4Gb версия. Интерестный зверь. 505 вечно зелёных, при рекламе в 499 - ибо покупал за рубли, а курс как всегда :).

Первые впечатления: греется ощутимо - я не ожидал, что при просмотре чего он умеет out of the box, он будет так греться. В принципе фукнционал из коробки очень даже. Только FLV не понимает. Гарантия не Мировая - так прям по русски и англицки написанно. Экранчег конечно маловат, было бы круто на всю крышку, ну да ладно, видел что покупаю :).

Нашол для Убунту скрипты. Не надо качать 2 CD eeeXUbuntu. Что в нашем гондурасе с дурными ценами на инет очень актуально. Попробую попозже.

Так же на главном буржуйском ресурсе уже во всю модят малыша. Самое навёрнутое: засунли на место распайки MiniPCI карты USB Hub на 4-е порта, две флешки по 16 Gb и USB Bluetooth. Там же есть в общем-то простой мод по вставлению Bluetooth адаптера. Хотел бы то же себе синий зуб :).

Отличная цацка у Асус получилась - можно играться и тюнить.

А вот и сам девайс:

"Борьба" с мышкой в Убунту

Поставил таки снова себе Ubuntu. На этот раз новую, свежую 7.10. И в ней как назло на работает как надо моя мыш Logitech MX-500: боковые кнопки не фурычут. Поискал в нете, нашол как сделать. Поменял xorg.conf - X-ы не грузятся. Смотрю в лог - ничего не вижу крамольного. И так и сяк часа 1.5 провозился, нашол очепятку. Вместо "Option" "Name" "My uber mouse" я вставил просто "Name" "My uber mouse". X-ы не поняли души прекрасного порыва и грузили xorg.conf.failsafe. Зато теперь наслаждаюсь боковыми кнопками в Опере :).


З.Ы. Фикс оч. простой:

$ cat /proc/bus/input/devices

Ищем там свою мышу. И заносим в xorg.conf:

Section "InputDevice"
...
Driver "evdev"
Option "Name" "тут имя мышки из cat"
...

Вуаля, кнопки работают как надо.

2007-08-19

Прогулочка на природу aka поход

Ходили намедня в поход. Намедня, это с утра четверга по вечер пятницы. В планах было со среды по воскресенье. Однако не сраслось... Вначале перенесли на четверг, дабы я мог сходить на курсы вождения (один чёрт не пошол - высыпался), да и дождь по прогнозу был (и в реальности он таки покапал). А вот крайние сроки подрезали ноги Даши; отсутствие лагеря знакомых, к которому мы собирались пристаканиться (или припалатиться); опять же с непривычки; ну и ещё чего по мелочи. Когда уже ехали назад в Минск, зарядил не кислый дождик, так что мы очень удачно снялись. Небольшая хронология:

День первый, утро, Московкий автовокзал.
Мы с Дашей пришли чуть раньше, потом подъехал Генка, а Энерги задержался.
Сбор был назначен на 10-20..30, планировали уехать на автобусе на 11-20. Но решели спросить частников, и нам повезло - загрузились в октавию дядьки из Лепеля и под бодрое жужжание моторчика машинка поехали в Лепель. Ехали шусто: в начале 90-95, а затем и все 100-120. Сам дядька то же порасказывал всякого.
По пути спустило колесо.


Тот же день, Лепель.

to be continued...