'Linux/명령어&설정'에 해당되는 글 42건

  1. 유분투(데비안)에 SnortSnarf 설치 하기 (5) 2007/11/06
  2. 유분투 7.10에 perl 설치 하기 (11) 2007/11/06
  3. Ubuntu 파일 압축 풀기를 하나로... (1) 2007/07/10
  4. AWK 기초 (8) 2006/12/19
  5. Makefile 에러 정리 (5) 2006/09/19
  6. tcpdump 명령어 (2) 2006/06/30
  7. [데비안] 네트워크 설정 파일 및 설정 (4) 2006/05/18
  8. [데비안] 데비안 패키지 관리 apt 명령어 (1) 2006/05/16
  9. Route 명령어 모음 (7) 2006/04/23
  10. [데비안] deb를 rpm으로 변환후 설치하기 (4) 2006/03/27
  11. ROUTE6D_Eng (3) 2006/03/17
  12. tar & gz & bz2 (3) 2006/01/04
  13. 폴더 용량 보는 명령어 (4) 2006/01/02
  14. /etc/issue.net & /etc/motd (3) 2005/12/21
  15. 네트워크 설정 관련 파일들 (6) 2005/12/20
  16. ISO 만들어서 시디로 굽기 mkisofs (1) 2005/12/20
  17. system-config- XXX 모음 (6) 2005/12/19
  18. finger 리눅스 최신 커널 정보 알아보는 명령어 (8) 2005/12/19
  19. 자주쓰는 아파치 설정사항 정리 [환건] (1) 2005/12/16
  20. watch을 활용한 Web Server 모니터링 [손상모 ] (2) 2005/12/16
  21. 호스트간의 데이터 동기화를 위한 rsync 설정 [문태준] 2005/09/27
  22. ufsdump, dd, tar 사용한 백업 [by janghwan2] (3) 2005/09/15
  23. tar를 이용한 화일옮기기 [by janghwan2] (5) 2005/09/15
  24. grep 명령어 사용법 (4) 2005/09/15
  25. php.ini 파일 번역 (2) 2005/09/15
  26. 리눅스 설정 파일 (/etc) 2005/09/11
  27. /etc/fstab (mount관련) (3) 2005/09/08
  28. watch 명령어를 이용한 job 체크 (3) 2005/09/07
  29. rm 으로 삭제한 파일 복구하기 (5) 2005/07/30
  30. crontab & at 사용하기 (3) 2005/07/30

1. snortsnarf 최신버젼 다운

 http://www.snort.org/dl/contrib/data_analysis/snortsnarf/


2. 적당한 곳에 다운 받은 뒤 압축을 해제한다.

tar xvzf (다운받은디렉토리)/SnortSnarf-050314.1.tar.gz


3. (root 권한이라고 가정함) mkdir /usr/local/snortsnarf


4. 압축해제 한 SnortSnarf 디렉토리 밑에 있는 snortsnarf.pl 을 위에 생성한 디렉토리로 복사한다.

cp snortsnarf.pl /usr/local/snortsnarf/


5. 필요한 패키지들을 설치한다.

    apt-get install perl-modules
   apt-get install libtimedate-perl
   apt-get install libperl-dev
   apt-get install libperl5.6
   apt-get install libtimedate-perl
   apt-get install libtime-modules-perl
   apt-get install libwww-perl


6. snarfsnort 실행시 필요한 include 파일을 /usr/lib/perl[버젼] 밑에 복사한다.

