[Linux] 우분투 서버 설치 RAID 1 (24.04 ver.)

Oracle VirtualBox에 우분투 서버 설치를 RAID 1 으로 진행해 보겠습니다. 설치 버전은 24.04 버전입니다.

RAID 1은 콘솔이 아니라 설치 과정의 UI 환경에서 설정하겠습니다.

우분투 서버 설치

· 설치 환경: Oracle VirtualBox
· Ubuntu 버전: 24.04 Server
· RAID 설정: RAID 1 (미러링)
· 설정 방식: 설치 과정의 UI 환경에서 설정

✅ 가상머신 생성

우분투 24.04 버전을 다운로드 받았다면 우측 상단의 [새로 만들기]를 클릭해서 가상 머신을 생성합니다.

Oracle VitualBox 초기 화면

무인 설치 건너뛰기를 체크합니다.

VirtualBox_가상 머신 생성_우분투 서버 설치 24.04 ver_RAID 1

추가 설정 사항은 다음과 같습니다.

  • 메모리 2G 1CPU | HDD 25G
  • EFI 비활성화

🔲 추가 디스크 만들기

RAID 1을 설치하기 위한 추가 디스크를 생성합니다.

VirtualBox_디스크 추가1_우분투 24.04 ver_RAID 1

하드 디스크 추가 버튼을 누른 후 [만들기] 버튼을 눌러서

VirtualBox_디스크 추가2_우분투 24.04 ver_RAID 1

VDI 상태 가상 하드 디스크를 그대로생성합니다.

VirtualBox_디스크 추가3_우분투 24.04 ver_RAID 1

생성된 디스크를 선택합니다.

VirtualBox_디스크 추가4_우분투 24.04 ver_RAID 1

확인을 눌러 우분투 서버 설치를 진행합니다.

VirtualBox_디스크 추가5_우분투 24.04 ver_RAID 1

✅ 우분투 서버 설치: RAID 1

Oracle VitualBox_우분투 설치(Install)

기본 인스톨 화면에서 언어 선택 화면의 영어 선택 상태에서 다음으로 넘어갑니다.

Oracle VitualBox_우분투 설치_언어 선택

키보드 언어는 한국어로 선택합니다.

Oracle VitualBox_우분투 설치_키보드 언어 구성

설치는 우분투 서버로 체크 상태 그대로 다음 단계로 넘어갑니다.

Oracle VitualBox_우분투 설치_기본설치,미니멀,타사 드라이버

네트워크 설정 후

Oracle VitualBox_우분투 설치_네트워크 구성

프록시 설정도 그대로 다음 단계로 진행

Oracle VitualBox_우분투 설치 프록시(Proxy) 서버 설정

스토리지 구성은 커스텀으로 체크 후 진행합니다.

Oracle VitualBox_우분투 설치_스토리지 구성

🔲 RAID 1 파티션 구성

우분투 레이드1 파티션 구성(UI)

1. 부트 디바이스 생성

각각의 디스크에 먼저 부트 디바이스를 생성합니다.

우분투 레이드1 파티션 구성(UI)_1_부트 디바이스 만들기

2. free space 포맷

2개의 디스크를 free space에서 unforamtted로 설정을 잡아줍니다.

우분투 레이드1 파티션 구성(UI)_2_free space_Leave unforantted 포맷

3. 소프트웨어 레이드 생성

소프트웨어 레이드를 클릭합니다.

우분투 레이드1 파티션 구성(UI)_3_소프트웨어 레이드 만들기

모두 체크 후 만들기 버튼을 누릅니다.

우분투 레이드1 파티션 구성(UI)_3_소프트웨어 레이드 만들기2

소프트레이드 설정이 완료된 화면입니다.

우분투 레이드1 파티션 구성(UI)_3_소프트웨어 레이드 만들기3

이제 md0 디바이스에서 각각의 파티션을 생성합니다.

VirtualBox이기 때문에 디스크 용량은 실제 서버와 다르게 설정했습니다.

원래 생각하는 표준은

  • /boot/efi > 최소 100M | 권장 200~300M(EFI 설정 시에만)
  • /boot 최소 500M | 권장 1G
  • /swap 4G
  • /tmp 4G
  • / 20G(/home 나머지) 또는 나머지
