명령어 | cpio |
명령어 설명 |
아카이브 파일을 복사하여 입출력 |
사용법 |
cpio -o [acBvV] [-C bufsize] [-O file] [-M message] cpio -i [BcdmrtuvVfsSb6k][-C bufsize][-I file][-M message][pattern. ] cpio -p [ adlmuvV ] directory |
Functions:
cpio -o |
(복사출력)은 표준 입력으로부터 경로명의 목록을 읽어 들여 그파일을 경로명, 상태 정보와 함께 표준 출력으로 복사한다 |
cpio -i |
(복사입력) cpio -o의 결과를 표준 입력 으로 하여 pattens이 일치하는 파일만을 추출 한다 |
cpio -p |
(패스)는 표준 입력으로부터 경로명을 목록을 읽어 들여 지정한 directory에 조건부로 파일들을 생성하고 복사 |
Options:
-l
-a |
파일의 복사후 입력 파일의 최종 액세스 시각을 현재로 재설정 |
-B |
입출력은 5120바이트의 레코드로 블록화된다(이 항목이 지정되지 않은 경우는 512 bytes 를 사용한다.) |
-c |
ASCII문자로 파일의 헤더 정보를 작성한다 |
-C bufsize |
입출력은 bufsize바이트로 레코드를 블록화한다 |
-d |
디렉토리가 필요하면 자동적으로 생성한다 |
-f |
patterns과 일치하는 것을 제외한 모든 파일을 복사 |
-k |
파일의 헤더가 망가졌거나 입출력오류시 작업을 종료 하지 않고 다음 현재 파일은skip하고 다음 파일을 읽는다. ( -i 에서만 사용) |
가능하면 파일을 복사하지않고 링크 시킨다 (-p 에서만 사용) | |
-m |
파일의 최종 수정 시간을 현재 파일이 가지고 있는 시간을 그대로 유지한다. |
-M message |
백업 미디어 매체 교환이 필요할 때 사용자가 그 메시지 를 정의 하여 사용할 수 있도록 한다 |
-O file |
cpio의 출력을 file에 지정한다 (-o 에서만 사용) |
-r |
대화식으로 파일명을 변경 한다(-p 에서는 사용불가능) |
-b |
각 단어 내의 바이트 순서를 바꾼다(-i에서만 사용) |
-s |
각half word의 두바이트를 서로 교환한다(-i에서만 사용) |
-S |
각 word의 두half word를 서로교환한다(-i에서만 사용) |
-t |
입력파일 목록을 출력하고 파일은 생성하지 않는다 |
-u |
restore시에 기존의 디렉토리에 그파일이 존재하더라도 무조건 복사한다. 이 값을 설정하지 않으면 두개의 수정 날자를 비교하여 더최근의 파일을 보존한다. |
-v |
현재 작업이 진행되고 있는 파일 목록을 표준 출력으로 출력 한다 |
-V |
현재 작업이 진행되고 있는 각 파일을 한 개의'.'으로 출력 한다. |
Examples:
$ ls | cpio -ocv >/dev/rmt/0m
$ find . -print | cpio -ovcB >/dev/tape1
$ find . -print | cpio -ovcB -O /tmp/testcpio
$ find /home -print | cpio -ovc >/dev/tape1
$ find $HOME -name "*.c" -print | cpio -ov >/dev/fd0
cpio 에 파일 목록을 파이프에 전달하기 위해 ls cat echo find와 같은 명령들을 사용하고, 출력은 -I, -O 옵션 또는 쉘의 입출력 방향 변경기능인 > , <을 이용하여 일반 파일 또는 device special file로 지정할 수 있다.
$ cpio -ivmucdB </dev/rmt/0m
/dev/rmt/0m 장치에 저장되어 있는 cpio 아카이브 파일을 읽어 들여서 현재 디렉토리에 저장한다.
$ cat newfile | cpio -icd "/memo/al" "/memo/b*"
아카이브 파일 newfile의 내용을 입력 받아서 /memo/a1, /memo/b* 패턴과 일치하는 파일들을 현재 디렉토리에 저장한다. 서브디렉토리가 필요한 경우 생성하돌고 지시하였다.
$ find . -depth -print | cpio -pdlmv new_direc
현재 디렉토리에 있는 모든 파일 리스트를 cpio 의 입력으로 받아서 new_direc 디렉토리에 하드링크 하도록 한다. -m은 수정 시각을 그대로 유지 하게 하며, -d는 필요에 따라 새로운 디렉토리가 만들어진다. cpio시 경로명을 생성하기 위한 find명령의 -depth 옵션은 디렉토리에 쓰기 모드가 허용되어 있지 않은경우에도 디렉토리에 쓰기를 할수 있도록 하기위해 사용된다.
명령어 | tar |
명령어 설명 |
테이프 파일 아카이버(archiver) 파일을 자기테이프에 저장하며 그기능은 키문자인수(c,r,t,u,v)로 제어 할 수 있다. 출력 방향은 디폴트로 mt0로 지정되어있다. (/etc/default/tar 에 정의 되어 있다) |
사용법 |
tar c [ vwfb [ #s ] ] device block files.. tar r [ vwfb [ #s ] ] device block [files..] tar t [ vf [ #s ] device tar u [ vwb [ #s ] ] device block [ files ] tar x [ lmovwf [ #s ] ] device [ files.. ] |
키문자기능:
c |
생성. 테이프의 처음부터 기록한다. 이기능은 r의 기능을 포함 하고 있다. |
r |
대체. 지정된 파일을 테이프의 마지막부터 기록된다. |
t |
테이블. 지정된 파일이 테이프상에서 검출될 때마다 파일명 및 그밖의 정보가 리스트된다. 파일 인수를 지정하지 않으면 테이프에 기록된 모든 정보에 대해 리스트 된다. |
u |
갱신. 지정된 파일이 테이프에 없을 경우 추가하거나 그 테이프에 기록된 최후의 것으로 갱신하다 |
x |
추출. 지정된 파일을 테이프에서 읽어낸다. 지정된 파일이 디렉토리이고 내용이 테이프에 있는 경우, 이 디렉토리의 내용을 재귀적으로 모두 읽어낸다. |
Options:
v |
verbose. 보통 tar실행중에 아무런 메세지도 출력하지 않는 다. 이 항목을 사용하면 기능을 나타내는 문자와 처리한 파일명이 출력된다. t기능과 사용하면 명칭 뿐만 아니라 테이프 항목에 관한 정보도 출력된다. |
w |
확인. 준비된 처리와 파일명을 출력하고 사용자의 확인을 기다린다. y로 시작되는 글자를 입력하면 처리를 수행한다. |
f |
파일. 다음에 지정된 device인수를 디폴트 출력방향인 /dev/mt/0m 또는 /dev/mt0 대신에 지정한 아카이브명(디바 이스 명칭이나 화일명)으로 사용 한다. 지정한 파일명이 - 인 경우에는 표준 출력으로 출력하거나 표준 입력으로 부터 읽어 들인다. |
b |
블로킹계수. 지정된 block 인수를 테이프 레코드의 블로킹 계수로 사용한다. 디폴트는 1로 최대 20블록까지 지정할 수 있다. |
m |
수정을 기존의 파일이 가지고 있는 시간으로 유지하게 한다. |
o |
소유권. 읽어들인 파일의 사용자, 그룹ID가 테이프 상에 기록 되는것이 아니라 이 명령을 실행하고 있는 사용자의 것으로 변경한다. |
Examples:
$ tar cv /home/kys/src
tar가 지정하는 디폴트 장치로 /home/kys/src 디렉토리의 모든 화일과 디렉토리의 내용을 저장한다
$ tar cvf /dev/rmt/0m .
현재의 디렉토리의 모든 화일들을 /dev/rmt/0m 디바이스로 back-up
$ tar xvf /dev/rmt/0m
/dev/rmt/0m 디바이스로 부터 현재 디렉토리로 restore
$ tar tvf /dev/rmt/0m
/dev/rmt/0m 디바이스에 back-up된 내용을 display
$ tar uvf /dev/mt0 /home/src/file1
/home/src/file1을 /dev/mt0에 update한다
$ tar rvf /dev/mt0 /home/src/file1
/home/src/file1을 /dev/mt0에 append 한다
$ tar cvf /dev/mt0 `tar tvf /dev/mt0 | grep file1`
file1이라는 화일만 /dev/mt0로 부터 restore한다
명령어 | dd |
명령어 설명 |
화일의 변환과 복사 지정한 입력 화일을 적절한 변환을 거쳐 지정한 출력에 복사한다. 입출력 화일을 생략 하는 경우에는 표준 입,출력이 사용된다. |
사용법 |
dd [ options = value ].. |
Options:
if=file |
입력화일명 |
of=file |
출력화일명 |
ibs=n |
입력블록의 크기를 n bytes(default 512)로 지정 |
obs=n |
출력블록의 크기를 n bytes(default 512)로 지정 |
bs=n |
ibs와 obs를 모두취소하고 입력및 출력블록의 크기를 모두 n바이트로 한다 |
cbs=n |
변환을 위한 버퍼크기 지정 cbs는 conv=ascii또는 conv=ebcidic을 지정하는 경우에만 사용한다. |
skip=n |
복사시작전 n개의 입력블록을 무시 |
seek=n |
복사전에 출력화일의 선두로부터 n 블록 검색 |
count=n |
n개의 입력블록만 복사 |
conv=ascii |
EBCDIC을 ASCII로 변환ebcdic ASCII를 EBCDIC으로변환 |
ibm |
ASCII를 EBCDIC으로변환(표준방식과 다소다르게) |
lcase |
알파벳을 소문자로 변환 |
ucase |
알파벳을 대문자로 변환 |
swab |
두개의 바이트를 서로 교환 |
noerror |
오류가 발생해도 처리를 중지하지 않는다 |
sync |
각입력블록을ibs로 padding |
...,... | 쉼표로 구분한 복수개의 변환 |
Examples:
# dd if=sample of=/dev/rmt/0m
300+0 blocks in
300+0 blocks out
$ dd if=sample of=/dev/rmt/0m ibs=1024 obs=1024
150+0 blocks in
150+0 blocks out
$ dd if=/dev/rmt/0m of=rest_in cbs=1024 conv=ascii
300+0 blocks in
300+0 blocks out
디스크 통째로 복사 (OS 도 복사된다)
dd if=/dev/rdsk/c0t0d0s2 of=/dev/rdsk/c0t8d0s2
FC 타입 디스크는
/etc/path_to_inst 파일 수정해줘야 된다.
$ tar cvf - /home/kys/src/*.c | dd of=dd_file conv=lcase
/home/kys/src 디렉토리하의 .c로 끝나는 모든 화일을 tar 아카이브 화일호 생성하여 그결과를 파이프를 통해 dd의 입력으로 전달하고, dd 명령은 입력되는 모든 데이타를 소문자로 변환하여 dd_file로 출력한다.
'OS > SOLARIS' 카테고리의 다른 글
x86/x64 플랫폼의 솔라리스10에서 점프스타트 사용하기 (0) | 2007.03.29 |
---|---|
솔라리스 dvd 파일합치기 (0) | 2006.11.01 |
시스템 디스크 교체 후 E3500 부팅 절차 (0) | 2006.08.07 |
Solaris의 무장화(Armoring Solaris) (0) | 2006.08.02 |
솔라리스 호스트네임변경 (0) | 2006.08.01 |