2020년 7월 5일 일요일

Ubuntu Linux Server Install Guide

  • 개요


  • 본 문서는 개발 및 서비스 구축을 위한 Ubuntu Linux Server 설치를 위한 가이드 이다.
  • Ubuntu 18.04 LTS (19 년 9월 현재 Latest 버전) 를 기준으로 한다.

  • VirtualBox 환경에 설치하는 것을 기준으로 하고 기타 설치 과정에서의 선택 사항에 대한 간단한 설명을 위주로 작성 한다.

  • Host System 이 Ubuntu Linux 인 환경에서 수행한다.

  • VirtualBox (Ubuntu, debian 용) 은 설치 된 상태 임을 산정한다.



  • OS Image Download


  • 파일 정보를 확인해 보면 900M 가 조금 안되는 크기이다. (Desktop 버전은 4기가 정도의 크기)




  • VirtualBox 에 OS VM Image 생성


  1. VirtualBox 설치 후 최초 화면.


  • NEW 를 눌러 새로운 VM 생성한다.


  1. 식별이 편한 VM 의 이름을 선정하고 생성될 VM 이미지의 위치를 선택한다.

  • type 과 Version 은 설치할 OS 와 가장 가까운 종류로 선택한다. (VirtualBox 자체에서 각 OS 종류에 맞는 튜닝 Profile 기능을 지원 하므로 정확한 OS 종류 선택으로 다소의 성능 향상을 기대 할 수 있다.)

  • 선택 후 Next



  1. 메모리 설정.


  • Host System(VirtualBox 가 설치된) 의 전체 Memory 에서 얼마 만큼의 메모리를 해당 VM 에 할당할 것인지 선택

  • Ubuntu 의 경우 최소 2MB 설정을 해야 정상 동작 하며 4GB 정도 하면 원활하게 운용 할 수 있다. (일반적인 C 컴파일 개발 용도)

  • 물론 VM 사용 용도에 따라 달라질 수 있음.

  • 그리고 Next….





  1. 지금바로 VM 디스크 생성.


  • 지금바로 생성을 선택한다.

  • 추후 선택 (Do not add a virtual hard disk )선택시는 생성 과정이 그대로 끝난다.

  • Next … 선택  



  • 몇가지 종류의 VM 이미지 포멧이 있지만 추후 다루기로 하고 여기서는 그냥 VDI (VirtualBox 표준 포멧) 을 선택한다.


  • Host System 에 Disk 가 여유가 있다면 Fixed size 를 권한다.

  • 동적 할당의 경우 최소 사이즈 상태에서 필요시 마다 늘어나는 방식으로 디스크 절약에 도움을 주지만 디스크 확장 과 재배열 과정에서 다소간의 성능 저하가 발생한다.




  • VM 생성시 필요한 용도에 따라 다르겠지만 Ubuntu Server 는 최소 6GB 설치는 필요로 하며 최대 2TB 의 이미지 크기 까지 지원 가능 하다. (여기서는 30GB 로 Fix size 할당함.

  • Create 선택...




  1. 마무리 셋팅.


  • 생성한 이미지는 좌측에서 선택 할 수 있으며

  • 선택된 상태에서 Setting 을 통해서 마무리 설정을 할 수 있다.






  • Host System 의 CPU 중에 몇 Core 를 할당 할 CPU Core 수를 선택한다.

  • 참고로 Linux 에서 Host Sytem 의 CPU Core 수 확인 방법은 아래와 같다.

  • 최소 2core 할당 권장. Host System Core 이상 할당은 추천하지 않음.



1. CPU 코어 전체 개수 확인


> grep -c processor /proc/cpuinfo


 

2. 물리 CPU 수 확인


> grep "physical id" /proc/cpuinfo | sort -u | wc -l



3. CPU당 물리 코어 수 확인


> grep "cpu cores" /proc/cpuinfo | tail -1








  • 가상 IDE 장치에 다운로드 받은 ubuntu Server ISO 이미지를 추가한다.

  • 그리고 OK...




  • 생성된 VM Image 에 OS 설치



  1.  언어 및 Keyboard Layout 선택 


  • 설치 과정에서 어떤 언어를 사용할 것인지 묻는다.

  • 한국어 를 사용 해도 상관 없지만 때로는 어휘가 더 헷갈리는 상황이 있을 수 있다.



  • “Install Ubuntu Server” 선택




  • 자주쓰는 (설치후 지원 언어) 를 묻는다.

  • Ubuntu Desktop 이면 몰라도 Server 는 그냥 English 로 기본 선택.

  • 추후 한글이 필요해도 설치가 어렵지 않다.




  • 키보드 Layout 은 그냥 그대로



  1. 네트워크 설정 


  • 네트워크가 연결되어 있는 DHCP 환경에서는 아래와 같이 자동으로 IP 할당을 받는다. (Ubuntu 는 설치중에 Repository 로 부터 필요한 패키지를 내려 받기 위해 네트워크가 연결된 상태에서의 설치를 권장 한다.)



  • 고정 IP 설정을 위해서는 아래의 그림과 같이 IPv4 혹은 IPv6 를 선택한다.



  • 선택하면 아래와 같은 선택지에서 Manual 선택

  • 선택후 필요 정보 기입 하고 저장 후 원래 화면(Network Configuration)으로 돌아 오면 됨. 

  • Network Configuration 에서 Done.



  • Proxy Server 사용 하지 않는다면 그냥 Done.



  • 설치 과정에서 필요한 패키지를 네트워크로 내려 받기 위한 미러 사이트 설정 확인 

  • 특별한 일이 없다면 그냥 Done.


  1. Disk Partition 설정.



  • [Use An Entire Disk] 를 선택하면 알아서(swap 과 root 정도만 잡고) 설치 하지만 사용 용도에 따라 혹은 관리의 편리를 위하여 직접 파티션을 설정 해 줄 수도 있다. 



  • Filesystem setup 화면에서 Manual 선택하면 아래의 화면과 같이 설치 가능 디스크가 보이고 해당 디스크에 대해서 파티션 추가 가능함.


 



  • [Add Partition] 선택하면 아래의 화면과 같이 해당 파티션의 크기와 파일 시스템 종류 , 마운트 위치 등을 설정 할수 있다.  설정 완료 후 Create.



  • 위와 같은 방법으로 파티션을 하나씩 생성 해서 아래 그림과 같이 혹은 유사하게 되도록 설정 하면 된다.

 



  • 수동 파티션 가이드 


  1. /boot 

  • 부트로더가 OS Kernel 이미지 혹은 부팅 이미지 를 읽을때 (Linux booting 최초 단계) Linux 부팅 이미지가 저장되는 위치

  •  Disk 의 가장 첫 부분으로 지정 하면 부트로더가 빨리 찾기 때문에 부팅 속도가 미세하게 개선된다고 함.

  • 시스템의 특성상 커널 업그레이드가 잦은 시스템은 여유 있게 잡는 것이 좋지만 (커널 업그레이드시 기존,새것 이미지 모두 누적되어 저장되기 때문) 1~2G 만 되도 몇백번의 커널 컴파일 및 새 부팅 이미지가 저장 되는 데는 지장 없음.

  • 파티셔닝중 가장 먼저 하는것 권장, 1~2G Size , ext4 file system


  1. swap (필수영역)

  • 메모리에 어쩔수 없이 상주 해야할 Job 이지만 실제로는 매우 드물게  사용 되어 지는  Job 을 디스크 일부에 올려 놓는 용도의 공간.

  • 일반적으로 시스템 메모리 크기 만큼(혹은 2배) 를 권장했으나 최근 들어 대용량 메모리가 적용된 시스템이 많아지면서 4GB 이상은 의미 없다고 함.

  • 보유메모리 크기만큼 ~4GB 이하, Filesystem 은 swap


  1. /usr

  • OS 에 설치되는 프로그램들, 시스템 명령어 등이 저장 되는 공간 으로 OS 설치 후에 설치되는 프로그램 Tool 등도 대부분 이 파티션에 기본 설치 된다.

  • 최소 4GB 확보 하는 것을 권장 하며 서버의 사용 용도에 따라 전체 Disk 의 30% 까지 고려할 상황도 있지만 드물다.

  • 최소 4GB ~ 전체 Disk 의 20% 권장, ext4 file system


  1. /  (필수 파티션)

  • 설치시 생성되는 모든 필수 디렉토리 들이 이영역에 저정된다. (예) /etc, /mnt, /dev 등

  • swap 을 제외한 다른 모든 파티션을 생성하지 않으면 모두다 ‘/’ 루뜨 파티션 내부에 생성 된다.

  • 크기가 크면 보안적인 측면에서 좋지 않다고 하지만 너무 작으면 시스템 필수 구성 파일이 설치 되지 않거나 시스템 용도 확장시 불편 해 진다.

  • 최소 5 GB ~ 전체 Disk 의 10% 정도 권장, ext4 file system 


  1. /home

  • root 계정을 제외한 추가된 모든 사용자 들의 개별 계정 기본(home) 작업 공간이 생성 되는 영역

  • 설치시 생성하는 기본 계정 및 adduser 로 추가되는 계정의 home 이 모두 여기에 생성됨.

  • debian 계열의 ubuntu 나 CentOS7 부터 무작정 root 로 접속하여 작업하는 방식이 아닌 일반 계정 접속 후 sudo 를 통해 시스템을 설정 하고 개인 사용 및 개발 환경 활용이 빈번해 짐에 따라 개별 유저들의 작업 공간 확보가 중요 해짐.

  • 전체 용량의 40~50% 정도가 적절 함.  ext4


  1. /var

  • 모든 시스템 로그 및 추가되는 서드파티 프로그램의 로그가 대부분 쌓이는 공간.(프로그램 설치시 기본 log 위치가 /var 이하로 되어 있음.

  • 로그가 많이 쌓이는 시스템에서는 용량을 크게 할 필요 있음 

  • 최소 1GB ~ 전체 용량의 10~20 % 권장, ext4 (docker 사용시 이 부분에 임시 이미지 생성 등을 하는 것으로 보임, docker 사용시는 좀 여유롭게)




  • 기본 사용자 추가

  • 기본 사용자는 /etc/sudor 파일에 정의 하지 않아도 기본 적으로 sudo 명령을 통하여 root 권한으로 명령어 실행이 가능한 계정.

  • ubuntu, CentOS7, SunOS11 등은 root 에서 직접 명령어를 실행함으로서 발생하는 사고를 방지하기 위해 적용된 계정 인듯. (신규 Unix 계열 OS 에 확산될듯)

  • Your name (별명같은), 서버명 , 사용자명 , 패스워드를 입력한다.

  • 이 과정동안 백그라운드로 설치는 계속 진행되고 있음.



  • SSH Server 설치 

  • 설치 해도 되지만 완전 설치후 apt 설치 하는 것을 권함.

  • 서버 Snapshot 관리 

  • 서버 Snapshot repository 같은데 추후 조사해서 문서 갱신 예정

  • 그냥 Done

  • 서버 설치 끝

  • 리붓 후 사용 하면 됨


  • root 사용자 활성화 







Ubuntu Linux Server Install Guide

개요 본 문서는 개발 및 서비스 구축을 위한 Ubuntu Linux Server 설치를 위한 가이드 이다. Ubuntu 18.04 LTS (19 년 9월 현재 Latest 버전) 를 기준으로 한다. VirtualBox 환경에 설치하는 것을 기준으로 하...