우분투 레이드1 파티션 구성(UI)_4 완성

끝내기를 누르면 경고 메시지가 뜨는데 포맷 할 데이터가 손실될 수 있다는 내용이니 이어서 진행합니다.

우분투 레이드1 파티션 구성(UI)_5_설치 시 경고 메시지

🔲 유저 계정

Yuor name는 건너뛰어도 되고, 서버 네임은 WEB 서버나 DB 서버 목적에 맞게 WEB과 같은 이름을 넣어주면 되겠습니다.

Oracle VitualBox_우분투 설치_계정 생성

우분투 프로 사용 유부를 묻지만 스킵합니다.

Oracle VitualBox_우분투 설치_우분투 프로 스킵

SSH 접속을 위해 설정 체크 후

Oracle VitualBox_우분투 설치_SSH 설정

서버에 필요할 수 있는 인터넷을 통한 패키지 설치 여부를 묻는데 그대로 다음 단계로 넘어갑니다.

Oracle VitualBox_우분투 설치_미리 설치 가능한 패키지 목록

이제 설치가 진행됩니다.

우분투 서버 설치 중

정상 설치가 완료 되었습니다.

우분투 서버 설치 완료 24.04 버전

✅ 이더넷 설정

/etc/netplan/ 파일 내의 .yaml 파일로 네트워크 설정을 진행합니다.

설정 진행하기 전에

sudo tee /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg > /dev/null <<EOF
network: {config: disabled}
EOF

VirtualBox가 cloud-init가 네트워크 설정에 개입 중인 것으로 확인되어

cloud-init clean
reboot

cloud-init이 네트워크 설정 못 건드리게 설정 후 재부팅을 진행해 줍니다.

이후에 /etc/netplan/ 파일을 수정합니다.

vi /etc/netplan/50-cloud-init.yaml

network:
    ethernets:
        enp0s3:
            dhcp4: true
    version: 2

위 기본 설정 값에서 아래 설정으로 변경합니다.

network:
  version: 2
  renderer: networkd
  ethernets:
    enp0s3:
      dhcp4: no
      addresses:
        - 192.168.45.196/24
      nameservers:
        addresses:
          - 8.8.8.8
          - 8.8.0.0
      routes:
        - to: 0.0.0.0/0
          via: 192.168.45.1

완료 후 reboot까지 진행하여 정상적으로 반영되었는지 확인합니다.

서브넷 계산기 Ver 2.1
IP 주소 (예: 192.168.1.0)
서브넷 마스크 (예: 255.255.255.0)
ip addr show enp0s3
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 08:00:27:5b:45:19 brd ff:ff:ff:ff:ff:ff
    inet 192.168.45.196/24 brd 192.168.45.255 scope global enp0s3
       valid_lft forever preferred_lft forever
    inet6 fe80::a00:27ff:fe5b:4519/64 scope link 
       valid_lft forever preferred_lft forever

✅ RAID 1 상태 체크

우분투 서버 설치 후 레이드 1이 정상적으로 설치 되었는지 확인합니다.

mdadm --detail --scan
ARRAY /dev/md0 metadata=1.2 UUID=a8d3514d:f6e4acc3:bb7c0a4b:385c2092

cat /proc/mdstat
Personalities : [raid1] [raid0] [raid6] [raid5] [raid4] [raid10]
md0 : active raid1 sda2[0] sdb2[1]
      25094144 blocks super 1.2 [2/2] [UU]

mdadm --detail /dev/md0
/dev/md0:
           Version : 1.2
     Creation Time : Tue May 20 14:31:33 2025
        Raid Level : raid1
        Array Size : 25094144 (23.93 GiB 25.70 GB)
     Used Dev Size : 25094144 (23.93 GiB 25.70 GB)
      Raid Devices : 2
     Total Devices : 2
       Persistence : Superblock is persistent

       Update Time : Tue May 20 15:04:18 2025
             State : clean
    Active Devices : 2
   Working Devices : 2
    Failed Devices : 0
     Spare Devices : 0

