пятница, 28 сентября 2007 г.

Лень двигатель прогресса. Так ли это?

Принято считать что лень двигатель прогресса. Действительно ли это так?
Можно разделить стимул развития на "потакание лени" и "повышение удобства".

1. Что такое "потакание лени"? Мы (как изобретатели) смотрим какие действия выполняет человек для достижения результата и решаем какие из этих действий можно заменить и сделать их автоматическими (обычно, хоть и не всегда, используется существующий инструментарий).
2. В случае с "повышением удобства" мы решаем что нужно сделать для ускорения достижения результата не пропуская задачи, а ускоряя каждую из них в отдельности (повышая удобство инструментария или изобретая новый).

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

Имеют место быть оба варианта развития, но первым вариантом нельзя увлекаться. С одной стороны потому, что результатом может быть умственная и моральная деградация (снизится удовольствие получаемое от жизни и её ценность в целом), с другой стороны (что, отчасти является следствием деградации) снижается внимательность и бдительность, что отрицательно сказывается на качестве жизни.

PS: Изначально эта мысль образовалось от осознания того, что человек в "удобном мире" теряет бдительность.
PPS: Это применимо к любой сфере жизни и любому её аспекту.

среда, 19 сентября 2007 г.

Что нужно знать о Grub. Часть 2. Загружаем систему которой нет в меню.

На примере загрузки Windows.
1. Находясь в меню выбора систем входим в командный режим нажав на клавиатуре 'C'
2. Набираем root(hd и жмём два раза tab. Из появившегося списка разделов выбираем тот, который нам нужен (например тип раздела ntfs это 0x7)
3. Дописываем до конца, пусть в нашем случае это будет root (hd0,5)
4. Далее вводим команды:
chanloader +1 (это значит что для загрузки системы будет использоваться загрузчик с нашего root раздела, т.е. (hd0.5) размером в 512*1 байт)
boot

т.е. выходит всего три команды
root (hd0,5)
chanloader +1
boot


PS: если система в списке есть, но неверно указаны некоторые параметры, например раздел загрузки или опции ядра для linux, то вы можете использовать клавишу 'E' для редактирования. Изменения не сохраняются в menu.lst, но позволяют загрузить нужную нам систему.

Что нужно знать о Grub. Часть 1. Восстановление загрузчика.

Загрузчик grub по сути состоит из трёх частей: stage1 stage2 и menu.lst.
stage1 это первая часть загрузчика размером в 512 байт, основная цель которой указать где искать stage2 и menu.lst. stage2 это собственно сам grub (те самые меню при загрузке и командная строка). menu.lst это файл конфигурации grub (в нём же находится список загружаемых операционных систем).

stage1 обычно расположен в загрузочной области винчестера (так называемый boot-сектор), а stage2 и menu.lst на одном из разделов в директории /grub или /boot/grub

Иногда так случается, что boot-сектор затирается (например при установке другой операционной системы). Если такое случилось, то не стоит отчаиваться, восстанавливается загрузчик совсем просто. Для этого в boot-сектор (кстати, его ещё иногда называют MBR) нам нужно вновь вернуть stage1, но с тем условием, чтобы этот stage1 знал где искать stage2. А сделать это можно вот так.
1. Запускаем grub (это можно сделать загрузившись с livecd, на котором есть grub, например ubuntu и набрать в терминале sudo grub, или же воспользоваться флопи-grub (дискету можно создать так же с помощью livecd ubuntu запустив команду grub-floppy)).
2. Набираем cat (hd и нажимаем tab два раза. Если у нас несколько жёстких дисков, то мы получим их список, если один, то получим список разделов, например:
Partition num: 0, Filesystem type is xfs, partition type 0x83
Partition num: 2, Filesystem type is ext2fs, partition type 0x83
Partition num: 4, Filesystem type unknown, partition type 0x82
Если знаете какой раздел вам нужен, набираете соответствующий номер, если нет, то набирайте по очереди и жмите tab для получения списка директорий и файлов. В итоге вы должны найти /grub/menu или /boog/grub/menu

**********
grub> cat (hd0,0)/
Possible files are: ftp giner pivanov
**********
это не он

**********
grub> cat (hd0,2)/
Possible files are: lost+found var etc media cdrom bin boot dev home initrd lib mnt opt proc root sbin srv sys tmp usr initrd.img vmlinuz
initrd.img.old vmlinuz.old

grub> cat (hd0,2)/boot/grub/
Possible files are: device.map stage1 stage2 e2fs_stage1_5 fat_stage1_5 jfs_stage1_5 minix_stage1_5 reiserfs_stage1_5 xfs_stage1_5 default
installed-version menu.lst menu.lst~
**********
а вот это он

3. Теперь я знаю что всё что мне нужно находится на разделе (hd0,2). Дело за малым, ставим boot-сектор:
root (hd0,2) (здесь мы говорим, что stage2 и menu.lst находятся на разделе 2)
setup (hd0) (устанавливаем boot-сектор на 1-й винчестер)

Готово! Можно в ребут :)

PS для специалистов: технические данные этой заметки неполны и могут быть неточными. Целью данного текста является не изучение устройства загрузчика grub, а его практическое применение.

четверг, 6 сентября 2007 г.

Милосердие

Кость, брошенная собаке, не есть милосердие; милосердие это кость, поделенная с собакой, когда ты голоден не меньше ее.
(Джек Лондон)