前提・実現したいこと
raspberry pi 4(raspbian buster)にて、flaskで自作したapi経由でraspberry piを再起動させたいです。
発生している問題・エラーメッセージ
- 再起動しません。
- 表面上、エラーメッセージを確認できません。
該当のソースコード
python
@sysapi_module.route('/api/reboot', methods=['POST']) def sysapi_reboot(): try: cmd = 'sudo /sbin/reboot' subprocess.call(cmd.split(), shell=True) except Exception as e: return jsonify({'result':False, 'error':e.args}) return jsonify({'result':True})
試したこと
- 手元のPC内のpostmanから、http://[ip]/api/reboot をPOSTで発行しましたが、戻り値はresult:Trueが返ってくるもののraspberry piは再起動しませんでした。
- subprocess.call()以外に、os.system()やsubprocess.Popen()も試しましが、戻り値はresult:Trueが返ってくるもののraspberry piは再起動しませんでした。
補足情報(FW/ツールのバージョンなど)
- raspberry piとflaskのバージョン
console
pi@raspberrypi:~ $ lsb_release -a No LSB modules are available. Distributor ID: Debian Description: Debian GNU/Linux 10 (buster) Release: 10 Codename: buster pi@raspberrypi:~ $ flask --version Flask 1.0.2 Python 3.7.3 (default, Jan 22 2021, 20:04:44) [GCC 8.3.0]
まだ回答がついていません
会員登録して回答してみよう