블로그 이미지
송시혁

calendar

1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30

Notice

Tag

Recent Post

Recent Comment

Recent Trackback

Archive

2018. 8. 24. 08:29 리눅스 마스터1급

● iptables와 테이블과 사슬 




                             filter              nat                    mangle        raw 

INPUT                       O     O                        O         

FROWARD                  O                                           O

OUTPUT     O                 O                        O            O

PREROUTING       O                        O            O

POSTROUTING                                O                        O            



● iptables [-t tables] action chain match  [-j target]



INPUT       방화벽 관련 정책들은 설정. 커널 내부에서 라우팅 계산을 마친 후 로컬 리눅스 시스템이 목적지인 패킷에 적용한다.

OUTPUT    다른 시스템의 접근을 차단할 때 사용하는 사슬로 리눅스 시스템 자체가 생성하는 패킷을 제어하는 시스템    

FROWARD 리눅스 시스템을 통과하는 패킷을 관리하는 사슬로 한 네트워크를 다른 네크워크로 Iptables 방화벽을 

                사용하여 패킷이 방화벽을 통과하는 경우에 사용


<주요 target>

ACCEPT  패킷을 허용 

DROP      패킷을 거부 

LOG        패킷을 syslog에 전달하여 기록. 일반적으로 /var/log/messges에 저장 

REJECT   패킷을 버리고 적절한 응답 예) TCP reset 패킷, ICMP  (Port Unreachable)메시지를 전송 

RETURN  호출 사슬 내에서 패킷 처리를 계속 진행 



< 주요 action >


-N 새로운 사용자 정의 사슬을 만든다.(--new-chain)

-X 비어있는 사슬을 제거한다. 단, 기본 사슬은 제거할 수 없다.(--delete-chain)  

-P 사슬의 기본정책을 설정한다.(--policy)

-L  현재 사슬의 규칙을 나열한다. (--list)

-F 사슬로부터 기본 규칙 제거 

-Z 사슬내의 모든 규칙들의 패킷과 바이트의 카운트를 0으로 만든다.(--zero)

-A 사슬에 새로운 규칙을 추가한다. 해당 사슬에 맨 마지막 규칙으로 등록된다.(--append)




< 주요 매치 >

-s          발신지 주소 

-d          목적지 주소 

-p          특정 프로토콜과 매칭 

-i           입력 인터페이스와 매칭(--out-interface)

-o         출력 인터페이스와 매칭(--out-interface)

!            NOT의 의미로 사용하는데, 특정 매칭을 제외할 때 사용 

-m         좀 더 세밀하게 제얼할 때 사용하는 매칭 옵션(--match)

--state  연결 상태와 매칭 INVALED, ESTABLISHED, NEW, RELATED

--string 특정한 패턴과 매칭 





< 주요 옵션 >

-n                  다른 옵션과 같이 사용되면 출력 정보를 숫자값으로 표현(--numberic) 

-v                  다른 옵션과 같이 사용되면 패킷, 바이트수 등을 추가하여 정보를 자세히 출력 (--verbose)

--line-number 정책 앞에 번호를 출력, 삭제나 삽입할 때 유용 

--sport           발신지에서의 하나의 포트 또는 포트범위를 지정. /etc/services에 기록된 포트 이름 지정

                      범위는 :를 사용해서 표기(--sport)

--dport          도착지의 포트를 지정하는 것으로 설정 방법은 --sport 옵션과 동일 (--destination-port)

--tcp-flags    TCP flag를 지정하는 옵션, SYN, ACK, FIN, RST, URG, PSH, ALL, NONE 

--syn            --tcp-flags SYN, RST, ACK ,FIN SYN 



● ntp 시간 동기화 사용되는 프로토콜 


/etc/ntp.conf          환경설정 파일 

/etc/rc.d/init.d/ntpd ntpd 데몬 



vnc (p581)

=> 원격의 다른 컴퓨터에서 그래픽 환경 기반으로 데스크톱을 공유할 수 있는 시스템 


● /etc/sysconfig/vncsevers 환경 설정 파일 


● yum install tigervnc-server 

=> vnc server 설치 


1은 디스플레이 번호 

- geometry 해상도를 설정하는 항목 


● vncpasswd 

=> 패스워드 서러정 


● service vnsserver start 

=> vncsever start 


● yum install vnc , yum install vnc tigervnc 

=>클라이언트 설치 


