ログイン

Posted Date : 2021-01-25

#Raspberrypi
前回紹介したStreamlinkによるRadiko再生では
ターミナルによるコマンドライン実行で聴ける様になりましたが
Raspberry PiでRadikoが聴けなくなった
我が家ではWEBページで選局してRadikoを聴ける様にしています。

こんな感じ

WEBページはPHPで記述しており、PHPのexecコマンドで再生スクリプトを実行していますが、
Streamlinkの実行はインストールした一般ユーザー又はrootしか実行できず
Apacheユーザー(www-data)では実行できませんでした。

そこで、PHPのexecコマンドを、指定ユーザーで実行する様に改訂します。
・PHP側の記述
exec(“sudo -u 一般ユーザー名 再生スクリプト.sh “ステーションID” > /dev/null 2>&1 &”);

・Apache側の設定変更
sudoにより一般ユーザーで実行する訳ですが、sudoコマンドにはパスワードが必要です。
Apacheユーザー(www-data)でsudoを実行する際にパスワードを求めない設定を記載します。
/etc/sudoersに以下の記載を追加すれば、Apacheユーザー(www-data)から
一般ユーザーがパスワード無しでsudoが実行できます。

www-data ALL=(一般ユーザー名) NOPASSWD: ALL

但し、指定した一般ユーザーはApache上のsudoで常にパスワード無しで実行できる様になるので
セキュリティに十分注意が必要です。(決してrootは指定しない方が良いです)

Similar Posts:


0 Responses


Protected Image