电脑定时关机脚本
1 | @echo off |
1 | @echo off |
Raspberry Pi 4B板载了无线网络适配器,不需要额外增加无线网卡就可以把它打造成一个无线路由器。有一种方法是给Raspberry Pi刷上OpenWRT等路由器固件,这样它就变成了一个比较正宗的路由器。另一种方法是开启树莓派无线网络适配器的AP功能,并且共享其有线网络。这样依然使用Raspbian系统,可以发挥Raspiberry Pi作为一个微型服务器的优势。
以下描述如何开启树莓派无线网络适配器的AP功能,并且开机自动启动,实现无线路由功能。
本次我们需要下载github上的create_ap这个项目,利用这个项目来开启树莓派的AP模式。
1 | sudo git clone https://github.com/oblique/create_ap |
克隆到文件下来后,进入到目录里进行安装
1 | cd create_ap |
发现出现下面一些列信息,这些信息则说明已经安装成功
但是我们还需要安装一些依赖库
1 | sudo apt-get install util-linux procps hostapd iproute2 iw haveged dnsmasq |
安装过程会让你重启某些服务,回车即可
接下来可以直接命令创建WiFi热点
1 | sudo create_ap wlan0 eth0 wifi名字 wifi密码 |
在手机端可以看出,这个wifi是2.4Ghz的wifi,相比于5Ghz,2.4的带宽、速度都不如5Ghz的wifi,但是2.4Ghz有个好处就是覆盖的范围会比5Ghz的广,结合情景使用才会更加舒服
这里默认是wifi4的802.11n
,不知道为啥我强制选择802.11n
或者802.11ac
都是wifi4的802.11n
而且是2.4Ghz的,无论远近都不自适应跳转5Ghz,可能这就是bug或者没完善吧!
[toc]
树莓派通常来说自带了蓝牙软件,但总有例外是吧
1 | sudo apt install bluez* |
现在,使用以下systemctl命令启用bluetooth.service
1 | sudo systemctl enable bluetooth.service |
以上是后台启用蓝牙服务。但它需要重新启动您的系统。如果不想重启,也可以执行以下命令:
1 | sudo systemctl start bluetooth.service |
注意:确保内核模块btusb
已加载到系统中。内核模块相当于Windows操作系统中的驱动程序。如果未加载,则使用加载
查看内核加载
1 | lsmod | grep btusb |
加载btusb
进内核
1 | modprobe btusb |
与 nmtui
一样,bluetoothctl
的交互模式在首次连接时更容易使用。与nmcli
一样,非交互模式非常适合脚本编写。如果要进入交互模式,请使用
1 | sudo bluetoothctl |
完成所有步骤后,您可以退出使用
1 | [bluetooth]# quit |
要打开蓝牙,请在蓝牙交互模式使用开机命令:
1 | [bluetooth]# power on |
在我的系统中,我得到以下输出:
1 | Agent registered |
同样,要关闭它,可以使用该power off
命令。
首先列出可用的设备
1 | [bluetooth]# devices |
如果在输出中找不到您的设备,请使用以下命令:
1 | [bluetooth]# scan on |
如果您希望其他设备可以发现您的 Linux 计算机,请使用下面给出的命令。
1 | [bluetooth]# discoverable on |
我们可以通过两种方式做到这一点:
1.配对,然后连接。
2.信任然后连接。我发现它更简单,不那么令人困惑,而且它适用于所有类型的设备。
1 | [bluetooth]# pair 50:E6:66:A4:B3:F3 |
现在使用连接
1 | [bluetooth]# connect 50:E6:66:A4:B3:F3 |
现在,您可能会收到接受连接的提示。
首先,您需要使用以下方法信任您的设备:
1 | [bluetooth]# trust 50:E6:66:A4:B3:F3 |
输出:
1 | [CHG] Device 50:E6:66:A4:B3:F3 Trusted: yes |
现在,bluetoothctl
会将您设备的地址保存在您的计算机上。将来,您将不再需要信任该设备。即使系统重新启动,这种节省也会保留下来。现在,您可以使用以下方式连接设备:
1 | [bluetooth]# connect 50:E6:66:A4:B3:F3 |
现在,您可能会收到接受连接的提示。它甚至可能要求您匹配密钥/密码。
1 | Request confirmation |
我们也可以通过在前面添加bluetoothctl以非交互模式执行上述命令。例如,开机命令变为
1 | bluetoothctl power on |
因此,如果您想使用单个命令连接到蓝牙设备,请使用以下命令:
1 | bluetoothctl power on && bluetoothctl connect 50:E6:66:A4:B3:F3 |
注意:如上所述,在执行上述命令之前,不要忘记信任您的设备 50:E6:66:A4:B3:F3
我们设备一生中只需要执行一次。
脚本编写是我喜欢 Linux 的原因之一,您可以将一个命令与另一个命令合并并提高您的工作效率。
从我当前使用上述命令和nmcli命令与计算机共享智能手机的互联网可以看出这一点。它的网络速度也是相当快的同时,蓝牙比Wi-Fi消耗的电能少得多。
1 | bluetoothctl power on && bluetoothctl connect 54:0D:F9:F4:B8:E4 && nmcli connection up '橙皮\ Network' |
然后,使用ip a
命令之后可以看到这个网卡
当我们使用devices
命令时,我们得到了一个设备列表。如果出于隐私原因您想要从列表中删除您的设备,请在交互模式下使用以下命令:
1 | [bluetooth]# remove 54:0D:F9:F4:B8:E4 |
如果您不再希望您的设备再被信任,请使用:
1 | [bluetooth]# untrust 54:0D:F9:F4:B8:E4 |
要断开连接,有多种方法:
切换蓝牙设备和/或计算机上的蓝牙开关。
从终端使用bluetoothctl power off
命令。
使用标准方法bluetoothctl disconnect 54:0D:F9:F4:B8:E4
即可