четверг, 27 марта 2008 г.

Thinstation, протираем фару

За что я все таки больше люблю linux, чем известный аналог, так это за благодарность системы пытливому уму. То есть, если вы не жалеете времени изучая принципы, стандартные решения, идеологию в конце концов, то повернется она к вам таки не то что лицом, а всей своей душой своей механической, такими же пытливыми умами созданой.
Я это все к чему, случается иногда, что править душу эту приходится, так как иные умы и мыслят не по вашему, и железо у них другое, и ваши тяготы не всем доступны.
К делу - у thinstation есть четыря уровня для пытливости:
1. скачать готовый вариант, подходящий для большинства;
2. натыкать галки и получить несколько заточеный под себя (позволяет выбрать включаемые компоненты);
3. скачать вариант для ручной сборки уже собранных бинарников, ядра и тп (позволяет поправить конфиги, стартовые скрипты, сделать то, для чего вообще не думалось применять thinstation);
4. самый глубокий уровень - скачать среду разработчика и руками собрать все, что иные умы сочли излишним, или же вообще не слышали о таком;

Моя ситуация была довольно банальна, несмотря на выспренность слога в первом абзаце - драйвера от сетевой карты не работали, ибо оборудование было уж слишком свежим. На сайте intel (а именно они отцы этой карты), драйвера под линукс были.
Чтобы получить модуль нужны исходники ядра, но не только. Еще требуется собрать модуль той же версией компилятора, что и ядро. В общем проще скачать среду разработчика Thinstation, там все для счастья положено.
1. Качаем;
2. tar xvfz thinstation_src-2.3.tgz
3. cd thinstation_src-2.3
4. ./RUNME
Вот мы и "дома". То есть можно делать теперь все, ради чего тянули 300 мегабайт. Драйвера с сайта intel тихо и не заметно уже легли в директорию между пунктами 3 и 4, и в 4 пункте sudo я забыл.


sh-3.1# cd intel
sh-3.1# ls
e1000-7.6.5.tar.gz
sh-3.1# tar xvfz e1000-7.6.5.tar.gz
sh-3.1# cd e1000-7.6.5/src/
sh-3.1# make
Makefile:197: ***
Makefile:202: *** Warning: kernel source configuration (UP)
Makefile:203: *** does not match running kernel (SMP)
Makefile:205: *** Continuing with build,
Makefile:206: *** resulting driver may not be what you want
Makefile:207: ***
make -C /usr/src/linux SUBDIRS=/intel/e1000-7.6.5/src modules
...
CC /intel/e1000-7.6.5/src/e1000.mod.o
LD [M] /intel/e1000-7.6.5/src/e1000.ko
make[1]: Leaving directory `/source/kernel-2.6.21.1/linux-2.6.21.1'


На этом все, полученным e1000.ko заменяем уже имеющийся в каталогах 3го варианта сборки. На самом деле Thinstation я перетряс куда основательнее, да разве все упомнишь. А это так - пример образа мыслей, что собственно намного вернее всяческих howto.

Комментариев нет: