Я установил флэш-диск в новую точку монтирования в моей домашней папке. Однако, когда я все еще пытаюсь скомпилировать мой файл .cpp, он сообщает мне, что в доступе отказано. Как это исправить?
1) В GParted моя флешка называется /dev/sdc1
. И здесь, под меткой Mounte Pointe, указано, что путь /home/myName/newMount
2) Поэтому, когда я открываю свою домашнюю папку, я вижу папку newMount, а внутри - все содержимое моей флешки. Тем не менее, когда я пытаюсь скомпилировать программу, она не дает мне. Вот шаги, которые я предпринимаю:
$ cd newMount
$ cd test
(test - это папка C ++, содержащая мою программу) $ g++ -std=c++11 test.cpp -o test
$ ./test
И, выполнив команду mount
, я получаю эту строку текста с моей флешки: /dev/sdc1 on /home/myName/newMount type vfat (rw,noexec,nosuid,nodev,fmask=0022,dmask=0000)
После некоторого частного чата и отладки с автором - казалось бы, что Вам смонтировали Вашу Карту памяти с эти noexec
флаг - это препятствует тому, чтобы Вы выполнили что-либо прочь диска, даже если Вам установили разрешение явно.
Для фиксации этого, просто remount
карта памяти с эти exec
флаг.
sudo mount -o remount,exec /home/myName/newMount
Используя remount
, все другие флаги останутся тем же.
Не очень ясно, что Вы пробуете. Я предполагаю, что Ваш диск становится смонтированным автоматически, но когда Вы пытаетесь скомпилировать файл на своем флеш-накопителе, Вы отклонили разрешение. Кажется, что Вы, возможно, скопировали файлы с полномочиями пользователя root. Вы могли бы хотеть попробовать sudo chmod -R a+r /path/to/folder/
, если Вы также хотите хранить файлы на устройстве, также работать sudo chmod -R a+w /path/to/folder/
.