在Linux中configurationWi-Fi适配器

现在Linux发行版带有NetworkManager,允许用户configurationWiFinetworking适配器。 但是,我似乎无法弄清楚如何configuration系统范围的networking适配器。 似乎有一些build议,NetworkManager可以使用除了用户点击以获取WPA密码等内容之外的某些数据源,但是我甚至找不到一份文件的传言来解释如何做到这一点。

我正在使用Fedora 10,但坦率地说会考虑切换到任何发行版,以一种很好的,支持的方式工作,不涉及我篡改一些networkingconfiguration脚本,我坚持到rc.local。 我想要最通用的解决scheme。

如何设置系统范围的WiFi网卡,以便在启动时连接并保持连接状态?

我想你应该看看iwconfig和wpa_supplicant。 你应该可以在/ etc / network / interfaces(至less在Ubuntu或者debian)中正确地使用这些configuration。

一些使用“系统范围的无线networkingconfiguration”search的人会发现,“Fedora 10仍然提供了旧的系统configurationnetworking工具,以便于系统范围的configuration和激活networking接口”。

你仍然可以使用NetworkManager!

使用NetworkManager设置您的无线networking。 然后,右键单击NetworkManager小程序,select“编辑连接…”,在“无线”选项卡下find您的无线连接,select“编辑”,然后选中“对所有用户可用”checkbox。 一旦你的设置被保存,NetworkManager应该引导连接启动时没有任何人login – 我通过切换到VT之前,用Xlogin,并ifconfig(8)显示IP地址进行testing。

(这是在Ubuntu 9.04,它使用NetworkManager 0.7.1。)

假设wlan0是无线接口的名称,则可以尝试使用以下模板创buildconfiguration文件/ etc / sysconfig / network-scrpits / ifcfg-wlan0。

 DEVICE =为wlan0
 BOOTPROTO = DHCP
 ONBOOT = YES
 MODE =pipe理
 ESSID = “essid_name”
 RATE = “自动”
 KEY = *********************

创build文件后重新启动或/etc/init.d/network restart。 无论您是否login,界面都会自动启动并保持不变。

如果您不使用DHCP并且想要手动指定IP详细信息,则可以将以下属性添加到上面的configuration文件中。

 IPADDR = XXXX
 NETMASK = XXXX
networking= XXXX
 BROADCAST = XXXX

你想安装NetworkManager和各种GUI。 这将允许您在login到X时轻松pipe理您的networking。但是,您也应该可以使用system-config-network来configuration您的无线networking。使用这两个项目,我已经成功地无痛连接到了wifinetworking。

这将适用于任何发行版:

  • 确保你的内核是用适当的模块编译的
  • 在写下所有步骤的同时在命令行上configuration您的无线网卡
  • 把这些步骤放在一个shell脚本中
  • 把shell脚本放在初始化脚本或开始你的操作系统的最后一个脚本(例如gentoo这是:/etc/conf.d/local.start,我确定搞清楚这是debian / Ubuntu的/ fedora / whatnot不会很难)

虽然这不是很干净,但它的工作原理。 之后,您可以对脚本进行微调,以支持真实服务的启动/停止命令。

像StackKrish提到的,尝试一个/ etc / sysconfig / network-scripts /文件。 这应该在启动时由init自动启动。

如果您打算使用NetworkManager,我强烈build议您find0.7.x的版本,因为我在0.6版本上遇到了问题。 崩溃,无法连接到WPAnetworking,尽pipe支持它们,并随机断开连接。

我终于解决了我的问题。 我想这是一个Fedora问题,但Fedora并没有让我在NetworkManager中编辑系统连接。 我更改了NetworkManager的configuration,以便使用其本地连接信息后端并编辑策略以允许我的用户帐户编辑连接信息; 一旦我这样做了“对所有用户可用”checkbox终于开始工作。

感谢所有回答的人。