我使用Ubuntu 10.04,我发现每次启动它都会启用Wireless Connectivity。
我知道,在Ubuntu论坛上有一个关于它的话题,但是我认为我会在得到答案之前变老(如果有的话)。
我想默认禁用它,但是以后可以启用或禁用它。
我想知道如何禁用无线适配器。在Windows中类似于Fn + ...,但在Windows中它会记住最后一个状态。在Ubuntu中,无线适配器始终在启动时启用。
当我按 Fn+F2 它会禁用那些二极管和无线+蓝牙。
禁用卡的方法有很多。我想说的最简单的是:
Sudo ifdown wlan0
在你的 /etc/rc.local
在线以上 exit 0
。这应该禁用无线网卡(替换wlan0
和您的无线接口卡)
如果要在键盘按下时启用/禁用, 在Ubuntu论坛上的此线程 解释了如何将键盘事件链接到脚本。如果要在按下按键时切换它,则必须在脚本中添加一些逻辑。尽管最简单的方法可能是启用一个键,然后禁用另一个键。
下脚本
#!/bin/bash
IFACE=wlan0
ifconfig ${IFACE} down
及以上脚本
#!/bin/bash
IFACE=wlan0
ifconfig ${IFACE} up
您可以轻松地停止将其自动连接到特定连接。
要连接时,只需在小程序上单击鼠标左键,然后选择一个接入点。
注意:这不会关闭wifi卡的电源,它仍在搜索无线访问点。这可能不是您想要的。但是如果是这样,那就太好了!
注2:如果连接断开,它将不会自动重新连接。
在启动应用程序上创建会话,例如:
设置>>首选项>>启动应用程序
添加然后填充命令:
dbus-send --system --type=method_call --dest=org.freedesktop.NetworkManager /org/freedesktop/NetworkManager org.freedesktop.DBus.Properties.Set string:org.freedesktop.NetworkManager string:WirelessEnabled variant:boolean:false
false表示关闭,但可以通过启用 fn+F2 或者是其他东西。
可以使用rfkill工具启用或禁用无线功能。这是基于此的解决方案,它将允许保存状态并在系统启动时将其还原。
步骤00:创建文件以存储wifi状态
cd /usr/local/etc
Sudo touch .wifistate
Sudo chmod 666 .wifistate
步骤01:脚本
#!/bin/bash
IFACE="wlan1"
STATE_FILE="/usr/local/etc/.wifistate"
STATE="$(iwconfig $IFACE | grep Tx | cut -d '=' -f2 | grep off)"
if [ "$STATE" ]
then
rfkill unblock wifi &&
echo 1 > "$STATE_FILE" &&
echo "Wireless enabled"
else
rfkill block wifi &&
echo 0 > "$STATE_FILE" &&
echo "Wireless disabled"
fi
exit 0;
步骤10:使脚本可执行
chmod +x <script name>
步骤11:修改Ubuntu启动脚本
在任何文本编辑器中打开/etc/rc.local
(必须以root用户身份进行编辑)并添加以下代码exit 0;
行之前:
FILE="/usr/local/etc/.wifistate"
if [ -r "$FILE" ]
then
if [ $(cat $FILE) -eq 0 ]
then
rfkill block wifi
fi
else
rfkill block wifi
fi
完成后,现在可以将步骤01中的脚本链接到键盘事件。首次使用后,它将在.wifistate文件中写入0或1,并且在系统启动时rc.local脚本将尝试读取该值,如果为0,则禁用wifi。
如果.wifistate文件不存在,默认情况下,启动时将禁用wifi。
我使用wicd代替NetworkManager。重新启动/下次启动后,它会记住wi-fi状态。不知道如何,但是确实如此。 :)
如果不需要某些NM)功能,请使用wicd。它更易于使用和控制。
如果您的FN + F2在Ubuntu中不起作用(我的应该在Asus EeePC上网本中使用),那么我真的建议您使用 Jupiter 。它是一个甜美,打磨好的通知区域小程序。
有了它,您可以分别启用和禁用蓝牙和WiFi,以及用于笔记本和上网本的其他尼斯控件。它会记住重新启动后的状态,甚至会记住每个电源的状态(这意味着它可以始终在接通电源时打开WiFi,并在使用电池供电时自动将其关闭)。您可以将所有操作绑定到击键。
尼斯评论和一些屏幕截图: http://www.webupd8.org/2010/06/jupiter-take-advantage-of-asus-super.html
官方项目页面: http://www.jupiterapplet.org/
PPA(用于APT/Synaptic /软件中心中的自动更新: https://launchpad.net/~webupd8team/+archive/jupiter
Wiki(大型技术文档): http://sourceforge.net/apps/mediawiki/jupiter/index.php?title=Main_Page
安装sysv-rc-conf
,然后以root身份运行它,并确保wpa-ifupdown
的运行级别S 0 1 2处有一个X,或在安装后直接键入Sudo sysv-rc-conf --level S012 wpa-ifupdown on
。
尝试Sudo iwconfig wlan0 txpower off
用eth2或任何您的wifi接口替换wlan0。
这将禁用您的wifi天线并节省电量,但是不会阻止Network Manager尝试连接,因此您可能还希望按照Oli的说明禁用Network Manager的wifi自动连接设置。
Bruteforce将成为wifi内核模块的黑名单:
dmesg | grep atheros
(或您电脑中的任何内容)或lsmod
/lib/modules//kernel/drivers/wireless/...
中查找该驱动程序/模块在目录/etc/modules.d
中创建一个黑名单文件“ no-wireless.conf”,其中包含
# blacklist wifi
blacklist [a blacklist line for each name of your wifi modules eg. ath...]
blacklist rfcomm
blacklist mac80211
-
但是启动后您将无法再启用wifi,除非您从modprobe.b中删除该文件并重新启动
PS:别忘了,在以某种方式备份系统之前(例如使用ubuntu live或其他工具)
(对不起,没有阅读下面的帖子)
尝试在“系统>首选项>网络连接>无线”下查看,并确保没有列出的wifi位置都设置为自动连接。这不会停止无线启动,但是会阻止其进行任何连接。
跑 Sudo lshw -c network
并查找您的无线网卡驱动程序的名称。跑 lsmod | grep DRIVERNAME
以显示驱动程序的确切名称。然后在/etc/modprobe.d/blacklist.conf
,将黑名单EXACTDRIVERNAME列入名单。这将阻止在启动时加载wifi模块。跑 Sudo modprobe EXACTDRIVERNAME
随时重新启动wifi。
这非常有效,但不是最佳解决方案。它不会禁用无线网卡。它只是阻止操作系统使用它,但它可能仍处于开机状态,消耗电池电量。
不管是什么原因导致您要禁用它,我不确定它是否适用于每台笔记本电脑,但是它对我有用:通过插入局域网电缆,Ubuntu会忽略wi-fi,从而使您能够在系统加载之前“关闭”。