<squid 프록시 >

프록시

=> 보통 네트워크가 느린 환경에서 보다 빠른 인터넷을 하기 위한것.

     자주 방문하는 사이트의 정보를 저장하는 cache 서버.

 

< squid 주요 파일 >


/etc/squid/squid.conf  quid 데몬 설정 파일 

/etc/rc.d/init.d/squid    데몬 스크립트 파일 stop, start, restart 


● http_port 3128 

=> 프록시 서버의 포트를 지정. 기본값은 3128 


● cache_dir ufs /var/spool/squid 100 16 256 

=> ufs는 저장 포맷 , /var/spool/squid 

    100은 저장되는 캐시의 크기

16은 캐시가 저장되는 첫 번째 하위 디렉터리 갯수 

256은 두 번째 하위 디렉터리 갯수 


< xinetd.conf >

/etc/xinetd.conf  환경 설정 파일 , 데몬에서 관리하는 전체 서비스에 영향을 줌 

/etc/xinetd.d       xinetd 데몬에 의해 관리및 제어되는 서비스 파일들이 위치하는 디렉터리이다. 

                          이 디렉터리 안에 telnet, rlogin, rsh, rsync 등의 관련 서비스 파일을 생성하면 된다. 

/etc/rc.d/init.d/xinetd xinted 데몬을 제어하는 데몬 스크립트 파일 stop, start, restart등의 인자값을 사용해서 

제어한다. 


/etc/xinetd.conf 주요 항목 설정 


default 

{

log_type           = SYSLOG daemon info 

log_on_failure     =  HOST 

log_on_success   =  PID HOST DURATION EXIT   

cps                 = 50 10 

instances           = 50

      per_source         = 10 

      v6only              = no 

      groups             = yes 

      umask              = 002

}


includedir /etc/xinted.d 


항목 설명 


● log_type

=> 어떠한 형태로 로그를 저장할지 지정하는 것. 

     SYSLOG(syslog에 위임), FILE(file에 직접) 두 가지 설정이 가능 

 

     

● log_on_failure

=> 접속 실패 시 , 기록될 속성값 항목 

      HOST        = 원격 호스트 IP의 주소 

USERID     = 원격 사용자 아이디 

ATTEMPT   = 실패한 시도를 나타냄 

  

● log_on_success = 속성값

=> 접속에 성공했을 때 기록될 속성값을 지정하는 항목 


속성값 

PID           실행된 서버의 PID

HOST        원격 호스트의 IP 주소 

USERID      원격 사용자 아이디 

EXIT          관련 서비스 종료될때의 상태 

DURATION  서비스의 세션 지속 상태 

TRAFFIC     리다이렉트 서비스를 위한 전체 바이트 수 


● cps 

=> 초당 요청수 제한시간 


● cps 50 10 

=> 초당 요청 수가 50개 이상일 경우 10초간 접속 중단 



● instances 

=> 동시에 서비스할 수 있는 서버의 최대 개수를 지정하는 항목

     제한을 두지 않으려면 UNLIMITED로 설정 

 

● per_source = 값 

=> 특정 IP 주소에서 접속할 수 있는 최대 개수를 지정한다. 


● only_from [IP주소[네트워크 IP 이름]]

=> 서비스를 이용할 수 있는 원격 호스트 설정 


● no_access 

=> 서비스를 이용할 수 없는 원격 호스트의 주소를 지정.

     only_from와 동일하고, 중복 설정된 경우에는 차단 


● enabled 

=> 사용가능한 서비스의 목록을 지정하는 항목 


● disabled

=> 특정 서비스의 사용을 막을 때 사용하는 항목 


● includedir /etc/xinted.d 

=> 설정파일들이 위치하는 디렉터리를 나타낸다. 




서비스에 관련된 자세한 설정은 /etc/xinetd.d 안에서 한다.

서비스 명은 /etc/services 파일에 등록된 이름을 사용해야 한다. 


/etc/xinetd.d/telnet에 관한 파일이다.



service telnet

{

disable = no 

flags    = REUSE 

socket_type = stream

wait = no 

user = root

server =/usr/sbin/bin/in.telentd 

log_on_failure +=USERID

}


● disable = no 

=> no는 서비스를 사용하늑 서이고, yes이면 해당 서비스를 사용하지 않음 


● flags = REUSE

=> 서비스 운영과 관련된 설정으로 REUSE는 계속 사용한다는 의미, 대부분의 서비스 기본값으로 설정되어있음 


