Bạn có một file nén khổng lồ và muốn chia sẻ nó qua email hoặc tải lên một server có giới hạn dung lượng? Việc chia nhỏ file tar thành các phần nhỏ hơn sẽ giúp bạn dễ dàng quản lý và truyền tải dữ liệu hơn. Trong hướng dẫn này, chúng ta sẽ cùng nhau khám phá cách sử dụng lệnh tar
và split
để chia nhỏ file tar một cách đơn giản và hiệu quả.
Trước khi chúng ta đi xa hơn, hãy lưu ý, cách sử dụng các tiện ích này, cú pháp chung của các lệnh tar
và split
như sau:
# tar options archive-name files
# split options file "prefix”
Một số ví dụ minh hoạ về lệnh tar
Bây giờ chúng ta hãy xem một vài ví dụ để minh họa khái niệm chính của bài viết này.
Ví dụ 1: Trước tiên, chúng ta có thể tạo một tệp nén như sau:
$ tar -cvjf home.tar.bz2 /home/aaronkilik/Documents/*
Để xác nhận rằng tệp nén đã được tạo và kiểm tra kích thước của nó, chúng ta có thể sử dụng lệnh ls
:
$ ls -lh home.tar.bz2
Sau đó, sử dụng tiện ích split
, chúng ta có thể chia tệp nén home.tar.bz2
thành các khối nhỏ mỗi khối có kích thước 10MB
như sau:
$ split -b 10M home.tar.bz2 "home.tar.bz2.part"
$ ls -lh home.tar.bz2.parta*
Như bạn có thể thấy từ đầu ra của các lệnh trên, tệp nén tar đã được chia thành bốn phần.
Lưu ý: Trong lệnh split ở trên, tùy chọn -b
được sử dụng để chỉ định kích thước của mỗi khối và "home.tar.bz2.part"
là tiền tố trong tên của mỗi tệp khối được tạo sau khi chia nhỏ.
Ví dụ 2: Tương tự như trường hợp trên, ở đây, chúng ta có thể tạo một tệp nén từ một tệp hình ảnhLinux Mint ISO.
$ tar -cvzf linux-mint-18.tar.gz linuxmint-18-cinnamon-64bit.iso
Sau đó, thực hiện các bước tương tự trong ví dụ 1 ở trên để chia tệp nén thành các phần nhỏ có kích thước 200MB
.
$ ls -lh linux-mint-18.tar.gz
$ split -b 200M linux-mint-18.tar.gz "ISO-archive.part"
$ ls -lh ISO-archive.parta*
Ví dụ 3: Trong trường hợp này, chúng ta có thể sử dụng một pipe để kết nối đầu ra của lệnh tar với lệnh chia như sau:
$ tar -cvzf - wget/* | split -b 150M - "downloads-part"
Xác nhận các tệp:
$ ls -lh downloads-parta*
Trong ví dụ cuối cùng này, chúng ta không cần chỉ định tên tệp như bạn đã thấy, chỉ đơn giản sử dụng dấu -
.
Cách kết hợp các tệp Tar sau khi đã chia nhỏ
Sau khi thành công chia nhỏ các tệp tar hoặc bất kỳ tệp lớn nào trên Linux, bạn có thể kết hợp các tệp bằng lệnh cat
. Sử dụng cat là phương pháp hiệu quả và đáng tin cậy nhất để thực hiện thao tác kết hợp.
Để kết hợp lại tất cả các khối hoặc tệp tar, chúng ta thực hiện lệnh sau:
# cat home.tar.bz2.parta* >backup.tar.gz.joined
Chúng ta có thể thấy sau khi chạy lệnh cat
, nó kết hợp tất cả các khối nhỏ mà chúng ta đã tạo trước đó thành tệp nén tar gốc có cùng kích thước.
Kết luận
Toàn bộ ý tưởng rất đơn giản, như chúng tôi đã minh họa ở trên, bạn chỉ cần biết và hiểu cách sử dụng các tùy chọn khác nhau của lệnh tar và split. Bạn có thể tham khảo các trang hướng dẫn của chúng để tìm hiểu thêm các tùy chọn khác và thực hiện một số thao tác phức tạp hoặc bạn có thể đọc bài viết sau để tìm hiểu thêm về lệnh tar.