Получение необходимых разрешений для записи на usb fla sh диск с python на сервере Ubuntu - PullRequest
1 голос
/ 18 июня 2020

У меня есть программа, которая позволяет пользователю сохранять данные в виде файла .txt по заданному пути к файлу на Raspberry Pi. Я запускаю сценарий на безголовом сервере Ubuntu, и он отлично работает в любом из обычных каталогов, но выдает мне PermissionError: [Errno 13] Permission denied: *filepath to usb* всякий раз, когда я пытаюсь записать на свой USB-накопитель. В сжатом виде код выглядит так:

if overwrite:
    file = open(filepath, 'w')
else:
    file = open(filepath +'/CAN_Data.txt','w')


while save_status:
    msg = raw_data_queue.get()
    file.write(msg + '\n')
    if msg == 'END': #sent when stop save pressed
        file.close()
        save_status = False
        break

Когда пользователь нажимает кнопку запуска сохранения, save_status становится True, и программа получает сообщения из очереди, а затем вставляет их либо в существующий файл txt, либо в новый. один в зависимости от статуса переопределения, указанного пользователем. Я уже пробовал редактировать права доступа к файлу, используя sudo chmod 777 /dev/sda1 и sudo chmod 777 /media/usb0 <- каталог, в который я смонтировал диск fla sh. Однако ни один из них не работал, и я все еще получаю ту же ошибку при запуске своего кода. </p>

1 Ответ

0 голосов
/ 18 июня 2020

Я запустил программу с sudo perms, например sudo python3 main.py, и проблема исчезла сама собой.

...