● socket_type = stream 

네트워크 소켓 타입을 지정하는 항목으로 속성값은 다음과 같다.


stream      stream 기반의 서비스 

dgram      datagram 기반의 서비스 

raw         IP로 직접 접근이 필요한 서비스 

seqpacket 신뢰성있는 연속적인 데이터그램 전송을 요구하는 서비스 



● wait = no 

=> 서비스가 단일 스레드(thread)인지 다중 스레드를 결정하는 항목을로 설정값은 yes 

     또는 no이다. yes는 오직 하나인 서비스만 작동하게 되며, no인 경우에는 다중 스레드로 동작하여 

     새로운 서비스 요청을 받아들이게 된다. 

 

● user = root 

=> 서버 프로세스의 UID를 지정하는 항목 


● server =/usr/sbin/bin/in.telentd 

=> 해당 서비스를 실행하는 데몬 파일의 경로를 지정하는 항목 


● log_on_failure +=USERID

=> 로그에 관련되 설정으로 /etc/xinetd.conf에 지정된 설정에 + 또는 -를 이용하여 추가로 지정할때 사용 


● access_time 01:00 -07:00

=> 지정된 시간에만 서비스를 이용할 수 있게 설정하는 항목이다.


● redirect = 192.168.12.22 23 

=> 해당 서비스를 다른 서버로 포워딩할 때 사용하는 항목


● port 8080

=> 해당 서비스의 포트 번호를 지정할 때 사용하는 항목이다. 


● nice = 10 

=> 서버의 우선순위를 지정하는 항목으로 -20~19까지 지정할 수 있다.




<메일 관련 프로그램 분류 >


●  MTA(Mail Transfer Agent)

=> 이메이을 SMTP프로토콜을 이용해 다른 메일 서버로 전달하는 프로그램

     보통 메일 서버 프로그램 

sendmail, qmail, postfix, MS Exchange Server 


●  MUA (Mail User Agent)

=> 사용자가 메일을 읽고 보낼 때 사용하는 프로그램 

     outlook, evloution, kmail, mutt, thunderbird , MS 


●  MDA (Mail Delivery Agent)

=> MDA는 일종의 대리인 역할을 수행하는 프로그램 

     procmail , 스팸 메일을 필터링이나 메일 정렬등의 역할을 수행한다. 

< sendmail의 개요 >


●  /etc/mail/sendmail.cf

 => 환경 파일 설정 

 

●   /etc/rc.d/init.d/sendmail 

 => 데몬 스크립트 

 

 /etc/mail/local-host-names,

 /etc/mail/access등 별도의 파일을 이용해서 관리한다. 

 

●  /etc/mail/sendmail.cf

=>비어있는 행과 #은 무시된다.


●  Cwlocalhost

=> Cw은 메일을 수신할 호스트 이름을 명기하는 항목으로 보통 도메인명을 기입한다. 

     예) posein.org => Cwposein.org 로 설정 


●  Fw/etc/mail/local-host-names 

=>   Fw은 여러 도메인을 사용하는 경우 별도의 파일을 지정하는 항목


●  #Dj$w.Foo.COM

=> Dj는 특정 도메인명으로 지정하여 강제적으로 적용할 때 사용하는 항목 

     Djposein.org로 지정하면 발신 도메인이 posein.org로 강제 적용된다. 

 

●  Kvirtuser hash -o /etc/mail/virthusertable.db 

=> 동일한 계정을 여러 가상 호스트들이 메일 주소로 동시에 사용할 수 있도록 관련 파일 지정하는 항목 


●  Kaccess hash -T<TMPF> -o /etc/mail/access.db 

=> 특정 호스트나 도메인이 센드메일로의 접근을 제어하는 파일을 지정하는 항목


●  AliasFile=/etc/aliases 

=> 특정 계정으로 메일이 도착했을 경우에 다른 계정으로 메일이 전송되도록 설정하는 파일을 지정한다.


●  MaxMessageSize=0

=> 메일 메시지의 최대크기를 설정하는 항목으로 단위는 바이트이다. 

     주석처리나 0이면 메시지 크기의 제한이 없다. 


●  ForwardPath=$ㅋ/.forward.$w:$z/.forward 

=> 개인 사용자가 본인의 계정으로 들어온 메일을 다른 메일로 포워딩할 때 설정하는 파일

     명을 지정하는 항목이다.

 

