Школа Linux для дримоводов

  • хотите страшилку? в кругах близких к защитникам свободного
    софта и лицензионной чистоты (согласно GPL) линукс-кернела
    от ... внимание ! проприетарных модулей которые распространяются
    в бинарном виде без исходных текстов - обсуждается тема о запрете
    запуска подобных модулей в линукс ядре с 2008 года ....


    в основание своих предложений они положили - простым языком говоря-
    "черт его знает что в таких модулях спрятано" - и в этом они правы
    конечно не просьым а юридическим языком там говорится о лицензионной
    чистоте GPL


    ну и что? а то что в один прекрасный день механизм проверки
    лицензии модулей (который встроен в линукс кернел) откажется
    запускать head.ko - основной модуль камня на котором собран дм7000!!!!


    напугал? а теперь расслабьтесь )))) вероятнее всего такое решение
    принято не будет - Линус не очень одобрительно о такой возможности
    отозвался - не говоря уже о производителях видео-карт и
    другого оборудования которые поставляют проприетарные бинарные
    модули ))))

  • Цитата

    напугал? а теперь расслабьтесь )))) вероятнее всего такое решение принято не будет


    Уже расслабился ;) Линус прекрасно понимает, что, иначе придется писать супер-пупер-закрытую защиту, загрузки модулей , которую, как показывает опыт - сломают ... ;(

  • а защиту и ломать не придется - будет она с исходными кодами но
    использую методу цифровой подписи модулей )))))
    точно не владею вопросом - но думается такое возможно ))))

  • Цитата

    а защиту и ломать не придется - будет она с исходными кодами но использую методу цифровой подписи модулей


    Без доступа в инет - не получится ...или получится а ла ХП активация ...

  • Цитата

    Со слов пользователя Goga777


    можно еще проще, создаешь скрипт, помещаешь его в /var/bin(про права не забывай), имя файла прописываешь в Setup - Expert Setup - Scripts Autoexec Setup. Я именно так поднимаю дрим, как роутер спутникового интернета.


    А что за имидж использовали? просто у меня нет такого пункта меню... как Setup - Expert Setup - Scripts Autoexec Setup


    И как вы записываетсе скрипт в /etc/init.d ? он же находиться в read only фаловой системе ? (про запись вinit.d прочитал на 2ой странице).


    У меня стоит задача поставить свой скрипт в загрузку - не могу справиться - имедж Gimini 3.3.


    Я.б. получилось только путем добавления пути к моему скрипту в скрипт запуска камд3, но это не совсем правильный выход

  • у меня - рудрим, значит в твоем имидже такой фичи нет. Тогда про автостарт на дриме читаем вот здесь
    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.

  • видимо у всех тут рудрим :)
    на Gemini отредаткировать init.d нельзя? вообще кроме var ничего нельзя менять, или может я не знаю как ?

  • Цитата

    кроме var ничего нельзя менять, или может я не знаю как ?


    Править под себя, а потом только пересобирать имидж

  • Для DM7000.
    Распаковать - запаковать имиджи с применением LZMA Squashfs
    на дриме для внесения нужных изменений можно на дриме.
    1.В дриме должен быть установлен HDD, т.к. процесс запаковки требует много свободной памяти.
    2.Во флеши должен стоять имидж с применением LZMA Squashfs
    (наверное любой не старше 1-1,5 лет).
    3. Инструменты для распаковки - запаковки.
    Взять можно здесь: Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.


    На HDD устанавливаем имидж, например последний релиз 1.10
    (годится и любой другой, но опять же с LZMA Squashfs)
    Загружаем свежеустановленный имидж


    Файлы из скачанного архива копируем в папку bin, права 755
    Создаем в папке hdd папку с любым названием, например box.
    Имидж, предназначенный для разборки переименовываем в test.img
    и копируем его в созданную папку box


    В телнет даём команды копирования инструментов для
    разборки в папку box:


    cp -a /bin/uncramfs /hdd/box
    cp -a /bin/undreamboxfs /hdd/box


    Даём команду перейти в папку hdd/box:


    cd /hdd/box


    Даём команду распаковать имидж:


    undreamboxfs test.img test


    Ждём ответа от дрима типа этого:


    9304+0 records in
    9304+0 records out
    Done!


    Имидж распакован в папку hdd/box/test.


    Вносим желаемые изменения.


    Для запаковки требуется много памяти, создаём swap файл


    В телнет даём команду:


    dd if=/dev/zero of=/hdd/swap bs=1024 count=262144


    Ждём пока создастся swap (3-5 мин)


    Даём команды инициализации и использования swap файла:


    mkswap /hdd/swap
    swapon /hdd/swap


    Копируем инструменты для запаковки имиджа:


    cp -a /bin/mkcramfs /hdd/box
    cp -a /bin/mksquashfs /hdd/box
    cp -a /bin/mkdreamboxfs /hdd/box


    Переходим в папку hdd/box:


    cd /hdd/box


    Даём команду запаковать наш имидж:


    mkdreamboxfs test new.img



    Ждём ответа типа этого:


    Directory data: 164 bytes
    Everything: 1116 kilobytes
    Super block: 76 bytes
    CRC: ca1a5f69
    36864+0 records in
    36864+0 records out
    Ready to make the squashFS part! This can take 1 or 2 minutes!
    Creating big endian 2.1 filesystem on tmp_mkdreambox_3, block size 65536.


    Процесс запаковки достаточно длительный, 30-40 минут.
    Ждём от дрима ответа вроде того:


    Big endian filesystem, data block size 65536, compressed data, compressed metadata, compressed fragments
    Filesystem size 4960.65 Kbytes (4.84 Mbytes)
    38.14% of uncompressed filesystem size (13006.55 Kbytes)
    Inode table size 4539 bytes (4.43 Kbytes)
    30.45% of uncompressed inode table size (14906 bytes)
    Directory table size 4621 bytes (4.51 Kbytes)
    54.33% of uncompressed directory table size (8506 bytes)
    Number of duplicate files found 10
    Number of inodes 654
    Number of files 468
    Number of fragments 45
    Number of symbolic links 124
    Number of device nodes 0
    Number of fifo nodes 0
    Number of socket nodes 0
    Number of directories 62
    Number of uids 1
    root (0)
    Number of gids 0
    Done!


    Всё, наш имидж с названием new.img готов.
    Забираем его в hdd/box

  • Цитата

    1.В дриме должен быть установлен HDD


    Совершенно не обязательно ! Можно на NFS, параметры /etc/exports, примерно такие - (rw,no_root_squash,sync)

  • peon
    описание неплохое но....
    по тем командам что ты привел есть вопросы
    мне не понятно зачем ты вначале копируешь uncramfs undreamboxfs в
    /bin а затем в /hdd/box - одно из копирований лишнее .....
    ведь запускаются теми командами что ты привел копии лежащие в /bin
    точка + слэш намного упростят жизнь ))))


    проще так
    - загружаешься с любого имиджа в внутренней флэш дрима поддерживающего
    LZMA Squashfs
    - распаковываешь содержимое архива lzmacramfs.zip в любую папку на винте - пусть /hdd/box
    - присваиваешь пермиссии 755 испоняемым файлам
    - туда же /hdd/box кладешь имидж test.img
    - распаковываем

    Исходный код
    cd /hdd/box
    ./undreambox test.img test


    - смотрим - в папке /hdd/box/test должно расти рут-деревце =)


    ну и при сборке аналогично - про файл подкачки ты все правильно написал - а вот команду
    на упаковку частей имиджа проще делать из той же директории

    Исходный код
    cd /hdd/box
    ./mkdreamboxfs test new.img
    ждешь минут 40  :O


    увидел в чем разница?
    точка + слэш говорят что исполняемая команда находится в текущей директории
    и искать ее по директориям /bin /sbin и т.д. не надо
    просто в твоем варианте чтобы поместить исполняемые команды в путь поиска
    ты положил их в /bin ..... можно и так .... но это лишнее телодвижение -
    установка имиджа на hdd ))))
    попробуй - должно получится - если не получится - пиши - будем разбираться

  • сорри за глупый вопрос, после распаковки имеджа я же смогу отредактировать содержимое init.d и потом запаковать обратно но уже с моими скриптами автозапука ?


    Gemeni же поддерживает LZMA Squashfs ?

  • Courage, всё прекрасно работает способом, описанным вами выше.
    Своя писанина кажется теперь чрезвычайно неуклюжей, как поездка из Питера в Москву через Читу.
    Спасибо вам за науку.


    To bgstrat


    Да

  • Цитата

    сорри за глупый вопрос, после распаковки имеджа я же смогу отредактировать содержимое init.d и потом запаковать обратно но уже с моими скриптами автозапука ?


    Сможете !
    НО ! если дело только в скриптах "автозапука" :D, то овчинка выделки не стоит ... Лучше изучите скрипт /etc/init.d/rcS ... Там , обычно, куча не используемых скриптов стартующих из /var ... из за таких мелочей , не стоит имидж пересобирать !

  • спасибо вы писали насчет изучения /etc/init.d/rcS - но я не совсем понял с какой целью, если редактировать не смогу, ну а щас вы все прояснили :)

  • bgstrat
    а ты бы все таки попробывал пересобрать имидж - это поросто интересно )))
    и как никак будет твой самособранный )))
    опять таки новый опыт получишь ))))

  • Не ссорьтесь :D


    В файле undreamboxfs , замените ./uncramfs на просто uncramfs ...
    После этого копируйте всю эту радость, куда угодно ... НО ! не забудьте правильно установить PATH ... (export PATH=path_to_всю_эту_радость:$PATH)
    Впрочем, для дрима этот uncramfs и не нужен ... можно обойтись имеющимися средствами ...


    Строку -
    ./uncramfs $TEMP_WORK_DIR $1 > /dev/null
    можно заменить на
    mount -t cramfs $1 $TEMP_WORK_DIR -o loop


    Не забывая потом umount $TEMP_WORK_DIR :rolleyes:

  • Цитата

    а ты бы все таки попробывал пересобрать имидж - это поросто интересно


    Я бы советовал установить и разобраться с CDK, это уже интересно ...
    И на приличном компе сборка-разборка займет пару минут, а не 40 8o
    Повторюсь, читать здесь - Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.


    Кроме того, если вы добавляете в имидж новые программы, обычно необходимо пересобирать библиотеки. И тут уже только CDK, спасет"отца Русской демократии" 8)

    Сообщение было отредактировано 1 раз, последнее редактирование пользователем zuriuslev ().