VirtualBox Guest Additions -- общие папки

countmein

New member
Сообщения
328
#22
Этот каталог теперь и есть этот файл, то бишь отражает его содержимое.
 
Сообщения
765
#23
Этот каталог теперь и есть этот файл, то бишь отражает его содержимое.
Скрипт выполнил. Файл VBoxLinuxAdditions.run еще не подправил. Его нужно подправить в гостевой системе после того как он будет к ней подключен или до выполнения скрипта?
 
Сообщения
765
#25
Скрипт его и подправляет. Теперь нужно подключить к гостю образ, созданный скриптом в /tmp, и уже из гостя выполнить VBoxLinuxAdditions.run.
Пока не могу запустить гостевую VirtualBox. Наверное потому что перешел сегодня на ядро hardened и все делаю из под него. Завтра попробую на generiс. Сегодня уж поздно. Во время выполнения скрипта была еще такая строка:
Код:
Uncompressing VirtualBox 6.1.28 Guest Additions for LinuxVBoxLinuxAdditions.run: строка 44: /bin/df: Отказано в доступе
Но в остальном скрипт вроде сработал нормально.
Creating directory /tmp/vboxadd
Verifying archive integrity... All good.
Uncompressing VirtualBox 6.1.28 Guest Additions for LinuxVBoxLinuxAdditions.run: строка 44: /bin/df: Отказано в доступе
VBoxLinuxAdditions.run: строка 360: test: -lt: ожидается унарный оператор
........
Header is 524 lines long

About to compress 7276 KB of data...
Adding files to archive named "VBoxLinuxAdditions.run"...
./
./VBoxGuestAdditions-amd64.tar.bz2
./install.sh
./installer/
./installer/module-autologon
./VBoxGuestAdditions-x86.tar.bz2
./deffiles
./routines.sh
CRC: 3022556268
MD5: bbc257d00365b01cc3d04efe97aa4c49

Self-extractable archive "VBoxLinuxAdditions.run" successfully created.
I: -input-charset not specified, using utf-8 (detected in locale settings)
Total translation table size: 0
Total rockridge attributes bytes: 263
Total directory bytes: 0
Path table size(bytes): 10
Max brk space used 0
3823 extents written (7 MB)

Готово: /tmp/VBoxLinuxAdditions-6.1.28.iso
 
Последнее редактирование:

countmein

New member
Сообщения
328
#26
Да, всё отрабатывает нормально, несмотря на ошибки. Это косяк скрипта, вообще-то, -- не моего, а VBoxLinuxAdditions.run, который вызывается моим. Вызов команды df у вас обламывается и переменная leftspace остаётся неинициализированной, но выполнение идёт дальше, используя эту переменную. Тут, естественно, опять ошибка, но она обрабатывается как результат сравнения переменной.

А почему у вас /bin/df недоступно обычному пользователю? Из-за перехода на hardened, что ли?
df displays the amount of disk space available on the file system containing each file name argument.
Неужто и это можно использовать злонамеренно?
 
Последнее редактирование:
Сообщения
765
#27
Да, всё отрабатывает нормально, несмотря на ошибки.

А почему у вас /bin/df недоступно обычному пользователю? Из-за перехода на hardened, что ли?

Неужто и это можно использовать злонамеренно?
Вроде получилось на generic. Файл VBoxLinuxAdditions.run нужно запускать от root. Единственное что: В гостевой машине владелец общей папки является root и из под рута приходиться закачивать нужные файлы на гостевую систему а изменить владельца папки не получается даже из под рута. Приходиться запускать sudo fly-fm и потом копировать из общей папки на гостевую нужное а затем менять владельца скопированного содержимого на моего пользователя. В принципе мелочи но все таки.
 
Последнее редактирование:

countmein

New member
Сообщения
328
#28
Владелец root, но группа-то должна быть vboxsf. Включите себя в госте в эту группу.
Код:
usermod -aG vboxsf <user>
Это один вариант. Другой -- не подключать папку автоматически, а делать это через /etc/fstab гостя, где уже прописать владельцем себя. К примеру,
Код:
share /home/<user>/VirtualBox/share vboxsf defaults,uid=1000,gid=1000,nofail 0 0
share -- название общей папки в настройках машины, потом каталог в госте, к которому она подключается. При этом в настройках машины нужно указать только папку хозяина и её имя, больше ничего.
 
Сообщения
765
#29
share /home/<user>/VirtualBox/share vboxsf defaults,uid=1000,gid=1000,nofail 0 0
share -- название общей папки в настройках машины, потом каталог в госте, к которому она подключается. При этом в настройках машины нужно указать только папку хозяина и её имя, больше ничего.
У меня перед названием общей папки находиться такое название sf_ а дальше уже название общей папки. А в госте каталог к которому она подключается выглядит так /media/Название общей папки
 
