All Category

공개범위 설정
Table
   
기본채널
Table
   
카테고리
Table
   
공개범위
[전체]전체 공개
Table
   
위치정보
[전체]나만 보기
Table
   
다운로드
[전체]로그인 공개
Table
   
슬라이드
Table
   
시작고정
Table
   
사진정보
0
Date: 2021-03-24
2021
March
24

[2]. Linux Server 설치 - 1. 파티션 구성 결정


Image Source : www.ferroquesystems.com




1. 파티션 구성 결정


[1]. 서버 용도별 파티션 구성 예시 (참고)

파티션

최소크기

Name 서버

Mail 서버

Web 서버

DB 서버

설명

/

250 MB

3 GB

3 GB

3 GB

3 GB

/bin, /etc, /usr 등등...

/boot

250 MB

250 MB

250 MB

250 MB

250 MB

부트 메니져

/usr

250 MB

10 GB

10 GB

10 GB

10 GB

사용자 어플리케이션 설치

/tmp

50 MB

8 GB

8 GB

8 GB

8 GB

임시파일(너무 작을경우 큰 프로그램 설치시 문제 발생, oracle 등등..)

/var

384 MB

나머지 모두

나머지 모두

1.5 GB

1.5 GB

로그/케쉬/메일 Spool

/home

100 MB

15 GB

15 GB

나머지 모두

나머지 모두

사용자 계정 Home

swap


(실제 메모리)

4 GB

2 GB 이상





실제 메모리가 4 GB이하 이면 가상메모리를 2 GB 이상으로

4~16 GB

4 GB 이상





실제 메모리가 4~16 GB 이면 가상메모리를 4 GB 이상으로

16~64 GB

8 GB 이상





실제 메모리가 16~64 GB 이면 가상메모리를 8 GB 이상으로

64~256 GB

16 GB 이상





가상 메모리가 64~256 GB 이면 가상메모리를 16 GB 이상으로

256~512 GB

32 GB 이상





가상 메모리가 256~512 GB 이면 가상메모리를 32 GB 이상으로

전체







- 참고 사항 이며 절대적인것은 아니다. 자신의 상황에 맞게 적절히 조절하면 된다.








[2]. 파티션별 시스템 디랙토리 구성(참고)

파티션

기본 용량

주요 디랙토리

설명

/

147 MB

/boot

부트 메니져 디랙토리

12 MB

/root

root 홈 디랙토리

-

/mnt

media 디렉토리와 비슷한 용도로 탈부착이 가능한 장치들에 대하여 일시적인 마운트포인트로 사용하는 디렉토리

-

/media

DVD, CD-ROM, USB등과 탈부착이 가능한 장치들의 마운트포인로 사용되는 디렉토리

429 MB

/bin

리눅스 기본 명령어 mv, cp, rm, rmdir, df, sync 등이 저장됨

102 MB

/sbin

시스템 관리자용 명령어 저장, ifconfig, e2fsck, ethtool, halt, shutdown 등 /bin 에 존재하지 않는 부가적인 명령어 + 네트워크 관련 명령어

1.7 GB

/lib

프로그램에 필요한 라이브러리가 들어있음, 커널모듈 파일과 라이브러리 파일, 프로그램 개발(C, C++)에 필요한 각종 라이브러리 파일

-

/tmp

임시로 파일이 저장되는 공간, 시스템을 사용하는 모든 사용자들이 공동으로 사용하는 공용 디렉토리, mysql.sock 등과 같은 소켓파일, 아파치에서 사용하는 세션파일등이 생성

54 MB

/etc

시스템의 전반적인 환경 설정 디랙토리(패스워드/그룹/네트워크)

-

/proc

프로세스 관련

/usr

10 GB


시스템에 사용되는 각종 프로그램들이 설치되는 디렉토리이다. 프로그램과 관련된 명령어 라이브러리들이 이 디렉토리에 위치 하게 된다

/var

7.1 GB


시스템에서 사용되는 동적인 파일들(로그/메일Spool/캐쉬)

/dev

-


시스템의 각종 디바이스들에 접근하기 위한 디바이스 드라이버들이 저장되어 있는 디렉토리이다

/home

-


사용자 계정 Home 디랙토리





- 일반적으로 파티션 크기디랙토리 크기가 헷갈리는 경우가 있다. 예를 들어서

/tmp 공간이 부족해서 확장을 해야할 경우 /tmp 디랙토리를 확장 하는것이 아니라 (/) 루트 파티션을 확장 해야한다

(윈도우를 예를 들면 c\Program Files 용량이 부족하다면 c:드라이브를 확장 해야하는 것과 같다) 왜냐하면 /tmp는 (/)루트 파티션에 포함 되어 있기 때문이다

- 위에 예제 상으로는 root파티션에는 /, /usr, /var, /dev, /home 이다.

