Я ищу ярлык с одним нажатием для выхода из системы, перезагрузки и загрузки в другой операционной системе. Единственная информация, которую я нашел в Интернете, находится между Windows и Windows, и я не уверен, что она другая.
ПРИМЕЧАНИЕ. Этот ответ был продолжен.
Это можно сделать. Я не уверен, что Desktop Environment вы работаете, но шаги должны быть относительно близки к тому же. Эти шаги создадут сценарий, который вы можете запустить из командной строки, а также панель запуска, которую можно запустить, щелкнув по ней. В любом случае, лучше всего попросить пароль перед перезагрузкой.
Прежде всего, нужно создать скрипт, который будет содержать команды, основанные на моем другом ответе здесь, используя grub-reboot, поскольку он устанавливает загрузочная запись по умолчанию для GRUB, для следующей загрузки. Причина этого в том, что редактирование файла /etc/default/grub или файла /boot/grub/grub.cfg отсутствует.
Я вызвал свой скрипт win_reboot.bsh, но перед добавлением содержимого в скрипт запустите sudo os-prober, чтобы получить более точное имя Windows 10, если в нем будет несколько записей, например, в OEM-системы с восстановлением и т. Д.
Я не использую GPT или не запускаюсь в OEM-системе, поэтому у меня есть только одна запись.
terrance@terrance-ubuntu:~$ sudo os-prober
/dev/sdh1:Windows 10 (loader):Windows:chain
Обратите внимание на имя Windows между двоеточия :. Мы будем использовать Windows 10 (loader). awk действительно будет иметь проблемы со специальными символами, такими как ()/, поэтому нам придется избегать тех, у кого есть \, как Windows 10 \(loader\). Мы будем использовать эту строку, потому что она будет более точной, если в os-prober есть несколько записей, которые выполняются до того, как grub-update записывает новый файл /boot/grub/grub.cfg.
Для этого мы также собирается использовать команду pkexec, которая должна быть уже установлена. мой другой ответ здесь .
ПРИМЕЧАНИЕ:
#!/bin/bash
if [ ${UID} != 0 ]; then
echo "Please run as 'sudo $0'"
exit 1
fi
grub-reboot "$(awk -F"'" '/Windows 10 \(loader\)/ {print $2}' /boot/grub/grub.cfg)"
reboot
Этот скрипт будет искать файл grub.cfg и получить полное имя загрузки Windows 10 (loader). Я сделал строку для обработки изменений, если grub-update выполняется в будущем и изменяет имя этой строки. Причина этого в том, что если вы добавите жесткий диск или оставите USB-накопитель в системе, который не загружается при загрузке, обозначение диска может измениться. Вы могли видеть строку, которая читается как Windows 10 (loader) (on /dev/sdh1), а затем на другой grub-update она изменяется на Windows 10 (loader) (on /dev/sdg1). Хорошо, что эти записи на самом деле полагаются на UUID раздела, а не на имя в записи grub.
Затем сделайте исполняемый файл сценария:
sudo chmod +x win_reboot.bsh
Теперь, если вы запускаете его из командной строки без sudo, он должен выглядеть так:
terrance@terrance-ubuntu:~/scripts$ ./win_reboot.bsh
Please run as 'sudo ./win_reboot.bsh'
Создать ярлык для нового скрипта. Надеюсь, что когда вы щелкните правой кнопкой мыши на своем рабочем столе, это Create Launcher является одним из вариантов. Я запускаю Xfce4 в качестве рабочего стола. Я думаю, вы могли бы создать пусковую установку на основе комментария, размещенного Andrew Shum, поскольку он все равно должен работать до тех пор, пока он указывает на скрипт win_reboot.bsh.
Редактировать: я изменил программу запуска здесь на основе комментариев Я получил ниже. sudo -H не работает в команде запуска, если вы не установили опцию «Выполнить в терминале». Еще одна вещь, чтобы отметить, что эта программа запускает вызов CLI-скрипта, а не GUI-приложения.
Вы можете создать файл в папке ~/Desktop с именем Boot to Windows 10.desktop и добавить к нему следующее: [ ! d21] [Desktop Entry]
Version=1.0
Type=Application
Name=Boot to Windows 10
Comment=Reboot System to Windows 10
Exec=pkexec /home/terrance/scripts/win_reboot.bsh
Icon=web-microsoft
Path=
Terminal=false
StartupNotify=false
Не забудьте изменить строку Exec= в соответствии с вашим расположением файла.
комментарий, отправленный Andrew Shum
Then когда вы запустите ярлык, вы увидите что-то подобное, чтобы ввести свой пароль в качестве Суперпользователя:
Надеюсь, что это поможет!
ПРИМЕЧАНИЕ. Этот ответ был продолжен.
Это можно сделать. Я не уверен, что Desktop Environment вы работаете, но шаги должны быть относительно близки к тому же. Эти шаги создадут сценарий, который вы можете запустить из командной строки, а также панель запуска, которую можно запустить, щелкнув по ней. В любом случае, лучше всего попросить пароль перед перезагрузкой.
Прежде всего, нужно создать скрипт, который будет содержать команды, основанные на моем другом ответе здесь, используя grub-reboot, поскольку он устанавливает загрузочная запись по умолчанию для GRUB, для следующей загрузки. Причина этого в том, что редактирование файла /etc/default/grub или файла /boot/grub/grub.cfg отсутствует.
Я вызвал свой скрипт win_reboot.bsh, но перед добавлением содержимого в скрипт запустите sudo os-prober, чтобы получить более точное имя Windows 10, если в нем будет несколько записей, например, в OEM-системы с восстановлением и т. Д.
Я не использую GPT или не запускаюсь в OEM-системе, поэтому у меня есть только одна запись.
terrance@terrance-ubuntu:~$ sudo os-prober
/dev/sdh1:Windows 10 (loader):Windows:chain
Обратите внимание на имя Windows между двоеточия :. Мы будем использовать Windows 10 (loader). awk действительно будет иметь проблемы со специальными символами, такими как ()/, поэтому нам придется избегать тех, у кого есть \, как Windows 10 \(loader\). Мы будем использовать эту строку, потому что она будет более точной, если в os-prober есть несколько записей, которые выполняются до того, как grub-update записывает новый файл /boot/grub/grub.cfg.
Для этого мы также собирается использовать команду pkexec, которая должна быть уже установлена. мой другой ответ здесь .
ПРИМЕЧАНИЕ:
#!/bin/bash
if [ ${UID} != 0 ]; then
echo "Please run as 'sudo $0'"
exit 1
fi
grub-reboot "$(awk -F"'" '/Windows 10 \(loader\)/ {print $2}' /boot/grub/grub.cfg)"
reboot
Этот скрипт будет искать файл grub.cfg и получить полное имя загрузки Windows 10 (loader). Я сделал строку для обработки изменений, если grub-update выполняется в будущем и изменяет имя этой строки. Причина этого в том, что если вы добавите жесткий диск или оставите USB-накопитель в системе, который не загружается при загрузке, обозначение диска может измениться. Вы могли видеть строку, которая читается как Windows 10 (loader) (on /dev/sdh1), а затем на другой grub-update она изменяется на Windows 10 (loader) (on /dev/sdg1). Хорошо, что эти записи на самом деле полагаются на UUID раздела, а не на имя в записи grub.
Затем сделайте исполняемый файл сценария:
sudo chmod +x win_reboot.bsh
Теперь, если вы запускаете его из командной строки без sudo, он должен выглядеть так:
terrance@terrance-ubuntu:~/scripts$ ./win_reboot.bsh
Please run as 'sudo ./win_reboot.bsh'
Создать ярлык для нового скрипта. Надеюсь, что когда вы щелкните правой кнопкой мыши на своем рабочем столе, это Create Launcher является одним из вариантов. Я запускаю Xfce4 в качестве рабочего стола. Я думаю, вы могли бы создать пусковую установку на основе комментария, размещенного Andrew Shum, поскольку он все равно должен работать до тех пор, пока он указывает на скрипт win_reboot.bsh.
Редактировать: я изменил программу запуска здесь на основе комментариев Я получил ниже. sudo -H не работает в команде запуска, если вы не установили опцию «Выполнить в терминале». Еще одна вещь, чтобы отметить, что эта программа запускает вызов CLI-скрипта, а не GUI-приложения.
Вы можете создать файл в папке ~/Desktop с именем Boot to Windows 10.desktop и добавить к нему следующее: [ ! d21] [Desktop Entry]
Version=1.0
Type=Application
Name=Boot to Windows 10
Comment=Reboot System to Windows 10
Exec=pkexec /home/terrance/scripts/win_reboot.bsh
Icon=web-microsoft
Path=
Terminal=false
StartupNotify=false
Не забудьте изменить строку Exec= в соответствии с вашим расположением файла.
комментарий, отправленный Andrew Shum
Then когда вы запустите ярлык, вы увидите что-то подобное, чтобы ввести свой пароль в качестве Суперпользователя:
Надеюсь, что это поможет!