11.Linux для Начинающих - Архивирование и Сжатие tar, gzip, bzip2, xz, zip
Mục lục:
- Cú pháp lệnh Tar
- Tạo Tar Archive
- Tạo Tar Gz Lưu trữ
- Tạo Lưu trữ Tar Bz2
- Danh sách lưu trữ Tar
- Trích xuất Tar Lưu trữ
- Trích xuất Tar Archive trong một thư mục khác
- Trích xuất tài liệu lưu trữ Tar Gz và Tar Bz2
- Trích xuất các tệp cụ thể từ Lưu trữ Tar
- Trích xuất tệp từ Lưu trữ Tar bằng Wildcard
- Thêm tệp vào Lưu trữ Tar hiện có
- Xóa tệp khỏi Lưu trữ Tar
- Phần kết luận
Lệnh
tar
được sử dụng để tạo lưu trữ tar bằng cách chuyển đổi một nhóm tệp thành tệp lưu trữ. Nó cũng có khả năng trích xuất tài liệu lưu trữ tar, hiển thị danh sách các tệp có trong kho lưu trữ, thêm tệp bổ sung vào kho lưu trữ hiện có, cũng như các loại hoạt động khác.
Tar ban đầu được thiết kế để tạo tài liệu lưu trữ để lưu trữ các tệp trên băng từ, đó là lý do tại sao nó có tên là T T ape AR chive.
Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách sử dụng lệnh
tar
để trích xuất, liệt kê và tạo lưu trữ tar thông qua các ví dụ thực tế và giải thích chi tiết về các tùy chọn tar phổ biến nhất.
Cú pháp lệnh Tar
Có hai phiên bản tar, BSD tar và GNU tar với một số khác biệt về chức năng giữa. Hầu hết các hệ thống Linux đều có GNU tar được cài đặt sẵn theo mặc định.
Cú pháp chung cho lệnh
tar
như sau:
tar
-
OPERATION- Chỉ cho phép một đối số hoạt động. Các hoạt động được sử dụng thường xuyên nhất là:-
--create(-c) - Tạo một kho lưu trữ tar mới.--extract(-x) - Trích xuất toàn bộ kho lưu trữ hoặc một hoặc nhiều tệp từ kho lưu trữ.--list(-t) - Hiển thị danh sách các tệp có trong kho lưu trữ
OPTIONS- Các hoạt động được sử dụng thường xuyên nhất là:-
--verbose(-v) - Hiển thị các tệp đang được xử lý bằng lệnh tar.--file=archive=name(-f archive-name) - Chỉ định tên tệp lưu trữ.
ARCHIVE_NAME- Tên của kho lưu trữ.FILE_NAME(s)Danh sách tên tệp được phân tách bằng dấu cách sẽ được trích xuất từ kho lưu trữ. Nếu không được cung cấp toàn bộ kho lưu trữ được trích xuất. -
Khi thực hiện các lệnh tar, bạn có thể sử dụng dạng dài hoặc ngắn của các thao tác và tùy chọn
tar
. Các hình thức dài dễ đọc hơn trong khi các hình thức ngắn nhanh hơn để nhập. Các tùy chọn dạng dài được thêm tiền tố với dấu gạch ngang kép (
--
). Các tùy chọn dạng ngắn được thêm tiền tố với một dấu gạch ngang (
-
) có thể được bỏ qua.
Tạo Tar Archive
Tar hỗ trợ một loạt các chương trình nén như
gzip
,
bzip2
,
lzip
,
lzma
,
lzop
,
xz
và
compress
. Khi tạo lưu trữ tar nén, đó là một quy ước được chấp nhận để nối hậu tố máy nén vào tên tệp lưu trữ. Ví dụ: nếu một kho lưu trữ đã được nén bằng
gzip
thì nó phải được đặt tên là archive.tar.gz.
Để tạo một kho lưu trữ tar, sử dụng tùy chọn
-c
theo sau là
-f
và tên của kho lưu trữ.
Ví dụ: để tạo một kho lưu trữ có tên
archive.tar
từ các tệp có tên
file1
,
file2
,
file3
, bạn sẽ chạy lệnh sau:
tar -cf archive.tar file1 file2 file3
Đây là lệnh tương đương sử dụng các tùy chọn dạng dài:
tar --create --file=archive.tar file1 file2 file3
Bạn có thể tạo tài liệu lưu trữ từ nội dung của một hoặc nhiều thư mục hoặc tệp. Theo mặc định, các thư mục được lưu trữ đệ quy trừ khi tùy chọn
--no-recursion
được chỉ định.
Ví dụ sau sẽ tạo một kho lưu trữ có tên
user_backup.tar
của thư mục
/home/user
:
tar -cf backup.tar /home/user
Sử dụng tùy chọn
-v
nếu bạn muốn xem các tệp đang được xử lý.
Tạo Tar Gz Lưu trữ
Gzip là thuật toán phổ biến nhất để nén các tệp tar. Khi nén lưu trữ tar bằng gzip, tên lưu trữ phải kết thúc bằng
tar.gz
hoặc
tgz
.
Tùy chọn
-z
cho tar để nén tệp lưu trữ bằng thuật toán
gzip
khi nó được tạo. Ví dụ: để tạo một kho lưu trữ tar.gz từ các tệp đã cho, bạn sẽ sử dụng lệnh sau:
tar -czf archive.tar.gz file1 file2
Tạo Lưu trữ Tar Bz2
Một thuật toán phổ biến khác để nén các tập tin tar là bzip2. Khi nén lưu trữ tar bằng bzip2, tên lưu trữ phải kết thúc bằng
tar.bz2
hoặc
tbz
.
Khi tùy chọn
-j
được chỉ định tar sẽ sử dụng thuật toán
bzip2
để nén tệp lưu trữ. Lệnh sau sẽ tạo tệp lưu trữ
tar.bz2
từ các tệp đã cho:
tar -cjf archive.tar.bz2 file1 file2
Danh sách lưu trữ Tar
Khi được sử dụng với tùy chọn
--list
(
-t
), lệnh
tar
sẽ liệt kê nội dung của kho lưu trữ tar mà không giải nén nó. Lệnh dưới đây, sẽ liệt kê nội dung của tệp
archive.tar
:
tar -tf archive.tar
Đầu ra sẽ liệt kê tên của tất cả các tệp trong kho lưu trữ:
file1
file2
file3
Để có thêm thông tin, chẳng hạn như chủ sở hữu tệp, kích thước tệp, dấu thời gian, hãy sử dụng tùy chọn
--verbose
(
-v
):
tar -tvf archive.tar
-rw-r--r-- linuxize/users 0 2018-09-08 01:19 file1
-rw-r--r-- linuxize/users 0 2018-09-08 01:19 file2
-rw-r--r-- linuxize/users 0 2018-09-08 01:19 file3
Trích xuất Tar Lưu trữ
Hầu hết các tệp được lưu trữ trong Linux được lưu trữ và nén bằng định dạng tar hoặc tar.gz. Biết cách trích xuất các tệp này từ dòng lệnh rất quan trọng.
Để trích xuất một kho lưu trữ tar, hãy sử dụng tùy chọn
--extract
(
-x
) theo sau là tên lưu trữ:
tar -xf archive.tar
Nó cũng phổ biến để thêm tùy chọn
-v
để in tên của các tệp được trích xuất.
Trích xuất Tar Archive trong một thư mục khác
Theo mặc định, tar sẽ trích xuất nội dung lưu trữ trong thư mục làm việc hiện tại. Sử dụng
--directory
(
-C
) để trích xuất các tệp lưu trữ trong một thư mục cụ thể:
Ví dụ: để trích xuất nội dung lưu trữ vào thư mục
/opt/files
, bạn có thể sử dụng:
tar -xf archive.tar -C /opt/files
Trích xuất tài liệu lưu trữ Tar Gz và Tar Bz2
Khi trích xuất tài liệu lưu trữ nén như
tar.gz
hoặc
tar.bz2
bạn không phải chỉ định tùy chọn giải nén. Lệnh này giống như khi giải nén
tar
archive:
tar -xf archive.tar.gz
Trích xuất các tệp cụ thể từ Lưu trữ Tar
Đôi khi thay vì trích xuất toàn bộ kho lưu trữ, bạn có thể chỉ cần trích xuất một vài tệp từ nó.
Để trích xuất (các) tệp cụ thể từ kho lưu trữ tar, hãy thêm một danh sách tên tệp được phân tách bằng dấu cách sẽ được trích xuất sau tên lưu trữ:
tar -xf archive.tar file1 file2
Khi giải nén tệp, bạn phải cung cấp tên chính xác của chúng bao gồm đường dẫn, như được in bởi
--list
(
-t
).
Trích xuất một hoặc nhiều thư mục từ kho lưu trữ cũng giống như trích xuất tệp:
tar -xf archive.tar dir1 dir2
tar -xf archive.tar README
tar: README: Not found in archive tar: Exiting with failure status due to previous errors
Trích xuất tệp từ Lưu trữ Tar bằng Wildcard
Để trích xuất các tệp từ kho lưu trữ dựa trên mẫu ký tự đại diện, hãy sử dụng
--wildcards
chuyển đổi
--wildcards
và trích dẫn mẫu để ngăn vỏ giải thích nó.
Ví dụ: để trích xuất các tệp có tên kết thúc bằng
.js
(tệp Javascript), bạn có thể sử dụng:
tar -xf archive.tar --wildcards '*.js'
Thêm tệp vào Lưu trữ Tar hiện có
Để thêm tệp hoặc thư mục vào kho lưu trữ tar hiện có, hãy sử dụng thao tác
--append
(
-r
).
Ví dụ: để thêm một tệp có tên
newfile
vào archive.tar, bạn sẽ chạy:
Xóa tệp khỏi Lưu trữ Tar
Sử dụng thao tác
--delete
để xóa tệp khỏi kho lưu trữ.
Ví dụ sau đây cho thấy cách xóa tệp
file1
khỏi archive.tar,:
tar --delete -f archive.tar file1
Phần kết luận
Việc sử dụng phổ biến nhất của lệnh
tar
là tạo và trích xuất một kho lưu trữ tar. Khi trích xuất một kho lưu trữ, hãy sử dụng lệnh
tar -xf
theo sau là tên lưu trữ và để tạo một tệp mới sử dụng
tar -czf
theo sau là tên lưu trữ và các tệp và thư mục bạn muốn thêm vào kho lưu trữ.
Để biết thêm thông tin về lệnh tar, hãy tham khảo trang tài liệu tar Gnu.
thiết bị đầu cuối tarS3 hiện đang được các công ty thuộc mọi quy mô sử dụng, bao gồm sao lưu và lưu trữ dữ liệu, lưu trữ nội dung trang web và chia sẻ tệp tin. Alyssa Henry, tổng giám đốc của S3, nói: "Với quy mô, khi chúng ta lớn lên, chúng ta có thể tổng hợp việc sử dụng tất cả các ứng dụng Web, các nhà quản lý lưu trữ và quản lý kho dữ liệu. khách hàng của chúng tôi và nhận được giảm giá từ các nhà cung cấp của chúng tôi và vượt qua những khoản tiết kiệm này cho khách hàng của chúng tôi ", bà nói.
Hiện tại ở Mỹ, AWS tính phí cố định cho S3 0,15 USD / gigabyte / tháng lưu trữ được sử dụng. Cấu trúc 4 cấp sắp tới sẽ giữ giá như nhau cho 50T byte đầu tiên của lưu trữ, nhưng giảm nó xuống 0,14 đô la mỗi gigabyte mỗi tháng cho 50t bytes lưu trữ tiếp theo của khách hàng. Giá sẽ giảm xuống 0.13 USD / gigabyte mỗi tháng cho các bộ nhớ lưu trữ 400T tiếp theo và 0,12 USD / gigabyte mỗi tháng để lưu trữ ngoài 500T byte.
Một nhóm nhà cung cấp dẫn đầu bởi Microsoft và nhằm tăng cường khả năng tương tác giữa các định dạng tài liệu khác nhau đã tiết lộ một số công cụ để giúp người dịch giữa các tài liệu được tạo trong Open XML và các tài liệu sử dụng các định dạng tệp tin khác. cuộc họp của Sáng kiến Hợp tác Tài liệu (DII) tại Brussels tuần này, Microsoft và các nhà lãnh đạo ngành công nghiệp khác đã công bố ba công cụ để dịch các tài liệu trong Open XML, tiêu chuẩn ngành được Tổ chức Tiêu chuẩn Quốc tế (ISO) phê
Các công cụ mới được vạch ra trong một bài đăng trên blog của Peter Galli, quản lý cộng đồng nguồn mở cao cấp của Microsoft
Citrix Systems là trả lại cho các phòng CNTT một số quyền kiểm soát lưu trữ dựa trên đám mây cá nhân với ShareFile StorageZones, cho phép nội dung người dùng được lưu trữ trong các trung tâm dữ liệu riêng của doanh nghiệp, công ty đã công bố tại hội nghị Synergy ở Barcelona. DropBox, iCloud của Apple và Drive của Google đang thay đổi cách dữ liệu được lưu trữ và chia sẻ, nhưng đối với các doanh nghiệp, họ cũng có nghĩa là mất quyền kiểm soát cách lưu trữ nội dung và vị trí.
Citrix đang thay đổi điều đó bằng cách giới thiệu ShareFile StorageZones, được thiết kế để cho phép các doanh nghiệp đáp ứng các yêu cầu tuân thủ trong khi tối ưu hóa hiệu suất bằng cách lưu trữ dữ liệu gần với người dùng. Người dùng sẽ vẫn truy cập nội dung của họ theo cách họ quen.







