Файловая структура ENIGMA2
Ядро операционной системы Linux в ресивере отвечает за все - за работу с памятью, с сетевыми устройствами, с дисковыми устройствами,с шиной I2C по которой управляются тюнеры, работу пульта ДУ и т.д.
Описание корневых папок в структуре файловой системы ресивера:
• Группа каталогов с исполняемыми файлами:
- /bin
- /sbin
- /usr/bin
- /usr/sbin - каталоги, содержащие основные исполняемый файлы системы (бинарники). Содержимое этих каталогов нам будет нужно постоянно в работе с системой, но совершенно ни к чему туда часто заглядывать. Проще говоря туда лучше не лазить, если не знаешь что там и для чего.
• /boot - это папка файлов, требуемых для запуска операционной системы. Здесь находится стартовая заставка bootlogo. Именно её мы видим сразу при старте ресивера.
• /etc - каталог с основными конфигурационными файлами системы и стартовыми сценариями.
- /etc/enigma2, служит для хранения настроек ресивера. В частности при смене имиджа на новый, достаточно перенести эту папку, что бы ни чего заново не настраивать, кроме эмулятора и дополнительных плагинов.
- /etc/init.d - подкаталог, в котором находятся скрипты для запуска основных сервисов;
- /etc/rc.d и(или) /etc/rc.d.X - каталоги, определяющие порядок запуска сервисов;
- в подкаталоге /etc/init.d/tuxbox лежит файл sattelite.xml со списком всех возможных спутников и транспондеров;
- в подкаталоге /etc/init.d/tuxbox/config должны располагаться файлы конфигурации эму MPCS;
- файл /etc/fstab содержит список устройств и файловых систем которые монтируются при запуске системы.
• /dev - содержит список всех обнаруженных linux-ядром устройств. Это могут быть жесткие диски, USB порты и т.д. Все устройства представляются в виде спец. файлов. Для того чтобы обратиться к каком-либо устройству необходимо указать этот "файл". Например: /dev/sda1 - первый раздел диска (hdd или флеш-диска)
• /home - личная папка юзера системы (root), домашний каталог, аналог папки типа "Мои документы" в windows-системах.
• /lib и /usr/lib - каталоги системных библиотек и модулей ядра необходимые для исполняемых файлов содержащихся в /bin и /sbin.
- /lib/modules/ - содержит модули ядра (драйвера устройств).
• /proc и /sys - это псевдофайловые системы. Т.е. внутренняя файловая система, хранящая самые свежие сведения обо всех процессах, запущенных на вашем ресивере. Содержимое каждого файла определяется в реальном времени и находится в памяти ОС. Через них обеспечивается прямой доступ к устройствам. /proc/ - содержит специальные файлы, которые извлекают или посылают информацию ядру. (Да-да, в Linux можно управлять всем, даже ядром!) В качестве примера можно привести информацию о процессоре (/proc/cpuinfo) и системной памяти (/proc/meminfo). Пользоваться этими каталогами нет необходимости. Прочитали, узнали и забыли. :sm1:
• /tmp - каталог для хранения временных файлов, все файлы в нем удаляются после перезагрузки. В этот каталог помещают пакеты плагинов (*.ipk, *.tar) для установки, лог-файлы и т.п.
• /var - содержит различную (variable) информацию используемую приложениями, включая логи, буферы и т.д., т.е. специальный каталог, где находятся часто меняющиеся данные.
Внутри /var имеются подкаталоги сведений, /lig системные журналы, /run запущенные демоны и т.д.
- /var/log - используется приложениями как хранилище логов;
- /var/lock - используется для записи lock-файлов позволяющих отслеживать какие ресурсы в данный момент используются;
В принципе при использовании нашей OS, он не используется для настройки пользователем и содержит в себе все необходимые симлинки на рабочие папки в /usr. Например /var/keys - в нем ищет свои настройки эмулятор MGCamd, но т.к. папка временная, её нет. Вместо неё там находится ссылка на каталог с настройками /usr/keys.
• /usr - каталог программ пользователя. Тут находится сама оболочка Enigma2, плагины, скины и все, что к ним необходимо.
- подпапка /usr/keys служит для размещения файлов конфигурации эмуляторов и файлов ключей;
- подпапка /usr/sсriрt отведена для личных скриптов. В ней как раз и находятся скрипты (файлы с расширением .sh) запуска установленных эмуляторов в ресивере;
- подпапка /usr/lib/enigma2/python содержит основные файлы Энигмы (в частности, например в /usr/lib/enigma2/python/Plugins/Extensions содержатся установленные плагины);
- подпапка /usr/share/ хранит так же файлы bootlogo;
- подпапка /usr/share/enigma2 для скинов и начальных настроек;
- подпапка /usr/share/fonts содержит все системные шрифты и и шрифты для скинов.
Следует знать, что в Linux нет понятия системный диск. А есть единый каталог, он называется корень файловой системы в котором размещаются все последующие каталоги (каталоги с программами, файлами конфигурации и т.д.)
При подключении жесткого диска или флешки linux-ядро определяет их, так же определяются разделы и файловые системы на этих носителях и в соответствии с этими данными в каталоге /dev создаются файлы соответствующего устройства.
Для того чтобы начать использовать жесткий диск или флешку их необходимо смонтировать. Монтирование может происходить автоматически либо в ручном режиме. Как правило при подключении жесткого диска или флешки они монтируются автоматически и от пользователя не нужно никаких доп. действий.
• Все сменные устройства HDD, USB DVD, USB Flash монтируются в каталог /media
- /media/hdd - точка монтирования для жестких дисков;
- /media/usb - точка монтирования для usb-flash дисков.
• /mnt - зарезервирована для временно подключаемых файловых систем. Для подключения накопителей рекомендуется использовать директорию /media/. Автоматически определяемые накопители буду доступны так же в директории /media/* .