Я бы на твоем месте еще подумал на тему - а нужна ли тебе бинарная сериализация. Имхо от нее больше проблем чем пользы. В крайнем случае - посмотри в сторону google protobuf или apache thrift.
Есть такой штука как токены. На них можно хранить закрытые ключи. Часть бинарников с функцианальностью можно зашифровать. Не зашефрованной оставить только оболочку. Когда оболочка запускается, ищеться токен и с помоьшью него расшифровывается нужные бинарники в память, и от туда запускаются. Таким образом программа без токена вообще не запуститься. Сломать такое конечно можно, но уже не так просто. Сервер не нужен.
Дык, что бы поставить одну нейросеть за другой - это добавить слоев в первую, точнее выход первой есть вход для второй. Например было у тебя 3 9 2 и 2 10 2 стало 3 9 2 10 2. Но ты бы лучше задачу описал - может ты зря вообще где-то и или вообще нейросети используешь
Архитектуру правильно выбрал. Насчет пакетов - судя по названиям тебе точно нудны kernel-desktop, kernel-desktop-base. kernel-desktop-devel - под вопросом, там скорее всего лежат хэдоры, если ты никакие драйвера из исходников собирать не собираешься, то он тебе не нужен. Остальные нужны только если собираешься править ядро.
поддерживаю @unclechu в последних (7 и 8, висту как-то пропустил) настройка шары стала совсем ни фига не интуитивно понятной, особенно с правами доступа. Приходилось долго мучаться что бы хотя бы виндовые машины смогли и увидеть и чего-нибудь сделать с соседней шарой. В общем в самбе и правда все делается проще и понятней.
>А на счет кода возврата, не понял наезда. Чем вас мой вариант ответа не устроил?
>Как и все в линукс, через stderr
Еще раз stderr - это поток вывода, такой же как stdout (ну почти такой же). Туда можно писать что угодно, но о том с ошибкой завершился процесс или нет это не говорит
>Но вот только ваше решение никак не отслеживает ошибки.
если вы про ./script.sh || ./script.sh, то все он отслеживает. Схема тут простая. в bash (как и много где еще) логические выражения оптимизируются. то есть если на каком-то этапе становится понятно какое значение будет иметь данное выражение - то дальнейшее его вычисления прекращаются. в данном случае, если первый вызов скрипта завершится с 0 (true) то и все ворожение будет иметь значение true и по этому второй раз скрипт не запускается. если же первый вызов завершается с false то еще не понятно какое значение получится и для этого запускается вторя часть.
stderr - это поток вывода - туда можно писать, но никого это ни к чему не обязывает. любой процесс завершается с каким-то кодом возврата. по умолочанию все шелы считают 0 - без ошибок, не 0 - с ошибками. некоторые утилиты в код возврата пишут код ошибки некоторые нет. проверить код возврата последней команды можно через $?. в скриптовах для выхода с определенным кодом возврата нужно использовать exit (man 1 exit).