####################################################################################################
     ** 시스템 정보 확인용 **
====================================================================================================
cpu 정보 : cat /proc/cpuinfo
pci 정보 : cat /proc/pci
사용중인 irq 정보 : cat /proc/interrupts
사용주인 dma 채널 : cat /proc/dma
사용중인 i/o 포트 정보 :cat /proc/ioports
현재 사용가능한 화일 시스템 :cat /proc/filesystems
현재 사용중인 메로리 : cat /proc/meminfo
현재 사용중인 파티션 :cat /proc/partitions
현재 사용중인 스왑 파티션 정보 : cat /proc/swaps
현재 사용중인 커널 버전 : cat /proc/version
현재 사용중인 드라이버 :cat /proc/devices
현재 사용중인 부트 이미지 : cat /proc/cmdline

####################################################################################################


####################################################################################################
     ** 리눅스의 기본 명령어 **
====================================================================================================
1. 시스템 정보 출력

 arch  : CPU 모델
 cal [11 2000] : 달력
 clock  : CMOS 설정 시간의 출력, 변경
 date  : 현재 시간
 df [-h] : 연결되어 있는 파일 시스템의 용량
 du [-sh] : 파일과 디렉토리별로 할당되어 있는 용량
 free [-m] : 메모리 용량 (M:Mbyte, K:Kbyte)
 fsck -a : 파일 시스템의 검사도중 발견된 에러를 자동 복구
 fsck -r : 파일 시스템의 검사도중 에러가 발견되면 복구 여부확인
 fsck -s : 파일 시스템을 순차적인 방법으로 검색
 fsck -v : 파일 시스템의 검색 중 각종 정보를 보여줌
 fsck -n : 파일 시스템의 실제검사 작업을 안함
 uname [-a] : 커널 버전과 운영체제 정보
 top  : 진행중인 프로세스의 CPU 점유율
 hostname : 사용중인 시스템 이름
 ps [aux] : 진행중인 프로세스 정보
   ex) ps -ef | grep ftp   - ftp 프로세스 실행 가입자
 pstree  : 진행중인 프로세스 정보를 트리 형태로 출력
 tee  : 명령 수행의 결과를 표준출려과 파일로 동시 저장
 nohup  : 지정한 명령어를 로그아웃시에도 계속 수행하도록 한다.
                 ex)nohup 명령어 [ 명령어 인자 ]
 lprm  : 프린트 JOB 삭제
 lockfile : 지정한 화일에 대한 세마포어 화일을 만든다.
 lsdev  : 현재 시스템에 연결되어 있는 하드웨어에 관한 입출력 정보, IRQ 값 등을 출력
 fuser  : 지정한 파일을 사용하고 있는 프로세스를 보여준다.
 fdformat : 플로피디스크 포맷( /dev/fd0 옵션)
 env  : 현재의 환경변수 설정상황을 보여준다
 killall [DM] : [DM]이름의 데몬 죽이기

 mysqladmin -p reload du --max-depth=1      디렉토리 크기 아는법

 ipchains -F : 방화벽초기화(아무나 접속하게 만듬 )
 ipchains -P forward REJECT : 포워딩 거부정책
 ipchains -A forward -s 192.168.1.0/24 -j MASQ : 마스커레이드 허용정책
 ipchains -L : 접속환경 보여줌 

====================================================================================================
  /sbin/ifconfig        telnet 환경에서 ifconfig 보여줌
  cat /proc/interrupts  IRQ 표기
  cat /proc/ioports      i/0 포트 표기
  ntsysv                시작프로그램 설정
    echo "1" > /proc/sys/net/ipv4/ip_forward iptables -P FORWARD DROP iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT iptables -A FORWARD -i eth0 -o eth1 -j ACCEPT iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE  마스커레이드 설정 snmpget 61.77.63.134 Rkdska12 system.1.0 

====================================================================================================
2. 사용자 정보 출력
 who  : 현재 시스템 사용중인 사용자들 이름, 터미널 번호, 로그인 시간
 users  : 현재 시스템 사용중인 사용자들 이름
 finger [user_id] : 현재 시스템 사용중인 사용자들의 신상 명세
 w  : 현재 시스템 사용중인 사용자 이름과 작업 종류
 id  : 자신의 user id와 group id
 whoami  : Who Am I?