●  DaemonPortOptions=Port=smtp, Addr=127.0.0.1, Name=MTA 

=> SMTP 데몬 옵션으로 25번포트를 사용할 주소를 지정하는 항목. 

     기본 설정은 로컬 호스트에서만 사용 간으하므로 Addr=127.0.0.1 부분을 지우거나 

Addr=0.0.0.0으로 바꾸면 모든 주소에서 사용 가능하다. 


●  QueueDirectory=/var/spool/mqueue 

=> 메일 전송을 대기하는 큐 관련 항목이다. 






< sendmail 관한 주요 파일과 명령어 >


●  /etc/mail/local-host-names

=> 메일 서버에 사용하는 도메인을 설정하는 파일로 한 줄에 도메인 하나씩 기입하면 된다.


예) 


vi /etc/mail/local-host-names 파일 실행 


songsi.org 

songsi.co.kr 

songsi.com 

....


●  /etc/mail/sendmail.mc 

=> sendmail의 매크로 설정파일, /etc/mail/sendmail.cf  파일이 삭제되거나 복원할 경우에 m4라는 매크로를 사용 

    sendmail.cf 를 복원하려면 sendmail-cf 패키지를 설치해야 한다.


●  m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf 




●  mailq 

=> 보내는 메일이 대기하는 디렉터리의 큐(Queue) 상태를 출력해 주는 명령어 

     보내는 메일이 대기하는  큐인 /var/spool/mqueue의 상태를 출력 

 

옵션 

-Ac /etc/mail/submit.cf 파일에 명시된 큐의 상태를 출력 


●  sendmail 

=> sendmail 관련 옵션 


옵션 

-bp  mailq와 같은 명령으로 메일 큐의 상태를 출력 

-bi   newaliases와 같은 명령으로 /etc/aliases 파일 수정 시에 관련 

       DB 정보 파일을 업데이트 한다. 

-oQ bp와 같이 사용되는 옵션으로 특정 큐의 상태를 확인하기 위해 사용된다. 


/etc/mail/sendmail.cf  

=> 비어있는 행과 '#'은 무시된다. 



<FTP 서버 관리>


/etc/vsftpd/vsftd.conf  환경설정 파일 

/etc/rc.d/init.d/vsftpd   데몬 스크립트 

/etc/pam.d/vsftpd        PAM설정 파일 

/etc/vsftpd/ftpusers     /etc/pam.d/vsftpd에 사용되는 파일로 기본 설정이 접근 거부될 사용자 목록 

/etc/vsftpd/user_list     사용자 목록 파일 허가 또는 거부 목록 파일, 기본적으로 userlist_deny=YES이어서 거부 

/etc/logrotate.d/vsftpd  vsftpd의 로그 로테이트 관련 파일이다.
































posted by 송시혁
2018. 8. 21. 20:17 리눅스 마스터1급

● chmod (change mode)

디렉터리, 파일 권한 명령어 


옵션 

-R   하위 디렉터리 포함하여 디렉터리 내부의 모든 파일의 접근 권한 변경

-c (--changes)       변경된 정보를 출력 

-f, --silent, --quite  중요한 메시지 아니면 출력하지 않음 

--version                명령어의 버전 정보 


● chmod ugo+rwx a.txt

=> a.txt에게 모든 권한을 준다. 


● chmod o-r, o-w, * 

=> 현재 디렉토리 안에 모든 파일에 다른 사용자에게는 읽기와 쓰기 권한을 없앤다. 

     chmod o-rw *와 동일 


● chmod -R go-rwx * 

=> 모든 하위 디렉토리 및 파일에 대하여 그룹과 다른 사용자의 접근 권한을 없앤다.


● chmod o+t /project 

=> 다른사용자에게 sticky bit를 부여 


● Set-UID

=> 소유자의 권한 인식. x자리에 s로 바뀜 , 실행 권한이 없으면 대문자 S

     번호는 4000 


● Set-GID 

=> 주로 디렉터리에 설정. 번호는 2000


● Sticky-Bit 

=> 공유 디렉터리. 서로 다른 계정이 파일을 공유하고 있으면, 실행과 삭제가 가능하다. 

     sticky비트를 생성하면 다른 계정이 다른 계정이 만든 파일을 삭제할 수 없다. 

본인이 만든 파일은 삭제 가능 

x자리에 t로 표기됨. 번호는 1000

     

