Tar, Gzip và Zip, Nén và Giải nén file VPS

Thảo luận trong 'Thư viện' bắt đầu bởi Anh Huy, 21/3/18.

328

  1. Anh Huy Hạnh phúc là sẻ chia

    1. Tạo fie nén .tar

    Mã:
    # tar -cvf filename.tar file1 file2 folder1 folder2
    Filename.tar là tên file tar bạn sẽ tạo ra. File1, folder1… là các file, thư mục bạn muốn đóng gói trong file tar (đóng gói theo đúng thứ tự liệt kê).

    Ví dụ, bạn đang làm việc tại /usr, cần đóng gói folder /usr/bin, folder /boot/grub và file /boot/abc.img


    Mã:
    # tar -cvf filename.tar bin /boot/grub /boot/abc.img
    File được lưu trữ có thể ở dạng filename (abc.img) hoặc ở dạng file kèm đường dẫn (boot/abc.img). Khi đó, trong quá trình bung dữ liệu, file sẽ được đặt ở đúng đường dẫn đã lưu.

    Đóng gói và nén dữ liệu

    Tar thông thường chỉ giúp đóng gói dữ liệu. Để nén dữ liệu giảm thiểu dung lượng, bạn dùng cần các tùy chọn nén z cho gzip (định dạng .gz) hoặc j cho bunzip (định dạng .bz2)

    Mã:
    # tar -czvf filename.tar.gz file1 file2 folder1 folder2
    hoặc
    # tar -cjvf filename.tar.bz2 file1 file2 folder1 folder2
    Lưu trữ bỏ qua các tập tin theo yêu cầu

    Trong quá trình đóng gói và lưu trữ dữ liệu, có thể loại bỏ các tập tin theo yêu cầu bằng cách sử dụng tùy chọn exclude.

    Ví dụ, loại bỏ các file .pyc khỏi việc đóng gói dữ liệu thư mục /usr/lib/python2.6/site-packages

    Mã:
    # tar -cvf filename.tar /usr/lib/python2.6/site-packages --exclude='*.pyc'

    Hiển thị tổng dung lượng đã được lưu trữ


    Sử dụng tùy chọn totals giúp hiển thị tổng dung lượng đã được lưu trữ

    Mã:
    # tar -cvf filename.tar file1 folder1 --totals
    Total bytes written: 20561920 (20MiB, 354MiB/s)
    2. Làm việc với file .tar
    Liệt kê nội dung bên trong file lưu trữ

    Để xem nội dung bên trong 1 file tar, sử dụng tùy chọn v để cho ra các thông tin chi tiết trên màn hình bao gồm permission, owner, date/time…

    Mã:
    # tar -tvf filename.tar
    Thêm mới, cập nhập nội dung vào file lưu trữ

    Sử dụng tùy chọn r để thêm nội dung vào file lưu trữ

    Mã:
    # tar -rvf filename.tar add_file1 add_file2
    Để cập nhập dữ liệu vào file lưu trữ đã có, sử dụng tùy chọn u (đặc biệt cần trong việc update các file backup)

    Mã:
    # tar -uf filename.tar
    Câu lệnh trên sẽ so sánh thời gian sửa đổi của nội dung bên ngoài và bên trong của file lưu trữ. File bên trong sẽ được cập nhật nếu tập tin bên ngoài mới hơn.

    Xóa dữ liệu trong file lưu trữ

    Sử dụng tùy chọn delete để xóa nội dung theo yêu cầu trong file lưu trữ

    # tar -f filename.tar --delete file1 file2
    3. Giải nén file .tar
    # tar -xvf filename.tar
    Câu lệnh trên sẽ không xóa file .tar mà sẽ chỉ giải nén dữ liệu bên trong file tar vào thư mục hiện tại. Trong trường hợp file được lưu có kèm đường dẫn, nếu đường dẫn đó không tồn tại, hệ thống sẽ tự tạo thư mục tương ứng để đặt file. Tùy theo cách bạn đóng gói dữ liệu mà khi bung ra vị trí file có thể thay đổi

    Ví dụ, bạn đang làm việc tại /boot/grub và muốn đóng gói file 1.map tại thư mục đó.

    • Nếu bạn đóng gói 1.map, khi giải nén đường dẫn file sẽ là /boot/grub/1.map
    • Nếu bạn đóng gói /boot/grub/1.map, khi giải nén đường dẫn file sẽ là /boot/grub/boot/grub/1.map
    Bung file nén

    Đối với các file nén gzip .tar.gz bạn cần sử dụng thêm tùy chọn z (với file nén gzip) hay tùy chọn j(với file nén bunzip)

    # tar -xzvf filename.tar.gz
    # tar -xjvf filename.tar.bz2
    Bung một vài file/thư mục cụ thể

    # tar -xvf filename.tar file1 file2
    Bung vào 1 thư mục khác

    Để bung dữ liệu vào nơi khác thư mục hiện tại, bạn cần chỉ rõ đường dẫn của thư mục đích với tùy chọn -C

    # tar -xvf filename.tar -C /directory
    Ví dụ, # tar -xvf test.tar -C /boot/efi thì toàn bộ file của test.tar sẽ được bung ra trong thư mục /boot/efi

    II. Gzip
    GZIP được dùng khá phổ biến trong nền tảng Unix/Linux. GZIP chỉ có thể làm việc trên 1 tập tin hoặc 1 dòng dữ liệu, do đó không thể lưu trữ được nhiều tập tin. Vì vậy, nếu muốn sử dụng cho nhiều tập tin thì chúng ta phải sử dụng TAR đóng gói chúng lại trước.

    1. Tạo file nén Gzip
    # gzip filename
    Khi đó, file gốc tự đổng chuyển đổi thành file nén. Ví dụ # gzip test.php sẽ chuyển đổi test.php thành test.php.gz

    Thiết lập mức độ nén

    Mức độ nén được tùy chỉnh trong khoảng từ 1 đến 9. Trong đó, 1 ~ fast nén nhanh nhất nhưng mức độ nén thấp nhất còn 9 ~ best mức độ nén cao nhất nhưng nén chậm nhất

    # gzip --fast filename hoặc # gzip -1 filename
    # gzip --best filename hoặc # gzip -9 filename
    Kiểm tra thuộc tính file nén

    # gzip -l filename.gz
    Ví dụ,

    # gzip -l hocvps.tar.gz
    compressed uncompressed ratio uncompressed_name
    23724096 64901120 63.4% hocvps.tar

    2. Giải nén file Gzip
    # gzip -d filename
    Khi đó, file nén tự động chuyển đổi thành file gốc. Ví dụ, # gzip -d test.php.gz sẽ chuyển đổi test.php.gz thành test.php

    III. Zip
    Đầu tiên, bạn cần kiểm tra cài đặt zip trong systems.

    # rpm -q zip
    package zip is not installed
    hoặc
    Package zip-3.0-1.el6_7.1.x86_64 already installed and latest version
    Tiến hành cài đặt Zip nếu chưa có

    # yum install zip -y
    Installed:
    zip.x86_64 0:3.0-1.el6_7.1
    1. Tạo file nén .zip
    # zip filename.zip filename1 filename2
    Trong đó, filename.zip là file zip sẽ được tạo từ việc nén filename1 và filename2

    Nén folder thành 1 file zip

    Sử dụng tùy chọn -r để zip nén toàn bộ folder và các file bên trong.

    # zip -r test.zip folder1
    Tạo file nén ở chế độ yên lặng

    Sử dụng tùy chọn -q để tạo file nén ở chế độ yên lặng – quiet, không hiển thị thông tin gì trong quá trình nén.

    # zip -rq test.zip folder
    2. Giải nén file .zip
    # unzip filename.zip
    Khi đó, file trong filename.zip sẽ được giải nén vào thư mục hiện tại, file nén vẫn giữ nguyên
    Nếu file đó còn tồn tại ở thư mục giải nén, chương trình sẽ hỏi bạn về các tùy chọn thay thế

    [y]es, [n]o, [A]ll, [N]one, [r]ename
    Giải nén ở chế độ yên lặng

    Sử dụng tùy chọn -q để giải nén ở chế độ yên lặng – quiet, không hiển thị thông tin gì trong quá trình giải nén.

    # unzip -q test.zip
     
    Thẻ (Tags):
Thẻ (Tags):

Chia sẻ trang này

Đang tải...