잠시만 기다려 주세요

HOME   |  여기는?   |  바다물때표   |  여러가지 팁 (888)  |  추천 및 재미 (153)  |  자료실 (20)  |  끄적거림 (520)  |  시나리오 (760)  |  드라마 대본 (248)  |  

2020년 09월 24일
목적을 알고 행동하면 항상 깨어 있을 수 있다. 목적 있는 삶을 살자. - 바다아이
 




    리눅스 데스크탑

리눅스 데스크탑 - 리눅스 압축 tar, gzip, gz, bzip2, bz2, zip, unzip, compress, xz 총정리....
이 름 : 바다아이   |   조회수 : 2321         짧은 주소 : https://www.bada-ie.com/su/?971591829700
압축은 파일명.gz 또는 파일명.bz2 요 두가지를 제일 많이 사용합니다.


* Tar

tar 는 압축방식은 아니고, 여러 개의 파일을 하나로 묶어주는 역할을 합니다.
주로 리눅스에서는 tar를 사용해서 파일을 하나로 묶은 다음 그 묶은 파일을 압축명령어를 사용하여 압축합니다.

옵션으로는

-c : create 의 약자로 묶음파일을 생성합니다.
-x : extract 의 약자로 묶음파일에서 데이터를 추출합니다.
-v : visual 의 약자로 묶음 생성 or 추출 시 그 과정을 눈으로 볼수 있게 보여줍니다.
-f : 사용할 tar 파일을 지정하는 명령으로 묶음이나 묶음해제시 필수적으로 넣어야 하는 명령입니다.
-r : 이미 묶음이 완료된 파일에 새로운 파일을 추가시킬 때 사용하는 명령입니다.
-t : 압축파일 안에 어떤파일이 들어있는지 내용을 확인합니다.
-z : tar로 묵은후 gzip으로 압축/해제 합니다.
-j : tar로 묶은후 bzip2로 압축/해제 합니다.
-p : 권한, 퍼미션 부분까지 저장...

사용 예 :