● chmod 3070 /project 

=> project 디렉터리를 해당 그룹에게만 읽기 및 쓰기, 실행 권한을 부여 

     Set-GID(2000), Sticky-Bit를 부여 


● chown (change owner)

=> 파일이나 디렉터리의 소유권 및 그룹 소유권을 변경하는 명령어


옵션은 chmod와 동일 


옵션 

-R   하위 디렉터리 포함하여 디렉터리 내부의 모든 파일의 접근 권한 변경

-c (--changes)       변경된 정보를 출력 

-f, --silent, --quite  중요한 메시지 아니면 출력하지 않음 

--version                명령어의 버전 정보 


● chown songsi:songsi11 a.txt 

=> a.txt에 대한 소유자는 sonsi, 그룹은 songsi11로 지정 

     : 대신 .도 사용가능 

 

●  chgrp (change group)

=>  특정한 사용자가 여러 그룹에 속한 경우에 본인 소유의 파일을 본인이 속한 

      그룹 내에서 소유권을  변경시킬 수 있다. 


옵션 

-R      하위 디렉터리 포함하여 디렉터리 내부의 모든 파일의 접근 권한 변경

-c (--changes)          변경된 정보를 출력 

-f, --silent, --quite     중요한 메시지 아니면 출력하지 않음 

-h, --no-dereference  심볼릭 링크 파일의 그룹 소유권을 변경한다. 

--version                     명령어의 버전 정보 


  

●  chgrp -R ihd ~songsi

=> songsi 사용자의 홈 디렉터리를 포함한 모든 파일이나 디렉터리의 그룹 소유권을 ihd로 변경한다. 

 


●  umask u=rwx, g=rw, o=rw 

=>umask를 011로 설정한 것과 동일. 


●  하드링크 

=> ln 사용 


하나의 동일한 파일을 디스크의 다른 곳에 배치하여 여러 이름으로 사용 

원본과 링크 파일의 내용과 크기가 같다.

i-node번호가 같다.

ls -l 명령시 링크의 숫자가 2씩 증가한다. 

원본 파일 삭제해도 영향 안받음 

파일만 설정 가능. 동일한 파일 시스템에서만 사용 가능 

파티션과 디스크 드라이브를 가로질러 사용할 수 없다



●  심볼릭 링크 소프트링크

=> ln -s 사용 

하나의 여러 파일을 여러 이름으로 가르키는 링크. 

파일이나 디렉토리에 모두 사용 가능하면, 일반적으로 경로단축이나

변경에 사용된다. 


i-node번호가 다름 

링크와 파일으 크기가 다르고 내용도 다르다. 

ls -l 명령 시에 출력되는 권한의 맨 앞쪽에 'l'이라고 표신한다. 

원본이나 링크 파일 중에 어떠한 것을 수정해도 같이 반영 

원본 파일 삭제시 아무런 기능이 없음 (윈도우 바로가기키이다)

퍼미션 값은 777이지만, 원본 파일과는 무관한다.


ln 명령어 옵션 


-s  심볼릭 링크                                    (--symbolic)

-v  링크 만드는 정보를 자세히 출력한다(--verbose)

-f   강제로 링크 파일 존재 시에 삭제하고 갱신한다.(--force)


<파일 시스템 관리 및 복구 >


● 하드 디스크 인식 여부 확인    

=> fdisk -l로 파티션 정보 확인 


● 파티션 분할 및 생성 

=> fdisk /dev/sdb1(파티션 분할 및 생성할 장치 이름)

     


● 파일 시스템 생성 

=> mkfs.ext4  /dev/sdb1 파일시스템 ex4로 설정


● 사용하려는 디렉토리 생성  

=> 마운트할 디렉토리 생성 


● 마운트 

=> mount 디렉토리 


● 관련 파일 등록 

=> vi /etc/fstab에 등록. 재부팅시 mount되게끔 함

     반드시 재부팅해야 설정이 동작된다. 


● fdisk 

=> 현재 디스크의 파티션 테이블 정보를 본다.


-l  현재 디스크의 파티션 테이블 정보를 출력한다.

-s partition 특정 파티션의 크기를 출력한다. , 단위는 block 

-v fdisk의 버전을 출력한다. 


● fdisk -s /dev/sdb1

=> /dev/sdb1의 파티션 크기 출력 


옵션 (일부)

n 파티션을 새롭게 생성(추가)한다.

