Restic là gì - Cách sao lưu laptop miễn phí trước khi cài lại Windows

Restic là gì - Cách sao lưu laptop miễn phí trước khi cài lại Windows

Chia sẻ:

Restic là phần mềm sao lưu miễn phí, mã nguồn mở, điều khiển bằng dòng lệnh. Nói đơn giản, đây là một chương trình nhỏ chép dữ liệu quan trọng sang một kho riêng, khoá kho bằng mật khẩu và ở các lần chạy sau chỉ ghi thêm phần đã thay đổi. Công cụ chạy trên Windows, macOS, Linux, bản ổn định mới nhất là 0.19.1 phát hành ngày 05/07/2026. Nội dung dưới đây đi từ khái niệm kho lưu, bản chụp, cơ chế chia khối, mã hoá tới cách cài, các lệnh nền tảng và quy trình sao lưu laptop trước khi reset.

Restic là gì, ai phát triển và hỗ trợ hệ điều hành nào

Restic là chương trình sao lưu do lập trình viên Alexander Neumann khởi xướng từ năm 2014, hiện được duy trì công khai trên GitHub cùng cộng đồng đóng góp. Tệp README đặt ra năm tiêu chí thiết kế gồm dễ dùng, nhanh, kiểm chứng được, an toàn và hiệu quả. Restic viết bằng ngôn ngữ Go, phân phối dưới dạng một tệp thực thi duy nhất, không cần dựng máy chủ hay cài thêm thư viện phụ trợ. Trang chủ chính thức nhấn mạnh phần mềm hoàn toàn miễn phí, mã nguồn để ngỏ cho bất kỳ ai kiểm tra.

Restic là phần mềm sao lưu mã nguồn mở chạy bằng dòng lệnh trên laptop Windows

Mã nguồn phát hành theo giấy phép BSD 2-Clause, cho phép dùng cá nhân lẫn thương mại, sửa đổi và phân phối lại, chỉ cần giữ thông báo bản quyền. README liệt kê ba hệ điều hành chính là Linux, macOS, Windows cùng FreeBSD và OpenBSD. Từ phiên bản 0.6.1, bản dựng chính thức có tính tái lập (reproducible build), nghĩa là ai cũng biên dịch lại được tệp nhị phân giống hệt từng byte từ mã nguồn công bố, giúp xác minh bản tải về không bị cài cắm.

Theo nhật ký thay đổi, Restic 0.19.0 ra ngày 09/06/2026 và bản sửa lỗi 0.19.1 ra ngày 05/07/2026, trong đó có bản vá bỏ qua đường dẫn nguồn không truy cập được trên Windows để tránh tạo bản chụp rỗng. Dự án vẫn ở giai đoạn trước 1.0 nhưng đánh số theo chuẩn Semantic Versioning, coi cấu trúc kho là phần cần giữ tương thích ngược. Với nhu cầu sao lưu laptop cá nhân, ưu thế nằm ở chỗ một tệp chương trình nhỏ gọn vẫn đẩy được dữ liệu lên nhiều kiểu lưu trữ khác nhau.

Kho lưu trữ và snapshot sao lưu vận hành theo nguyên lý nào

Mọi dữ liệu nằm trong một kho (repository), về bản chất là thư mục có cấu trúc riêng chứa các tệp đã mã hoá, đặt được trên ổ cứng gắn ngoài, máy chủ SFTP hay dịch vụ đám mây. Kho được khởi tạo một lần bằng lệnh init, khi đó Restic yêu cầu nhập mật khẩu hai lần. Tài liệu cảnh báo quên mật khẩu đồng nghĩa dữ liệu mất vĩnh viễn. Từ phiên bản 0.14.0, định dạng kho phiên bản 2 trở thành mặc định và hỗ trợ nén bằng thuật toán zstandard.

Sơ đồ kho lưu trữ và các bản chụp snapshot sao lưu của Restic theo mốc thời gian

Mỗi lần chạy lệnh backup sinh ra một snapshot sao lưu, tức bản chụp toàn bộ thư mục nguồn tại đúng thời điểm đó, gắn mã định danh thập lục phân như 40dc1520 trong ví dụ của tài liệu. Mỗi snapshot sao lưu ghi lại cây thư mục, tên tệp, thời gian, tên máy và đường dẫn nguồn, nhờ vậy về sau lọc được theo máy hoặc thư mục. Các bản chụp cùng tham chiếu tới những khối đã nằm sẵn trong kho, nên bản mới chỉ tốn thêm dung lượng bằng phần dữ liệu thay đổi.

Ví dụ trong tài liệu cho thấy 1,72 GiB dữ liệu được xử lý nhưng chỉ 1,2 GiB thêm vào kho nhờ khử trùng lặp, sau khi nén còn khoảng 1,1 GiB, tức dung lượng giảm đáng kể. Con số này thuộc một thư mục minh hoạ, mỗi bộ dữ liệu cho tỷ lệ khác. Một snapshot sao lưu giữ nguyên trạng thái quá khứ tới khi bị chủ động dọn, còn dịch vụ đồng bộ phản chiếu cả thao tác xoá nhầm. Bài Đồng bộ file laptop và điện thoại - chọn đám mây hay truyền nội bộ phân tích riêng các phương án đồng bộ, giúp thấy vì sao đồng bộ không thay được sao lưu.

Chia khối theo nội dung và mã hoá AES-256 cho từng khối

Khi sao lưu, Restic cắt mỗi tệp thành các khối (blob) có độ dài thay đổi, điểm cắt do một cửa sổ trượt dài 64 byte quyết định dựa trên dấu vân tay Rabin. Kỹ thuật này gọi là chia khối theo nội dung (Content Defined Chunking), tức chỗ cắt phụ thuộc chính dữ liệu chứ không theo vị trí cố định. Theo tài liệu thiết kế, mỗi kho chọn ngẫu nhiên một đa thức bất khả quy lúc khởi tạo, khiến kiểu tấn công đánh dấu (watermark) khó thực hiện hơn.

Thông số chia khối Giá trị (KiB) Ý nghĩa theo tài liệu thiết kế
Ngưỡng tệp không bị chia 512 Tệp nhỏ hơn 512 KiB được giữ nguyên thành một khối
Kích thước khối nhỏ nhất 512 Ngưỡng dưới, điểm cắt không rơi vào trước mốc này
Kích thước khối trung bình mục tiêu 1.024 Thuật toán tối ưu quanh mức trung bình 1 MiB
Kích thước khối lớn nhất 8.192 Khối dài nhất là 8 MiB

Ưu thế dễ thấy nhất xuất hiện khi tệp lớn chỉ đổi một phần. Tài liệu thiết kế khẳng định với tệp đã sửa, lần sao lưu sau chỉ cần lưu những khối bị thay đổi, kể cả khi dữ liệu được chèn thêm hay xoá bớt ở vị trí bất kỳ. Mỗi khối được nhận diện bằng mã băm SHA-256 của nội dung, nên hai khối giống nhau dù nằm ở hai tệp khác nhau, hay ở hai snapshot sao lưu cách nhau vài tháng, cũng chỉ được ghi một lần.

Toàn bộ dữ liệu ghi vào kho được mã hoá bằng AES-256 ở chế độ đếm (CTR) và xác thực bằng mã Poly1305-AES. Mật khẩu kho đi qua hàm dẫn xuất khoá scrypt để mở tệp khoá, nơi cất khoá chủ dùng cho dữ liệu. Restic coi nơi chứa kho là môi trường không đáng tin, chẳng hạn ổ chia sẻ mà quản trị viên khác đọc được. Vì vậy khi sao lưu laptop lên dịch vụ đám mây, nhà cung cấp chỉ thấy tệp đã mã hoá, không đọc được tên tệp hay nội dung.

Cài đặt trên Windows bằng WinGet, Scoop hoặc bản nhị phân chính thức

Phần Windows trong tài liệu cài đặt chính thức nêu hai trình quản lý gói là Scoop và WinGet, cách nào cũng thêm tệp chương trình vào biến PATH để gọi từ PowerShell hoặc CMD. Với Scoop, chỉ cần lệnh scoop install restic. Với WinGet, tài liệu khuyên thêm tham số --scope Machine để cài vào thư mục Program Files thay vì thư mục LOCALAPPDATA của tài khoản đang đăng nhập, đáp ứng nhu cầu sao lưu toàn hệ thống. Cách cài phạm vi máy đòi quyền quản trị.

Cài đặt công cụ sao lưu Restic trên Windows bằng WinGet hoặc Scoop trong PowerShell

Phương án thứ ba là tải bản nhị phân Restic dựng sẵn từ trang Releases trên GitHub, giải nén rồi đặt tệp exe vào thư mục nằm trong PATH. Ở lần cài đầu, tài liệu gợi ý đối chiếu mã băm trong tệp SHA256SUMS và kiểm chữ ký PGP để chắc chắn tệp tải về nguyên vẹn. Bản nhị phân chính thức từ 0.9.3 trở lên có lệnh self-update, tự tìm phiên bản mới nhất, xác minh chữ ký rồi thay thế tại chỗ, không phải tải lại thủ công.

Sau khi cài, nên khai báo đường dẫn kho và tệp chứa mật khẩu qua biến môi trường mà tài liệu quy định, để lệnh ngắn gọn và chạy được trong tác vụ tự động. Về bản chất, tệp mật khẩu là chìa khoá của kho nên cần đặt ở thư mục chỉ tài khoản quản trị đọc được. Trên Windows, tuỳ chọn --use-fs-snapshot cho phép Restic tạo bản chụp Volume Shadow Copy (VSS) cho từng ổ đĩa nguồn, nhờ đó vẫn sao lưu được tệp đang bị tiến trình khác khoá độc quyền.

Bảy lệnh nền tảng và lựa chọn nơi đặt kho ngoài laptop

Thao tác thường ngày xoay quanh bảy lệnh con, gõ ngay sau tên chương trình trong cửa sổ dòng lệnh. Lệnh init tạo kho, backup tạo snapshot sao lưu mới, snapshots liệt kê các bản chụp hiện có, restore giải nén một bản chụp ra thư mục đích. Ba lệnh forget, prune và check phục vụ bảo trì kho lâu dài. Bảng dưới đây tóm tắt chức năng và tuỳ chọn hay dùng, bám theo mô tả trong tài liệu chính thức.

Lệnh Chức năng Tuỳ chọn hay dùng
init Tạo kho mới và đặt mật khẩu --repo
backup Sao lưu thư mục, sinh bản chụp mới --exclude-file, --use-fs-snapshot
snapshots Liệt kê bản chụp kèm ngày giờ, tên máy, đường dẫn --host, --path
restore Khôi phục một bản chụp ra thư mục đích --target, --include
forget Gỡ bản chụp theo chính sách giữ lại --keep-daily, --keep-weekly, --keep-monthly, --prune
prune Xoá dữ liệu không còn bản chụp nào tham chiếu Chạy riêng hoặc gộp qua forget --prune
check Kiểm tra cấu trúc và tính toàn vẹn của kho --read-data-subset

Chính sách giữ lại nên được ưu tiên thiết lập ngay từ đầu. Tài liệu đưa ví dụ --keep-daily 7 --keep-weekly 5 --keep-monthly 12 --keep-yearly 75, tức giữ một bản cho mỗi ngày trong 7 ngày gần nhất, mỗi tuần trong 5 tuần, mỗi tháng trong 12 tháng và mỗi năm trong 75 năm. Lệnh forget chỉ gỡ bản chụp khỏi danh sách, muốn giải phóng dung lượng phải chạy prune hoặc thêm khoá --prune. Lệnh check kèm --read-data-subset đọc thử từng phần kho, ví dụ 1/5 mỗi lần.

Kho có thể nằm ở thư mục cục bộ, ổ cứng gắn ngoài, máy chủ SFTP, REST server của dự án, Amazon S3 cùng dịch vụ tương thích S3, Backblaze B2, Azure Blob Storage, Google Cloud Storage và nhiều dịch vụ khác qua rclone. Với Backblaze B2, tài liệu khuyến nghị kết nối qua API tương thích S3 vì thư viện B2 hiện có vấn đề xử lý lỗi. README cũng nói thẳng đặt kho trên chính ổ đĩa đang chạy chưa phải chiến lược sao lưu laptop đúng nghĩa, nên ít nhất một bản cần nằm ngoài thiết bị.

Đặt lịch bằng Task Scheduler và khôi phục dữ liệu sau khi reset