Сообщения
765
#30
Это один вариант. Другой -- не подключать папку автоматически, а делать это через /etc/fstab гостя, где уже прописать владельцем себя. К примеру,
Код:
share /home/<user>/VirtualBox/share vboxsf defaults,uid=1000,gid=1000,nofail 0 0
share -- название общей папки в настройках машины, потом каталог в госте, к которому она подключается. При этом в настройках машины нужно указать только папку хозяина и её имя, больше ничего.
Получилось!!! Прописал в /etc/fstab имя общей папки без fs_ и затем путь к ней /media/sf_название папки которое скопировал и vboxsf defaults,uid=1000,gid=1000,nofail 0 0
Я начал этот способ вместо добавления пользователя в группу vboxsf так как плохо еще знаю /etc/fstab и потому решил на практике проверить как он работает чтобы в дальнейшем легче было через него делать нужные записи, и теперь общая папка доступна и владельцем ее является мой пользователь и моя группа.(y):):coffee:
 

countmein

New member
Сообщения
328
#31
Поздравляю. :) Через fstab более универсально, т.к. автоподключение не везде работает. Но каталог подключения в госте при этом способе должен уже быть создан вручную.
 
Сообщения
765
#32
Чтобы избежать ошибки, можно подправить вышеуказанную строку в вышеупомянутом файле version.h внутри VBoxLinuxAdditions.run, изменив её на
Не очень понял какую именно строку нужно найти в файле VBoxLinuxAdditions.run. Приведите ее пожалуйста полностью а то что то не получается ее найти чтобы заменить на ту которую Вы указали.
 

countmein

New member
Сообщения
328
#33
Код:
/tmp/vbox.0/include/iprt/linux/version.h:135:48: error: hexadecimal floating constants require an exponent
# define RTLNX_UBUNTU_ABI(a_iAbi)   (RT_CONCAT(0x,a_iAbi))
После имени файла указан номер строки (135), а ниже приведена сама строка.

То бишь, это не файл VBoxLinuxAdditions.run, а файл src/vboxguest-${version}/vboxsf/include/iprt/linux/version.h, находящийся в архиве VBoxGuestAdditions-amd64.tar.bz2, находящемся в VBoxLinuxAdditions.run. Две распаковки надо произвести.
 
Последнее редактирование:

countmein

New member
Сообщения
328
#35
Файл run -- это архив tar, к которому спереди присоединён скрипт. Так получается самораспаковывающийся архив. Внутри его несколько других архивов, в частности VBoxGuestAdditions-amd64.tar.bz2, а уже в нём находится файл со строкой. Команда
Код:
VBoxLinuxAdditions.run --help
покажет параметры, с которыми можно запускать этот скрипт. Только сделайте его исполняемым.
 
Сообщения
765
#36
Файл run -- это архив tar, к которому спереди присоединён скрипт. Так получается самораспаковывающийся архив. Внутри его несколько других архивов, в частности VBoxGuestAdditions-amd64.tar.bz2, а уже в нём находится файл со строкой. Команда
Код:
VBoxLinuxAdditions.run --help
покажет параметры, с которыми можно запускать этот скрипт. Только сделайте его исполняемым.
Файл VBoxLinuxAdditions.run я запустил в fly-fm который запустил от рута. Файл исполняемым я, разумеется, сделал. Теперь, как я понимаю, произошла распаковка. И где теперь нужно найти VBoxGuestAdditions-amd64.tar.bz2? Я полагаю что Вы это делаете в Alt Linux. А в Астре то по другому.
 
Последнее редактирование:

countmein

New member
Сообщения
328
#37
Так а зачем его из менеджера файлов-то запускать? Это ведь не графическое приложение. Из терминала нужно. Тогда всё и видно будет. А где вам сейчас искать, не знаю. У него есть параметр, в котором можно указать каталог для распаковки.
 
Сообщения
765
#38
Так а зачем его из менеджера файлов-то запускать? Это ведь не графическое приложение. Из терминала нужно. Тогда всё и видно будет. А где вам сейчас искать, не знаю. У него есть параметр, в котором можно указать каталог для распаковки.
Там все равно вывод в терминале даже при запуске в графике. А в терминале кстати не могу запустить. Перехожу в каталог где он находиться. А при нажатии автодополнения Tab выходит вот что (на втором снимке) А когда набираю VBoxLinuxAdditions.run --help сообщает что команда не найдена.
 

Вложения

countmein

New member
Сообщения
328
#39
Если его просто так запустить, без параметров, он устанавливает гостевые дополнения, что у вас и произошло. Ну а распакованное он после установки удаляет.

Если запускаете скрипт или программу в папке, которая не прописана в переменной PATH, нужно указывать явно эту папку, даже если она текущая. Текущая указывается точкой.
Код:
./VBoxLinuxAdditions.run --help
 
Сообщения
765
#40
Если его просто так запустить, без параметров, он устанавливает гостевые дополнения, что у вас и произошло. Ну а распакованное он после установки удаляет.

Если запускаете скрипт или программу в папке, которая не прописана в переменной PATH, нужно указывать явно эту папку, даже если она текущая. Текущая указывается точкой.
Код:
./VBoxLinuxAdditions.run --help
Команда ./VBoxLinuxAdditions.run --list показала список.
 

Вложения