При установке дополнений в гостевой Астре происходит ошибка сборки модуля общих папок, и, соответственно, общие папки потом не работают.
Чтобы избежать ошибки, можно подправить вышеуказанную строку в вышеупомянутом файле version.h внутри VBoxLinuxAdditions.run, изменив её на
Для автоматизации этого действия можно использовать следующий скрипт. Для его работы нужно предварительно установить пакет makeself, которым создаются файлы .run.
Скрипт нужно запустить в терминале, зайдя в системе-хозяине на примонтированный образ с дополнениями. Например, так.
Результатом его работы для данного примера будет образ /tmp/VBoxLinuxAdditions-6.1.34.iso, который уже можно подключить к гостевой Астре и запустить там подправленный VBoxLinuxAdditions.run.
Код:
/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))
Код:
# define RTLNX_UBUNTU_ABI(a_iAbi) 0
Код:
#!/bin/bash
runfile='VBoxLinuxAdditions.run'
archive='VBoxGuestAdditions-amd64.tar.bz2'
line='^# define RTLNX_UBUNTU_ABI'
tmpdir='/tmp/vboxadd'
sedcmd='/.+VirtualBox ([0-9.]+) Guest Additions.+/{s//\1/;p;q0}'
version=$(sh "$runfile" --info | sed -nE "$sedcmd" -) || exit 1
file="src/vboxguest-${version}/vboxsf/include/iprt/linux/version.h"
sh "$runfile" --noexec --keep --target "$tmpdir" || exit 1
cd "$tmpdir"
mkdir -p 'extract' && cd 'extract' && tar -xjf ../"$archive" || exit 1
sed -i "/${line}/s/(RT_CONCAT(0x,a_iAbi))/0/" "$file" || exit 1
tar -cjf ../"$archive" * && cd ../.. && rm -r "$tmpdir/extract" || exit 1
makeself='/usr/bin/makeself.sh'; [[ -f $makeself ]] || makeself='/usr/bin/makeself'
$makeself --nocomp "$tmpdir" "$runfile" \
"VirtualBox $version Guest Additions for Linux" \
'/bin/sh' './install.sh' '$0' && rm -r "$tmpdir" || exit 1
genisoimage -rJV "VBox_${version}_Linux_GAs" -o "VBoxLinuxAdditions-${version}.iso" \
"$runfile" && rm "$runfile" || exit 1
echo -e "\nГотово: /tmp/VBoxLinuxAdditions-${version}.iso\n"
exit 0
Код:
sudo mount ~/.config/VirtualBox/VBoxGuestAdditions_6.1.34.iso /mnt
cd /mnt
bash <путь-к-скрипту>