Windows có sẵn Task Scheduler, công cụ lập lịch để chạy một chương trình hay tệp lệnh theo giờ cố định, khi đăng nhập hoặc khi hệ thống rảnh. Cách gọn nhất là gom lệnh backup và forget vào một tệp .bat hoặc .ps1 có khai báo biến môi trường, rồi tạo tác vụ chạy tệp đó hằng ngày bằng giao diện Task Scheduler hoặc lệnh schtasks. Tác vụ nên kích hoạt tuỳ chọn chạy với quyền cao nhất, vì sao lưu đầy đủ bộ mô tả bảo mật trên Windows cần quyền quản trị.

Đặt lịch Task Scheduler chạy Restic hằng ngày và khôi phục dữ liệu sau khi reset laptop

Khi laptop có triệu chứng nêu trong bài 4 dấu hiệu cho biết đã đến lúc khôi phục cài đặt gốc PC Windows, trước lúc reset cần chạy một lần sao lưu laptop thủ công, dùng lệnh snapshots xác nhận bản mới nhất đã vào kho và lệnh check báo không lỗi. Danh sách thư mục cần bảo vệ nên rà lại một lượt, vì mọi tệp nằm ngoài snapshot sao lưu cuối cùng sẽ không còn đường lấy lại. Mật khẩu kho cũng cần ghi ở nơi khác ngoài laptop sắp xoá.

Bài Cài lại Windows 11 trên laptop - Reset this PC, cài tại chỗ hay USB cài sạch? giải thích tuỳ chọn nào của Windows giữ hay xoá tệp cá nhân. Với kiểu xoá sạch, quy trình phục hồi gồm cài lại Restic bằng WinGet hoặc Scoop, khai báo lại đường dẫn kho, chạy snapshots để chọn bản cần lấy, rồi dùng restore latest kèm --target trỏ tới thư mục đích, thêm --include nếu chỉ cần một thư mục con. Khôi phục symlink và bộ mô tả bảo mật đầy đủ cần quyền quản trị. Lệnh mount chỉ hoạt động trên Linux, macOS và FreeBSD, nên trên Windows cách lấy lại tệp lẻ vẫn là restore.

Câu hỏi thường gặp (FAQ)

Restic có miễn phí và có giới hạn dung lượng sao lưu không?

Phần mềm miễn phí hoàn toàn theo giấy phép BSD 2-Clause, không có gói trả phí hay bản giới hạn tính năng. Dung lượng kho phụ thuộc nơi lưu được chọn, có thể là ổ cứng gắn ngoài hoặc gói dịch vụ đám mây, nên chi phí chỉ phát sinh từ phần lưu trữ đó. Nhờ chia khối và nén, mỗi snapshot sao lưu về sau thường chiếm ít dung lượng hơn nhiều so với chép lại nguyên thư mục.

Quên mật khẩu kho Restic thì có lấy lại được dữ liệu không?

Không. Tài liệu chính thức khẳng định mất mật khẩu nghĩa là dữ liệu trong kho mất vĩnh viễn, vì nội dung đã mã hoá AES-256. Phương án dự phòng là dùng lệnh key add để thêm mật khẩu thứ hai cho cùng kho, sau đó cất mật khẩu này trong trình quản lý mật khẩu hoặc bản giấy ở nơi an toàn.

Restic có giao diện đồ hoạ trên Windows không?

Bản phát hành chính thức chỉ có giao diện dòng lệnh, chạy trong PowerShell hoặc CMD. Phương án phổ biến là viết sẵn tệp lệnh chứa các bước sao lưu laptop và dọn bản chụp cũ, rồi giao cho Task Scheduler chạy tự động, công việc hằng ngày không cần gõ lại lệnh.

Có cần đóng ứng dụng đang mở khi sao lưu laptop không?

Không bắt buộc. Trên Windows, tuỳ chọn --use-fs-snapshot dùng dịch vụ Volume Shadow Copy để đọc dữ liệu từ bản chụp ổ đĩa, nên tệp đang bị chương trình khác khoá vẫn vào được snapshot sao lưu. Với tệp cơ sở dữ liệu ghi liên tục, đóng ứng dụng trước khi chạy vẫn là cách chắc chắn nhất để bản sao nhất quán.

← Bài trước

0 phản hồi cho “Restic là gì - Cách sao lưu laptop miễn phí trước khi cài lại Windows”

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *