Sao lưu piOS thành file ảnh nén .xz

Script sao lưu piOS đang hoạt động thành file ảnh nén .xz, có thể ghi file ảnh vào đĩa với Rasperry Pi Imager và có thể khời động bình thường, dung lượng đĩa trống sau khi OS khởi động là 200MB.

Cú pháp: os.backup [-d out_dir][-z]
  -d: tên thư mục chứa file backup
  -z: nén file bằng xz

Việc sao lưu chỉ mất vài phút. Nếu chọn nén file, file backup chỉ còn khoảng 20% file gốc, nhưng mất thêm vài chục phút.

Continue reading

Comments Off on Sao lưu piOS thành file ảnh nén .xz

Filed under Software

xz Trình nén file hiệu quả

Các bản file ảnh của piOS được phân phối dưới dạng file nén xz. Tuy rằng trình ghi đĩa Raspberry Pi Imager cũng chấp nhận các loại file nén khác, nhưng xz được chọn vì hiệu quá nén cao. Tất nhiên dung lượng file nén nhỏ phải đánh đổi bằng thời gian nén lâu, có thể lên đến hàng giờ.

tar giảm kích thước file còn 32%
xz giảm kích thước file còn 21%

Continue reading

Comments Off on xz Trình nén file hiệu quả

Filed under Software

ISP mail, Bullseye version

Tác giả Christoph Haas đã đưa ra Hướng dẫn cài đặt mailserver cho Debian 11 “Bullseye”. Mặc dù không có nhiều thay đổi so với bản dành cho Debian Buster nhưng rất đáng tham khảo.

Trong khi các mailserver nổi cộm khác dùng trình quản lý postfixadmin, do đó phụ thuộc vào cấu trúc CSDL phức tạp của postfixadmin, Christoph Haas tự xây dựng một CSDL đơn giản và viết trình quản lý mailserver có tính năng đủ dùng.

Continue reading

Comments Off on ISP mail, Bullseye version

Filed under Software

Roundcube và Password plugin

Password plugin cho Roundcube là một công cụ rất quan trọng, giúp người dùng tự thay đổi mật khẩu mà không phải thông qua admin của mailserver.

Đến Debian Bullseye thì plugin này đột nhiên không hoạt động với các kiểu mật khẩu mà dovecot hỗ trợ. Thông báo lỗi là không thể cất được mật khẩu.

Continue reading

Comments Off on Roundcube và Password plugin

Filed under Software

RPi bị thiếu điện

Tôi thường phải lắp thêm công tắc vào dây nguồn của RPi để tiện cho công việc.

Hiện tượng thường gặp là khi gắn HDD/SSD vào RPi thì chạy không nổi, HDD kêu cạch cạch mà không khởi động được. Tôi cho là nguồn không đủ công suất, khắc phục bằng cách dùng USB hub loại cấp nguồn riêng để nuôi HDD/SSD.

Gần đây mới phát hiện ra nguyên nhân thiếu điện là do công tắc lắp thêm vào.

Vấn đề nằm ở chổ tiếp điểm của công tắc nhỏ, tiếp xúc không tốt. Với dòng điện xoay chiều hay công suất lớn thì không ảnh hưởng gì nhiều, chỉ sinh nhiệt thôi. Với dòng điện 1 chiều công suất thấp của nguồn RPi thì dòng ở trước và sau công tắc chệnh lệch đáng kể.

Tháo bỏ công tắc thì SSD/HDD chạy bình thường không cần USB hub.

Comments Off on RPi bị thiếu điện

Filed under Software

RPi khởi động từ ổ đĩa GPT

Hệ thống GPT có thể tạo được nhiều primary partition (128) và quản lý được dung lượng lớn hơn 2TB, khắc phục được hạn chế này của hệ thống MBR.

Trước nay, để có thể boot từ ổ đĩa dung lượng lớn hơn 2TB thì phải dùng hệ thống partition lai GPT/MBR rất không ổn định. Thí dụ mất nguồn đột ngột có thể làm hỏng boot hay hệ thống GPT làm không khởi động được, thậm chí không còn nhận dạng được đĩa.

