Tại sao trên Linux hay dùng những định dạng file nén như *.gz, *.xz thay vì *.zip, *.7z?

Những bạn đang dùng Windows mà tìm hiểu về Linux sẽ thấy trên Linux, những định dạng file nén quen thuộc như *.zip, *.7z lại không được ưa chuộng, mà lại thấy người ta hay sử dụng *.gz, *.tar.gz, *.zz, *.tar.xz, mặc dù cả định dạng và thuật toán của zip, 7zip đều là mã nguồn mở. Thế thì tại sao?

Đầu tiên, hãy nói về một định dạng file nén khác cực kì được ưa chuộng trên Windows là *.rar. Lý do định dạng này vắng mặt trên Linux thì dễ hiểu hơn, đó là nó không phải là phần mềm nguồn mở.

Quay lại *.zip*.7z. Lý do chúng không được ưa chuộng là vì chúng không hỗ trợ nén và giải nén theo kiểu "cuốn chiếu". Theo kiểu "cuốn chiếu" nghĩa là, ví dụ như bạn đang download một file nén lớn và bạn muốn download tới đâu, giải nén tới đó, không phải chờ download xong xuôi rồi mới giải nén. Tính năng "cuốn chiếu" này quan trọng đối với người dùng Linux vì trên Linux, môi trường dòng lệnh rất mạnh, có một tính năng gọi là "pipe" và tính "cuốn chiếu" kết hợp với "pipe" thì giúp công việc hiệu quả gấp nhiều lần.

Ví dụ, tôi hay sử dụng "pipe" (truyền dữ liệu đầu ra của chương trình này vào đầu vào của chương trình khác) khi tôi muốn copy cơ sở dữ liệu từ server về máy cá nhân:

...

Suppress Django error reporting email

In Django, by default, when an exception raises, and is not handled, Django will send an email to people listed in ADMINS, reporting the error. But in many setup, we already have other mechanism to track those errors (like throwing to Sentry), so those emails will become annoying. How to stop Django from sending those emails.

We can do it by overriding mail_admins log handler, to use logging.NullHandler as handler class, like this:

LOGGING = {
    'version': 1,
...

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

Xem thông tin phần cứng máy ảnh được nhúng trong file hình

Gần đây mình mua máy ảnh về để tập chụp ảnh. Máy ảnh mình mua là loại DSLR, nhờ vậy mình vô tình khám phá được phần mềm trên Linux xịn cỡ nào.

Câu chuyện là vì mình là người mới tập chơi nên chỉ mua máy secondhand. Mình có người bạn giới thiệu chỗ mua cho mình. Khi mua xong thì anh chàng muốn kiểm tra coi máy mình mua có phải hình dựng không, bằng cách so sánh số serial in trên thân máy và nhúng trong file hình. Bạn đầu, anh đấy dùng website http://shuttercounter.com/, upload ảnh chụp bởi máy lên để xem thông tin. Nhưng sau đó mình phát hiện hóa ra trên Linux cũng có phần mềm làm được chuyện này, là gThumb:

gThumb image properties

Và điểm lợi là phần mềm này miễn phí. Mình so sánh với các phần mềm trên Windows thì không thấy phần mềm miễn phí nào làm được chuyện này.

...

Món cá nướng lá chúc Campuchia

Ngày này 4 năm trước, mình đón năm mới bằng chuyến đi ngẫu hứng qua Campuchia. Ấn tượng sâu đậm nhất còn lưu lại đến hôm nay là món cá nướng giấy bạc ướp lá chúc của nước bạn. Chúc là một loại cây giống như chanh, trái nhăn nheo, lá rất thơm, hay gặp trong ẩm thực Thái Lan, Campuchia. Mình chưa chụp hình lá chúc nên lấy ảnh từ Internet để minh họa.

lá chúc

Địa điểm tìm món này: Sau khi qua cửa khẩu Mộc Bài - Bà Vẹt, đi theo Quốc Lộ 1 đến thị xã Svay Rieng. Ngay cửa ngõ Svay Rieng có một cái hồ lớn, sau khi đi xuyên qua cái hồ này, bạn rẽ trái đi ven bờ hồ. Lúc này bên trái là hồ, bên phải là một dãy nhà thưa thớt, có một vài quán nhậu dựng bằng tre nứa, khách ngồi ăn trên sập. Các quán này có bán món cá nướng kể trên.

...