Это очень интересная проблема поддержки FOSS. Материнские платы с поддержкой UEFI BIOS обычно вызывают проблемы. Это действительно не может быть так плохо, как проблема с поддержкой графики Power-VR, которую я решил ранее в этом году, и я серьезно сомневаюсь, что нам потребуется взлом ядра, поскольку эта проблема связана с GRUB.
Я знаю, что вам требуются возможности двойной загрузки.
Следовательно, один раздел будет GNU / Linux, а другой раздел будет содержать операционную систему Microsoft.
Первый шаг, который вам потребуется:
http://www.rodsbooks.com/refind/getting.html
Avast! Получите rEFInd Boot Manager. Возьмите компакт-диск ISO или USB-накопитель. Если вы собираетесь сделать это на USB-накопителе, это еще одна, так сказать, «банка червей», но я был бы счастлив провести вас через процесс установки загрузочного USB-носителя в Linux.
Второй шаг, который вам потребуется:
Выгрузите войска! Вставьте этот носитель в сломанную систему и загрузитесь с нее! rEFInd проверит, установлен ли у вас Linux. Выберите ядро для загрузки!
Третий шаг, который вам потребуется:
Теперь, когда вы находитесь в работающей среде в системе, убедитесь, что ваш системный раздел EFI смонтирован в / boot / efi
i.e., mount /dev/sda1 /boot/efi
Но не спешите! Проверьте свой монтаж.
mount -l
Покажите мне результат, и я помогу вам определить, существует ли вообще это разделение.
Убедитесь, что ваш компьютер загружается в режиме EFI ...
[ -d /sys/firmware/efi ] && echo "EFI" || echo "Legacy"
Должен возвращать «EFI».
Переустановите пакет grub-efi
$> apt-get install --reinstall grub-efi
Установите загрузчик / boot / efi
$> grub-install /dev/sda
Загрузчик теперь должен существовать в /boot/efi/EFI/debian/grub*ARCH.efi
$> efibootmgr --verbose
Вероятно, вы узнаете, работал ли этот процесс на основе результатов последних двух шагов.
Если этот процесс завершился неудачно, значит, микропрограмма вашего устройства не ввела информацию в NVRAM. Пожалуйста, убедитесь, что ваши настройки BIOS сконфигурированы для этого (в этом совете не уверены, как ваша плата).
Пожалуйста, отправьте обратно вывод efibootmgr --verbose, когда вы туда доберетесь.
НАИЛУЧШЕГО УДАЧИ МОЙ МУЖЧИНЫ.
Поскольку вы хотите выполнить cgi-скрипт, apache2 не нужно знать о perl. Поэтому я бы удалил директиву SetHandler
.
Для отладки посмотрите ваш /var/log/apache2/error.log
или подобный. Ваш каталог должен быть доступен для apache. У скрипта, который вы хотите выполнить, должен быть установлен флаг выполнения.
Example config:
ScriptAlias /cgi-bin/ /var/www/cgi-bin/
<Directory "/var/www/cgi-bin/">
AllowOverride None
Options +ExecCGI -MultiViews
Order allow,deny
Allow from all
</Directory>