Consistency Policy : resync

              Name : ubuntu-server:0
              UUID : a8d3514d:f6e4acc3:bb7c0a4b:385c2092
            Events : 175

    Number   Major   Minor   RaidDevice State
       0       8        2        0      active sync   /dev/sda2
       1       8       18        1      active sync   /dev/sdb2

Similar Posts

  • 리눅스 tmp 디렉토리: /tmp와 /var/tmp 차이

    리눅스 tmp 디렉토리는 임시 파일을 저장하기 위해 주로 /tmp와 /var/tmp 디렉토리를 사용합니다. /tmp는 일시적인 임시 파일을 저장하는 공간으로, 시스템이 재부팅 되면 대부분의 파일이 삭제됩니다. 따라서 빠른 입출력과 임시 작업에 적합하며, 주로 프로세스가 실행 중 생성하는 임시 데이터를 저장합니다. 반면에 /var/tmp는 재부팅 후에도 파일이 유지되는 임시 저장 공간입니다. 장기간 유지가 필요한 임시 파일이나 작업…

  • 리눅스 uniq 명령어

    리눅스 uniq 명령어는 “unique”의 약자이며, 텍스트 파일에서 중복된 행을 제거하고 하나의 행만 출력하는데 사용됩니다. 중복된 텍스트 데이터를 제거하고 몇 번의 반복이 있었는지 등을 확인할 때 매우 유용하게 사용할 수 있습니다. 목차✅ 가상머신 생성🔲 추가 디스크 만들기✅ 우분투 서버 설치: RAID 1🔲 RAID 1 파티션 구성🔲 유저 계정✅ 이더넷 설정✅ RAID 1 상태 체크✅…

  • 리눅스 Rsync 명령어

    Rsync (Remote Sync) 는 네트워크를 통해 파일과 디렉터리를 효율적으로 동기화하는 백업 방식입니다. 전체 데이터를 매번 복사하는 대신 변경된 부분만 증분 방식으로 전송하여 빠르고 안정적인 동기화를 지원합니다. 또한 다양한 옵션을 통해 압축, 암호화, 권한 유지, 삭제 동기화 등 세밀한 제어가 가능하며, 백업과 서버 간 데이터 전송에 널리 사용됩니다. 특히 네트워크 대역폭을 절약하고, 재 전송…

  • 리눅스 ls 명령어

    ls 명령어는 list의 약자이며, 리눅스 파일과 디렉토리를 볼 수 있는 명령어입니다. 파일의 종류와 파일의 크기, 만들어진 날짜 등의 정보를 확인할 수 있습니다. 목차✅ 가상머신 생성🔲 추가 디스크 만들기✅ 우분투 서버 설치: RAID 1🔲 RAID 1 파티션 구성🔲 유저 계정✅ 이더넷 설정✅ RAID 1 상태 체크✅ ls 명령어 기본 사용 방법 ls 명령어 사용…

  • Zend OPcache 개념과 설치 및 설정

    OPcache는 PHP script 를 바이트코드(bytecode)로 컴파일한 후에 공유 메모리에 저장하여 성능을 향상 시키는 모듈입니다. 서버의 성능을 향상시키는 PHP 가속기(PHP accelerators) 중 하나인 Zend Opcache 는 PHP 5.5부터 기본 모듈로 내장되었습니다. 목차✅ 가상머신 생성🔲 추가 디스크 만들기✅ 우분투 서버 설치: RAID 1🔲 RAID 1 파티션 구성🔲 유저 계정✅ 이더넷 설정✅ RAID 1 상태 체크✅…

  • 리눅스 grep 명령어

    리눅스 grep 명령어는 로그 파일과 같은 텍스트 파일과 아스키 파일에서 원하는 문자열을 찾을 때 사용되며, tail과 find 명령어를 파이프(|)와 결합해서 자주 사용하게 되는 명령어입니다. 목차✅ 가상머신 생성🔲 추가 디스크 만들기✅ 우분투 서버 설치: RAID 1🔲 RAID 1 파티션 구성🔲 유저 계정✅ 이더넷 설정✅ RAID 1 상태 체크✅ grep 명령어 기본 사용법 ✅ 기본적인…

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Prove your humanity: 9   +   8   =