поиск UUID продукта в Linux работает на CLI, но не в переполнении стека

когда я запускаю эту команду (как root) из командной строки linux:

cat /sys/devices/virtual/dmi/id/product_uuid

Я получаю UUID машины просто отлично. Но когда я делаю это в php:

echo `cat /sys/devices/virtual/dmi/id/product_uuid`;

Я не получаю вывод. В PHP показывает, что я www-data чего я и ожидал

Очевидный вопрос: почему нет выхода? и если это проблема с разрешениями, будет ли способ поместить эту команду в сценарий оболочки и вызвать ее через PHP таким образом? Благодарю.

ОБНОВИТЬ: Я считаю, что это была проблема с разрешением. при изменении прав доступа к файлу product_uuid с r— — — для root: root на r— — r—, я могу прочитать файл через PHP, но гораздо лучше вызвать скрипт оболочки как www-данные, которые могут получить содержимое файла.

0

Решение

Вы должны использовать exec функция в php

echo exec('cat /sys/devices/virtual/dmi/id/product_uuid');
0

Другие решения

пожалуйста, используйте shell_exec() функция, чтобы получить выход

echo shell_exec('/sys/devices/virtual/dmi/id/product_uuid');

это будет отображать вывод в виде строки

0

По вопросам рекламы [email protected]