Phần mềm để nạp firmware OpenWrt trong chế độ recovery

Gần đây mình lại có duyên đụng vào OpenWrt và router wifi. Mình phải nạp firmware OpenWrt cho một số router đã bị bricked (HĐH bị liệt, không chạy). Vì đã bị bricked nên chỉ có thể nạp trong chế độ recovery, qua cổng serial. Nay mình liệt kê một số phần mềm để dùng cho việc này.

Truy cập qua cổng serial

Để truy cập qua cổng serial, mình dùng PySerial thông qua lệnh sau:

$ pyserial-miniterm /dev/ttyUSB0 115200

Cách đây 10 năm, mình dùng GTKTerm, CuteCom, nhưng các phần mềm này lâu không cập nhật, giao diện cũ kĩ, nên không muốn dùng nữa. Còn với pyserial-miniterm thì đây là ứng dụng dòng lệnh, nó hòa quyện với Terminal luôn, nên cảm giác như là đang dùng SSH, dễ chịu, quen thuộc.

miniterm

Để cài PySerial thì trên Ubuntu/Debian, dùng lệnh:

$ sudo apt install python3-serial

Lệnh pyserial-miniterm thực ra là lệnh tắt, do đội ngũ bảo trì Debian/Ubuntu tạo thêm. Trên các HĐH Linux khác, lệnh này có thể không tồn tại, khi đó bạn nên dùng lệnh gốc:

$ python3 -m serial.tools.miniterm /dev/ttyUSB0 115200

TFTP server

Mình dùng atftp, thông qua lệnh sau:

$ sudo atftpd --daemon --no-fork --logfile - .

Nó sẽ chạy một TFTP server, dùng thư mục hiện tại làm nơi cung cấp file cho việc download.

Lưu ý, khi cài gói atftpd trong Debian/Ubuntu, nó sẽ đi kèm một service và chiếm cổng 69, khiến bạn không thể dùng lệnh phía trên. Bạn nên vô hiệu hóa service này bằng lệnh:

$ sudo systemctl disable --now atftpd.socket