Когда нам нужно использовать sudo python xxx.py или просто python xxx.py или xxx.py
Вопрос
Я написал веб-сайт, что меня смущено, когда я бегу на веб-сайте, сначала мне нужно начать приложение, поэтому есть 3 способа:
- sudo python xxx.py.
- python xxx.py.
- xxx.py.
Я не очистился с тем, как использовать каждый из них, метод NO.3 в настоящее время в моем компьютере не работает хорошо работает
Решение
sudo
Запустит приложение с разрешениями суперпроседа. Учитывая, что вы имеете в виду веб-сайт, это, безусловно, нет что ты хочешь делать. (Для WebApp, если это требует разрешений суперпользователя, это сломано. Это далеко, слишком большая из риска безопасности, чтобы рассмотреть вопрос о том, чтобы рассмотреть.)
При других обстоятельствах у вас может быть программа Python, которая имеет некоторую систему поддерживать и требует выполнения в качестве корня. В этом случае вы бы использовали sudo
, но вы бы никогда Хотите сделать это для чего-то общего доступов и потенциально могут быть использованы. Фактически, для чего-либо, кроме тестирования, вы, вероятно, должны запускать WebApp в качестве отдельного пользователя с очень ограниченным доступом (например, с их оболочкой, установленным на /dev/null
, Не прочитайте или пишите доступ к тому, что им не нужно, и т. Д. ...).
Дваные два эффективно идентичны (в Therms из того, что они делают), но последний вариант (выполнение скрипта напрямую) потребуется:
- Исполняемый бит для установки (в системах Unix-Y) (например,
chmod +x whatever.py
) - а. шебанг на первой строке (например,
#! /usr/bin/python
) Указывая на то, что вы хотите, чтобы вы хотите запустить вещи (опять же, это только относится к системам Unix-Y)
Вызов Python, чтобы запустить код (python whatever.py
) и следуя шагам выше (в результате скрипта вы можете позвонить напрямую с whatever.py
) Делайте именно то же самое (предполагая, что Shebang в файле Python указывает на тот же исполняемый файл Python AS "python
"Это, во всяком случае ...)