Разрешения для общей папки Virtualbox
Я использую Windows и Virtualbox с RedHat, проще говоря: я создал общую папку, чтобы я мог использовать Eclipse в моей ОС Windows и провести некоторое тестирование в Linux.
Тем не менее, я не могу получить доступ к общей папке с моим пользователем, я вошел в систему с root и использовал chmod 777
и даже переместил моего пользователя в группу папки.
Что бы я ни делал, результат один и тот же:
/media/sf_sharedFolder/: Permission denied
Что я могу сделать? Как я могу получить доступ к общей папке с моим пользователем?
8 ответов
Добавьте себя в vboxsf
группа в составе гостевой ВМ.
Решение 1
Редактировать файл /etc/group
, Ищите линию vboxsf:x:999
и добавить в конце :yourusername
Решение 2
Бежать sudo adduser $USER vboxsf
В любом случае, вы должны сначала выйти из системы, а затем войти в нее после выполнения этого, чтобы изменения вступили в силу.
Попробуйте это (на гостевой машине. То есть ОС, запущенная в виртуальной коробке):
sudo adduser your-user vboxsf
Теперь перезагрузите ОС, работающую в виртуальной коробке.
Это тоже работает
sudo usermod -aG <group> <user>
Затем перезагрузите VM
Для по-настоящему ленивых (без набора текста, только легко скопировать и вставить):
sudo usermod -aG vboxsf $USER
Выйдите из системы и войдите в нее, чтобы изменения вступили в силу.
Я знаю, что это решение "я тоже", но я действительно ленив и не нашел другого решения, которое могло бы удовлетворить мою врожденную апатию...:)
Для VirtualBox(5.0.24) Host=Mac(El Capitan) и Guest=RHEL(7.2)
Запустите гостевую виртуальную машину RHEL и откройте терминал. Убедитесь, что у вас установлены инструменты разработчика.
sudo yum groupinstall 'Developer Tools'
И пакет заголовков ядра, чтобы скрипт Guest Additions мог обновить ваше ядро.
sudo yum install kernel-devel*
Как только у вас есть необходимые условия, вы можете установить гостевые дополнения. Выбрав работающую виртуальную машину, перейдите в меню VirtualBox и выберите "Устройства" -> "Вставить образ гостевого дополнения"...
Подождите несколько секунд, пока произойдет монтирование и стартует скрипт установки. После того, как они нажали кнопку "Выполнить" в диалоговом окне, которое появилось в вашей гостевой виртуальной машине.
После завершения сценария щелкните правой кнопкой мыши значок компакт-диска на рабочем столе и выберите "Извлечь". Затем выключите гостевую виртуальную машину.
Создайте общую папку в вашей хост-системе с помощью терминала, я обычно помещаю ее в папку "Документы" и проверяю, что ваш пользователь может получить к ней доступ.
sudo mkdir ~/Documents/RhelShared
sudo chmod 755 <user> ~/Documents/RhelShared
В Oracle VM Virtual Box Manager выберите свою виртуальную машину, а затем щелкните элемент конфигурации "Общие папки". В следующем диалоговом окне щелкните значок "Добавить папку" справа от списка папок.
Затем во всплывающем окне выберите папку хоста, которую вы только что создали в качестве пути к папке, и присвойте ей имя папки, которое будет использоваться гостевой виртуальной машиной, а также установите флажок "Автоматическое подключение".
После перезагрузки гостевой виртуальной машины запустите терминал на хосте и проверьте, что пользователь, связанный с запущенным гостевым процессом VirtualBox, является, скорее всего, вашим пользователем или в группе с доступом к общей папке.
ps aux | grep VirtualBoxVM
Затем, согласно нескольким предыдущим ответам в терминале на гостевой виртуальной машине, добавьте своего пользователя в группу vboxsf.
sudo usermod -a -G vboxsf <user>
Выйдите и снова, чтобы забрать изменения.
Общая папка теперь должна быть доступна и доступна как sf_rhelshared, при условии, что вы использовали те же имена, что и я, во всплывающем окне выше.
В моем случае было необходимо следующее:
sudo chgrp vboxsf /media/sf_sharedFolder
Чтобы уточнить последний пост:
Команда VBoxManage:
VBoxManage setextradata <VM_NAME> VBoxInternal2/SharedFoldersEnableSymlinksCreate/<SHARE_NAME> 1
sudo adduser xxxxxxx vboxsf
где xxxxxx - это имя вашей учетной записи. Выйдите из системы и войдите в Ubuntu.
Проблема заключается в том, что разрешения для общей папки по умолчанию не разрешают использование символических ссылок. Вы можете включить их в несколько простых шагов.
- Завершите работу виртуальной машины.
- Запишите имя вашей машины на
Machine > Settings > General > Name
- Запишите имя вашей общей папки в "Машина> Настройки> Общие папки"
- Найдите свой корневой каталог VirtualBox и выполните следующую команду. VBoxManage setextradata "" VBoxInternal2/SharedFoldersEnableSymlinksCreate/ 1
- Запустите виртуальную машину, и в общей папке теперь будут разрешены символические ссылки.
После добавления пользователя в группу vboxsf вам может потребоваться полностью выйти из gnome/xfce/??? сессии, потому что кто-то давно решил, что групповая принадлежность должна быть кэширована при первом входе в оконную систему.
Или иди в старую школу
% newgrp vboxsf
в любой оболочке, которую вы хотите использовать для доступа к папке. К счастью, newgrp ищет список групп для себя и не использует кэшированные значения. Вам все равно нужно будет выйти и снова войти, чтобы получить доступ к папке из чего-то другого, кроме оболочки.
По моему личному опыту, сложно включить общие папки в VirtualBox, но это возможно. У меня есть гостевая виртуальная машина debian Buster, установленная на моем хосте с Windows 10.
Я не понимаю, что именно это произошло, но я помню, что обратился к защитнику Windows, своему антивирусу, чтобы узнать, распознают ли они VirtualBox как программу, а не как вирус. После этого я нажимаю правой кнопкой мыши на файл документа и разрешаю открыть общий доступ к папке, я нажимаю на некоторые кнопки там и принимаю общий доступ к группам и пользователю muy в Windows 10.
Кроме того, я нашел веб-страницу Windows о чем-то вроде виртуальных машин, которые я плохо помню, но это привело меня к панели, и мне пришлось изменить три вещи с двойным щелчком, чтобы при обновлении Windows она распознавала мою виртуальную машину. Кроме того, в muy debian, в терминале, используя некоторые командные строки, muy VirtualBox распознал моего пользователя, дающего разрешения, я основывался на некоторой информации на форумах Ubuntu. Ставлю все что помню.