前提・実現したいこと
raspberry pi 4(raspbian buster)にて、flaskで自作したapi経由でraspberry piを再起動させたいです。
発生している問題・エラーメッセージ
- 再起動しません。
- 表面上、エラーメッセージを確認できません。
該当のソースコード
python
1@sysapi_module.route('/api/reboot', methods=['POST']) 2def sysapi_reboot(): 3 try: 4 cmd = 'sudo /sbin/reboot' 5 subprocess.call(cmd.split(), shell=True) 6 except Exception as e: 7 return jsonify({'result':False, 'error':e.args}) 8 9 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
1pi@raspberrypi:~ $ lsb_release -a 2No LSB modules are available. 3Distributor ID: Debian 4Description: Debian GNU/Linux 10 (buster) 5Release: 10 6Codename: buster 7 8pi@raspberrypi:~ $ flask --version 9Flask 1.0.2 10Python 3.7.3 (default, Jan 22 2021, 20:04:44) 11[GCC 8.3.0]
回答2件
あなたの回答
tips
プレビュー