Перейти к содержимому

Permission denied python что делать

  • автор:

PermissionError: [Errno 13] Permission denied Python

Всем доброго времени суток, на win 11 столкнулся с проблемой что при редактировании файла hosts выскакивает ошибка PermissionError: [Errno 13] Permission denied: ‘C:\\Windows\\System32\\drivers\\etc\\hosts’ Пробовал использовать ctypes.windll.shell32.ShellExecuteW(None, «runas», sys.executable, __file__, None, 1) Винда спрашивает запустить ли этот файл от имени администратора, нажимаю да, но ошибка повторяется Вот код:

import ctypes import sys import psutil import customtkinter import keyboard from customtkinter import * #Переменные blocked_sites = ['www.google.com', 'www.yandex.ru', 'google.com', 'yandex.ru', 'yandex.com', 'www.yandex.ru', 'youtube.com', 'www.youtube.com', 'ya.ru', 'www.ya.ru', 'dzen.ru'] redirect_url = 'https://ilian445.tb.ru/page3' hosts=r'C:\Windows\System32\drivers\etc\hosts' #DEFs #Блокировка def block(): #Блокируют клавишы, указанные в ковычках keyboard.add_hotkey("alt + f4", lambda: None, suppress =True) keyboard.add_hotkey("ctrl+shift+esc", lambda: None, suppress =True) keyboard.add_hotkey("ctrl+alt+del", lambda: None, suppress =True) keyboard.add_hotkey("win+d", lambda: None, suppress =True) keyboard.add_hotkey("win+m", lambda: None, suppress =True) #Блокировка сайтов with open(hosts, 'r+') as file: src= file.read() for site in blocked_sites: if site in src: pass else: file.write(f"(redirect_url) (site)\n") #Авторизация def login(): #Разблокировка сайтов with open(hosts, 'r+') as file: src= file.readlines() file.seek(0) for line in src: if not any(site in line for site in blocked_sites): file.write(line) file.truncate() #Гостевой режим def guest(): print('Login with guest') #Main def #Проверка запуска от имени администратора #if ctypes.windll.shell32.IsUserAnAdmin(): if __name__ == "__main__": main() #else: # ctypes.windll.shell32.ShellExecuteW(None, "runas", sys.executable, __file__, None, 1) #Настраиваем окно авторизации customtkinter.set_default_color_theme("green") app = customtkinter.CTk() app.wm_attributes("-topmost", 1) app.resizable(width=False, height=False) app.overrideredirect(1) app.geometry("300x420+500+200") #Рендерим виджеты в окне авторизации frame_main_page = CTkFrame(app) password_entry = customtkinter.CTkEntry(app, placeholder_text="Введите пароль") login_button = customtkinter.CTkButton(frame_main_page, text="Войти", command=login) guest_button = customtkinter.CTkButton(frame_main_page, text="Гостевой режим", command=guest) password_entry.pack(expand=1) frame_main_page.pack(expand=1) guest_button.pack(expand=1) login_button.pack(expand=1, pady=2) #Запускаем окно авторизации block() app.mainloop() 

Почему PermissionError: [Errno 13] Permission denied на хостинге?

При тестировании на локальном сервере все происходит корректно, на сайте есть форма, где есть несколько полей с возможностью прикрепить файл(png,jpg), записи с поля переносятся в db sqlite, которая лежит внутри директории, но при сохранении файла-изображения в логах выдается ошибка PermissionError: [Errno 13] Permission denied, в чем может быть проблема?

try: image.save(os.path.join(rf"app/static/images/goods/", filenameGood)) imagePage.save(os.path.join(rf"app/static/images/goods/", filenameGoodPage)) except: os.makedirs(rf"app/static/images/goods/") image.save(os.path.join(rf"app/static/images/goods/", filenameGood)) imagePage.save(os.path.join(rf"app/static/images/goods/", filenameGoodPage))

вот сами строчки на которые ругается хостинг, я думал проблема в пути и решил просто сохранить изображение сразу в корень, без папок, но ошибка все та же

Traceback (most recent call last): File "/home/c/myhost/public_html/index.wsgi", line 182, in createGood image.save(filenameGood) File "/home/c/myhost/public_html/venv/lib/python3.6/site-packages/werkzeug/datastructures.py", line 3021, in save dst = open(dst, "wb") PermissionError: [Errno 13] Permission denied: 'd0f2831a-2e6d-11ed-8d2c-3cecef0d9b4c.png'

я думал что ошибка в htaccess, но ничего не нашел про это

  • Вопрос задан более года назад
  • 2366 просмотров

Python permission denied

при запуске скрипта «как исполняемого» ./test.py Выводит:

Bash: ./test.py: /usr/bin: bad interpriter: Permission denied 

sudo ./test.py

sudo: unable to execute ./test.py: Permission denied 

Права доступа к файлу: -rwxrwxrwx

Вопрос: что я делаю не так?

chulavek
04.04.19 00:07:03 MSK

Чего? Это кто? Я знаю только таких:

#!/usr/bin/python 

Deleted
( 04.04.19 00:09:48 MSK )

thunar ★★★★★
( 04.04.19 00:10:10 MSK )
Последнее исправление: thunar 04.04.19 00:10:38 MSK (всего исправлений: 1)

Пиши либо /usr/bin/python либо /usr/bin/env python

Reineke
( 04.04.19 00:10:40 MSK )
Ответ на: комментарий от Deleted 04.04.19 00:09:48 MSK

#!/usr/bin/python

Исправил, ошибка следующая:

bash: ./test.py: /usr/bin/python^M: bad interpriter: No such file or directory 
/usr/bin/env: 'python\r': No such file or directory 

chulavek
( 04.04.19 00:18:06 MSK ) автор топика
Ответ на: #!/usr/bin/python от chulavek 04.04.19 00:18:06 MSK

Так ты ещё и под offtop-ом. Ну так хоть notepad++ поставь для приличия. Он тебе разъяснит, где ты неправ.

Deleted
( 04.04.19 00:20:50 MSK )

/usr/bin: bad interpriter: Permission denied

/usr/bin — это папка, она не может быть выполнена, об этом система тебе и сообщает. права доступа к твоему скрипту тут ни при чём.

по второй ошибке: перевод строки в линуксе — это символ с кодом 10, а не 13, как у тебя (в венде), который воспринимается ядром как продолжение имени интерпретатора вместо конца строки.

anonymous
( 04.04.19 01:37:14 MSK )
Ответ на: комментарий от Deleted 04.04.19 00:20:50 MSK

Судя по тегам он не под оффтопом, просто файл создан там каким-то клоуном, который где-то читал о шебанге. Оп, тебе надо перекодировать концы строк в исходнике с dos на unix — либо редактором, который это умеет, либо в командной строке через dos2unix (iirc).

Python ошибка permission error errno 13

Хочу создать файл в python, и возвращает ошибку: PermissionError: [Errno 13] Permission denied: ‘C:/doroga/k/papke’. Как исправить эту ошибку ТОЛЬКО с помощью кода python?

Лучший ответ

Только с помощью кода python ты не исправишь

Миша ПетровУченик (149) 2 года назад

ладно, а как тогда другим способом?

Nieren Искусственный Интеллект (203293) Руками выдать права либо запускать от админа

Остальные ответы

Похожие вопросы

Ваш браузер устарел

Мы постоянно добавляем новый функционал в основной интерфейс проекта. К сожалению, старые браузеры не в состоянии качественно работать с современными программными продуктами. Для корректной работы используйте последние версии браузеров Chrome, Mozilla Firefox, Opera, Microsoft Edge или установите браузер Atom.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *