Scrot là một tiện ích dòng lệnh trên Linux cho phép bạn chụp ảnh màn hình nhanh gọn mà không cần giao diện đồ họa phức tạp. Công cụ này giúp bạn tiết kiệm thời gian, dễ dàng tự động hóa thao tác chụp màn hình và phù hợp cho cả làm việc từ xa lẫn viết tài liệu kỹ thuật. Trong bài viết này, mình sẽ hướng dẫn bạn cách cài đặt và sử dụng lệnh scrot hiệu quả để chụp màn hình trên Linux một cách nhanh chóng và linh hoạt.
Những điểm chính
- Khái niệm: Hiểu rõ
scrotlà công cụ dòng lệnh gọn nhẹ, chuyên dùng để chụp ảnh màn hình trên Linux, đặc biệt hữu ích cho môi trường không có giao diện đồ họa. - Các tính năng nổi bật: Nắm được các khả năng chính của
scrot, từ việc tùy chỉnh chất lượng ảnh, chụp vùng chọn đến khả năng tự động hóa qua Cron. - Cách cài đặt: Biết cách cài đặt
scrotnhanh chóng trên các bản phân phối Linux phổ biến và cả phương pháp biên dịch từ mã nguồn. - Cách sử dụng: Thành thạo các lệnh thực tế để chụp toàn màn hình, chụp một vùng chọn, điều chỉnh chất lượng và tự động hóa việc chụp ảnh định kỳ.
- Ứng dụng thực tế: Khám phá các ứng dụng hữu ích của
scrottrong công việc hàng ngày như giám sát hệ thống, tạo tài liệu và kiểm tra lỗi. - Câu hỏi thường gặp: Giải đáp các thắc mắc liên quan đến lệnh scrot trong Linux.
Scrot Linux là gì?
Scrot (SCReenshOT) là một tiện ích dòng lệnh mã nguồn mở linh hoạt, được sử dụng để chụp ảnh màn hình của desktop, terminal hoặc một cửa sổ cụ thể trên hệ điều hành Linux. Ưu điểm của scrot nằm ở sự tối giản và khả năng tích hợp sâu vào hệ thống. Ngoài ra, công cụ này không chỉ hoạt động thủ công mà còn có thể được kích hoạt hoàn toàn tự động thông qua các tác vụ định kỳ.
Về mặt kỹ thuật, scrot sử dụng thư viện imlib2 để chụp và lưu ảnh, hỗ trợ nhiều định dạng hình ảnh phổ biến như JPG, PNG,… cho phép bạn tùy chỉnh định dạng đầu ra khi chụp. Scrot hữu ích cho các quản trị viên hệ thống làm việc trên server Linux tối giản có X11 hoặc môi trường đồ họa nhẹ. Thêm vào đó, scrot còn có thể chụp cửa sổ terminal emulator trong môi trường đồ họa.

Các tính năng nổi bật của scrot
Scrot cung cấp nhiều tính năng hữu ích giúp việc chụp màn hình trở nên dễ dàng và hiệu quả hơn:
- Chụp ảnh dễ dàng: Bạn có thể thực hiện tác vụ chụp màn hình nhanh chóng mà không cần thao tác đồ họa phức tạp.
- Tối ưu hóa chất lượng ảnh: Ảnh sau khi chụp có thể tùy chỉnh chất lượng hình ảnh đầu ra bằng tùy chọn
-q(từ 1 đến 100), với chất lượng mặc định là 75. - Dễ dàng cài đặt và sử dụng: Scrot được tích hợp sẵn trong các kho lưu trữ mặc định của nhiều bản phân phối, giúp quá trình cài đặt nhanh gọn.
- Chụp vùng hoặc cửa sổ cụ thể: Scrot hỗ trợ chụp một vùng hình chữ nhật bằng chuột hoặc một cửa sổ cụ thể.
- Lưu trữ linh hoạt: Bạn có thể lưu ảnh chụp màn hình vào một thư mục cụ thể trên hệ thống cục bộ hoặc truyền lên máy chủ từ xa/máy chủ mạng.
- Tự động hóa: Scrot có thể tích hợp dễ dàng với Cron để thiết lập một hệ thống giám sát tự động, định kỳ chụp lại màn hình để ghi lại nhật ký hoạt động, kiểm tra trạng thái một ứng dụng tại thời điểm cụ thể hoặc giám sát hệ thống khi vắng mặt.
- Chụp màn hình Terminal: Scrot có thể chụp một Terminal đang chạy trong môi trường GUI, hoặc chạy ẩn qua lệnh điều khiển từ xa (SSH) miễn là màn hình đó đang có một phiên làm việc X11 đang chạy.

Cách cài đặt scrot trên Linux nhanh chóng
Scrot có thể được cài đặt dễ dàng trên hầu hết các bản phân phối Linux. Cụ thể như sau:
1. Cài đặt từ kho lưu trữ
Sử dụng trình quản lý gói mặc định từ bản phân phối của bạn:
- Đối với Debian/Ubuntu:
$ sudo apt update
$ sudo apt install scrot- Đối với CentOS/RHEL:
$ sudo yum install scrot
# Hoặc với DNF trên Fedora/RHEL 8+
$ sudo dnf install scrot- Đối với Arch Linux:
$ sudo pacman -S scrot- Đối với openSUSE:
$ sudo zypper install scrot
2. Cài đặt từ mã nguồn
Trong trường hợp bạn muốn cài đặt một phiên bản cụ thể hoặc bản phân phối của bạn không có scrot trong kho lưu trữ, bạn có thể biên dịch từ mã nguồn:
# Tải xuống mã nguồn (kiểm tra phiên bản mới nhất trên trang chủ scrot)
$ wget http://linuxbrit.co.uk/downloads/scrot-0.8.tar.gz
# Giải nén tệp tin
$ tar -xvf scrot-0.8.tar.gz
# Di chuyển vào thư mục mã nguồn
$ cd scrot-0.8
# Cấu hình biên dịch
$ ./configure
# Đối với người dùng RedHat, cần chỉ định vị trí tiền tố:
# $ ./configure --prefix=/usr
# Biên dịch
$ make
# Cài đặt (yêu cầu quyền root)
$ sudo make installLưu ý
Cách sử dụng scrot để chụp màn hình
1. Chụp toàn bộ màn hình Desktop
Để chụp toàn bộ màn hình desktop, bạn chỉ cần chạy lệnh scrot và chỉ định đường dẫn cùng tên file cho ảnh đầu ra. Giả sử, để chụp màn hình và lưu vào /home/hoangmint/Desktop.jpg, bạn thực thi lệnh sau:
$ scrot /home/hoangmint/Desktop.jpg

Scrot cũng hỗ trợ đặt tên file tự động dựa trên thời gian nếu bạn không chỉ định tên file cụ thể. Ví dụ: scrot (không đối số) sẽ tạo file dạng YYYY-MM-DD-HHMMSS_WxH.png.

2. Chụp một vùng hoặc cửa sổ cụ thể
Để chụp một vùng hình chữ nhật do bạn chọn hoặc một cửa sổ cụ thể, sử dụng tùy chọn -s (select). Cú pháp cụ thể như sau:
$ scrot -s /home/hoangmint/Window.jpgSau khi chạy lệnh này, con trỏ chuột của bạn sẽ thay đổi thành hình chữ thập. Bạn có thể:
- Kéo chuột để chọn một vùng hình chữ nhật trên màn hình.
- Nhấp chuột vào một cửa sổ để chụp ảnh của riêng cửa sổ đó.

3. Điều chỉnh chất lượng hình ảnh
Bạn sử dụng tùy chọn -q (quality) để điều chỉnh chất lượng hình ảnh đầu ra. Giá trị nằm trong khoảng từ 1 (thấp nhất) đến 100 (cao nhất) với chất lượng mặc định là 75. Chất lượng ảnh cuối cùng cũng sẽ phụ thuộc vào định dạng file bạn chọn. Để chụp ảnh với chất lượng 90%, bạn hãy thực thi lệnh sau:
$ scrot -q 90 /home/hoangmint/Quality.jpg
4. Tự động chụp màn hình với Cron
Để tự động chụp ảnh màn hình định kỳ, bạn có thể tạo một script shell đơn giản và thiết lập tác vụ Cron.
- Tạo script chụp màn hình:
$ touch screen.sh
$ vi screen.sh # Mở bằng trình soạn thảo yêu thích của bạnBạn thêm nội dung sau vào screen.sh:
#!/bin/sh
# Đảm bảo DISPLAY được thiết lập đúng, thường là :0 cho phiên GUI chính
# Scrot sẽ tạo tên file dựa trên định dạng ngày/giờ (ví dụ: vietnix-2025-06-20-10_30.jpg)
# Chất lượng ảnh được đặt là 20% để tiết kiệm dung lượng
DISPLAY=:0 scrot 'vietnix-%Y-%m-%d-%H_%M.jpg' -q 20
# Di chuyển tất cả các file .jpg mới tạo trong thư mục hiện tại đến /media/vietnix
# Đảm bảo thư mục /media/vietnix tồn tại và có quyền ghi
mv *.jpg /media/vietnix- Cấp quyền thực thi cho script:
$ chmod +x screen.shLưu ý
- Thiết lập tác vụ Cron:
Mở file crontab để chỉnh sửa các tác vụ định kỳ của bạn:
$ crontab -eBạn thêm dòng sau vào cuối file crontab để script chạy mỗi phút:
*/1 * * * * /bin/sh /home/hoangmint/screen.shTrong đó:
*/1 * * * *: Thiết lập Cron chạy mỗi phút./bin/sh /home/hoangmint/screen.sh: Đường dẫn đầy đủ đến script của bạn.
Bạn lưu và đóng file crontab, cron sẽ bắt đầu chạy script theo lịch trình.
Ứng dụng thực tế của scrot
Scrot là một công cụ linh hoạt với nhiều ứng dụng thực tế như:
- Giám sát hệ thống: Scrot cho phép bạn tự động chụp màn hình máy chủ hoặc desktop để theo dõi hoạt động khi không có quản trị viên.
- Tạo tài liệu: Bạn có thể nhanh chóng tạo các hình ảnh minh họa cho tài liệu hướng dẫn hoặc báo cáo kỹ thuật.
- Kiểm tra lỗi: Scrot giúp bạn chụp lại các màn hình lỗi để gửi cho nhà phát triển hoặc bộ phận hỗ trợ.
- Tự động hóa quy trình: Tích hợp scrot vào các script giúp bạn ghi lại các bước trong một quy trình tự động.
- Sử dụng trên server không GUI: Scrot cho phép chụp màn hình từ terminal hoặc X virtual framebuffer (Xvfb) trên các server không có giao diện đồ họa.

Câu hỏi thường gặp
Làm thế nào để cấu hình scrot tự động chụp nhiều định dạng ảnh cùng lúc bằng script shell?
Bạn có thể viết một script với các lệnh scrot sử dụng các tham số định dạng cụ thể cho từng lệnh. Ví dụ:
scrot ‘%Y-%m-%d-%H%M%S.png’ -e ‘mv $f /media/vietnix’
scrot ‘%Y-%m-%d-%H%M%S.jpg’ -e ‘mv $f /media/vietnix’
scrot ‘%Y-%m-%d-%H%M%S.gif’ -e ‘mv $f /media/vietnix’
Chạy script này sẽ tạo đồng thời ba định dạng ảnh với cùng timestamp, tiện lợi cho các mục đích khác nhau.
Có thể sử dụng scrot trên máy tính yếu hoặc đời cũ không?
Hoàn toàn được. Scrot là một công cụ rất nhẹ, chỉ cần môi trường terminal đơn giản là đủ nên rất phù hợp cho các máy tính cũ, cấu hình thấp, giúp tiết kiệm tài nguyên hệ thống mà vẫn thực hiện tốt các nhiệm vụ chụp màn hình.
Nếu mình quên đường dẫn lưu ảnh scrot, làm sao tìm lại?
Mặc định, nếu không nhập đường dẫn file, scrot sẽ lưu ảnh ngay tại thư mục bạn đang làm việc, thường là thư mục Home. Bạn chỉ cần kiểm tra lại vị trí bạn chạy lệnh hoặc tìm các file có định dạng .jpg, .png mới sinh ra.
Scrot là một tiện ích dòng lệnh mạnh mẽ với khả năng tùy chỉnh chất lượng, chụp vùng chọn và đặc biệt là tích hợp với Cron để tự động hóa. Hy vọng rằng hướng dẫn này đã cung cấp cho bạn kiến thức cần thiết để cài đặt và sử dụng lệnh scrot hiệu quả. Cảm ơn bạn đã theo dõi bài viết!




