Đặt Lịch Tự Khởi Động UniFi AP trên Linux
Việc lập lịch trực tiếp trên các thiết bị wifi của unifi hoặc controller về cơ bản là hãng không tích hợp vào. Kể các việc bạn cố tính tạo crontab trên từng access point thì nó cũng không chạy. Mình đã thử test bằng cách này nhiefu lần nhưng không hoạt động.
Cách làm đơn giản là bạn dùng 1 linux server thông qua sshpass reboot Unifi Ap mà bạn muốn.
Để làm được điều này chắc chắn bạn phải cài gói sshpass trước.
Với hệ debian thì bạn dùng lệnh : apt-get install sshpass
Với centos thì bạn dùng lệnh yum install sshpass
Tạo tập tin mới với tên reboot-unifi-ap.sh bằng trình nano hoặc vim. Tập tin này nằm trong /script.
Ở code bên dưới mọi người để ý ngay dòng uap_list là địa chỉ IP của các UniFi AP cần khởi động lại.
– username là tên người dùng để SSH vào UniFi AP.
– password là mật khẩu để SSH vào UniFi AP.
* username và password mặc định trên mỗi thiết bị của Ubiquiti là ubnt/ubnt. Username và Password này áp dụng khi thiết bị chưa được quản lý bởi UniFi Controller nào.
#!/bin/bash
username=ubnt
password=ubnt
known_hosts_file=/dev/null
uap_list=(192.168.214.2 192.168.214.3)
for i in "${uap_list[@]}"
do
echo "Rebooting UniFi access point at $i..."
if sshpass -p $password ssh -oStrictHostKeyChecking=no -oUserKnownHostsFile=$known_hosts_file $username"@$i" reboot; then
echo "Access point at $i rebooted!" 1>&2
else
echo "Could not reboot access point at $i." 1>&2
fi
done
exit 0
Đặt lịch crontab khởi động lại UAP vào lúc 24h00 các ngày trong tuần.
Sau khi tạo xong file crontab bạn nhớ phân quyền để thực thi file bằng lệnh
chmod u+x /script/reboot-unifi-ap.sh
Bạn vào tạo file crontab bằng lệnh crontab -e
Sau đó paste đoạn cript bên dưới vào và lưu lại
00 00 * * * /script/reboot-unifi-ap.sh > /dev/null 2>&1
Để chắc ăn bạn gõ lệnh crontab -l để xem coi lệnh crontab được tạo hay chưa.
Trường hợp lệnh crontab -e bằng cách nào đó file crontab tạo ra ko lưu lại hoặc lỗi No crontab for root bạn vào / var / spool / cron sau đó tạo file tên root và paste nội dung :
0 00 * * * /script/reboot-uap.sh > /dev/null 2>&1
Sau đó lưu lại
*Lưu ý: Các thao tác trên máy chủ Linux được thực hiện trên tài khoản root.