Я делал это только в perl
, и никогда не использовал ksh
, но я не вижу причин, почему это не должно быть возможно, но я сделал это примерно так (возможно, это не валидный код на любом языке):
while(true)
starttime=`date +%s`
actions
sleep starttime+24*60*60-`date +%s`
end
Это только заставляет действия запускаться каждый 24-й час. Я думал, что для того, чтобы заставить его запускаться в 13:00, нужно просто добавить цикл в начале, который будет ждать до 13:00. Подумав об этом, может быть лучше заменить starttime+24*60*60
на что-то вроде date -d "13:00 завтра" +%s
.
Чтобы узнать, какое ядро Wi-Fi является драйвером to use, do:
$sysctl net.wlan.devices
net.wlan.devices: iwm0
Итак, теперь мы знаем, что нам нужно использовать iwm0.
Вы также можете найти соответствующее оборудование, выполняющее:
$ pciconf -lv iwm0
iwm0@pci0:2:0:0: class=0x028000 card=0x82708086 chip=0x08b48086 rev=0x93 hdr=0x00
vendor = 'Intel Corporation'
device = 'Wireless 3160'
class = network
Итак, теперь мы знаем, что это модель с Intel Wireless AC и iwm0
; Это очень хорошие новости, так как эта модель была продана мне как способная работать с BGN, а не со стандартом 802.11n AC.
Если раньше драйвер Intel 3160AC нужно было компилировать, то в настоящее время он уже поддерживается ядром по умолчанию.
Теперь, чтобы настроить его, мы загрузим модуль, прошивку и поддерживаемые протоколы аутентификации Wi-Fi в /etc/rc.conf
:
legal.intel.license_ack=1
if_iwm_load="YES"
iwm3160fw_load="YES"
wlan_wep_load="YES"
wlan_ccmp_load="YES"
wlan_tkip_load="YES"
Также в / etc / rc. conf
, определит wpa_supplicant
, DHCP-клиент, активирует интерфейс и определит страну как PT для передачи на более высокой частоте, более подходящей для моей страны:
wpa_supplicant_enable="YES"
synchronous_dhclient="YES"
wlans_iwm0="wlan0"
create_args_wlan0="country PT"
Теперь найдите wpa_config
и установите его:
#pkg search wpa_config
wpa_gui-2.6 Qt-based frontend for wpa_supplicant
wpa_supplicant-2.6 Supplicant (client) for WPA/802.1x protocols
#pkg install wpa_gui wpa_supplicant
Отредактируйте сейчас /etc/wpa_supplicant.conf
:
ctrl_interface=/var/run/wpa_supplicant
network={
ssid="my_ssid"
priority=146
scan_ssid=1
psk="wifipassword"
}
После перезапуска вы увидите строки или позже с помощью dmesg
.
iwm0: hw rev 0x160, fw ver 17.352738.0, address f4:06:69:xx:xx:xx
wlan0: Ethernet address: f4:06:69:xx:xx:xx
iwm0: iwm_update_edca: called
iwm0: iwm_update_edca: called
wlan0: link state changed to UP
Теперь у нас есть подключение к Wi-Fi, IP-адрес и подключение к Интернету.
$ ifconfig wlan0
wlan0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
ether f4:06:69:xx:xx:xx
inet 192.168.1.9 netmask 0xffffff00 broadcast 192.168.1.255
nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
media: IEEE 802.11 Wireless Ethernet OFDM/54Mbps mode 11g
status: associated
ssid xxxx channel 13 (2472 MHz 11g) bssid 30:b5:c2:xx:xx:xx
regdomain ETSI country PT authmode WPA2/802.11i privacy ON
deftxkey UNDEF AES-CCM 2:128-bit AES-CCM 3:128-bit txpower 30 bmiss 10
scanvalid 60 protmode CTS wme roaming MANUAL
groups: wlan
Наконец, для его графической настройки вы можете использовать wpa_gui
; при использовании Lumina вы также можете установить pcbsd-utils
, чтобы значок Wi-Fi отображался на панели задач.
Чтобы вывести список доступных SSID в командной строке, выполните:
#ifconfig wlan0 list scan
SSID/MESH ID BSSID CHAN RATE S:N INT CAPS
MEO-1608CD c4:ea:1d:16:08:cd 1 54M -87:-96 100 EP RSN HTCAP WPS WPA WME
MEO-WiFi c6:ea:1d:16:08:ce 1 54M -89:-96 100 ES HTCAP WME
Vodafone-11... 9c:97:26:11:ad:10 1 54M -70:-96 100 EP RSN HTCAP WPS WPA WME
NOS-14F0 f0:f2:49:99:14:f8 12 54M -88:-96 100 EPS WPS HTCAP WPA RSN WME BSSLOAD
NOS_WIFI_Fon bc:4d:fb:53:65:d9 12 54M -88:-96 100 ES HTCAP WME BSSLOAD
xxxx 30:b5:c2:xx:xx:xx 13 54M -44:-96 100 EPS RSN HTCAP WME
xxxxx 30:b5:c2:xx:xx:xx 36 54M -50:-96 100 EP RSN HTCAP VHTCAP VHTOPMODE WME
MEO-A8E087-5G e2:b9:e5:a8:e0:87 60 54M -78:-96 100 EP RSN HTCAP VHTCAP VHTOPMODE VHTPWRENV WPS WPA WME
oLi oNe 2c:9d:1e:d3:22:c0 124 54M -75:-96 98 EP RSN BSSLOAD HTCAP VHTCAP VHTOPMODE VHTPWRENV WPS WPA WME
Дополнительная литература: FreeBSD Handbok 30.3. Беспроводная сеть