tar cvf achive.tar /root/*  --> root 이하의 모든 파일과 디렉토리를 achive.tar 파일로 묶는다.
tar czvf achive.tar.gz /root/* -->root 이하의 모든 파일과 디렉토리를 achive.tar로 묶은후 gzip을 사용해서achive.tar.gz으로 압축한다.
tar cjvf achive.tar.bz2 /root/* --> root 이하의 모든 파일과 디렉토리를 achive.tar로 묶은후 bzip2를 사용해서 achive.tar.bz2로 압축한다.
tar xvf achive.tar --> achive.tar 라는 묶음파일을 해제 시킨다.
tar tvf achive.tar --> achive.tar 라는 파일에 어떤파일들이 묶여 있는지 확인한다.
tar rf achive.tar file.txt --> achive.tar 라는 묶음파일에 file.txt라는 새로운 파일을 추가한다.

보통.... 저같은 경우... 옵션을 아래처럼 합니다... 묶은 후 압축은 gzip 을 사용하기에 z 옵션...

zcvfp --> 압축시..
zxvfp --> 해제시...


압축을 gz 로 할려면 z 옵션
압축을 bz2 로 할려면 z 빼고 j

풀때도 압축 종류에 따라. z 혹은 j 를 사용합니다.


tar 의 순서를 보면..

tar 옵션 만들파일이름 압축및묶을파일들

옵션앞에 "-" 기호는 붙여도 되고 안붙여도 됩니다.


* gzip

한개의 파일만 압축할 수 있기 때문에 tar와 함께 쓰이며 압축후 기본적으로 원본파일은 사라집니다.
통상 gzip 만 가지고 압축하지는 않습니다. 그냥 이런 게 있구나 정도만 생각하시면 되겠습니다.
tar 에서 파일들을 묶은 후 z 옵션 하나로 끝이구나... 이 정도면 됩니다.


gzip의옵션으로는

-n : n은 1부터 9까지 숫자로 지정하며 1이 가장 빠르게 압축을 하지만 압축율은 가장 낮습니다.
-c : 원본파일은 그대로 놔두며 압축합니다.
-d : decompress,압축을 해제합니다.
-l : 압축 파일의 정보를 출력합니다.
-r : 디렉토리를 지정 시 디렉토리에 포함된 모든 파일을 압축합니다.(한개의 파일만 압축할수 있기 때문에 각각의 파일이 각각 압축됨.)
-v : 압축 혹은 해제시 자세한 정보를 보여줌니다.

압축해제시 " gzip -d 파일명 " 으로 해제할수도 있고, gunzip 명령으로 해제할 수 도 있습니다.

gunzip 옵션

-l 압축 파일 정보 출력
-r 디렉토리 지정시 디렉토리 내의 모든 파일의 압축 해제
-v 압축해제 시 자세한 정보 출력.


*  bzip2

.bz2 라는 확장자로 다루어 집니다. tar옵션중 j 를 이용해 tar명령어와 함께 사용할수 있습니다.
최근 많이 사용들 합니다만.... 그래도 gzip 이 더 많은 것 같네요...
역시 bzip2 만 가지고 압축하지는 않습니다. tar 하고 같이 쓰고 옵션에 j 를 쓰는 구나.. 이 정도면 끝입니다.

bzip2 옵션

-z : 압축합니다.
-d : 압축을 풉니다.
-k : 파일 압축 or 해제시 원본 파일을 지우지 않습니다.
-v : 작업사항을 자세히 볼수 있습니다.
-s : bzip2가 작업 중 사용하는 메모리의 양을 줄일수 있습니다. (bzip2 작업에 2.5byte 만을 사용한다.) 시간은 더 오래 걸리지만 적은 메모리에서 bzip2를 사용할 수 있습니다.
-f : 압축 , 해제 할때 같은 이름의 파일이 있을 경우 덮어쓰기를 합니다.

bzip2 -d 를 이용하여 압축을 해제 할수도 있고, bunzip2 명령으로 해제 할수도 있습니다.


* zip

zip 압축은 다른 압축과는 다르게 암호를 설정할수 있다는 특징이 있습니다.
이 압축은 별로 인기가 없습니다... 그냥 이런 게 있구나... 정도만 아시면 됩니다.

zip 옵션

-r 하위 디렉토리까지 포함하여 모두 압축 시킵니다.
-P [암호] : 암호를 설정할 수 있습니다.

사용 예

zip -P ilikehacker -r hacker.zip /hacker

-->/hacker라는 폴더의 하위 디렉토리까지 모두 포함하여 hacker.zip 파일로 압축한다. 이때 암호는 ilikehacker를 사용한다.

풀때는

unzip 압축파일이름

--> 단순 풀기

or

unzip 압축파일이름 -d 특정폴더

--> 특정 폴더에 풀기


*compress

확장자 .Z 형태의 압축파일 생성 , 압축 알고리즘에 의해 크기가 줄어드는 경우에만 압축을 수행합니다.
이거는 모르셔도 됩니다.. 별로 사용할 일이 없을 겁니다.

사용 예

compress -vf test

--> test라는 파일을 압축합니다.

uncompress -d test.Z    or    compress -d test.Z

--> test.Z파일의 압축을 해제합니다.

옵션

-v 파일 압축 효율을 퍼센트로 보여줍니다.
-f 수행 결과 파일과 같은 이름의 파일이 있으면 물어보지 않고 덮어씁니다. 또한 파일의 크기가 줄어들지 않아도 압축을 실행합니다.  



*** 압축 알고리즘 간단히 소개.

Run-Length Encoding Algorithm ((ex)RLE)

--> BAAAAAAC 를 BA5C 이런식으로 반복되는 문자의 길이를 세서 숫자로 표현. 반복되는 문자가 적으면 압축률이 떨어지는 단점이 있음.

Lempel-Ziv Algorithm ((ex)LZ77)

--> ABCDEFBCDAE 를 ABCDEF(5,3)AE 이런식으로 압축. 여기서 (5,3)이라는 뜻은 5번째 전부터 시작해서 3개 까지가 반복됨을 뜻함. 이렇게 반복되는 패턴을 숫자로 치환하는 알고리즘.

Huffman Algorithm

--> 단순하게 예를 들면 ADDAAAAAAE 중 A의 빈도수가 가장 높고 그다음 D, E순서로 빈도수가 높다.
이 빈도수를 계산하여 높은 빈도수를 가진 패턴에 작은 bit의 코드를 부여하여 압축한다.
이때 Huffman tree를 만들어야 나중에 압축을 풀때 오류가 생기지 않는다.


* xz

최근 xz 라는 압축이 많이 보입니다. 역시 한개의 파일만 가능합니다.
xz는 압축율이 높고, gzip의 30%, bzip2의15% 더 효율이 좋다고 합니다.
그러나 번거롭습니다. gz 로 가세요 그냥...

압축

xz 파일이름 --> 압축 후 원본 파일이 사라져요.. 주의
xz -k 파일이름 --> 원본 보존....

풀기

xz -d 파일이름 --> 풀고 원본 사라짐... 주의
xz -dk 파일이름 --> 풀고 원본 보존...

보통 tar 로 묶어서 xz 로 압축을 합니다. 풀때도 tar 풀고 xz 로 풀어야 겠죠...
tar 옵션은 묶을 때.. cvfp 이고 풀때는 xvfp 입니다. xz 압축 사용하시려면....


출처 : http://www.hackerschool.org/HS_Boards/zboard.php?id=Free_Lectures&page=1&sn1=on&divpage=1&sn=on&ss=off&sc=off&keyword=williamlee&select_arrange=hit&desc=asc&no=1628
 
| |


      1 page / 7 page
번 호 카테고리 제 목 이름 조회수
189 리눅스 데스크탑 ... ... .... 바다아이 168
188 리눅스 데스크탑 ; & && ||, | 바다아이 261
187 리눅스 데스크탑 , , , 바다아이 248
186 리눅스 데스크탑 ... 바다아이 268
185 리눅스 데스크탑 /etc/fstab 바다아이 278
184 리눅스 데스크탑 ntp , .. ... 바다아이 233
183 리눅스 데스크탑 20.04 64 , ubuntu 20.04 . hwp 바다아이 350
182 리눅스 데스크탑 .... 바다아이 269
181 리눅스 데스크탑 pamac , ... pamac categories package error 바다아이 324
180 리눅스 데스크탑 archlinux pacman ... lock 바다아이 329
179 리눅스 데스크탑 dd 바다아이 662
178 리눅스 데스크탑 vi, vim , .... 바다아이 674
177 리눅스 데스크탑 ubuntu 16.04 4.14 nvidia-304 ... 바다아이 631
176 리눅스 데스크탑 nvidia ... 바다아이 838
175 리눅스 데스크탑 .... 16.04 libssl1.1 ... ubuntu kernel install 바다아이 765
174 리눅스 데스크탑 testdisk 바다아이 1305
173 리눅스 데스크탑 바다아이 1175
172 리눅스 데스크탑 Compiling nVidia 304.137 on Ubuntu 18.04 바다아이 1352
171 리눅스 데스크탑 lightdm , , Lightdm not starting on boot ?? 바다아이 1185
170 리눅스 데스크탑 thunderbird , 바다아이 1214
169 리눅스 데스크탑 usb, cdrom grub iso ... 바다아이 1244
168 리눅스 데스크탑 usb, cdrom grub iso ... 바다아이 1347
167 리눅스 데스크탑 dd , 바다아이 1375
166 리눅스 데스크탑 , dd if=/dev/zero, . low format 바다아이 1966
165 리눅스 데스크탑 freebsd ufs , linux ufs mount 바다아이 1698
164 리눅스 데스크탑 Arch on WSL, archlinux libQt5Core.so.5 not found 바다아이 1448
163 리눅스 데스크탑 , .... input text ... font 바다아이 1828
162 리눅스 데스크탑 ... 바다아이 1731
161 리눅스 데스크탑 , , .. gparted 바다아이 1984
160 리눅스 데스크탑 ssh .... ssh .. 바다아이 1705
| |








Copyright ⓒ 2001.12. bada-ie.com. All rights reserved.
이 사이트는 리눅스에서 firefox 기준으로 작성되었습니다. 기타 브라우저에서는 다르게 보일 수 있습니다.
[ FreeBSD + GoLang + PostgreSQL ]
서버위치 : vultr.com 서울  실행시간 : 0.26014
to webmaster... gogo sea. gogo sea.