Свежая установка PHP 7.1.1, php.ini отсутствует

Предполагая, что для вашего протокола достаточно управлять пинами GPIO из пользовательского пространства через /sys/class/gpio/, самый простой способ - написать драйвер tap для пользовательского пространства. Из документации ядра linux/Documentation/networking/tuntap.txt:

TUN/TAP обеспечивает прием и передачу пакетов для программ пользовательского пространства. Его можно рассматривать как простое устройство Point-to-Point или Ethernet, которое, вместо приема пакетов с физического носителя, принимает их от программы пространства пользователя и вместо отправки пакетов через физический носитель записывает их в программу пространства пользователя.

Чтобы использовать драйвер, программа должна открыть /dev/net/tun и выдать команду соответствующий ioctl() для регистрации сетевого устройства в ядре. Сетевое устройство будет отображаться как tunXX или tapXX, в зависимости от выбранных опций. Когда программа закрывает дескриптор файла, сетевое устройство и все соответствующие маршруты исчезнут.

В зависимости от типа выбранного устройства программа пользовательского пространства должна читать/писать IP-пакеты (с tun) или кадры ethernet (с tap). Какой из них используется зависит от флагов, заданных в ioctl().

Пакет от http://vtun.sourceforge.net/tun содержит два простых примера использования устройств tun и tap. Обе программы работают как мост между двумя сетевыми интерфейсами.

  • br_select.c - мост, основанный на системном вызове select.
  • br_sigio.c - мост на основе async io и сигнала SIGIO.

Однако лучшим примером является VTun http://vtun.sourceforge.net :))

Вы также можете поискать в Google множество руководств (хотя большинство из них, вероятно, будут посвящены интерфейсу tun, т.е. IP-пакетам вместо Ethernet-кадров).

Даже если конечный продукт должен быть модулем ядра, я бы все равно начал с tap драйвера, потому что их гораздо легче отлаживать. Вы все равно сможете превратить его в модуль ядра после того, как большая его часть уже будет работать.

2
08.02.2017, 18:54
2 ответа

найдено по адресу http://php.net/manual/en/install.unix.apache2.php

шаг 6 cp php.ini-development / usr / local / lib / php. ini

1
27.01.2020, 22:19

Нашел php.ini на solaris

переименуйте php.ini-dist, который находится с исходным кодом php, в php.ini и скопируйте его в /usr/local/lib

(из расположения: /opt/app/php/lib/php.ini-dist)

0
27.01.2020, 22:19

Теги

Похожие вопросы