p 현재 디스크의 정보 

a 부트테이블 플래그 

b BSD 디스크라벨 편진 

c 도스 수용가능한 플래그 설정 

w 현재 설정 저장하고  종료 

q 현재 설정을 저장하지 않고 종료 

t  파티션의 속성을 변경한다. 주요 코드로는 82(Swap), 83(Linux), 8e(Linux LVM), fd(Raid)


● mkfs 

=> 새로운 파일 시스템을 만드는 명령어 root만 가능. 

     파일 시스템 설정안하면 ext2로 만들어진다. 


● mkfs -t ext4  /dev/sdb

=> ext4 시스템으로 만든다. mkfs.ext4  /dev/sdb 동일 

옵션 

-t  파일 시스템 유형을 지정하는 옵션(ext3, ext4)

-c 배드 블록(bad block)을 체크한 후 파일 시스템을 구축한다.

-v 결과를 상세히 출력한다.


● mke2fs

=> 파일 시스템 만드는 명령어. 기존의 mkfs명령어에서 확장된 개념 


-j                     저널링 시스템인 ext3으로 만듬 

-t ts_type         파일 시스템 지정 

-b block size    블록사이즈를 지정 1024,2048,4096..

-R raid_options  -R다음에 argument=값 형태로 지정한다. 

-T usage_Type  i-node의 크기를 지정할 수 있는 옵션 

                        RHEL4까지는 news, largefile, largefile4

news       4k

largefile   1M 

largefile4 4M


● mk2e2fs -j -b 4096 -R stripe=32 /dev/md0

=> ext3으로 만들고 블록사이즈를 4096, stripe당 블록 사이즈를 32바이트로 설정 



옵션 


-a /etc/fstab에 명시된 파일 시스템을 마운트할 때 쓰이는 옵션 

-t  fs_type 

-o 마운트시 추가적인 설정을 적용할 때 사용하는 옵션 



< 파일 시스템 유형 > 


ntfs         마이크로소프트사의 윈도우 NT, 2000, XP 이후 버전에서 사용하는파일 시스템 마운트할때 지정 

ext2,3,4   파일시스템을 마운트할 때 지정한다. 

iso9660    CD-ROM이나 DVD를 마운트할때 지정한다. 

udf           DVD 파일 시스템으로 대부분의 배포판 리눅스에서 iso9660으로 지정해도 마운트 할 수 있다. 

smbfs      최근 배포판 지원안함. 네트워크 삼바파일 시스템 마운트  

cifs          삼바 파일 시스템이 확장된 파일 

nfs           DVD파일 시스템으로 대부분의 배포판 리눅스에서 iso9660으로 지정해도 마운트 할 수 있다.


-o의 주요 항목


ro            =  읽기 전용 마운트      

rw            =  읽기/쓰기 모드로 마운트 

remount   = 해당 파티션을 다시 마운트한다.(기본값으로 설정되어있다.)

loop         = loop 디바이스 마운트 , CD-ROM 이미지파일인 ISO를 마운트해서 사용 

noatime    = 파일이 변경전까지 access time이 변경되지 않는다. 

username = 사용자명 

password = 암호 

acl           =  ext3파일 시스템에서 지원하는 접근 제어 리스트(access control list)를 사용 

                  가능하도록 마운트할 때 사용한다. 


● umount 


-a              /etc/mtab에 명시된 파일 시스템을 언마운트할 때 쓰이는 옵션. 

-f fs_type   언마운트할 파일 시스템을 지정할 때 사용하는 옵션.



● eject 

=> cd-rom, DVD등과 같은거 언마운트 


● /etc/fstab 

=> 파일시스템 정보를 담거나 설정하는 파일 

     mount, umount, fsck 명령어 

 


 

fstab에 4번째 필드 주요 옵션 


defaults -  rw, suid, dev, exec, auto, nouser ,async가 적용된다. 

auto           자동 마운트 -a 옵션 사용가능 

noauto       자동 마운트 차단 -a 옵션 못씀 

usrquota     사용자의 용량을 제한하는 Disk quata를 사용 

grpquaota   disk quota를 그룹별로 사용할 때 해당 영역애 설정 

noqouta     qouta를 설정하지 않는다.

nosuid        suid나 sgid 허용 하지 않음 

nodev        문자나 특별한 장치(디바이스)를 허용하지 않는다.

noexec      해당 파티션에서 실행 파일이 실행되지 않도록 설정 