cp -a SnortSnarf-050314.1/include/* /usr/lib/perl5

cp -a SnortSnarf-050314.1/include/SnortSnarf/* /usr/lib/perl5


7. snortsnarf의 웹 페이지가 생성 될 디렉토리를 생성한다.

mkdir /var/www/snortsnarf


8. /usr/local/snortsnarf/snortsnarf.pl [alert 파일의 경로] -d /var/www/snortsnarf


9. /var/www/snortsnarf 밑에 생성된 index.html을 웹 브라우저를 통해 실행한다.


작성 : 20071106  by 이제민
참고 : 어느 일본사이트 -_-;

2007/11/06 19:38 2007/11/06 19:38
1] perl 다운 받기
-perl.org

2] Unterminated quoted string 에러 발생시 해결 하기
- /bin/sh 심볼릭 링크를  /bin/bash 로 변경  [참고]

3] 설치 하기 [참고]

설정하기 : sh Configure -des -Dcc=gcc
컴파일 하기 : make
설치 하기 : make install
확인 하기 : perl -v


작성 : 20071106 by 임헌정
http://www.4ellene.net

2007/11/06 19:24 2007/11/06 19:24
Tag // ,
리눅스에서 압축프로그램을 사용하는것은 그 다양성
2007/07/10 11:12 2007/07/10 11:12

AWK 기초

from Linux/명령어&설정 2006/12/19 19:47
AWK
  1. awk는 직접 사용자로부터 입력을 받거나 아니면 지정한 파일을 가공하여 표준 출력한다
    표준 출력을 리다이렉션할 수 있다 
  2. 사용법
    • awk   [옵션]   '스크립트'   [-v 변수=값]   [파일(들)]
    • awk   [옵션]   -f  스크립트 파일   [-v 변수=값]   [파일(들)]
    • cf) 편집 스크립트 파일의 사용법
      • ed  : ed -s(script) sourcefile < scriptfile
      • sed :  sed -f(file) scriptfile sourcefile > outputfile
      • awk : awk -f(file) scriptfile sourcefile > outputfile
  3. 옵션
    • -Fc  :  field separator 지정
      • c는 필드 사이를 구분하는 구분자이다
      • 직접 지정하지 않으면 공백을 기준으로 한다
      • 시스템 변수 FS를 지정하는 것과 같은 효과를 지닌다
    • -v  변수 = 값
      • 스크립트를 실행하기 전에 미리 변수를 지정하여 준다
    • -f  스크립트 파일
      • 스크립트를 파일에서 가져온다  
      • -f 옵션을 여러번 사용하여 여러개의 스크립트 파일을 동시에 불러와 지정한 파일에 적용할 수 있다 
  4. 스크립트
    • 패턴 { 동작 }
      커맨드 라인에서는 패턴, 동작 전체를 단일 따옴표로 묶는다
      • 패턴만 있는 경우 : 패턴과 일치하는 레코드(라인)를 화면에 출력한다 
      • 동작만 있는 경우 : 모든 레코드(라인)가 동작의 대상이 된다
    • 패턴
      1. /정규표현식/
        sed가 지원하지 않는 +, ?, |, ( ) 등의 메타문자도 지원한다   또한
        ^, $를 각 필드의 처음과 끝을 의미하도록 사용할 수도 있다
      2. 비교연산
        숫자 기준, 알파벳 기준 모두 사용 가능하다 
      3. 패턴 매칭 연산
        ~  :  일치하는 부분을 나타낸다
        !~ :  일치하지 않는 부분을 나타낸다
      4. BEGIN
        첫 번째 레코드가 읽혀지기 전에 어떤 동작을 정의하여 사용하고 싶을 때 사용한다 
      5. END
        마지막 레코드가 모두 읽혀진 후 어떤 동작을 정의하여 실행하고 싶을 때 사용한다 
    • 동작
      • 동작은 모두 { }로 둘러싸야 한다
      • 예제
        • good이라는 문자열을 포함하는 모든 레코드를 출력할 때
          /good/
        • 각 레코드의 첫 번째 필드를 출력할 때
          { print $1 } 
        • good이라는 문자열을 포함하는 레코드의 첫 번째 필드를 출력할 때
          /good/ { print $1 } 
        • 두 개 이상의 필드를 가지는 레코드를 전부 출력할 때(비교연산)
          NF > 2
        • 한 라인(n)을 필드로, 빈 라인("")을 레코드로 구분할 때
          BEGIN { FS = "n" ;  RS = ""} 
        • 첫 번째 필드가 good와 일치하는 레코드에 대해 세 번째 필드를 먼저 출력하고 두 번째 필드를 나중에 출력하고 싶을 때
          $1 ~ /good/ { print  $3 ,  $2 }
        • good이라는 문자열이 몇 개나 들어가 있는지 계산하여 마지막 부분에서 출력하고 싶을 때
          /good/ { ++x }
          END { print x } 
        • 두 번째 필드를 모두 합하고 마지막 부분에서 두 번째 필드의 총합계를 출력하고 싶을 때
          { total += $2 }
          END { print "Total of $2: " ,  total } 
        • 레코드의 길이가 20자 이하인 것을 출력하고 싶을 때
          length($0) < 20 
        • 네 개의 필드를 가지며 good이라는 단어로 시작하는 모든 레코드를 출력하고 싶을 때
          NF == 4  &&  /^good/
        • 빈줄을 제외한 모든 줄을 화면에 출력한다
          NF > 0
  5. awk 시스템 변수
      FILENAME
      현재 파일명
      $0
      입력 레코드
      FS
      입력 필드 구분
      디폴트 :  공백
      $n
      입력 레코드의 N번째 필드
      NF
      현재 레코드 필드 갯수
      ARGC
      커맨드 라인의 인자 갯수
      NR
      현재 레코드 번호
      ARGV
      커맨드 라인 인자를 포함하는 배열
      OFMT
      숫자에 대한 출력 포맷
      디폴트 :  %.6g
      ENVIRON
      환경 변수들을 모아둔 관계형 배열
      OFS
      출력 필드 구분
      디폴트 :  빈줄
      FNR
      NR과 동일
      단지 현재 파일에 적용된다는 점이 다름
      ORS
      출력 레코드 구분
      디폴트 :  newline
      RSTART
      지정한 매칭 연산을 만족하는 문자열의 맨 앞부분
      RS
      입력 레코드 구분
      디폴트 :  newline
      RLENGTH
      지정한 매칭 연산을 만족하는 문자열의 길이
  6. awk 연산자
      산술 : =, +=, -=, *=, /=, %=
      조건 : ? :
      논리 : ||, &&, !
      패턴 : ~, !~
      비교 : <, <=, >, >=, !=,==
      증감 : ++, --
      필드참조 : $
  7. 제어문(C의 제어문과 같다)
    • break
    • continue
    • do {실행} while (조건)
    • exit
    • for (관계형 배열의 요소) {실행}
      펄의 foreach와 같다
    • if (조건) {실행} else {실행}
    • return
    • while
  8. awk 명령어
    • 문자열 연산
      • gsub(reg,s)
        입력 문자열의 전반에 걸쳐 정규표현식 r을 문자열 s로 대치한다
      • gsub(reg,s1,s2)
        문자열 s2에서 정규표현식 r을 s1으로 대치한다 
      • index(s1,s2)
        s1에서 s2의 위치를 넘겨준다  만약 없다면 0을 넘겨준다 
      • length(arg)
        인자의 길이를 넘겨준다 
      • match(s,r)
        문자열 s에서 정규표현식 r과 매칭되는 부분의 위치를 넘겨준다 
      • split(string,array[,seperator])
        구분자를 기준으로(지정하지 않으면 공백 기준)해서 지정한 문자열을 배열로 만든다  배열[1],  배열[2], ....... 
      • sub(r,s),  sub(r,s1,s2)
        gsub과 동일하다
        단지 정규표현식과 일치하는 문자열이 여러개라도 처음 문자열만 대치된다
      • substr(s,m)
        문자열 s에서 m번째 위치에서 끝까지의 문자를 리턴한다 
      • substr(s,m,n)
        문자열 s에서 m번째 위치에서 n번째까지의 문자를 리턴한다 
      • tolower(str)
      • toupper(str)
    • 수치 연산
      • atan2(x,y)
        y/x의 arctangent값을 라디안 단위로 넘겨준다 
      • cos(x)
      • exp(arg)
      • int(arg)
      • log(arg)
      • rand()
        0과 1사이의 난수를 발생한다 
      • sin(x)
      • sqrt(arg)
      • srand(expr)
        인자를 가지고 난수를 발생한다
        인자가 주어지지 않으면 시간을 가지고 난수를 발생한다 
    • 입출력/프로세스
      • close(filename)
        지정한 파일을 닫는다 
      • close(cmd)
        지정한 명령어 파이프를 닫는다 
      • delete array[element]
        지정한 배열 요소를 지운다 
      • getline()
        다음 레코드를 읽어 들인다 
      • getline[variable] [< "filename"]
        파일에서 읽어들인다 
      • next
        다음 레코드(라인)을 입력받는다
        getline()과 유사하지만 /패턴/동작을 새롭게 시작한다
        getline()은 다음 라인을 읽기만 한다 
      • print [args] [> "filename"]
        인자를 출력한다 
      • printf "format" [,expressions] [> "filename"]
        형식에 맞춰 출력한다 
      • sprintf (format [,expressions])
        printf와 마찬가지로 사용하는데 값을 리턴하기만 하고 출력은 하지 않는다 
      • system(command)
        시스템 내부 명령어를 실행한다 
  9. 간단한 예
    • awk  ' BEGIN { for (i = 1;i<=7,i++)  print int(101*rand()) }'
      화면에 1이상 100이하의 난수 일곱 개를 출력한다
    • ls -l  file1  file2  file3  | awk  ' { x += $5 } ;  END { print "Total bytes :  " x } '
      파일들의 크기를 모두 합하여 총 바이트 수를 표시한다
    • awk  ' END { print NR } ' filename
      지정한 파일의 라인이 몇 개인지를 표시한다
    • awk  ' NR % 2 == 0 '
      지정한 파일의 짝수번째의 라인만을 출력해 준다 
2006/12/19 19:47 2006/12/19 19:47
Tag // ,

Makefile 에러 정리

다음은 make 에 의해서 생성될 수 있는 가장 일반적인 에러들의 리스트이며 그것들이 의미하는 바와 그것들을 고치는 방법에 대한 정보이다.

때때로 make 에러들은, 특별히 명령 스크립트 라인에서 - 접두사가 있을 때나 명령 라인 옵션으로써 -k 가 있을 때, 치명적인 것이 아니다. 치명적인 에러들은 *** 문자열이 그 앞에 붙는다.

에러 메시지들은 모두 프로그램(보통 `make')의 이름이 앞에 붙거나, 에러가 makefile 안에 있는 것이라면 문제를 담고 있는 파일과 라인넘버가 앞에 붙는다.

아래 테이블에서 이런 공통 접두사들이 빠져있다.

`[foo] Error NN'

`[foo] signal description'
이런 에러들은 실제로 make 에러들이 전혀 아니다. 그들은 make 가 명령 스크립트의 일부로써 호출한 프로그램이, make 가 실패로 해석하는 0이 아닌 에러 코드 (`Error NN') 를 리턴하거나 다른 이상한 스타일로(어떤 종류의 시그널과 함께) 종료하였다는 것을 의미한다. *** 가 메시지에 붙어 있지 않으면 서브프로세스가 실패했지만 makefile 의 그 규칙이 특수 문자 - 를 앞에 달고 있어서 make 가 그 에러를 무시한 것이다.
`missing separator. Stop.'
이것은 make 의 일반적인 "Huh?" 에러 메시지이다. 이것은 make 가 makefile 의 이 라이을 파싱하면서 완벽하게 성공하지 못했다는 것을 의미한다. 이것은 기본적으로 "문법 에러(syntax error)" 를 의미한다. 이런 메시지가 나오는 가장 일반적인 이유들 중의 하나는 여러분이 (또는 많은 MS-Windows 에디터들의 경우와 비슷하게, 여러분의 에디터가) TAB 문자 대신에 공백들로 명령 스크립트들을 들여쓰기하려고 하는 것이다. 명령 스크립트에 있는 모든 라인은 반드시 TAB 문자로 시작하는 것을 기억하자. 8개의 공백은 의미가 없다.
`commands commence before first target. Stop.'

`missing rule before commands. Stop.'
이것은 makefile 에서 처음으로 나오는 것이 명령 스크립트의 일부분인 것처럼 보인다는 것을 의미한다: 이것은 TAB 문자로 시작하고 합법적인 make 명령(변수 할당과 같은)처럼 보이지 않는다. 명령 스크립트들은 항상 어떤 타겟과 연결되어 있어야 한다. 두번째 형태는 그 라인이 첫번째 공백문자가 아닌 문자로써 세미콜론을 가진다면 생성된다; make 는 이것을, 어떤 규칙의 "target: dependency" 섹션을 그냥 떠났다는 것으로 해석한다.
`No rule to make target `xxx'.'

`No rule to make target `xxx', needed by `yyy'.'
이것은 make 가 타겟을 빌드할 필요가 있다고 판단했지만 makefile 안에서 그렇게 하는 것에 대한, 명시적 또는 묵시적(디폴트 규칙 데이터베이스를 포함해서) 규칙들(instructions)도 찾을 수 없다는 것을 의미한다. 그 파일이 빌드되기를 원한다면 그 타겟이 빌드되는 방법을 설명하는 규칙을 추가할 필요가 있다. 이 문제의 다른 가능성은 makefile 을 오자(그 파일 이름이 잘못되었다)했거나 소스 트리가 잘못된 경우이다(그 파일이 빌드될 것으로 생각된 것이 아니고 단지 종속물이다).
`No targets specified and no makefile found. Stop.'

`No targets. Stop.'
전자는 명령행에서 빌드될 타겟을 하나도 제공하지 않았고 make 가 읽어들일 makefile 들을 찾을수 없다는 것을 의미한다. 후자는 어떤 makefile 들이 찾아졌으나 디폴트 타겟이 없고 어떤 것도 명령행에서 주어지지 않았다는 것을 의미한다. 이들 경우에 GNU make 는 아무것도 하지 않는다.
`Makefile `xxx' was not found.'

`Included makefile `xxx' was not found.'
명령행에서 주어진 makefile (첫번째 형태) 또는 포함된 makefile (두번째 형태) 가 없다.
`warning: overriding commands for target `xxx''

`warning: ignoring old commands for target `xxx''
GNU make 는 타겟 하나에 대해서 단 한번만 명령들이 지정되는 것을 허락한다(더블-콜론 규칙들을 제외하고). 이미 명령들을 가지도록 정의된 타겟에 대해서 명령들을 다시 주면 이 경고가 발행되고 두번째 명령들은 첫번째 것을 오버라이드할 것이다.
 
`Circular xxx <- yyy dependency dropped.'
make 가 종속성 그래프에서 루프를 발견했다는 것을 의미한다: 타겟 xxx 의 종속물 yyy, 그리고 이것의 종속물들 등등 을 추적한 후 그들중 하나가 xxx 에 다시 종속한다는 의미이다.
 
`Recursive variable `xxx' references itself (eventually). Stop.'
이것은 확장될 때 자기자신(xxx)을 참조할 일반 (재귀적인) make 변수 xxx 를 정의했다는 것을 의미한다. 이것은 허용되지 않는다; 단순-확장 변수 (:=) 를 사용하든지 아니면 추가 연산자 (+=) 를 사용하자.
 
`Unterminated variable reference. Stop.'
이것은, 변수나 함수 참조에서 적절하게 닫는 괄호나 중괄호를 제공하는 것을 잊었다는 것을 의미한다.
 
`insufficient arguments to function `xxx'. Stop.'
이것은 이 함수에 대해서 필요한 개수의 매개변수들을 제공하지 않았다는 것을 의미한다. 매개변수들의 설명에 대해서는 그 함수의 문서를 보자.
`missing target pattern. Stop.'

`multiple target patterns. Stop.'

`target pattern contains no `%'. Stop.'
이들은 잘못된 정적 패턴 규칙들에 대해서 생성된다. 첫번째는 규칙의 타겟 섹션에 어떤 패턴도 없다는 것을 의미하고, 두번째는 타겟 섹션에 다수의 패턴들이 있다는 것을 의미하며, 세번째는 타겟이 패턴 문자 (%) 를 담고 있지 않다는 것을 의미한다.

Makefile:17: *** missing separator. Stop.

Makefile을 작성할 때 명령어(command)부분은 모두 TAB 문자로 시작해야 한다고 첫 번째 장부터 강조하였다. 위의 에러는 TAB 문자를 쓰지 않았기 때문에 make가 명령어인지 아닌지를 구별 못하는 경우이다.

대처: 17번째 줄(근처)에서 명령어가 TAB 문자로 시작하게 바꾼다.

make: *** No rule to make target `io.h', needed by `read.o'. Stop.

위의 에러는 의존 관계에서 문제가 발생했기 때문이다. 즉 read.c가 io.h에 의존한다고 정의되어 있는데, io.h를 찾을 수 없다는 에러이다.

대처: 의존 관계에서 정의된 io.h가 실제로 존재하는지 조사해 본다. 없다면 그 이유를 한번 생각해 본다. make dep를 다시 실행시켜서 의존 관계를 다시 생성시켜 주는 것도 하나의 방법이다.

Makefile:10: *** commands commence before first target. Stop.

위 의 에러는 '첫 번째 타겟이 나오기 전에 명령어가 시작되었다'는 애매한 에러 메시지이다. 필자가 경험한 이 에러의 원인은 주로 긴 문장을 여러 라인에 표시를 하기 위해서 '\'를 사용할 때, 이를 잘못 사용했기 때문인 것 같다. 즉 '\'부분은 라인의 가장 끝문자가 되어야 하는데 실수로 '\'뒤에 스페이스를 몇 개 집어넣으면 여지없이 위의 에러가 발생한다.

대처: 10번째 줄(근처)에서 '\'문자가 있거든 이 문자가 라인의 가장 끝문자가 되도록 한다. 즉 '\'문자 다음에 나오는 글자(스페이스가 대부분) 는 모조리 없애 버린다.

make를 수행시키면 의도했던 실행 파일은 안생기고 이상한 행동만 한다. 가령 make clean 했을 때와 같은 행동을 보인다.

make는 천재가 아니라는 점을 생각해야 한다. make는 Makefile의 내용을 읽다가 첫 번째 타겟으로 보이는 것을 자신이 생성시켜야 할 결과 파일이라고 생각한다. 따라서 clean 부분을 Makefile의 첫번째 타겟으로 정해 버리면 위와 같은 결과가 나타나게 된다.

대처: 예제 7.1에서 all 이라는 필요 없는 타겟을 하나 만들어 두었다. 이것은 make가 all 을 첫 번째 타겟으로 인식시키기 위함이었다. 따라서 자신이 생성시키고 싶은 결과 파일을 첫 번째 타겟이 되게 하던지, 아니면 예제 7.1처럼 all과 같은 더미 타겟(dummy target)을 하나 만들어 둔다. 그리고 make clean, make dep 같은 부분은 Makefile의 끝부분에 만들어 두는 것이 안전하다.

이미 컴파일했던 파일을 고치지 않았는데도 다시 컴파일한다.

이 행동은 make가 의존 관계를 모르기 때문이다. 즉 사용자가 의존 관계를 설정해 주지 않았다는 말이 된다. 따라서 make는 무조건 모든 파일을 컴파일해서 실행 파일을 만드는 일이 자신이 할 일이라고 생각하게 된다.

대처: 목적 파일, 소스 파일, 헤더 파일들의 의존 관계를 설정해 주어야 한다. gccmakedep *.c 라고 하면 Makefile의 뒷부분에 자동적으로 의존 관계를 만들어 준다. 그외의 다른 파일들에 대해서는 사용자가 적절하게 의존 관계를 설정해 주어야 한다.

main.o : main.c io.h
read.o : read.c io.h
write.o : write.c io.h

위의 예제는 첫 번째 장에서도 제시했던 건데... TARGET : DEPENDENCY의 형식으로 의존 관계를 작성한 것이다. (make에게 의존 관계를 알려주는 방법이죠)


  1. 그 외의 경우에 대해서는 각자가 한번 원인과 결과를 알아보기 바란다. 그리고 팁의 형식으로 글을 올린다면 다른 사람에게도 많은 도움이 될 것이다. 일단 make에서 에러를 내기 시작하면 초보자는 원인조차 모르는 경우가 많기 때문이다.

강좌를 마치면서

이번 make 강좌는 make 유틸리티에 대한 전반적인 이해와 간단한 Makefile 작성을 목적으로 하였습니다. make에 관한 모든 것을 다 소개하지는 않았습니다. (개인적인 능력의 한계 !!) make를 아주 잘 쓰기 위해서는 make 자체에 대한 지식보다는 유닉스(리눅스)의 샐 프로그램과 고난이도(?)의 명령어까지 알고 있어야 하기 때문이죠. 해커가 되려면 이런 지식을 많이 알고 있어야 합니다. 한가지 아쉬운 게 imake에 대해서 설명을 못한 것입니다. imake에 대해서는 make 중급코스란 이름으로 언젠가 강좌를 해보도록 하죠. imake는 Makefile을 생성시켜 준다고 생각하세요)

지 금 make 다음의 강좌로 뭘해야 할지 고민 중입니다. 우선 X 강좌를 하시는 분(아직은 조용하네요)의 강좌의 이해를 높이기 위해서 X의 개념을 2회 정도의 강좌로 할 생각입니다. X 가 왜 X 이고 어떤 특징을 가지고 있는지 한번 살펴보기로 하죠.


원본 : http://wiki.kldp.org/KoreanDoc/html/GNU-Make/GNU-Make-8.html

2006/09/19 18:15 2006/09/19 18:15

# tcpdump -q \( dst net 1.2.3.0/24 or 1.2.4.0/25 \) and dst port 80
목적지 주소가 1.2.3.x/24 와 1.2.4.x/25 이고 80번포트인 패킷 캡쳐

# tcpdump host A
A 호스트로/부터의 모든 도착/출발 패킷 출력

# tcpdump host A and \( B or C \)
A 호스트와 B 또는 C 사이의 모든 트래픽 출력

# tcpdump ip host A and not B
A호스트와 B를 제외한 호스트 간의 모든 IP 패킷 출력

# tcpdump net ucb-ether
로컬호스트와 Berkeley의 호스트들 간의 모든 트래픽 출력

# tcpdump 'gateway A and (port ftp or ftp-data)'
게이트웨이 A를 통한 모든 ftp 트래픽 출력

# tcpdump ip and not net
로컬네트워크로/부터가 아닌 모든 트래픽 출력

# tcpdump 'tcp[13] & 3 != 0 and not src and dst net '
로컬네트워크가 아닌 TCP 시작과 마지막 패킷 출력

# tcpdump 'gateway A and ip[2:2] > 576'
게이트웨이 A를 통해 보내지는 576 Bytes보다 긴 IP 패킷 출력

# tcpdump 'ether[0] & 1 = 0 and ip[16] >= 224'
이더넷이 아닌 IP 브로드 또는 멀티 캐스트 패킷 출력

# tcpdump 'icmp[0] != 8 and icmp[0] != 0'
echo 요청/응답이 아닌 모든 ICMP 패킷 출력 (ping 아닌 패킷)

# tcpdump src net 1.2.3 or 1.2.4 and not dst net 1.2.3 or 1.2.4
1.2.3 과 1.2.4 IP주소 (내부) 패킷을 제외한 모든 패킷 출력

# tcpdump -i br1
br1 인터페이스의 모든 패킷 출력

#tcpdump -i eth1 -vv ip6
eth1으로 오가는 IPv6패킷을 자세히(vv) 검사

출처 : 이지빌 - 무료웹호스팅- www.ezvil.net
2006/06/30 01:00 2006/06/30 01:00

정적 IP (Static IP)용 설정


/etc/network/interfaces 파일을 다음과 같이 편집해준다:

auto lo 
auto eth0
iface lo inet loopback
iface eth0 inet static
address <실질적인 랜카드 IP주소>
netmask <넷마스크 주소>
network <네트워크 주소>
broadcast <방송망 주소>
gateway <게이트웨이 주소>

 
#auto eth0
#iface eth0 inet6 static
#        address 2001:0220:1404::3
#       netmask 64
#iface eth0 inet static
#       address 192.168.0.3
#       netmask 255.255.255.0
#       network 192.168.0.0
#       broadcast 192.168.0.255
#       gateway 10.51.12.177
#
#auto eth1
#iface eth1 inet6 static
#        address 2001:0220:1404:3::1
#        netmask 64
gateway

--> 적용하기 /etc/init.d/networking restart

ifconfig eth0 inet6 add  주소/프리픽스
ifconfig eth0 inet6 del  주소/프리픽스


활성화(켜기)

 # ifup ethX 예) ifup eth0 

/etc/init.d/networking restart
2006/05/18 05:26 2006/05/18 05:26
Tag //

1. 패키지 캐쉬 갱신 및 자동 업그레이드

# apt-get update ; apt-get upgrade

2. 원하는 패키지 찾기

# apt-cache  serach 파일명

3. 패키지 삭제 # apt-get remove 패키지명 또는 # dpkg -P 패키지명

4.CD-ROM 목록 추가

# apt-cdrom add

5. 개별 패키지 설치

# apt-get install 파일명

6. 원하는 패키지 찾은 다음 정보 출력

# apt-cache show 파일명

7. 의존성 검사 수행후 패키지 업그레이드

# apt-get dist-upgrade

8. dselect에서 선택한 패키지의 설치 및 삭제

# apt-get dselect-upgrade

9. 설치된 패키지를 볼때

# dpkg -l

10. apt-get install 명령어로 받은 deb 파일의 저장 위치

/var/cache/apt/archive/ 위 폴더에 .deb 패키지파일로 저장됨.

원본 링크 : http://blog.naver.com/kkyboy/140023867885
apt-get install bulild-essentail apt-get install libncurses5-dev 패키지를 찾으시려면 apt-cache search [PACKAGE_NAME]으로 찾으시면 됩니다
2006/05/16 16:40 2006/05/16 16:40
[IPv4]

보기 : route

삭제 : rotue del -net 주소 netmask 주소 ethx

추가 : route add -net 주소 netmask 주소 dev ethx

게이트 웨이

IPv4 주소 할당 : ifconfig eth1 주소


[IPv6]

보기 : route -A inet6

추가 : ip -6 addr add 주소/프리픽스 dev eth1
        ip -6 r a ::/0 eth0
        ip -6 route add 주소/프리픽스 dev eth0
        route -A inet6 add 주소/프리픽스 eth0

삭제 : ip -6 addr del 주소/프리픽스 dev eth1
        ip -6 r d ::/0 eth0
        ip -6 route del 주소/프리픽스 dev eth0

게이트 웨이 : ip route add ::/0 via fec0:106:2700::1
                  ip -6 route add 주소/프리픽스 via 주소만 dev eth0
                  route