리눅스/실습

리눅스 실습(1) - Hyper-V와 Alma 리눅스

dbswjdahr 2025. 10. 29. 12:53

리눅스는 GNU/Linux 프로젝트의 일환으로, GPL 라이선스에 기반한 오픈소스 프로젝트이다.

역사가 오래된 오픈소스 프로젝트인 만큼 파생된 수많은 배포판이 존재하지만, Debian 계열의 Ubuntu, Redhat 계열의 CentOS가 대표적 운영체제이다. 재밌는 사실?은 Redhat은 RHEL이 업데이트 되기 전에 테스트 역할을 수행하는 Fedora에서 여러 작업을 거친 다음에 정식으로 릴리즈 된다고 한다. (그래서 그런지 모르겠지만 Fedora 버전이 엄청 많은 것 같은 느낌)

또, 우분투는 우분투안에서도 Xubuntu Lubuntu, Kubuntu 등의 바리에이션과 포크인 Mint 등으로 나눠진다는 것이다. 참고로 도커 허브 같은 곳에 올라온 리눅스 이미지로는 alpine 리눅스를 많이 사용하는 것 같은 느낌이다 (apk 패키지를 사용하는 듯 하다 - 경량이라 많이 사용한다는데 자세히는 모름)

이번 실습에서는 실무에서 자주 쓰인다는 Redhat의 운영체제 기반으로 실습을 하기 위해 AlmaLinux의 minimum 서버 환경을 조성, CentOS7이 최근인 2024년 6월 30일 부로 공식적으로 업데이트 지원이 종료되었기 때문에 최근에는 CentOS 창립자가 나와 만든 RockyLinux가 리눅스 마스터 1급 실습 환경에서도 채택되고 여러 강의 등에서도 종종 보이는 걸 보아 아마 개인적인 생각으로는 대체제로 가장 선호하는 OS 인 것 같아 보인다. 

AlmaLinux도 마찬가지로 CentOS를 대체하기 위해 나왔고, Rocky와 상당히 유사한 환경이다. 이전에 Rocky 를 기반으로 종종 자잘한 랩 실습을 해봤어서 Alma를 사용해보기로 했다. (실습 내용으로는 별 차이가 없었다.)

  + 추가로 CentOS는 다운스트림에서 업스트림으로 바뀜에 따라 페도라 같은 역할이 된 것 같다.

같은 계열 내에서는 크게 차이가 나지 않지만, Debian과 Redhat의 경우, 시스템 환경 상에서 다소 차이가 있다. 대표적으로는 패키지 매니저인 dpkg → apt-get → apt,  rpm → yum → dnf 의 차이(dpkg와 rpm은 전통적인 패키지 관리자)와

방화벽에 대해선 ufw | firewalld, 그 외 세부적인 설정 파일의 위치나 구조 등의 차이가 있다. 이외에도 yast, zypper 패키지 명령어를 사용하는 SUSE 리눅스 등도 있다.


초기 환경 구성

 

Alma의 실행 환경은 윈도우즈의 Hyper-V 위에 VM을 생성해 올렸다.

개인적인 생각으로는 가장 쉽고 간편하게 돌릴 수 있는 건 버추얼박스라고 생각을 하지만(vmware도 써보긴 했다) 실제 서버 환경과 가장 유사하게 만들고 시작하고 싶었기에 Type-1 기반으로 VM을 올리고 최소한의 경량 CLI 환경인 minimum ISO를 가져와 올렸다. 

일단 학부 강의 때나 다른 인터넷 강의들 대부분이 데스크탑 환경의 우분투나 CentOS를 사용해 진행을 하기도 하였고 그에 익숙해진 탓인지 미니멈버전 서버 OS가 생소했다. CLI 환경은 ssh을 통해 터미널에서 계속 명령어로 작업한 적이 종종 있어 익숙했지만, 기본적으로 안 깔려있던 패키지들이 많았기 때문이다. 예를 들면 net-tools, lsof, bind-utils 등등…

우선, VM의 CLI 환경이 불편하기 때문에 OS 설치 시 Root의 ssh 비밀번호 접근 허용을 허용하고 호스트OS (Type-1이라 구분이 없긴 하지만)인 windows의 터미널에서 SSH 세션을 열어 사용했다. 물론 이건 개인용 실습 환경이라 허용한 것이고 실제라면 비밀번호가 아닌 키를 생성하고 관리해야 할 것이다. → ssh 등 보안 내용도 추후에 실습해볼 예정

이외 htop이랑 vim-enhanced 같이 편의성을 고려해 깔기 위한 패키지들은 dnf search는 물론 providers로 찾아봐도 안 나왔다. 미니멈이라서 그런 건지 기본 버전들도 그런 건지는 잘 모르겠음. yum.repo.d 레포 파일은 거의 같지 않나(.repo 파일에 적힌 저장소 주소에서 다운받아지는 거니까 ) 싶어서 미니멈 문제는 아닌 것 같기도 하고…

아무튼 나중에 찾아보니 epel-release라는 패키지를 깔아야 추가적인 패키지들이 찾아진다고 하여 이걸 먼저 깔고 그 다음 나머지를 search, providers로 다시 확인하고 깔았음. 레드햇 OS에서 서버 환경 처음 구축한다고 하면 이거 알아두면 좋 듯