- 단순히 디랙토리 path정보만 가지고 상위 파티션을 알수는 없다. 일예로 /var은 별도의 파티션 이지만, (/) 루트 파티션에 놓을수도 있다. 이런 경우 /var 확장을 위해서는 (/)루트 파티션을 확장 해야한다.

- 파티션 구성은 Linux설치시에 결정 할 수 있다

- 일반적으로는 /etc/fstab에서 마운트 정보가 (/)루트 파티션 이다.








[3]. 주요 디랙토리 용도


- etc

  • /etc/sysconfig  : 네트웍 관련 디랙토리
  • /etc/rc.d     : 시스템 부팅 레벨별 설정 파일들 저장 리눅스의 6가지 실행 레벨이 있다.
  • /etc/rc.d/init.d : 시스템 초기설정 파일
  • /etc/xinit.d    : 수퍼데몬 xinetd에 의해 서비스되는 서비스 설정 파일
  • /etc/X11      : X 윈도우 시스템의 루트 디렉토리
  • /etc/http     : Apache 설정 파일
  • /etc/yum      : YUM 설정 파일 디랙토리
  • /etc/shadow   : 보안상 이유로 시스템 관리자만 접근 할 수 있는 파일에 패스워드 부분만을 따로 저장하는 파일이다.
  • /etc/group    : 시스템의 그룹에 대한 정보를 저장하고 있는 파일이다.
  • /etc/inittab   : init을 설정하는 파일이다.
  • /etc/issue    : 로그인시 출력되는 메시지 설정
  • /etc/issue.net : 리모트 접속시 보이는 메시지 설정
  • /etc/motd    : 시스템 접속시 쉘이 뜨기 전에 출력하는 메시지
  • /etc/profile   : 시스템이 시작될때 사용자에 대해 자동으로 실행되는 스크립트
  • /etc/csh.login : 시스템이 시작될때 사용자에 대해 자동으로 실행되는 스크립트
  • /etc/csh.cshrc : 시스템이 시작될때 사용자에 대해 자동으로 실행되는 스크립트



- usr

  • /usr/bin : 리눅스 시스템에서 사용되는 각종 프로그램들이 저장되어 있으며 /bin 디렉토리에 없는 다양한 실행 파일들이 저장되어 있는 디렉토리이다.
  • /usr/sbin : 시스템 관리자를 위한 명령어들이 저장되는 디렉토리이다. 보통 이 디렉토리의 명령어들은 루트 파일 시스템에는 필요가 없는 서버 프로그램들이 저장된다.
  • /usr/include : C언어 관련 헤더 파일들이 저장되어 있는 디렉토리이다. C언어 컴파일시 참조 되기도 한다
  • /usr/lib : 사용자의 프로그램을 컴파일한다면 해당 프로그램들은 /usr/lib 디렉토리의 파일에 link 된다. 또한 이 라이브러리 안에 실행 코드가 필요하다면 /lib 디렉토리를 참조한다.
  • /usr/local : 시스템의 특정적인 프로그램들이 저장되는 디렉토리이다. 관리자가 별도로 설치하는 프로그램들의 위치 이다
  • /usr/man : man 페이지의 실제 내용들이 저장되어 있는 디렉토리이다.
  • /usr/src : 시스템에서 사용하는 각종 프로그램들의 컴파일되지 않은 소스 파일들이 저장되어 있다. /usr/src/linux 디렉토리가 바로 리눅스의 커널 소스를 저장하고 있는 디렉토리이다
  • /usr/doc : 각종 문서들이 저장되어 있는 디렉토리이다.


- var

  • /var/cache : 포맷된 매뉴얼 페이지들이 잠시 대기(cache)하기 위한 디렉토리이다.
  • /var/lib   : 시스템이 동작하면서 계속 수정되고 변경되는 파일들을 위한 디렉토리이다.
  • /var/local : /usr/local 디렉토리에 설치된 프로그램들의 각종 데이터들이 저장되는 디렉토리이다.
  • /var/lock  : 잠금 파일들이 저장되는 디렉토리이다. 프로그램들이 특정한 장치나 파일들을 프로그램 자신이 독점적으로 사용하려 할 때 /var/lock 디렉토리에 잠금 파일을 만들어 사용하게 된다. 프로그램이 실행에 관련해서 실행중인지 알수 있는 파일들이 모여 있다.
  • /var/log   : 프로그램들의 로그 파일들이 저장되는 디렉토리이다. 이 디렉토리에 시스템 부팅에 관련된 messages, syslog 로그인 로그아웃 정보 wtmp파일 등 모든 로그 바일이 모여 있다 시스템 사용에 따라서 크기가 무한대로 증가할수 있기 때문에 정기적인 관리가 필요함
  • /var/run   : 시스템의 현재 정보들을 저장하고 있는 디렉토리앋. /var/run/xinetd.pid 파일의 경우 현재 사용중인 xinetd 데몬의 프로세스 번호를 저장하고 있다.
  • /var/spool : 메일이나 뉴스, 프린터 큐 등과 같은 시스템상에서 대기 상태에 있는 작업들을 위한 디렉토리이다. 각각의 대기 작업들은 모두 /var/spool 아래 고유의 디렉토리에 위치한다(/var/spool/mail)
  • /var/tmp   : /tmp에 저장된 임시 파일들 중에 오래 보관되어야 할 임시 파일들이 저장되는 디렉토리이다.



