Home » Blog » Đặt Lịch Tự Khởi Động UniFi AP trên Linux

Đặt Lịch Tự Khởi Động UniFi AP trên Linux

  • by

Đặ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.

Leave a Reply

Your email address will not be published. Required fields are marked *