suid           suid나 sgid설정 

ro              읽기 모드 설정 

rw              읽기/쓰기 모드 설정 

async        파일을 비동기적으로 관리 

acl             acl을 사용한다. 


UUID 

=> 범용 고유 식별자. 고유한 이름. blkid라는 명령을 통해서 조회 가능 


fsck 

=> 파일 시스템을 검사하고 수리하는 명령. 

     lost+ found 손상된 디렉터리나 파일을 수정시 임시로 생성하여 

작업을 수행하고 정상적으로 복구되면 사라진다. 


-a  명령 수행에 대한 확인 질문 없이 무조건 수행 

-r   명령 수행에 확인 질문 

-A  /etc/fstab에  정의되어 있는 모든 파일 시스템을 체크 

-P  -A 옵션사용시, 루트 파일 시스템을 다른 파일 시스템과 병렬로 체크한다.

-N  실행을 하지 않고 단지 어떤 것이 실행되어지는 것만 보여줌 

-R  -A옵션을 사용할때, 루트 파일 시스템은 체크하지 않는다. 

-T  검사를 시작할때 제목을 보여주지 않는다. 

-s  fsck 동작을 시리얼화한다. 대화형 모드에서 여러 파일 시스템을 점검할 때 유용하다. 

-V  실행되는 각 파일 시스템용 명령을 포함해 자세한 출력을 수행 

-v  버전 정보를 보여준다. 

-t   fs_type 

 

● e2fsck

=> 리눅스 파일시스템 점검하고 검사하는 명령어 


옵션 

-y 

-n 특정 상황에 대한 물음에 대해 'no'라고 인식하여 처리한다. 

-c 배드 블록까지 체크 

-f 깨끗한 파일 시스템까지 강제적 체크 


e2fsck -y /sda3 

=> 파일 시스템에 점검하는데, 상황에 대한 물음에 무조건 'yes'라고 자동 인식 

 

● df 

=> 현재 마운트되 디스크의 크기 , 사용량, 남아있는 용량   


옵션 

-h   용량의 단위 표시(KB, MB, GB)를 해준다 (--human -readable)

-k   킬로바이트(kilobyte) 단위로 보여준다. (기본값)

-m  메가바이트(megabyte) 단위로 보여준다.

-T  각 파티션에 대한 파일 시스템의 유형을 보여준다.

-i   아이노드의 사용량을 보연준다. 'No space left on device'라는 메시지는 대부분 i-node를 다써버린 경우 


● du

=> 파일이나 디렉터리들이 디스크에서 차지하고 있는 크기를 출력한다.


옵션 

-h  용량의 단위 표시(KB, MB, GB)를 해준다 (--human -readable)

-b  바이트(byte) 단위로 보여줌 

-k  킬로바이트 단위로 보여줌 

-m 메가바이트  

-a  디렉터리에 존재하는 모든 파일에 대해 각각의 크기를 보연준다.

-s  파일들의 전체 크기를 합한 값만 보여준다. 


● du -sh * 

=> 각 디렉터리나 파일별로 총 용량을 출력한다. 


<swap>

=> 하드디스크의 일부를 마치 메모리처럼 사용하게 해주는 기술 


● mkswap 

=> 스왑 파티션이나 스왑 파일을 생성하는 명령이다. 


-c 배드 블록 검사해 주는 옵션 


●  swapon 

=> 스왑 파티션이나 스왑 파일을 활성화시키는 명령으로 상태로 확인 가능 

-s 스왑 영역의 상태를 출력한다. 

-a /etc/fstab 파일에 등록된 스왑 영역을 전부 활성화시킨다. 


●  swapoff

=> 스왑 파티션, 파일 중지 


●  free 

=> 현재 사용중인 메모리 상태 출력 


-m  megar byte단위 

-k   kbyte단위 


스왑영역 만들기 


dd if=/dev/zero of=/swqp-file bs=1k count=104000

=> /dev/zero는 이름 그대로 초기화 할때 사용하는 장치명 

     of에는 생성할 파일명

bs는 블록크기 지정

bs에 지정된 블록의 개수 


<스왑 영역 생성>

1. mkswap /swap-file

2. /etc/fstab 등록 

 => /swap-file swap swap defaults 0 0


 

<스왑 파티션 생성 >

1. fdisk /dev/sdb , mkfs -t 82(swap) /dev/sdb2 로 파일시스템 만듬 

    

