" Linux 먼저 터미널..?
'It's IT > It's System(linux,win)' 카테고리의 다른 글
linux, unix shell script 조건문에서 사용하는 기호 (0) | 2008.01.17 |
---|---|
표준입력, 표준출력, 표준에러 (0) | 2007.12.14 |
퍼미션, CHMODE (0) | 2007.12.14 |
VI명령어 (0) | 2007.12.14 |
PING (0) | 2007.12.14 |
" Linux 먼저 터미널..?
linux, unix shell script 조건문에서 사용하는 기호 (0) | 2008.01.17 |
---|---|
표준입력, 표준출력, 표준에러 (0) | 2007.12.14 |
퍼미션, CHMODE (0) | 2007.12.14 |
VI명령어 (0) | 2007.12.14 |
PING (0) | 2007.12.14 |
조건문과 같이 자주 쓰이는 기호들
= : 같음
! : 부정.
-a : AND
-o : OR
아래는 숫자값들의 비교에 쓰임
-eq : 같다.
-ne : 같지 않다.
-gt : 보다 크다.
-ge : 보다 크거나 같다.
-lt : 보다 작다.
Linux 공부를 함 해볼까?????? (0) | 2019.12.24 |
---|---|
표준입력, 표준출력, 표준에러 (0) | 2007.12.14 |
퍼미션, CHMODE (0) | 2007.12.14 |
VI명령어 (0) | 2007.12.14 |
PING (0) | 2007.12.14 |
#include <unistd.h>
#include <string.h>
int main(int argc, char **argv)
{
char data[80];
char *msg = "Input Msg : ";
memset(data, 0x00, 80);
write(1, msg, strlen(msg)); // 1
read(0, data, 80); // 2
write(1, data, strlen(data)); // 3
write(2, "Error\n", 6); // 4
}
# ./write
Input Msg : hello world
hello world
Error
# ./write 2> dump.log표준에러가 모니터 화면이 아닌, dump.log 파일에 저장된걸 확인할 수 있을 것이다. 이로써, 표준에러와 표준출력이 모니터를 출력방향으로 하고 있지만, 명백히 구분되는 것임을 이해했을 것이다.
Input Msg : hello world
hello world
# cat dump.log
Error
Linux 공부를 함 해볼까?????? (0) | 2019.12.24 |
---|---|
linux, unix shell script 조건문에서 사용하는 기호 (0) | 2008.01.17 |
퍼미션, CHMODE (0) | 2007.12.14 |
VI명령어 (0) | 2007.12.14 |
PING (0) | 2007.12.14 |
1. chmod
파일 또는 디렉토리의 접근 권한을 변경하는 명령이다.
1.1 chmod의 기본적인 사용법
chmod [-옵션] [모드] [파일명]
[옵션]
chmod 명령에는 몇가지 옵션이 존재하지만 -R 옵션 외에는 사용할 일이 없기 때문에 -R 옵션만 설명을 하겠다.
-R : 퍼미션 변경 대상이 디렉토리일 경우 그 하위 경로에 있는 모든 파일과 디렉토리의 퍼미션을 변경한다.
[모드(심볼릭)]
심볼릭 모드와 8진수 모드를 사용할 수 있는데 대부분의 사용자들은 심볼릭 모드 보다 8진수 모드를 선호한다. 그럼 심볼릭
모드부터 공부해 보도록 하자.
심볼릭 모드에서 "u = 소유자, g = 소유 그룹, o = other, a = all, r = 읽기, w = 쓰기, x = 실행"을 의미한다.
심볼릭 모드에서는 권한 추가에 대해서 '+' 를 사용하고 권한 박탈에 대해서는 '-' 를 사용한다. '=' 를 사용하면 현재 설정
된 권한은 제거되고 오직 '='로 설정한 권한만 부여한다.
▶ file1에 대해 소유 그룹에게 쓰기 권한을 추가할 때
[root@rootman root]# chmod g+w file1
▶ 소유자에게 file1에 대해 쓰기 권한을 주고 소유 그룹에게는 쓰기 권한을 박탈할 할 때
[root@rootman root]# chmod u+w,g-w file1
--> 위와 같이 동시에 여러 대상에 대해 설정할 때는 각 대상을 콤마(,)로 구분하면 된다. 절대 공백이 들어가서는 안된다.
[모드(8진수)]
8진수 모드에서 4 = 읽기, 2 = 쓰기, 1 = 실행을 의미한다. 8진수 모드는 소유자와 소유그룹, other에 대해서 8진수 3자리로
표현하는데 첫째 자리수가 소유자를 의미하고 둘째 자릿수가 소유 그룹, 셋째 자릿수가 other을 의미한다.
예를 들어 751 라는 퍼미션은 소유자에게 7, 소유 그룹에게 5, other에게 1 에 해당하는 퍼미션을 설정한 것이다.
퍼미션의 계산은 주어진 권한에 해당하는 8진수 값을 모두 더해서(+) 설정된다.
▶ 소유자에게 읽기, 쓰기, 실행 권한을 소유 그룹에게는 읽기, 실행 권한을 other에게는 실행 권한만을 설정한 8진수 모드
소유자 = 4(읽기) + 2(쓰기) + 1(실행) = 7
소유그룹 = 4(읽기) + 1(실행) = 5
other = 1(실행) = 1
--> 이걸 정리하면 751 이라는 8진수 모드로 표현할 수 있다. 물론 초보자를 위한 설명이니까 덧셈까지 하면서 설명을 했지만 몇번 사용하다 보면 금방 익힐 수 있을 것이다.
▶ file1에 대해 소유자에게 읽기, 쓰기 권한을 소유 그룹과 other에게는 읽기 권한을 갖도록 설정할 때
[root@rootman root]# chmod 644 file1
1.2 특별한 퍼미션 setuid, setgid, sticky bit
setuid, setgid
실행 퍼미션에는 setuid와 setgid라는 특별한 퍼미션이 있다. setuid는 심볼릭 모드로 's'로 표현되고 8진수 모드로는 4000
으로 표현된다. setuid 퍼미션이 설정되어 있는 실행 파일은 실행되는 동안에는 그 파일의 소유자 권한을 가지게 된다.
이러한 이유때문에 root 소유의 setuid 퍼미션이 포함되어 있는 파일은 아주 신중히 관리를 해야 된다. 저는 사용 안하는
setuid 실행 파일은 setuid 퍼미션을 제거해서 따로 보관하고 있습니다. setgid 퍼미션이 포함되어 있는 실행 파일은 실행되는 동안은 그 파일의 소유 그룹의 권한을 가지는 것 빼고는 setuid와 같다. setgid의 8진수 모드는 2000 이다.
setuid 퍼미션을 포함하고 있는 실행 파일을 ls -al 명령으로 확인해 보면 다음과 같이 소유자 실행퍼미션에 's'라고 되어
있는 것을 확인할 수 있다.
[root@rootman root]# ls -al /bin/su
-rwsr-xr-x 1 root root 14112 1월 16 2001 /bin/su
setgid가 포함되어 있는 실행 파일을 ls -al 명령으로 확인하면 소유 그룹의 실행 퍼미션에 's'가 설정되어 있는 것을 확인
할 수 있을 것이다.
[root@rootman root]# ls -al /usr/bin/man
-rwxr-sr-x 1 root root 14112 2월 5 2001 /usr/bin/man
▶ file1 이라는 실행 파일에 setuid 퍼미션을 설정할 때
[root@rootman root]# chmod 4755 file1
▶ file1 이라는 실행 파일에 setgid 퍼미션을 설정할 때
[root@rootman root]# chmod 2755 file1
sticky bit
sticky bit도 특별한 퍼미션이다. other의 쓰기 권한에 대한 특별한 퍼미션인데 /tmp 디렉토리와 /var/tmp 디렉토리에의
퍼미션이 stickbit가 포함되어 있다. sticky bit는 8진수 모드로는 1000으로 설정되고 심볼릭 모드로는 't' 또는 'T'
로 설정된다. 이 sticky bit가 포함되어 있는 디렉토리에 other에 쓰기 권한이 있을 경우 other에 해당하는 사용자들은
디렉토리 안에 파일을 만들 수는 있어도 디렉토리 삭제는 할 수 없다.
sticky bit가 포함되어 있는 대포적인 디렉토리가 /tmp 디렉토리인데 분명히 /tmp 디렉토리의 퍼미에는 other에게 쓰기 권한이 주어져 있다. 그렇기 때문에 /tmp 디렉토리에는 누구나 디렉토리와 파일을 만들 수 있다. 하지만 other에 해당하는 사용자는 쓰기 권한이 있음에도 불고 하고 /tmp 디렉토리를 지울수 없는 것이다. 그 이유는 /tmp 디렉토리에는 sticky bit가 설정되어 있기 때문이다. 당연히 소유자는 sticky bit가 설정되어 있는 디렉토리를 삭제할 수 있다.
디렉토리가 아닌 파일에 sticky bit가 설정되어 있을 때는 other 에게 쓰기 퍼미션이 있어도 파일을 수정할 순 있지만 그 파일을 삭제할 수는 없다. sticky bit의 이런 특징을 이용하면 공개 서버에서는 여러모로 요기나게 사용할 수 있을 것이다.
sticky bit를 적용할려면 당연히 쓰기 권한도 주어야 되다.
▶ sticky bit가 포함되어 있는 디렉토리의 ls -al 결과
[root@rootman root]# ls -ald /tmp
drwxrwxrwt 14 root root 4096 Aug 30 02:05 /tmp
▶ dir1 이라는 디렉토리에 sticky bit를 설정할 때
[root@rootman root]# chmod 1707 dir1 --> 또는 chmod 1777 dir1
▶ sticky bit가 설정되어 있는 디렉토리를 other에 해당되는 사용자가 디렉토리 삭제 명령을 했을 때
[rootman@rootman /tmp]# rm -rf dir1
rm: cannot remove directory `dir1': Operation not permitted
[rootman@rootman /tmp]# ls -ald dir1
drwx---rwt 2 root root 4096 Aug 30 18:42 dir1
2. chattr, lsattr
루트도 지우지 못하는 파일을 설정할 수 있다는 말을 들어 본적이 있나요?
chattr을 이용하면 파일의 소유자라도 read-only로만 파일을 열수 있게 할수 있고 root도 chattr로 설정한 것을 해제하지
않으면 절대 chattr +i 로 설정한 파일을 지울 수 없다. 단, root만 사용 가능하다.
간혹 짖궂은 해커는 멍청한 관리자를 위해(?) 해킹한 시스템의 특정 파일에 chattr +i 를 설정해 놓고 chattr 명령을 모르는
관 리자가 파일을 수정할려고 끙끙 대는 모습을 즐기기도 한다. 어떤 관리자는 시스템의 문제라고 생각하고 포멧을 하는 관리자를 본적도 있다. 저의 경우는 rootman의 텔넷 서버의 guest 계정에 chattr을 적용한 적이 있다. .bash_profile, .bashrc 같은 파일에 chattr +i 를 설정해서 default 설정을 변경하지 못하도록 하기 위해 사용했었다. 또 chattr에는 파일의 수정을 추가 모드로만 열 수 있도록 설정하는 옵션도 있다.
lsattr 이라는 명령으로 파일의 chattr 모드를 확인할 수 있다.
chattr [옵션] [+=-모드] [파일명]
모드를 추가 할때는 '+모드' , 모드를 제거할 때는 '-모드'를 사용하면 되고 '=모드'를 사용할 경우 현재의 모드는 제거되고
오직 '=모드'로 설정된 모드만 적용된다.
[옵션]
-R : 대상이 디렉토리일 경우 그 하위 경로에 있는 파일과 디렉토리까지 모드를 적용한다.
[모드]
i : 파일을 read-olny로만 열 수 있게 설정한다. 링크도 허용하지 않고 루트만이 이 모드를 제거할 수 있다.
a : 파일의 수정을 할 때 내용을 추가할 수만 있다. 단, vi편집기로는 내용을 추가 할 수 없다.
▶ file1에 i 모드를 추가할 때
[root@rootman /tmp]# chatr +i file1
▶ file2에 a 모드를 추가할 때
[root@rootman /tmp]# chattr +a file2
▶ 파일의 chattr 모드 확인
[root@rootman /tmp]# lsattr file1 file2
---i-------- file1
----a------- file2
▶ i 모드가 설정된 파일을 제거할려고 할 때 나타나는 메시지
[root@rootman /tmp]# rm -f file1
rm: cannot unlink `file1': 명령이 허용되지 않음
▶ a 모드가 설정된 file2 에 내용을 추가할 때
[root@rootman /tmp]# cat >> file2
a 모드가 설정되어 있는 파일.
내용을 추가합니다.
^D
--> a 모드가 설정된 파일은 내용 추가만 할 수 있는데 vi편집기에서는 추가되지 않았다. 위의 예제에는 >>(출력 리다이렉션)을 사용해 내용을 추가 하였다.
▶ i, 또는 a 모드가 설정된 파일에 모드를 제거할 때는 '-모드' 를 이용한다.
[root@rootman /tmp]# chattr -i file1
이 글은 스프링노트에서 작성되었습니다.
linux, unix shell script 조건문에서 사용하는 기호 (0) | 2008.01.17 |
---|---|
표준입력, 표준출력, 표준에러 (0) | 2007.12.14 |
VI명령어 (0) | 2007.12.14 |
PING (0) | 2007.12.14 |
LINUX 자주쓰는 명령어 (0) | 2007.12.14 |
삽입 I: 줄의 제일 앞에서 입력 A: 줄의 제일 끝에서 입력 콤보command 4w: 4단어 skip후 이동 4b: 4단어 skip후 이동 4j,h,k,l: 커서이동시 지정한 수만큼 건너뛰므로 이동을 좀 더 빨리 할 수 있다. 줄의 결합(J) 2줄이 있고, 2째줄을 1째줄 끝에 붙이고 싶다면, 1째줄에서 J를 입력하면 된다. 커서이동 0: 줄의 처음 ^: 줄의 처음(글자가 시작되는 처음) $: 줄의 끝 w: 단어단위 이동 e: w와 같으나 단어의 끝으로 이동 b: w의 반대방향으로 이동 H, M, L: 커서를 화면 상,중,하로 이동 검색(/후 검색할 단어입력) n: 뒤로 검색 N: 앞으로 검색 매크로 ab aa aaaa: aa를 입력하면 aaaa로 자동변환 치환 s/pattern/replace: 현재줄의 첫번째 matching pattern치환 s/pattern/replace/g: 현재줄의 모든 matching pattern치환 %s/pattern/replace/g: 모든 줄의 치환 line,lines/pattern/replace: 해당 범위의 치환 저장 w>> file: 지정한 파일에 추가 윈도 split vi내에서 위아래로 윈도가 분활되면서 2개의 파일을 동시에 open/편집할 수 있다. ex-mode(:프롬프트상태)에서 'sp 파일이름' 윈도우가 전환은 Ctrl+ww 기타 1. d의 경우 command모드로 계속 남아 있으나 c는 삭제후 insert모드로 변환한다. cc, c$, cw등은 유용하게 사용될 수 있다. 2. .은 마지막 명령을 되풀이한다. visual모드 윈도의 텍스트 에디터와 같이 선택부분이 반전되면서 복사,삭제등을 할 수 있다. v로 visual모드로 집입하여 커서키를 사용해 원하는 부분을 선택한다. 복사는 y, 삭제/잘라내기는 d로 할 수 있다. vi설정(vim설정) 자신의 홈디렉토리에 .vimrc를 생성하고 다음과 같이 할 수 있다. set ai set ts=4 set nu 각각 auto-indent, tab stop, numbering 윈도에서 작업중 vi에 붙여넣기시 계단현상발생 방지 :set paste 위치기억(UltraEdit의 ALT-F2, F2와 동일한 기능) m{a-z}: 현재위치를 {a-z}로 북마크함 `{a-z}: 기억해둔 {a-z}로 이동. 보통 한개만 등록했다면 그냥 ``를 사용하면 된다. 레코딩 설정파일의 주석추가/삭제시 유용하게 사용할 수 있다.(이미 vi에 매크로기능이 있지만, 레코딩이 UltraEdit의 매크로기능과 유사하다.) q{a-z}: {a-z}로 레코딩 시작. {a-z}만 가능한게 아니고 실제 {0-9a-zA-Z"}를 적기 번거로워 이렇게 표시만 한 것이다. q: 레코딩 종료 @{a-z}: 레코딩 내용 적용(@@를 하면 바로 이전의 레코딩내용을 적용, N@@은 N으로 지정한 숫자만큼 적용) ctags사용 쉘에서 ctags -R하여 모든 소스에 대해 인덱스 생성 vi를 실행하고 검색할 단어를 :ta tag로 지정하든지, 단어가 있는 곳에 커서를 둔다. 해당함수(오브젝트)가 정의된 곳으로 가기: Ctrl + ] 되돌아가기: Ctrl + t 여러 파일 편집 vi a.c b.c c.c와 같이 여러 파일을 지정한다. args: 파일목록 표시 n: 다음파일 편집(vi시작지 지정하지 않는 파일은 'n 파일이름'이로 지정하면 된다.) rew: 이전 파일 편집(vim에선 prev를 사용해도 된다) *현재 편집중인 파일을 저장해야 다음 파일을 수정할 수 있음에 주의 (불편한 편집이 아닐 수 없다.) 여러줄을 주석으로 처리할때 10줄을 주석기호 #을 사용하여 주석처리하려면 다음과 같이 하면 된다. 우선, 첫째줄에 #를 붙이고, 두째줄로 넘어와 9.를 입력하면 된다. .(period)는 마지막에 수행한 명령어를 반복하는 명령이다. |
This article comes from dbakorea.pe.kr (Leave this line as is)
이 글은 스프링노트에서 작성되었습니다.
표준입력, 표준출력, 표준에러 (0) | 2007.12.14 |
---|---|
퍼미션, CHMODE (0) | 2007.12.14 |
PING (0) | 2007.12.14 |
LINUX 자주쓰는 명령어 (0) | 2007.12.14 |
linux tar (0) | 2007.12.14 |
Ping은 네트워크로 연결된 두 호스트 사이에서 연결할 수 있는지 점검하는 진단도구이다. 우리가 Ping명령을 실행하면 ICMP Echo Request 패킷을 원격 IP 주소에 송신하고 ICMP 응답을 기다린다. 요즘 우리가 사용하는 ping 프로그램의 첫 버전을 만든 이는 Mike Muss이다. 그 후로 다른 많은 이들이 성능을 향상시키고, 고쳐 작성하고, 다양한 곳에 함부로 사용해왔다.
ping이라는 이름이 무엇을 뜻하는지에 대해서는 많은 의견들이 있다. 어떤 사람들은 Packet INternet Groper 라는 구문의 머릿글자를 따온 것이라 말한다. 그럴 듯 해 보이기는 하지만 맞는 말은 아니다. 사실 Ping은 소나(sonar: 수중 음파 탐지기) 추적 시스템의 소리를 흉내 내어 붙여진 이름이다.
심지어 어떤 시스템 관리자가 네트워크상의 호스트에 되풀이해서 핑을 날리고 성공할 때마다 “핑” 하는 소리가 나도록 설정한 스크립트를 만들었다는 이야기까지 있다. 그 시스템 관리자는 네트워크를 괴롭혀 온 불안정한 커넥터를 찾을 때까지 규칙적으로 그의 네트워크에 설치된 BNC 커넥터들을 점검한다 -- 소리가 멈추었을 때, 그 나쁜 놈이 걸렸다는 것을 알아냈다는 것이다.
Ping은 일반적으로 어떤 머신이 데이터를 수신하고 IP 패킷을 보낼 수 있는지 점검하는 매우 유용한 도구이다. 여러분이 호스트에 핑을 보낼 수 있다면 ftp나 http 연결도 할 수 있을 것이다. 하지만, 보안을 위해 패킷 필터링을(packet filtering) 적용하는 호스트들이 많아지면서 인터넷에서 ping은 신뢰성을 잃어간다.
많은 방화벽들이 아래에 소개한 두 가지 이유로 ICMP 패킷을 걸러내도록 규정한다.
1) 여러분의 내부 네트워크가 어떻게 생겼는지 다른 사람들이 알 필요는 없다.
2) 그리고, 모든 프로토콜이 시스템을 공격하는데 이용될 수 있다. ICMP라 해서 예외는
아니다.
여러분의 방화벽에 ICMP를 허용하도록 결정했다면 고생길을 자청한 것이다. 이 경우 ICMP가 항상 좋은 의도로 사용된다고 가정해야 하지만, 어떻게 ICMP 기반 공격들이 없을 수 있겠는가. (예를 들어 “죽음의 핑”은 버퍼 크기를 초과하는 핑 패킷으로 공격대상의 IP 스택을 넘치게 한다 -- 때에 따라 매우 극적인 결과를 맞기도 한다). 여러분의 네트워크에서 ICMP를 허용한다면 그 틈을 타고 누군가 공격할 것은 뻔하다.
다른 목적으로 쓰기 위해 ping 명령에 특별한 기능을 추가한 도구들이 있다. 가장 일반적인 것 하나는 fping 명령이다. 이 명령은 일정한 주소 범위에 ping을 보내기 위한 명령인데 일반적으로 네트워크 스캐너로 쓰이고, 또 saint와 mon처럼 네트워크 모니터로도 쓰인다. 또 다른 변종은 외부 프로그램을 소환하지 않고 스크립트 안에서 쉽게 사용할 수 있도록 Ping 기능을 perl로 구현한 Net::Ping 모듈이다. 아래 예문에서처럼 스크립트를 사용할 수 있다:
Example 1. Using Net::Perl
#!/usr/bin/perl -w use strict; my $host = $ARGV[0]; my $p = Net::Ping->new(“icmp”); if ($p->ping($host)) { |
ping at Work
Ping은 인수를 덧붙이지 않고 사용하는 것이 일반적인데 프로그램 실행을 마칠 때에는 Ctrl-c 키를 누른다. 아마 아래 예문처럼 보일 것이다:
[pate@cherry pate]$ ping mango |
이 화면은 세 개의 섹션으로 나눌 수 있다. 첫 번째 섹션은, “PING”이라는 글자로 시작하는 한 줄인데 여러분의 명령에 대한 결과를 미리 보여준다. “64 bytes”라는 문자열로 시작하는 두 번 째 섹션은 응답시간을 계산해서 보여준다. 세 번 째, “--- mango ping statistics ---”이라는 줄로 시작하는 마지막 섹션에서는 결과를 요약해서 보여준다. 위 예문에서 결과가 꽤 좋은데 잃어버린 패킷도 없고 응답시간도 빠른 편이어서 결과가 좋은 모습이다.
여러분의 네트워크를 점검하는데 싱글 패킷에 의존할 필요는 없다. 싱글 패킷보다는 다섯이나 열로 짝지어진 패킷이 훨씬 좋다. 네트워크가 혼잡한 곳에서 특히 싱글 패킷보다 더 유용한 정보를 얻을 수 있다.
ping 명령에는 몇 가지 유용한 옵션들이 있다. 이 옵션들을 아래 표에 정리했다:
< 표 1. Ping 명령의 옵션들 >
스위치 |
기능 |
-c count |
지정한 숫자만큼 패킷을 주고 받으면 프로그램을 멈춘다. |
-d |
소켓에 사용되는 SO_DEBUG 기능을 켠다. |
-f |
할 수 있는 한 가장 빠른 속도로 패킷을 보낸다. (flood) |
-i wait |
패킷 사이에서 대기시간에 간격을 둔다. |
-I [device] |
출력 인터페이스를 지정한다. |
-l preload |
미리 로드한 패킷을 가능한 빨리 전송한 다음 일반 모드로 돌아간다. |
-n |
호스트 이름을 찾지 않고 IP 주소만 보인다. (numeric) |
-p pattern |
pattern은 16진수이며 pad data를 지정한다. |
-q |
요약한 줄만 출력한다. (quiet) |
-r |
패킷을 보낼 때에 라우팅 테이블을 사용하지 않고, 로컬 인터페이스에만 보낸다. |
-R |
라우트를 기록하는 옵션을 설정한다. |
-s packetsize |
보낼 패킷의 데이터 바이트 크기를 설정한다. |
-T tsonly |
timestamp 옵션과 함께 ping을 보낸다. |
-T tsandaddr |
timestapm와 주소를 모은다. |
-T tsprespec[host1 [host2 [host3 [host4]]]] |
이런 옵션들은 몇 개를 조합해서 더 유용하게 쓸 수 있다. 이전 섹션에서 사용한 ping 명령이 실행하고 결과를 돌려주는데 몇 초 시간지연이 있다. -f 스위치를 사용하면 명령을 기다리느라 버리는 시간을 줄일 수 있다. -c 10 옵션과 -q 옵션을 조합하면 좀더 빠르고 더 읽기 쉽게 결과를 출력한다.
[root@cherry /root]# ping -c 10 -fq mango --- mango ping statistics --- |
주의: -f와 -l 스위치는 root만 사용할 수 있다. 이 스위치들을 잘못 사용하면 네트워크에
심각한 혼란이 생길 수 있기 때문이다.
더 큰 패킷들을 사용할 경우 테스트하는 데 좀더 유리하다면, ping -c10 -s 1024 -qf 명령으로 더 큰 패킷들을 보낸다. 이 명령은 네트워크에서 발생한 문제가 패킷들이 잘게 쪼개지는 현상 때문에 발생한다고 생각할 때 특히 유용하다.
여러분의 패킷이 라우터를 통과하는지 알아보고 싶다면, ping -c10 -R 명령을 사용한다. 이 명령은 아래와 같은 메시지를 보여줄 것이다:
PING tbr.nailed.org (206.66.240.72) from 192.168.1.10 : 56(124) bytes of data. 64 bytes from bigfun.whirlycott.com (206.66.240.72): icmp_seq=1 ttl=239 time=1940.8 ms (same route) --- tbr.nailed.org ping statistics --- |
주의: -R 스위치로 설정하는 라우트 기록 옵션은 모든 라우터와 호스트에서 환대받는 것은
아니다. 패킷들이 네트워크를 다니는 경로를 확인하는 데 traceroute가 훨씬 좋은
도구일 것이다.
ping 명령은 여러분 네트워크의 문제해결에 매우 유용한 도구이고, 대충 아무렇게나 사용해서는 안된다.
이 기사는 Pat Eyler와 New Riders Press가 저작권을 소유한다. 원문을 수정하거나 보태어서는 안되며, 열린 출판물 라이선스(Open Publication License)에 따라 배포된다. 이 글은 “A Practical Guide to TCP/IP”라는 이름으로 New Riders 출판에서 겨울에 출간할 리눅스 네트워킹 책에 포함될 섹션의 초고이다:
이 글은 스프링노트에서 작성되었습니다.
퍼미션, CHMODE (0) | 2007.12.14 |
---|---|
VI명령어 (0) | 2007.12.14 |
LINUX 자주쓰는 명령어 (0) | 2007.12.14 |
linux tar (0) | 2007.12.14 |
리눅스 libc 패키지 (The Linux libc Package) (0) | 2007.12.13 |
![]() |
This article comes from dbakorea.pe.kr (Leave this line as is) |
이 글은 스프링노트에서 작성되었습니다.
VI명령어 (0) | 2007.12.14 |
---|---|
PING (0) | 2007.12.14 |
linux tar (0) | 2007.12.14 |
리눅스 libc 패키지 (The Linux libc Package) (0) | 2007.12.13 |
리눅스 디렉토리 (0) | 2007.08.17 |
tar
여러개의 파일을 하나로 묶는 명령어이다.
압축명령어라고 잘못알고 계시는 분들이 있는데, tar는 분명 여러개의 파일을 하나로 묶어주는 일종의 유틸리티라고 할 수 있다.
하지만, 거의 대부분 tar는 gzip이나 compress등과 같은 압축유틸리티와 함께 사용을 하는 것이 일반적이다.
또한 tar옵션에는 z라는 옵션이 있기 때문에 tar명령어만으로 압축하고 풀 수 있기때문에 tar만으로도 효율적인 파일관리를 할 수있다.
사용형식
파일묶기 : tar cvf 파일명.tar 파일(디렉토리)
묶은컥瞿릴? : tar cvf 파일명.tar
파일풀기 : tar xvf 파일명.tar
묶고압축하기 : tar cvfz 파일명.tar.gz 파일(디렉토리)
묶고압축된 파일 보기 : tar tvfz 파일명.tar.gz
묶고압축된파일 풀기 : tar xvfz 파일명.tar.gz
이 글은 스프링노트에서 작성되었습니다.
VI명령어 (0) | 2007.12.14 |
---|---|
PING (0) | 2007.12.14 |
LINUX 자주쓰는 명령어 (0) | 2007.12.14 |
리눅스 libc 패키지 (The Linux libc Package) (0) | 2007.12.13 |
리눅스 디렉토리 (0) | 2007.08.17 |