Port zoning (Multipath zoning)


Granting storage access authority to the servers with WWN(World Wide Name) and SAN switch port in SAN network




Image result for port zoning

ref: IBM Knowledge Center

'System Engineering > Storage' 카테고리의 다른 글

How to build storage ?  (0) 2018.04.15

Storage building methods


1. DAS (Direct-Attached Storage)


 - Directly connect the server and data storage with interfaces:

SCSI, IDE, FC, etc.

 - Goods

= Traditional and popular building method of storage

= Directly connected for performance and safety

 - Bads

= Sharing and accessing differences between each interfaces

= Low scalability



2. NAS (Network Attached Storage)


 - Use network to access server to storage (NFS, CIFS)

 - The file server has DAS and communicate via TCP/IP

 - Goods

= File system sharing

= Independent data with accessing server

 - Bads

= The bottle neck could be occurred with data request

= If the file server dead, can not access to the storage



3. SAN (Storage Area Network)


 - Using SAN switch to connect with storage (iSCSI)

 - N : M accesses between servers and storages

 - Goods

= High speed disk I/O with fiber channel

= Sharing storage with multiple servers

= Scalability

 - Bads

= FC limited distance

= Need network devices

'System Engineering > Storage' 카테고리의 다른 글

What is port zoning ?  (0) 2018.04.15

1.     단답식 1-10

pvcreate: Physical Volume 생성
vgcreate: Volume Groupe
생성
lvcreate: Logical Volume
생성
 -n: lv name
설정
 -L | --size: lv size
설정

top 명령 실행 후 1 : 모든 CPU 상황 출력
kill [-9 | -SIGKILL | -KILL] [PID]:
프로세스 강제 종료

rpm –V: 설치된 패키지 검사. 설치 후 어떤 파일이 어떻게 변경 되었는지 확인. 파일 크기, MD5 체크섬, 갱신일 확인 가능
 -ql:
특정 패키지 포함한 파일 목록 출력

modeprobe, insmod: 모듈 로드 명령
depmod:
모듈 의존성 체크

fdisk System Id

 82 Linux swap / So
 83: Linux
 8e: Linux LVM

 85 Linux Extended

Syslog level

none

모든 로그 메시지 무시

Info

정보 메시지

warn

경고 메시지

error

에러 메시지

emerg

시스템 패닉

 

/var/log
boot.log:
시스템 부팅 시 보이는 서비스 데몬들의 부트에 관련된 로그
dmesg:
시스템 부팅 시 보이는 시스템 정보 메시지
secure:
원격 접속 및 원격 로그인 등 인증 관련 정보 기록

부트로더 접근 제한 내용
 timeout
초 단위 지정
 password
부트로더 접근 시 패스워드 인증

dd if=/dev/sda of=/dev/sdc bs=1024: /dev/sda에서 /dev/sdc1024 블록 사이즈 단위 백업 명령

groupadd –g: 해당 GID를 가진 그룹 생성

usermod –g: 유저의 해당 GID 변경

cfdisk: 커서 기반 파티션 설정 유틸리티

vmstat: Virtual memory statistic. 리눅스 자원 사용률 모니터링 툴. 현재 메모리, CPU 사용률 조회

crontab –e: 현재 사용자에 대한 cron 작업 확인 / 수정

make mrproper : 이전 생성된 오브젝트 파일(*.o) 삭제 후 모든 설정과 커널 소스를 초기상태로 돌림

make config : 커널 컴파일 옵션 설정

make bzImage : bzip2 형식 커널 이미지 생성

secure : 시스템 접속 보안 로그

messages :시스템 관련 중요 이벤트 기록 파일

TMOUT : 루트 계정 타임 아웃 시간 지정하는 환경 변수

/etc/profile : 환경 변수 값을 로그인 시 마다 자동으로 적용하기 위해 설정하는 파일

chmod 1777 : 스티키 비트 설정

gcc –I : include 옵션
           -L : Library
옵션

/proc/cpuinfo : CPU 정보

/proc/meminfo : 메모리 정보

lspci : pci 슬롯의 모든 장치에 대한 정보 출력

/etc/syslog.conf : 시스템 로그 설정 파일

ssh-agent : ssh 공개키/개인키 인증 방식 사용을 위한 툴


id : 현재 시점에서 사용하고 있는 사용자의 uid, gid 등 자세한 정보 출력


/etc/crontab : */5 5분 마다


플래터(원판) / 헤드(읽기쓰기 암) / 섹터(기본단위)

fstab usrquota : 사용자 디스크 용량 제한 옵션


 

2.     작업식 11-16

/etc/httpd/conf/httpd.conf
 Listen 8080 : 8080
포트 사용
 ServerName www.ihd.or.kr :
웹서버 도메인
 DocumentRoot “/var/www/html” :