2. mkswap -c /dev/sdb2 

스왑 파티션 생성 


3. swapon /dev/sdb2 

=> 스왑영역 활성화  


4. /etc/fstab 등록 (재부팅시 적용할 때만 등록, 그거 아니면 필요 없음)

=> /dev/sdb2 swap swap defaults 0 0 


●  Disk quota 

=> 사용자 및 그룹의 디스크 사용량고 생성할 수 있는 파일의 개수(i-node의 수)를 제한할 수 있다.


●  quotacheck  

=> 디스크를 사용하고 있는 파일 시스템 체크하여 quota 기록파일(aquota.user, aquota.group, quota.user, quota.group)


옵션 

-a  사용자와 그룹에 대한 쿼터를 체크한다.

-m 읽기 전용 모드 등의 이유로 마운트를 하지 못할 때 사용 

-f 쿼터 파일 초기 생성시 인식하지 못하는 경우에강제로 인식시킬 때 사용 

-u 사용자 쿼터 파일을 체크할 때 사용하는 옵션이다.(기본 옵션)

-g 그룹 쿼터 파일을 체크할 때 사용하는 옵션이다.

-c 기존의 생성된 쿠터 관련 파일을 읽지 않고 새롭게 초기화할 때 사용한다.  



●  quotacheck -mf 

=> quotaoff를 하지 않아도 강제로 체크 


●  quotacheck -mf  -u -g

=> 사용자 , 그룹 쿼터 파일을 체크할 때 사용하는 옵션 


●  quotacheck -cf

=> 쿼터 파일을 초기화한다. 


●  equota

 => 쿼터 설정하는 명령어 

 

 -t Soft limit를 초과한 후부터 적용되는 시간제한(grace period)을 설정하는 옵션 

 -p 특정 사용자의 쿼터를 다른 사용자에게 동일한 설정으로 적용시 사용할때 옵션 



'리눅스 마스터1급' 카테고리의 다른 글

리눅스 웹 (약간 추가예정)  (0) 2018.08.26
samba, NIS  (0) 2018.08.25
리눅스 iptables,xinetd,  (0) 2018.08.24
워크스테이션 리눅스 하드디스크 추가하기  (0) 2018.08.21
리눅스 명령어(centOs 정리)  (0) 2018.08.20
posted by 송시혁
2018. 8. 21. 08:53 리눅스 마스터1급


실습을 하기 위해서는 일단, 아무것도 사용하지 않는 하드디스크를 만들어야 한다.

사용하고 있는 디스크를 잘못 건드렸다간 부팅도 안 될 수도 있으니, 가상머신에 

하드디스크를 추가해보자 


edit virtual machine setting 바로 누른다.



지금 설치한 centOs 는 40GB를 사용하가 있다. 확인만 하고 그냥 add를 눌러서 하드디스크 추가 



아래와 같이 선택하고 다음을 클릭 



SCSI, 옛날에는 IDE를 썻고 서버는 SATA를 쓴다고 한다. 지금은 test이므로 

아무것나 사용한다. 



새로운 디스크를 만든다. 



메모리는 많이 필요 없다. 1GB만 줌 그리고 중요한것은 Store virtual as a single file

이게 제일 중요. 



이름 지정하고 피니쉬


새 하드디스크가 생성(물론 vmware는 가상머신이므로 실제 하드웨어는 아니다)



쭉 보면 하드디스크가 굉장히 많다. 리눅스에 구조는 window와 많이 다른다. 이 부분은 나중에 포스팅



아래 왼쪽 하단에 하드디스크 아이콘으로도 확인 가능 



리눅스 터미널에서 확인 결과 1GB /dev/sdb가 생성되었다. 아마 이상태에서 또 다시 생성하면 

/dev/sdc, /dev/sdd.... 이런식으로 생성이 된다. 


아래 그림은 간단히 파티션 설정 하는 것 .








'리눅스 마스터1급' 카테고리의 다른 글

리눅스 웹 (약간 추가예정)  (0) 2018.08.26
samba, NIS  (0) 2018.08.25
리눅스 iptables,xinetd,  (0) 2018.08.24
리눅스 명령어(centOs)권한, 파일 시스템  (0) 2018.08.21
리눅스 명령어(centOs 정리)  (0) 2018.08.20
posted by 송시혁
prev 1 2 3 4 5 6 7 ··· 97 next