- proc

  • /proc/번호      : 프로세스 변호가 별로 프로세스에 대한 정보를 저장하는 디렉토리이다
  • /proc/cpuinfo   : 프로세서의 정보를 저장하고 있는 파일이다
  • /proc/devices   : 현재 시스템 커널에 설정되어 있는 장치들에 대한 정보를 저장하고 있다. 파일 등의 정보로 모든 시스템의 장치 목록에 대한 정보를 얻을 수 있다.
  • /proc/dma     : 현재 시스템에서 사용하고 있는 DMA 채널에 대한 정보를 저장하고 있다.
  • /proc/filesystem : 시스템에 설정되어 있는 파일 시스템에 대한 정보를 저장하고 있는 파일이다.
  • /proc/interrupts : 현재 사용중인 인터럽트와 인터럽트의 사용량에 대한 정보를 저장하고 있는 파일이다.
  • /proc/ioports : 현재 사용중인 I/O 포트에 대한 정보를 저장하고 있는 파일이다.
  • /proc/kcore   : 현재 시스템에서 사용중인 메모리의 실제 이미지이다. 이 파일은 실제 메모리의 내용을 모두 가진 것처럼 보이지만 프로그램이 필요로 하는 부분의 이미지만을 필요할 때 만들어 제공한다.
  • /proc/kmsg   : 커널에 의해서 출력되는 메세지들을 저장하고 있는 파일이다. 이것은 또한 syslog 파일에도 저장된다.
  • /proc/loadavg : 현재 시스템의 평균 부하량(Load Average)에 대한 정보를 저장하고 있는 파일이다.
  • /proc/ksyms   : 시스템 커널이 사용하고 있는 심볼들에 대한 정보를 저장하고 있는 파일이다.
  • /proc/meminfo : 현재 시스템이 사용중인 메모리의 사용량을 저장하고 있는 파일이다.
  • /proc/self   : 이 디렉토리를 보고 있는 프로그램 자신의 프로세스 디렉토리로 링크되어 있다. 만약 서로 다른 2개의 프로세스가 /proc 디렉토리를 보고 있다면 두 프로세스는 서로 다른 링크를 보게 된다. 이를 통해서 프로그램들이 자신의 프로세스 디렉토리를 쉽게 찾을 수 있다. 
  • /proc/stat   : 시스템의 현재 상태에 대한 다양한 정보를 저장하고 있는 파일이다.
  • /proc/uptime  : 시스템이 얼마나 오래 동작했는지에 대한 정보를 저장하고 있는 파일이다.
  • /proc/version : 시스템이 현재 사용중인 커널 버전에 대한 정보를 저장하고 있는 파일이다.


- dev

  • /dev/hda  : 하드디스크 첫번째 (파티션1: /dev/hda1, 파티션2: /dev/hda2....)
  • /dev/hdb  : 하드디스크 두번째 (파티션1: /dev/hdb1, 파티션2: /dev/hdb2....)
  • /dev/hdc  : 하드디스크 세번째 (파티션1: /dev/hdc1, 파티션2: /dev/hdc2....)
  • /dev/sda  : SCSI 또는 SSD 첫번째 (파티션1: /dev/sda1, 파티션2: /dev/sda2....)
  • /dev/sdb  : SCSI 또는 SSD 두번째 (파티션1: /dev/sdb1, 파티션2: /dev/sdc2....)
  • /dev/sdc  : SCSI 또는 SSD 세번째 (파티션1: /dev/sdc1, 파티션2: /dev/sdb2....)
  • /dev/lp   : 시스템의 병렬 포트 장치들이다.
  • /dev/null : 이 장치로 데이터 등을 보내면 모두 폐기되므로 주의해야 한다(블랙홀 디바이스 라고도 부르는 특별한 디바이스이다.)
  • /dev/pty  : 시스템으로의 원격 접속을 위한 'pesudo-terminal' 들이다. 만약 시스템 계정 사용자들이 원격지에서 시스템으로 텔넷 등을 이용하여 시스템에 접속을 시도한다면 이들은 /dev/pty 디바이스들을 사용하게 되는 것이다.
  • /dev/ttyS : 직렬포트 장치
  • /dev/cuaS : Callout 장치
  • /dev/tty  : 시스템의 각종 프로세서, 프로그램 정보 그리고 하드웨어적인 정보들이 저장된다. 

 









URL : http://www.epari.net/@architecture/vlink/b/b2
목록
도움이 되는 유익한 내용이었다면 힘이 될 수 있는 댓 글을 남겨주세요.
3
0
  • 뎃글달기
Upload
v
Name Type Size