Как узнать доступен ли файл, папка на чтение, запись, запуск? И если скрипт запущен от рута, как перезапустить его от юзера?
Анонимный пользователь Изменен статус публикации
Чтобы получить ответ на первый вопрос попробуйте использовать функцию os.access
import os if os.access("/path/to/file", os.R_OK): print "have read access" if os.access("/path/to/file", os.W_OK): print "have write access" if os.access("/path/to/file", os.X_OK): print "can execute"
Если скрипт запущен от рута, то os.geteud() вернет 0. Можно вместо перезапуска подменить euid на uid нужного пользователя:
import pwd p = pwd.getpwnam("username") os.seteuid(p.pw_uid)