过去 https://askubuntu.com/a/1108609/912537 我建议了一种从windows编辑grub的方法。我在/ boot / efi / EFI / grub上安装了grub,并且一直在尝试创建一个更改Grub Environment Block中“next_entry”变量的脚本。
双启动Win10和Debian9,我有WSL运行Debian(Bash on Win)。
我正在尝试使用脚本作为Linux快捷方式的重启,因为我的BT键盘在GRUB中不起作用。我在Linux上反向工作就好了。我有一个批处理文件和一个shell脚本 (不) 一前一后地工作。这是代码:
重启到把linux.bat
@echo off
mountvol s: /S
wsl /mnt/c/Users/<username>/Documents/User_scripts/reboot-to-linux.sh
mountvol s: /D
Restart-Computer -Computername 'localhost'
reboot-to-linux.sh
#!/bin/bash
sudo mount -t drvfs s: /mnt/s
sudo grub-editenv /mnt/s/EFI/grub/grubenv set next_entry=0
sudo umount /mnt/s
这是我得到的错误:
不存在/ mnt / s
grub-editenv:错误:无法打开`/mnt/s/EFI/grub/grubenv.new':没有这样的文件或目录。
umount:/ mnt / s:未挂载
这告诉我mount命令无法将s:windows挂载点挂载到/ mnt / s - 奇怪的是,这些命令中的每一个都在各自的控制台中单独工作,我显然没有正确编写脚本。
编写这些脚本的正确方法是什么?