Чтобы был возможен запуск старых бинарных 32-битных приложений под 64-битной убунтой нужно доустановить мета-пакет ia32-libs.
Решения тех проблем, с которым мне приходилось сталкиваться.
четверг, 16 июля 2009 г.
среда, 15 июля 2009 г.
самосборные модули ядра
Пытался поставить ubuntu на сервер с Intel'овской платой (S5500BC), но оказалось, что имеющийся на плате soft-raid не поддерживается даже самой свежей версией ubuntu (не говоря уж о 8.04 LTS, которая не увидела даже DVD-дисковод).
На сайте Intel драйвера только для RedHat/SuSE. Однако, оказалось, что драйвер можно пересобрать и для другого конкретного ядра. Итак, вот такие шаги:
- Скачал и распаковал драйвер
- Прочитал The Linux Kernel Module Programming Guide откуда понял, что в прилагающемся Makefile не хватает собственно двух строк:
all:
make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules
clean:
make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean - С первой попытки компиляция не удалась. Смысл я до конца не понял, но двух словах - версии ядра в убунту в пределах релиза не увеличиваются, хотя фичи в них встраивают новые, от свежих ядер. Нашел в исходниках директивы условной компиляции, где проверялась версия ядра, исправил циферки, чтобы "как бы старое" ядро распознавалось как "как бы новое". После этого все собралось.
- Копируем файл в модули (в моем случае /lib/modules/<kversion>/kernel/drivers/scsi/)
- Выполняем depmod -a
В-принципе, все. Если бы это был модуль не-дискового устройства. Для дисковых устройств нужно поместить модуль в initramfs. Для этого в /etc/initramfs-tools/initramfs.conf меняем MODULES=most, на MODULES=list, а в файл /etc/initramfs-tools/modules помещаем список все нужных модулей (можно посмотреть на работающей системе через lsmod).
Потом нужно пересобрать initramfs образ командой update-initramfs -u.
Комментарии:
- Собирать драйвер можно на уже работющей системе с таким же ядром (к счастью у меня такая машина была)
- Понятно, что если корневая система на изначально доступном блочном устройстве, то помещать модуль в initramfs не обязательно, можно просто прописать его загрузку в /etc/modules)
Автор: morridzh на 16:45 0 коммент.
Ярлыки: ядро
вторник, 7 июля 2009 г.
Программное перемещение в корзину
Нашел такой пакет - trash. Позволяет управлять корзиной из скриптов. Таким образом настроил автоматическое удаление старых файлов из downloads в корзину.
Автор: morridzh на 11:54 0 коммент.
Ярлыки: утилиты
Подписаться на:
Сообщения (Atom)