Continue reading

Comments Off on RPi khởi động từ ổ đĩa GPT

Filed under Software

Cài đặt OS trên Logical volume (II)

Tương tự bài trước, nhưng chúng ta chỉ dùng một đĩa trong cả quá trình dời rootfs sang logical volume. Thực hiện nhanh hơn và đơn giản hơn, tuy làm thủ công nhưng không mất quá 5 phút.

Không mở rộng đĩa khi khởi động lần đầu

Sau khi ghi file ảnh vào đĩa, chúng ta ngăn PiOS tự động nới rộng partition rootfs đến hết dung lượng đĩa bằng cách xóa dòng sau trong cmdline.txt

Sau đó dùng đĩa này khởi động như bình thường. Tên đĩa có thể là mmcblk0 hoặc sda … tùy khởi động ở vị trí USB nào.

Continue reading

Comments Off on Cài đặt OS trên Logical volume (II)

Filed under Software

Cài đặt OS trên Logical volume

Sau khi dùng Raspberry Pi Imager ghi file ảnh của OS vào đĩa như bình thường, chúng ta sẽ chuyển OS trên partition rootfs vào LV.

Việc chuyển phần cài đặt thì đơn giản nhưng các driver của LVM ngay khi khởi động phải được nạp để có thể làm việc với rootfs trên LV. Khi khởi động Raspberry Pi nạp một ramdisk cho initrd, vì vậy chúng ta chỉ phải bổ sung initram chứa các driver cho LVM.

Chuẩn bị

  • RPi 4
  • 2 đĩa khởi động PiOS, trong đó 1 đĩa sẽ được chuyển PiOS sang logical volume
  • Wifi

Ghi file ảnh vào đĩa

Sau khi chọn OS và đĩa (SD card), chúng ta chọn thêm phần Options bằng cách bấm vào nút hình bánh xe. Sau khi ghi file ảnh vào đĩa, Raspberry Pi Imager sẽ làm thêm vài cài đặt đã được chỉ định, bao gồm: đặt hostname, cho phép ssh, mật khẩu của pi, cài đặt wifi… Chú ý là Raspberry Pi 4 hỗ trợ wifi 5G nên nhanh hơn mạng LAN 100Mps.

Continue reading

Comments Off on Cài đặt OS trên Logical volume

Filed under Software

Đếm mail được postfix gởi đi

Mail server cài đặt trên RPi thường phải dùng IP động, IP loại này phần lớn nằm trong blacklists khiến cho email gởi đi có thể bị từ chối.

Cách giải quyết thông thường là dùng relay host. Mail server của chúng ta gởi nhờ email qua trung gian các mail server uy tín khác. Các SMTP relay này phần lớn là chỉ miễn phí 200-300 email một ngày, riêng Gmail miễn phí 500 email một ngày với điều kiện không gởi trong một lần.

Với doanh nghiệp nhỏ 15-20 nhân viên, có thể dùng 1-2 tài khoản Gmail để gởi mail là đủ. Vấn đề là làm sao đếm số email được gởi qua một tài khoản đã đủ định mức để chuyển sang dùng tài khoản khác.

Continue reading

Comments Off on Đếm mail được postfix gởi đi

Filed under Software

Onvif: Lỗi kết nối với camera

Mỗi kiểu camera của mỗi hãng đều có các hạn chế về số kết nối đồng thời với camera. Trường hợp camera vẫn hoạt động bình thường nhưng thiết bị bên ngoài thử kết nối lại nhiều lần (thí dụ reboot) thì có thể không kết nối được nữa.

Một thí dụ là script onvif-motion-recorder chạy trên RPi và RPi định kỳ reboot theo lịch thì sau đó script onvif-motion-recorder không thể kết nối với camera.

Một giải pháp là reboot camera trước khi thử kết nối lại

Continue reading

Comments Off on Onvif: Lỗi kết nối với camera

Filed under Software