====================================================================================================
3. quota 정보
 quotaoff -avug : quota종료
 quotacheck -avug : quota 사용파일 확인
 quotaon -avug : quota시작
 repquota [/device] : device의 quota 정보확인
 ediquota : quota 수정 (-u:user, -p:속성복사)

====================================================================================================
4. 파일/디렉토리 관련 기본 명령어

 /  : 디렉토리 표시
 .  : 현재 디렉토리
 ..  : 상위 디렉토리
 ~  : 홈 디렉토리
 cd  : 디렉토리 이동
 ls  : 디렉토리 내용 출력
 mkdir  : 디렉토리 생성
 rmdir  : 디렉토리 삭제
 pwd  : 현재 작업 디렉토리 절대 주소 출력
 cp  : 파일 복사 (디렉토리 포함은 '-r')
 mv  : 파일 이동
 rm  : 파일 삭제 (디렉토리 포함은 '-r')(강제 삭제는 -f)
 cat  : 파일 내용 출력
 tac  : 파일 내용 역순으로 출력
 more  : 파일 내용 페이지 단위로 출력
 less  : more와 같다.
 head -n : 파일 내용의 앞부분을 n줄만큼 출력
 tail -n : 파일 내용의 뒷부분을 n줄만큼 출력
 ln -s A B : A에 B를 링크
 tar [] 파일? : 파일 풀기[xvf], 묶기[cvf], 압축[z]
   ex)tar -cvf A.tar ./public_html : public_html의 하위디렉토리를 A.tar로 압축.
 split  : 파일 분할
 uniq  : 중복라인 삭제
 cut  : 필드 분리                         
    ex)cut -f2 filename : 두번째 필드만을 분리해낸다. -c옵션으로 분리자 지정
 paste  : 두 파일의 같은 라인을 결합
 comm  : 두 파일의 비교  <---정렬이 먼저 되어있어야 한다.
 fold  : 파일의 각 줄을 잘라서 지정한 폭 이하가 되도록 한다.
 split  : 일정라인마다 잘라서 다른 파일로 저장한다.
 fmt  : 텍스트화일을 일정한 너비로 정렬한다.

 find / -name index.html -print, -ls  파일 찾는 방법.

====================================================================================================
5. 압축 명령어

 gzip, gunzip : 확장자가 .gz 인 파일로 압축 또는 해제
 zip, unzip : 확장자가 .zip 인 파일로 압축 또는 해제

tar command files
옵션  - c 지정파일또는 디렉토리를 tar로 묶는다(압축효과 없음:오히려 용량증가)
        - x tar의 파일의 묶음을 푼다. (묶음과 압축의 차이점 이해해야함)
        - v 묶음의 대상파일을 보여준다.
        - r 기존의 tar파일에 파일을 추가한다.
        - p 파일의 생성되었을 때의 권한을 그대로 유지하게 해준다.
        - z tar.gz의 파일로 압축할때 쓰이는 옵션
        - f 작업대상이 되는 tar파일의 이름을 지정한다.
사용예
        tar xvfz gnu3.tgz  : 압축해제와 묶여짐을 동시에 푼다. 
        tar cvfzp gnu3.tgz  *.php  : 현재디렉토리에 있는 *.php로 끝나는 파일을 모두 퍼미션을 유지한 상태에서 묶어서 gnu3.tgz라는 파일로 압축한다.

====================================================================================================
6. 특정아이피 접속차단
route add -host (ipnumber) reject
netstat -rn

위 방법은 재부팅하면 다시해야한다. 영구적설정은 etc/hosts.deny hosts.allow 파일수정
혹은 iptables사용 in kldp

====================================================================================================
7. 포트스켄

nmap (ip_address or host name) : 해당PC에 열려있는 포트/서비스들을 보여준다. 안먹는 컴퓨터들도 있다.

====================================================================================================
8. 퍼미션 관련 명령어

chmod (change mode)
옵션 : -R (대문자) 서브 디렉토리까지 설정된다.
기본권한
    UID    GID    Other
    rwx   _ _ _    rwx
    root  group   other     
여기서 'r' 은 파일의 내용을 볼 수 있는 권한을 말합니다.
       'w' 은 파일의 내용을 수정할 수 있는 권한을 말합니다.
       'x' 은 샐행 시킬수 잇는 권한을 말합니다.

        x=1 , w=2, r=4 의 권한을 말합니다.

AND