웹 문서 위치
 ServerAdmin admin@ihd.or.kr :
관리자 이메일 주소
 DirectoryIndex index.jsp, index.html, index.htm :
클라이언트 요청에따라 순서대로 응답

서버 /etc/exports
/nfsdata 192.168.100.0(rw, no_root_squash) :
해당 디렉토리에 지정 네트워크 대역의 클라이언트 접근 시 root 사용자를 root 권한으로 허가되도록 하며 파일 생성 및 삭제 가능
 /nfsbackup 192.168.100.10(rw,, no_root_squash) :
해당 디렉토리에 접근 가능한 클라이언트 지정
클라이언트 /etc/fstab
 ihd_nfs:/nfsdata          /data    nfs       rw       0         0
클라이언트_1 /etc/fstab
 ihd_nfs:/nfsbackup       /backup nfs       rw,timeo=25      0         0 :
타임아웃 설정 2.5 (0.1초 단위)

/etc/mail/sendmail.mc
DAEMON_OPTIONS (‘Port=smtp, Name=MTA’) dnl :
모든 호스트에 대해 smtp(tcp/25) 리스닝

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

/etc/mail/access
localhost         RELAY
127.0.0.1          RELAY
192.168.100      RELAY :
해당 네트워크의 모든 ip relay 허용

sendmail.cf : 설정 파일

sendmail.mc : 설정 보조 파일

m4 sendmail.mc > sendmail.cf : 매크로 유틸로 cf 파일 생성

Email Mail Exchanger Record: MX Record. 이메일 서버 이름 지정

www: 도메인 지정

mail: 메일 서버 지정

libvirtd: kvm 데몬

virt-manager: VM 생성 및 게스트 os 설치 위한 매니저

iptables 옵션
 -A : appends iptable rule
 -P : sets the default policy for the specified chain.

DocumentRoot /usr/local/www
port 8080
ServerAdmin [e-mail address]

Logformat “%h %t \”%r\” %b” ihd
CustomLog /usr/local/log/httpd.log ihd

nmap : 네트워크 툴. 포트 스캐너. 보안 감사 툴
 -sT : TCP Connect() scan
 -O : enable OS detection
 -p : scan specified ports

vsftpd.conf

 listen_port 지정

named.conf : 존 구문 설정 파일

