Re: Is /etc/rc.conf scriptable?

看板FB_stable作者時間15年前 (2011/02/01 21:01), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/6 (看更多)
On Tue, Feb 01, 2011 at 08:35:06PM +0800, Yue Wu wrote: > Hi list, > > I'm trying to do something to make rc.conf can act conditionally > > What I want is: > > 1. List the wireless access points, > > grep if there is one which bssid is 'bb:bb:bb:bb:bb:bb', > > if there is, then set ifconfig_wlan0 to the value: > > "inet 192.168.1.111 netmask 255.255.255.0 WPA" > > 2. check if bitlbee has been installed, if so, then let bitlbee > service start. > > > So I tried with following settings in rc.conf, but all of them failed, > i.e., the networking can't be connected and bitlbee service doesn't > run. > > /etc/rc.conf > > if ifconfig wlan0 list scan 2>/dev/null | grep -q 'bb:bb:bb:bb:bb:bb' >/dev/null 2>&1; then > ifconfig_wlan0="inet 192.168.1.111 netmask 255.255.255.0 WPA" > fi > if [ -x /usr/local/sbin/bitlbee ]; then > bitlbee_enable="YES" > fi /etc/rc.conf is scriptable (unless you are also using a dashboard or other software that wants to interpret/update /etc/rc.conf). Your problem here is that rc.conf is read (and executed) before wlan0 gets created. After creation of an interface, /etc/start_if.<interface> is called, perhaps you could use that but keep in mind it's run just after creation of the interface so if you use it for wlan0 and need the output of a station scan you should use ifconfig wlan0 scan instead of ifconfig wlan0 list scan. This may take some time during which your boot process is stalled. > My question is, how to achieve what I want? The simpler, the better :) Otherwise, perhaps devd could help you to run your script asynchronously after wlan0 is created. Regards, Paul Schenkeveld _______________________________________________ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to "freebsd-stable-unsubscribe@freebsd.org"
文章代碼(AID): #1DI0GFwZ (FB_stable)
文章代碼(AID): #1DI0GFwZ (FB_stable)