我在 MacBook Air 2018 硬件上安装了单引导 Kali Linux。
解决了一些问题以使所有工作正常后,我遇到了麻烦:
我正在尝试在启动前禁用启动声音。MacBook 的典型声音。
我在Apple文档中发现可以修改从终端运行的声音
sudo nvram SystemAudioVolume=%80
Run Code Online (Sandbox Code Playgroud)
但nvram
命令在 Linux 上不可用;然而,还有另一个程序称为nvramtool
.
阅读 mannvramtool
可以让所有 coreboot 参数运行nvramtool -a
,但命令的输出是:
nvramtool: coreboot table not found. coreboot does not appear to be
installed on this system.
Run Code Online (Sandbox Code Playgroud)
因此,经过一番调查后,我发现了一个名为 的程序efivar
,它允许修改 EFI 变量。
键入efivar -l | grep -i SystemAudioVolume
我得到 Apple ( ) 指示的变量,SystemAudioVolume
其值如下:
7c436110-ab2a-4bbb-a880-fe41995c9f82-SystemAudioVolume
Run Code Online (Sandbox Code Playgroud)
现在输入,
7c436110-ab2a-4bbb-a880-fe41995c9f82-SystemAudioVolume
Run Code Online (Sandbox Code Playgroud)
我得到这样的输出:
efivar --print --name 7c436110-ab2a-4bbb-a880-fe41995c9f82-SystemAudioVolume
Run Code Online (Sandbox Code Playgroud)
编辑
我尝试创建 macOS Mojave 的可启动 USB 闪存盘。 …
我在 Kali Linux 上 VERSION_ID="2019.3"
uname -a
Linux kali 4.19.0-kali5-amd64 #1 SMP Debian 4.19.37-6kali1 (2019-07-22) x86_64 GNU/LINUX
试图执行adjust_timezone.sh
放置在/usr/local/startup_scripts/
#!/bin/sh
echo "Adjusting timezone...";
ntpdate in.pool.ntp.org;
Run Code Online (Sandbox Code Playgroud)
的输出 which ntpdate
/usr/sbin/ntpdate
Run Code Online (Sandbox Code Playgroud)
我也尝试在脚本中使用完整路径,但没有成功。
的内容 /etc/crontab
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
@reboot /usr/local/startup_scripts/adjust_timezone.sh
Run Code Online (Sandbox Code Playgroud)
添加了相同的使用crontab -e
过
@reboot /usr/local/startup_scripts/adjust_timezone.sh
Run Code Online (Sandbox Code Playgroud)
我也尝试使用但@reboot : /usr/local/startup_scripts/adjust_timezone.sh
没有成功。
我修改了脚本添加2>&1 >> log.txt
但日志是空的,我认为脚本永远不会执行。
我错在哪里?有什么建议吗?
编辑
正如建议的日志格式错误,我将其更改为>> /log.txt 2>&1
以下结果:
/usr/local/startup_scripts/adjust_timezone.sh: 3: ntpdate: not found
Error resolving in.pool.ntp.org: Name or service not known (-2)
20 Aug 15:14:37 ntpdate[612]: Can't …
Run Code Online (Sandbox Code Playgroud)