zone 파일

 MX 0 메일 서버 지정 ( 낮은 숫자 우선순위

 NS 네임 서버 지정(도메인)

 도메인 지정시 마침표

iptables-save > x.sh : 명령어 이용 정책 저장

iptables-restore < x.sh : 명령어 이용 정책 로드

service iptables save : 스크립트 이용 정책 저장

cat /etc/sysconfig/iptables : 스크립트로 저장한 정책 출력

'System Engineering > Linux' 카테고리의 다른 글

FTP server set up  (0) 2018.06.16
Linux: swap  (0) 2018.06.11
리눅스 Core dump  (0) 2018.05.24
리눅스 시스템 프로그래밍 노트  (0) 2017.02.02
리마 1급 1차 노트  (0) 2017.01.31

Router logging trap


Level

 Level name

Router messages 

 0

Emergencies 

System shutting down due to missing fan tray

 1

 Alerts

 Temperature limit exceeded

 2

 Critical

Memory allocation failure

 3

 Errors

 Errors Interface Up/Down messages

 4

Warnings 

Configuration file written to server, via SNMP request 

 5

Notifications 

Line Protocol Up/Down 

 6

Information 

Access-List violation logging 

 7

Debugging 

Debug messages 


Media Access Control (MAC) 하위 계층 (802.3)

 -물리적 케이블 상에서의 데이터 전송 방법 정의

 -물리적 어드레싱, 네트워크 토폴로지, Line discipline, 에러검출, frame 순차 전송, 선택적 흐름제어 등의 기능 정의

 -Burned In Address

 -CRC: 송신부에서 만들어져 수신부에서 손상여부 검사


Logical Link Control (LLC) 하위 계층 (802.2)

 -protocol 종류 논리적 식별

 -데이터 캡슐화

 -SAP(Service Access Point) 프레임

 -SNAP(SubNetwork Access Protocol) 프레임


Datalink layer device

 -L2 switching > H/W based bridging

  ASIC (Application Specific Integrated Circuits) > 특수 H/W

 -Filtering: 수신 장비가 프레임과 동일한 세그먼트에 있는 경우, 다른 세그먼트로 가는 것을 막음

 -Forwarding: 수신 장비가 다른 세그먼트에 있을 경우, 해당 프레임을 적절한 세그먼트로 전달

 -Flooding: 수신 어드레스가 브리지에 알려져있지 않은 경우, 브리지는 수신된 곳을 제외한 모든 세그먼트로 해당 프레임 전달


Network layer

 -동일 broadcast domain에 연결되어 있지 않은 장비들 사이에서의 트래픽 전송 방법 정의

 -Logical address

 -Network route to destination

 -Distinguish the network of address to find a route

 -Host is a specific device or port

 -4 octets for address


Router operation on Network layer

 -network address

 -interface: use the interfeace for reach to the network

 -metric: represents the cost or distance from network(hop, delay, bandwidth etc...)

 -divides collision domain and broadcast domain from each segments

 -does not forward L2 broadcast/multicast frame

 -routing algorithm

 -take off the L2 header from frame and forward the pachket with L3 destination address

 -map the L3 logical address to specific network device

 -adapting QoS on special network frame

 -can connect each VLAN in switching

'System Engineering > Network' 카테고리의 다른 글

About https  (0) 2018.06.11
HAProxy – 오픈 소스 로드 밸런서  (0) 2018.05.24
포트 미러링  (0) 2018.05.24
Difference between each layer  (0) 2018.05.16
What is DNS?  (0) 2018.05.02
1.시스템 콜

OS에 리소스/서비스를 요청하려고 사용자 영역에서 시작해서 커널 내부로 들어가는 함수 호출

아키텍처 별로 시스템 콜의 수가 다르다


애플리케이션이 실행할 시스템 콜과 매개 변수를 레지스터를 통해 전달

시스템 콜은 0부터 시작하는 숫자로 나타내며 레지스터에 해당 시스템콜을 저장해야 함

시스템 콜 처리 과정은 컴파일러와 C 라이브러리에서 자동으로 처리



2.C 라이브러리


libc는 유닉스 애플리케이션의 핵심이며 다른 언어의 상위 레벨 라이브러리에 포함되어 코어 서비스와 시스템 콜을 처리하기 위해 동작한다

glibc: GNU C Library



3.C 컴파일러


GCC: 리눅스 표준 GNU C 컴파일러

C++ 시스템 프로그래밍에는 표준 C++ 라이브러리(libstdc++/libstdcxx)와 GNU C++ 컴파일러(g++)가 필요


API (Application Programming Interface)

 소스코드 레벨에서 서로 인터페이스 하는 방식 정의

 표준 인터페이스는 함수로 상위 레벨의 소프트웨어에서 하위 레벨의 소프트웨어를 호출

 API 구현체: 실제로 구현된 API


ABI (Application Binary Interface)

 특정 아키텍처 간 동작하는 소프트웨어 간의 바이너리 인터페이스 정의

 애플리케이션 내에서의 상호 동작, 커널과 애플리케이션, 애플리케이션과 라이브러리 간의 상호 동작에 대한 정의

 바이너리 호환성 보장하여 오브젝트 코드를 다시 컴파일하지 않고 같은 ABI 지원 시스템의 경우 동일한 기능을 수행하도록 보장

 콜링 컨벤션(함수 호출 방식, 인자 전달 방식, 레지스터 값 저장 방식, 반환값 가져가는 방식 등), 바이트 순서, 레지스터 활용, 시스템 콜 실행, 라이브러리 링크, 라이브러리 동작 방식, 바이너리 오브젝트 형식 등의 내용과 관련



4.파일과 파일시스템


 
리눅스는 모든 것이 파일이라고 여긴다. 따라서 모든 인터렉션은 실제 파일이 아닌 것 처럼 보일지라도 파일을 읽고 쓰는 것으로 이루어진다. 파일에 접근하여 읽기, 쓰기, 읽기/쓰기 모드로 열 수 있다. 열린 파일은 해당 파일에 대한 메타데이터와 연결된 고유한 기술자를 통해 참조할 수 있다. 커널 내부의 descriptor는 정수로 표현되며 file descriptor라고 부른다.(줄여서 fd) fd는 사용자 영역에서 공유되며 응용 프로그램이 파일에 접근할 때 직접 사용한다. 리눅스 시스템 프로그래밍 대부분은 fd를 열고 조작하고 닫는 작업이다.

 4.1.일반 파일
  
바이트 스트림이라 부르는 연속적으로 나열된 바이트 배열에 저장된 데이터를 의미. 리눅스 파일을 위한 특별한 자료구조는 없다.
 
파일은 바이트를 읽고 쓰는 것이 가능. 파일 내부의 위치를 지정해서 수행하는데 이 위치는 file offset 또는 file position이라고 한다. Offset은 커널이 열린 파일마다 유지하는 메타데이터의 핵심. 파일이 처음 열리면 offset0. 보통 파일은 바이트 단위로 읽고 쓰기 때문에 파일 오프셋 역시 바이트 단위로 증가하거나 감소한다. 직접 file offset을 지정 가능. 파일 끝을 넘어가는 위치를 지정하면 파일 끝 부터 지정 위치까지 0으로 채워진다. 하지만 파일 시작 위치보다 앞서 기록하는 것은 불가능. offset은 0부터 시작하며 음수가 될 수 없다. 파일 쓰기 작업은 대부분 파일 끝에서 일어나며 offset의 최대값은 offset 저장을 위해 사용되는 C 타입의 크기로 결정되며 최신 리눅스에서는 64비트 값이다.

파일 크기는 바이트 단위로 측정되며 파일 길이라 한다. truncation 연산을 통해 원래보다 작은 사이즈/큰 사이즈 상관없이 잘라낼 수 있으며, 빈 공간은 0으로 채워진다. 최대 파일 길이는 최대 file offset과 동일하며 C 타입 크기로 제한된다.

하나의 파일은 다른 프로세스나 동일 프로세스에서 한 번 이상 열 수 있다. 열릴 때 마다 고유 fd를 반환하며 프로세스에서 fd 공유 가능하다. 하나의 fd는 하나 이상의 프로세스에서 사용될 수 있다. 커널은 파일에 대한 동시 접근을 막지 않으며 여러 프로세스에서 동시에 같은 파일을 읽기/쓰기가 가능하다.

 파일은 inode 파일 시스템 내에서 고유한 정수 값으로 참조되며 inode는 디스크에 저장된 물리적 객체임과 동시에 커널에서 자료구조로 표현되는 논리적 개념이기도하다.


디렉터리와 링크

 inode 번호로 파일에 접근하려면 잠재적 보안 위협 등의 이유로 보통 사용자 영역에서 파일에 접근 시 inode 대신 파일 이름을 사용한다. 디렉터리는 파일에 접근하기 위한 이름을 제공하는데 inode 대신 사람이 읽을 수 있는 이름으로 나타낸다. 이 이름과 inode 쌍을 링크라 한다. 사용하는 파일 시스템에 맞게 이 링크를 관리하고 물리적으로 디스크에 저장하는 코드가 커널에 구현되어 있다. 디렉터리는 일반 파일과 비슷하지만 inode의 맵핑만 저장하고 커널이 이 맵핑을 이용해 이름으로 inode를 찾는다.

 inode에는 디스크에서 파일의 위치 같은 파일 관련 메타데이터가 있다.

 파일 경로 오픈 요청 시 커널은 해당 파일 경로에 속한 각 directory entry(dentry in kernel inside)를 탐색하여 다음 inode를 찾는다. 커널은 dentry 캐시를 사용하여 디렉터리 찾기 결과를 저장하고 나중에 일시적인 지역성을 활용해 탐색 속도를 높인다.

 커널은 사용자 영역에서 디렉터리를 일반 파일 처럼 열고 조작하지 못하도록 제한한다. 링크 추가/삭제 시스템 콜을 이용하여 조작한다. 커널 중재 없이 디렉터리 조작 시 단순 오류의 결과로 파일 시스템 전체가 망가질 수 있다.


하드링크

 다중 링크를 통하여 동일한 inode에 여러 이름을 맵핑할 수 있다. inode에서 파일 시스템 내부에 링크 카운터를 두어 자신을 가리키는 링크 개수를 추적하며 이 값이 0이 되면 파일시스템에서 inode와 관련 자료를 실제로 삭제한다.


심벌릭 링크

 링크로 연결할 파일의 완전한 경로 이름을 포함하는 독자적인 inode와 데이터가 담겨있다. 존재하지 않는 파일을 가리키는 심벌릭 링크를 꺠진 링크라 한다.

 하드링크보다 오버헤드를 많이 초래하는 이유는 심벌릭 링크를 효과적으로 탐색하기 위해 심벌릭 링크와 연결된 파일 둘 다 다뤄야 하기 때문이다. 오버헤드 크기는 작지만 부정적인 것으로 취급한다. 일종의 바로가기 처럼 동작한다.


특수 파일

 파일로 표현되는 커널 객체. block device, character device, named pipe, unix domain socket의 4종류 특수 파일 지원. 유닉스 시스템에서 하드웨어 장치 접근 또한 파일을 거쳐 실행 된다.

'System Engineering > Linux' 카테고리의 다른 글

FTP server set up  (0) 2018.06.16
Linux: swap  (0) 2018.06.11
리눅스 Core dump  (0) 2018.05.24
리눅스마스터 1급 2차 노트  (0) 2017.04.17
리마 1급 1차 노트  (0) 2017.01.31

uname: 시스템 정보 출력, 기기 정보, 구동중인 운영체제 정보 출력. 디폴트 옵션은 s

 -r: 커널 릴리즈 출력

 릴리즈 버전의 두 번째 숫자 의미: 마이너 버전, 안정 버전을 의미


RAID 0: 데이터 strip (복수 디스크에 분산 저장)

RAID 1: Mirroring

RAID 5: Parity 정보 각 디스크에 분산 저장

RAID 10: Mirroring 후 Stripping


/boot/grub/grub.conf

default 0: 첫 번째 부팅 메뉴 디폴트로 실행


XFree86: x window 구현체


사용가능한 shell 경로: /etc/shells

기본 shell은 /etc/passwd 변경 후 리부팅하여 변경된 shell 사용 가능


Nonpreemptive Scheduling (비선점 스케줄링):

 프로세스 종료 시간을 비교적 정확하게 예측 가능

 자원을 스스로 반납할 때까지 계속 사용하도록 허용

 FIFO


Data Link layer 특징

 Frame 시작 및 끝을 부가하여 프레임 구성

 정해진 시간 내에 메시지가 오지 않으면 프레임 재전송

 전송 오류 검출, 프레임 재전송 요구


ethtool: NIC 속도 및 전송모드 설정 유틸리티


lsmod: 적재된 모듈 출력 /proc/modules 참조


root's UID/GID = 0


Super Block: 파일 시스템에 의존하는 정보들을 가지며 파일시스템 크기 등 전체 정보를 가지고 있다

Special File: 프린터, CD-ROM, 디스크 등 주변장치, 프로세스 간 상호통신

Regular File: 일반 텍스트 파일이나 바이너리 파일


디렉터리 퍼미션이 파일 퍼미션보다 우선하기 때문에 파일 소유자가 아니더라도 삭제가 가능


chmod 4000: SetUID -rwsr--r-- 소유자 권한으로 파일 실행

chmod 2000 SetGID -r--rwsr-- 그룹 권한으로 파일 실행

chmod 1000 Sticky Bit -r--r--r-t 공유 디렉터리


fdisk > mkfs > mkdir > mount


fsck

 0: 에러 없음

 1: 파일 시스템 에러 픽스

 2: 리부팅 필요

 4: 파일 시스템 에러 지속

 8: 실행 에러

 16: 사용법, 문법 에러

 128: 공유 라이브러리 에러


tune2fs: 파일 시스템 튜닝

e2fsck(fsck): 파일 시스템 점검

debugfs: 파일 시스템 디버거

dd: 파일 또는 파티션을 지정한 블록사이즈 단위로 지정한 용량을 카피. 디스크를 이미지 형태로 백업, 파일의 포맷 등 형식 변경, 스왑파일 생성, 디바이스 초기화


quota: 파일 시스템마다 사용자나 그룹이 생성 가능한 파일의 용량 및 개수 제한

 grace: soft limit에 지정된 용량 초과시 남은 유예기간

quotacheck -avug: 현재 상태 체크


swap: 자주 사용되지 않는 메모리 페이지를 디스크의 스왑 공간으로 이동시켜 메모리를 확보. 스왑 파티션은 실제 RAM의 2배로 권장하며 언제든지 조절 가능

mkswap: 스왑파티션/파일 생성

free: 메모리 정보 출력

swapon: 스왑 공간 초기화

df: 파일시스템, 디스크 용량, 사용량 확인


runlevel

 0 - halt

 1 - single user mode: 시스템 복원, 파일시스템 점검 등

 2 - multiuser mode: without NFS

 3 - full multiuser: shell 기반 다중 사용자(cli)

 4 - unused: 기본적으로 사용하지 않지만 임의로 정의해 사용

 5 - X11: level 3과 같지만 그래픽 유저 모드

 6 - reboot


ps - RSS (Resident Set Size): non-swapped memory that a task has used(in KiloBytes. alias rssize, rsz


nice: niceness(CPU 스케줄링 우선순위)를 지정. 커널 스케줄러 내에 해당 프로세스 우선순위 지정

nohup: 프로세스 중단(hang up) 무시하고 명령어 실행. 표준 출력을 nohup.out으로 돌림


rpm -qf file.exe : 해당 파일을 포함하는 패키지에 대한 질의


tar -z: gzip 함께 사용

 -j: bzip2 함께 사용(.bz2)

 -J: xz 파일


/proc/cmdline: 커널 실행 옵션

/proc/cpuinfo: CPU 정보 확인

/proc/crypto: 설치된 암호화 알고리즘 목록

/proc/interrupts: I/O 장치 당 CPU 당 인터럽트 수 나열


lspci: 시스템의 모든 PCI BUS와 장치에 대한 목록, 각 하드 웨어 설정 정보 확인

/etc/sysconfig/hwconf: 하드웨어를 자동으로 인식하여 설치하는 데몬(kudzu)이 인식한 하드웨어를 설정하여 DB화 하여 관리하는 파일

dmidecode: 하드웨어, 바이오스 정보를 system DMI 테이블에서 읽음. 현재 configuration 상태


insmod: 커널 디렉토리를 찾아서 해당 모듈 추가

lsmod: 추가된 모듈 출력

rmmod: 모듈 삭제

modprobe: depmod에 의해 갱신된 modules.dep에서 찾아 추가. insmod와 달리 커널 디렉토리로 갈 필요 없이 아무 위치에서나 추가 가능. 의존성/선실행 모듈 먼저 추가


make xconfig: X-window 환경의 툴을 이용하여 커널 환경 설정. 프로세서타입, RAM 용량, SCSI, NIC, 사운드 카드 등 설정. 기존의 config, menuconfig에서 개선


lpadmin: CUPS 프린터 설정

 CUPS (Common Unix Printing System)

lp 파일 출력

lpq: 인쇄 큐 상태 확인, 인쇄 작업


syslogd: 시스템 로그 데몬. /var/log/messages 기록. 서비스 로그

klogd: kernel messages

logrotate: 시스템 로그를 rotates, compresses, mails. 설정 파일 변경 시 cron에 등록되어 있음

dmesg: 부팅 로그/메시지


/var/log/messages: 서비스/시스템(syslog에 의한 로그인/설정/장치 정보 등) 로그

/var/log/secure: telnet, ssh 접속에 대한 유저 로그인 인증 로그

/var/log/boot.log: 부팅 시 서비스 데몬들의 실행 상태 기록

/var/log/dmesg: 부팅 시스템 로그


/etc/nologin: 시스템 로컬 외 모든 외부접속 차단 리스트

/etc/securetty: 터미널 관련 root 접근 제한 리스트

/etc/passwd: 각 패스워드의 계정 정보

/etc/shadow: 각 패스워드의 계정 정보와 만료 기간 정보


PAM (Pluggable Authentication Modules): 사용자 인증 모델. 리눅스 또는 GNU 환경에서 앱과 서비스에 대한 동적 인증 제공

requisite: PAM 구성 파일에서 사용하는 토큰 중에서 모듈을 이용하는 인증이 실패한 경우 인증을 거부하기 위해 사용하는 토큰


day-zero Backup: 시스템 설치 후 시스템 사용 전 모든 파일과 프로그램 백업. 복원 CD 등

full Backup: 사용자가 지정한 기준에 의하여 주기적으로 시스템의 모든 파일과 프로그램 백업. 주로 Tape를 이용. ghost, true image 등

incremental Backup(변경분 백업): 응용프로그램 추가 등 특정 이벤트 후나 주기적 날짜 간격으로 이전 백업 후의 변경된 파일만 백업


cpio (copy in and out): 개별 파일, 파일 그룹, 전체 파일 시스템 복사

dump: 파일시스템 자체를 읽어 내어 전체/증분 백업

dd: 파일 변환, 복사 명령


rdist: 복수의 호스트에 파일 분산 복사. 서버간 소스 배포, 싱크 시 사용 가능

rmt: IPC를 통해 테이프 드라이브 덤프를 원격 제어


restore: dump된 파일 복구

 -i: 대화식으로 복구 파일 선택 후 복원

 -f: 백업 파일명으로 지정

 -r: 전체 복원


httpd.conf 항목

 ServerRoot: 아파치 설치 경로

 DirectoryIndex: 디렉터리의 인덱스 페이지 설정. 파일 이름 없이 디렉터리 요청 시 연결되는 파일 이름

 DocumentRoot: 실제 웹사이트 운영 시 기본적인 웹사이트의 root. (ex. D:/www/myweb

 ServerAdmin: 사이트 관리자 메일 설정


apachectl: 스크립트. 다양한 argument 지정을 통해 쉽게 시작, 중지, 재시작 가능


.htaccess: 아파치 웹 서버에서 특정 디렉터리에 대한 사용자 인증시 필요

.htpasswd: 아파치 웹 서버 에 사용할 사용자명과 암호를 저장하는 일반 파일을 생성, 수정


Listen: 아파치  2.0 이후 httpd.conf에서 포트번호 변경 시 설정


short_open_tag : php <? ?> 태그 설정


testparm: smb.conf 오류 검사 명령


mailq: 외부로 보내는 메일이 잘 전송 되었는지 확인


MX record: 도메인 이름을 하나 이상의 메일 호스트 이름으로 매핑


xinetd.conf

 per_source: service per source IP address

 cps: connections per second. limits the rate of incoming connections

 access_time: time intervals when the service is available

 redirect: allows a tcp service to be redirected to another host


http_access: proxy 서버 설정 시 접근 제어 사용 항목


xinetd: (extended internet daemon: 오픈 소스 슈퍼 서버 데몬

portmap: NIS (SUN의 Network Information System) 서버 동작시키기 위한 데몬

autofs: auto mount daemon(자동으로 파일 시스템 마운트/언마운트) 작동 제어 프로그램


NIS's Daemons

 ypserve: server process

 ypbind: binding process

 ypxfr: high speed map transfer

 rpc.yppasswdd: NIS password update daemon

 rpc.ypupdated: modifies other maps such as publickey


yp


passwd.byname: NIS 서버에서 데이터베이스 갱신 시 생성되는 파일로 사용자의 계정 정보를 담음


snort: IDS

RSA, DSA: 공개 키 암호화


/sbin/iptables -F :정책 초기화

 -P 차단

 -A 허가


xstart 명령 에러 시 Xconfigurator 명령으로 설정


특정 스레드가 과도하게 CPU를 과도하게 사용하는 것을 막기 위해 지정된 클럭 시간 간격으로 클럭 인터럽트가 실행 도어 지정된 시간 동안만 스레드가 CPU를 사용할 수 있도록 함


TCP: 패킷 전송 흐름 제어

IP: 데이터그램의 분열/재배열, IP주소의 정의, 데이터그램 라우팅 역할 담당


wheel 그룹: root, wheel 그룹 소속, 그 외 사용자의 3개의 클래스로 나눔. 그룹에 속한 사용자들만 su root를 허용.


kill 명령 default signal: SIGTERM(15)


patch: 커널, 소스패치 시 소스의 일부를 자동으로 변경해 주는 유틸리티


make bzImage: 커널 컴파일 과정 중 커널 이미지 생성하는 명령어


make mrproper: 커널 컴파일을 위한 환경설정에 사용되는 명령어


badblocks: 디스크 물리적 손상을 검사하는 명령어


SANE: 스캐너 사용을 위한 패키지


FQDN (Fully Qualified Domain Name): 도메인 네임을 루트 도메인으로부터 시작하는 전체 이름의 표기를 사용한 것으로 도메인 네임의 끝에 루트 도메인의 null 레이블까지 완전히 표기하는 것


Slackware: 현존 가장 오래된 리눅스

SCSI는 확장성, 호환성이 뛰어나고 고성능이지만 직렬 인터페이스는 아니다.

슈퍼데몬 서비스: telnet, rsync, pop3 등


/proc/partitions: 각 파티션의 block 수 확인 가능


XFS: 강력하고 확장성 노픈 단일 호스트 64 비트 저널링 파일 시스템. 완전한 익스텐드 기반으로 매우 큰 파일 및 파일 시스템 지원. 빠른 복구를 위하여 메타데이터 저널링 지원. 마운트 된 상태에서 조각 모음 및 확장할 수 있으며 RHEL 6에서 특정 유틸리티 백업 및 복원 지원.


dig: 리눅스 dns 조회 명령어. domain information groper

 connection timed out; no servers could be reached 메시지 발생 시 /etc/resolv.conf 수정


ifconfig 명령으로 MAC addr, RX packets, MTU 등을 확인 할 수 있다


useradd -G: 사용자가 속한 그룹 리스트

 -g: 사용자가 속한 그룹


usermod -s: 사용자 쉘 변경

 -G: 보조 그룹 설정


/etc/fstab: 부팅 시 파일시스템 마운트하기 위한 설정 파일.


crontab 명령어 사용 시 사용자 접근 제어 파일

 /etc/cron.allow, /etc/cron.deny


yum list installed: yum을 사용하여 현재 시스템에 설치된 패키지 목록 확인


make menuconfig: 커널 컴파일 옵션 설정 작업을 위한 명령


lpq: 프린터 작업 상태 확인 명령


modprobe -r: 모듈 의존성에 의해 저게되지 않는 경우 사용하는 모듈 제거 명령


/var/log/dmesg: 시스템 부팅 시 보이는 시스템 정보 메시지 기록


/etc/syslog.conf: syslogd 데몬이 사용하는 설정 파일


/etc/logrotate.conf: rotate관련 설정 파일


/etc/exports: 파일에 마운트 허가할 디렉토리와 호스트 목록 설정

 root_squash 클라이언트에서 루트를 서버상의 nobody로 매핑

 no_root_squash 서버와 클라이언트 모두 같은 루트 사용


쉘 명령 라인에서 날짜를 지정하는 방법: `date +%Y%m%d%H%M` >>> 201702281508


리눅스 부팅 과정 중 가장 마지막에 실행되는 스크립트: /etc/rc.d/rc.local


ext4에서 생성 가능한 서브 디렉토리 수: 무제한


grub-install /dev/sda: GRUB 복구 명령어


/etc/inittab: booting 또는 run level 변경 시 init 데몬이 읽어오는 파일


netstat

 -n: ip address 등을 숫자 형태로 보여줌

 -a: listening / not listening 포트 모두 보여줌

 -l: listening 포트만 보여줌

 -i: 각 인터페이스를 테이블 형식으로 보여줌

 -p: PID와 프로그램 이름 출력

 -o: 네트워크 타이머 포함하여 출력


/etc/passwd

 root:x:0:0:root:/root:/bin/bash

username:passwd:uid:gid:account name:home dir:login shell


/etc/default/useradd: 사용자 생성 시 지정되지 않은 옵션에 대한 기본값 명시

/etc/skel: 새로 생성되는 사용자의 홈 디렉토리로 복사될 파일들이 존재


chgrp: 그룹 소유권 변경

usermod: 사용자 계정 정보 수정

groupmod: 그룹에 대한 정보 변경

chage: 사용자 passwd에 대한 expire 기간 정보 설정


swap 생성 순서

 dd > mkswap > swapon


lsattr: 리눅스의 파일 시스템(ext2)의 속성 출력

chattr: 리눅스의 파일시스템 속성 변경

getfacl: 파일 접근 제어 리스트 받아오는 명령

setfacl: 파일 접근 제어 리스트 작성 명령


nice 명령을 이용하여 변경할 수 있는 NI값의 범위: -20 ~ 19


커널 컴파일

 make bzImage: 설정한 기준으로 새 커널 생성


/dev/ttyS0: 시리얼 포트


fdisk

 t: 파티션 타입 넘버 설정(ex. swap)


last: 로그인 기록 출력

lastb: 로그인 실패 기록 출력

logname: 로그인 사용자 출력

nologin: 리늑수 쉘 권한 없는 사용자 생성시 useradd -s 옵션에 /sbin/nologin 또는 /sbin/false를 준다. (ex. ftp 접속가능, ssh 접속 불가능)


rsyslog: syslog 대체하여 최근 리눅스에서 사용. 시스템 로그, 커널 메시지 관련 데몬. 멀티 스레드, TCP 지원, MySQL, PostgreSQL, Oracle 등 DB 로그 관리도 가능


rcp: remote copy

scp: secure copy


rdump: recursively dump

rdist: 복수의 호스트에 파일 사본 분산

rsync: 원격의 파일과 디렉토리를 복사하고 동기화. 백업 용도로도 사용


cpio: 파일 아카이빙 도구. 압축을 하지않고 묶기만 함

 -i: 압축 해제

 -o: 압축 생성

 -p: 표준 입력에서 파일 명 읽음

 -c: 아스키 형식으로 헤더 정보 읽고씀

 -v: 파일명 목록 출력


libphp5.so: php5 소스 설치 시 생성되는 모듈 파일


ypwhich: NIS 서버 또는 map master 출력


LDAP: Lightweight Directory Access Protocol. TCP/IP 위에서 디렉토리 서비스를 조회하고 수정 가능한 응용 프로토콜


grep ^story: ^는 행 시작 지시자


/etc/host.conf: DNS 서버 설정 파일

/etc/nsswitch.conf: 네임 서버 스위치 설정 파일

/etc/openldap/slapd.conf: LDAP 서버 설정 파일

/etc/openldap/ldap.conf: LDAP 설정, 환경 변수 파일


smbrun: smb 호스트에서 프로그램을 수행하도록 하는 스크립트

smbstatus: 현재 로컬 smb 호스트의 연결 상황 출력

nmblookup: IP로 호스트 명 찾는 명령

testparm: 삼바 테스트 명령


smb.conf

 hosts allow: 허용할 호스트 IP, 네트워크/넷마스크


showmount: 호스트에서 NFS 실행 확인하는 명령

nfsstat: NFS 통계 목록 출력


vsftpd

 max_clients: 클라이언트 수 제한 옵션


SMTP: 메일 서버간 또는 메일 클라이언트에서 메일 서버로 전송하는 규약

POP3: 유저가 메일서버에서 메일을 받기 위한 규약


/etc/mail/access 변경 후 /etc/mail/access.db에 등록 작업을 위해 makemap hash 실행


/etc/aliases: sendmail의 일부로서 메일이 alias 설정 된 계정으로 전달되도록 함

/etc/mail/virtusertable: virtual hosting 시 사용하며 설정 변경 후 makemap hash 적용 해주어야 한다


/etc/named.conf

 hint: 특수한 타입의 zone으로 루트 네임서버를 지정할 때 사용

named-checkconf: DNS 서버 환경 설정 파일의 문법적 오류 검사 명령


반가상화: half-virtualization. 하이퍼바이저를 통해 하드웨어 제어

전가상화: full-virtualization. 하드웨어단 까지 가상화


QEMU: Quick EMUlator. CPU 에뮬레이터

'System Engineering > Linux' 카테고리의 다른 글

FTP server set up  (0) 2018.06.16
Linux: swap  (0) 2018.06.11
리눅스 Core dump  (0) 2018.05.24
리눅스마스터 1급 2차 노트  (0) 2017.04.17
리눅스 시스템 프로그래밍 노트  (0) 2017.02.02

+ Recent posts