본문 바로가기

tech

Dual Boot에서 Ubuntu 삭제하기 (Window10 & Ubuntu)

 

대학교 1학년 때 학교 연구 활동을 했었다. 그때 라즈베리파이를 활용해 ROS를 사용할 일이 있어서 Ubuntu를 노트북에 설치했었고 아직까지 계속 유지됐었다. 그런데 그 노트북을 어머니가 사용하고 싶다고 하셔서 불필요한 것들을 초기화하는 과정에서 우분투를 지워야 할 상황이 오게 되었다. 

 

우분투는 윈도우와 같이 사용자가 컴퓨터를 쉽게 사용할 수 있도록 인터페이스를 제공해주는 운영체제의 한 종류이다. 대게 윈도우를 사용하는 것이 보편적이지만 각 운영체제마다 장단점이 나뉘니 윈도우 이외의 운영체제를 사용하는 사람들도 많이 존재한다.

 

하나의 컴퓨터에 운영체제를 2개 이상 설치하기 위해선 저장공간을 나누어서 구분 짓고 각 부분에 서로 다른 운영체제를 설치하면 된다. 나누어진 저장공간을 파티션이라고 부른다. 즉 내 노트북에는 저장공간이 2개 이상의 파티션으로 나뉘어져 있고 서로 다른 파티션에 Window10 운영체제와 Ubuntu가 설치되어 있다고 보면 된다. 이 글에서 파티션을 나누고 Ubuntu를 설치하는 것은 하지 않겠다. Ubuntu를 삭제하고 파티션을 합치는 과정을 공부하며 기록하려고 한다. 나도 처음 해보는 것이기에 틀릴 수도 있다. 공부하는 과정을 기록한다고 보면 좋을 듯 하다. 틀린 부분이 있어 댓글로 알려주신다면 정말 감사하겠습니다. 

 

 

1. GRUB 지우기

현재 내 컴퓨터는 컴퓨터를 부팅 시키면 운영체제를 선택할 수 있는 화면이 나온다. 이 화면을 띄어주는 프로그램을 

GRUB이라고 부른다. GRUB은 'Grand Unified Bootloader" 의 약자로 멀티 부트로더 중 하나이다. 

 

 

노트북 부팅 초기 GRUB 화면이다. 방향키를 통헤 운영체제를 선택할 수 있다. 첫 번째가 Ubuntu이고  세 번째가 Window10이다.

 

GRUB이 부트로더의 한 종류라고 했는데 부트로더란 무엇일까? 간단히 말해 부트로더는 커널을 메모리에 로드하는 작업을 하는 프로그램이라고 보면 쉬울 듯 하다. 그럼 또 커널은 뭔가?  커널은 운영체제를 실행시키고 관리하기 위한 주요 프로그램이라고 봐야 할 듯 하다. 주 역할은 컴퓨터 하드웨어(cpu등 내장 장치들과 외부 장치까지)와 프로세스 사이에서 원활한 통신을 위해 존재하는 인터페이스라고 보자. 

 

 

 

 

https://www.redhat.com/ko/topics/linux/what-is-the-linux-kernel

 

리눅스 커널(Linux kernel)이란 - 개념, 구성요소, 인터페이스

Linux 커널은 리눅스 운영 체제(OS)의 주요 구성 요소이며 컴퓨터 하드웨어와 프로세스를 연결하는 핵심 인터페이스입니다. 관리 리소스 사이에서 효과적으로 통신합니다.

www.redhat.com

-커널에 대해 기본 설명을 해준다. 

 

https://heeyamsec.tistory.com/19

 

부트로더에 대한 이해

부트로더에 대한 이해를 돕기 위해 먼저 컴퓨터 부팅에 대해 설명해보겠다. 00. 컴퓨터 부팅부팅이란 PC가 켜진 후에 운영체제(이하 OS)가 실행 되기 전까지 수행되는 일련의 작업 과정을 말한다.

heeyamsec.tistory.com

-부트로더에 대한 전반적인 설명을 해준다. 

 

 

 

 

 

 

즉 GRUB은 운영체제를 실행시키기 위한 해당 커널을 불러 오는 부트로더의 역할을 해주고 운영체제가 2개인 나는 Dual Booting 환경에서 (초기 GRUB 화면에서) 사용하고자 하는 운영체제를 선택해주어야 하는 것이다.  GRUB은 리눅스 계열의 Ubuntu를 사용할 떄 흔히들 쓰는 부트로더라고 한다. 

Grub을 삭제하는 방법에는 여러가지가 있을 수 있다. 직접 cmd 창에서 명령어를 통해 삭제할 수도 있고 아니면 부트관리 툴(cmd 명령어 환경이 익숙치 않은 사용자들을 위해 부트관리를 쉽게 할 수 있도록 사용자에게 인터페이스를 제공하고 그외 부가적인 서비스들을 제공하는 프로그램인 듯 하다 )을 다운로드 받아 삭제 하는 방법이 있다. 나는 인터넷에서 흔하게 설명해주는 Bootice 라는 프로그램을 사용해 GRUB을 제거해주기로 했다. 

 

근데 다만 문제점은 공식 사이트인 

https://bootice.softonic.kr/?ex=DINS-635.3 

에서 다운 받고 프로그램을 실행해보니 윈도우에서 경고창을 보내면 해당 프로그램은 이 pc에서 사용할 수 없다는 문구가 떴다. 

정확한 이유를 모르겠으나 아마 64bit을 위한 프로그램이 아니라서 그런가 싶긴 하다.(이유를 아시는 분은 알려주시면 감사하겠습니다.)

다행히 어떤 분이 블로그에 실행파일이 아니라 프로그램 자체를 압축파일로 올려주신 것이 있어 그것을 사용하였다. 

 

Bootice 실행 화면이다.

 

Bootice를 실행하면 나오는 첫 화면이다. 우선 자신의 Bios타입을 알아야 하는데 이에 따라 GRUB을 삭제하는 방법이 나뉘는 듯하다. 

 

Bios란 PC에 전원을 켜면 운영체제를 시작하기 전까지 pc의 하드웨어와 운영체제 사이의 펌웨어 인터페이스 라고 한다. 즉 우리가 잘 아는 블루스크린, 그런 화면으로 구성되어 있는 듯 하다. 크게 Legacy BIOS와 UEFI BIOS로 나뉘는 것 같다. 간단히 봐서 옛날 버전이 Legacy, 최신 버전이 UEFI 이다. MBR이란 운영체제 프로그램이 저장공간에서(하드디스크나 ssd) 어떤 부분에 저장되어 있는지 위치를 나타내는 방식이라고 한다. 정리하면 PC를 켜고 가장 먼저 실행되는 프로그램이 BIOS이다. PC 하드웨어에 문제가 있는지 없는지 점검하고 장치 활성화 등 작업을 하고 부트로더를 불러 운영체제의 커널을 불러오게 하는 방식인 듯하다. 우리는 그중 부트로더인 GRUB 부트로더를 삭제하고자하는 것 같다. 

 

자신의 현재 BIOS 타입을 알기 위해서 위의 메뉴 중 physical disk를 선택하고 아래 Process MBR을 클릭하자. 

 

자신의 현재 MBR을 확인할 수 있다. Current MBR Type 부분을 보면 된다.

 

내 MBR은 Unknown boot record이다. BIOS에 따라 GRUB이 나뉘는 듯하다. 나 같은 경우는 UEFI BIOS를 사용하기에 GRUB이 EFI용 GRUB인 듯 하다. 만약 여기서 Unknown boot record이 아닌 다른 형태의 방식이 나오면 Legacy BIOS 를 사용중이라고 봐야 할 듯하다. (정확한 이해가 아닌 추측이니 틀렸다면 알려주시면 감사하겠습니다.) 이 포스팅에서는 Legacy BIOS 경우는 다루지 않으려고 하는데 필요한 경우가 있을까 싶어 내가 도움 받았던 블로그를 제일 하단에 남겨두겠다. 

 

Bootice에서 상단의 UEFI 메뉴를 선택한 모습이다.

 

다음, Bootice 상단에서 UEFI를 클릭해준 화면이다. 우리는 부트 시스템을 바꾸어야 하니 Edit boot entris를 선택해준다. 

 

 

내 부트 시스템이다. 그중 ubuntu를 부트하는 부트로더인 GRUB을 삭제하고 싶은 것이니 이것을 선택해 주었다. 그후 Del을 눌러주면 된다. 그러면 ubuntu를 로드하는 GRUB이 삭제된다. 

 

 

2. Ubuntu 제거와 파티션 병합

그후 윈도우+r 로 diskmgmt.msc를 검색해준다. 이 프로그램은 현재 내 저장공간이 어떻게 쓰이고 있는지를 보여준다. 

 

내 노트북의 저장공간은 이렇게 쓰인다.

 

148.88GB를 차지하는 c 파티션이 윈도우10이 깔려있는 파티션이다. Ubuntu는 75.94GB 크기의 파티션 7번 이다. 이 부분에 저장된 데이터를 지워주고 (Ubuntu data 삭제) 비워진 파티션을 (=비워진 저장공간을) 다시 윈도우10이 있는 파티션에 병합시켜주면 작업 끝이다. 

 

7번 파티션을 우클릭해서 볼륨 삭제를 선택하면 해당 저장공간의 데이터들을 삭제한다는 것이다. 그러면 할당되지 않은 공간이라는 표시가 뜰 것이다. 그러면 해당 저장공간에 데이터가 없다는 뜻이다. 즉 정상적으로 컴퓨터 내에서 Ubuntu 운영체제를 삭제했다는 뜻이다. 

 

파티션 볼륨 확장 프로그램이다.

 

 

그 다음 비워진 파티션을 윈도우10이 쓰는 공간으로 병합 시켜주면 된다.

C 파티션을 우클릭해 볼륨 확장을 선택해준다. 그러면 확장 프로그램이 실행 될 텐데 이때 얼만큼의 크기만큼 확장할 것인지 '공간선택' 칸에 입력해주면 된다. 그러면 자동으로 할당되지 않은 파티션이 병합된다. 나는 비워준 파티션의 모든 공간을 병합해주었다. 

 

병합이 의도대로 완료된 모습이다..

 

이렇게 컴퓨터를 재부팅 시켜보면 GRUB 화면이 아닌 바로 윈도우10 운영체제가 실행되는 화면으로 넘어가는 것을 확인할 수 있다. 

 

 

오늘 Window10 & Ubuntu 듀얼부팅 상황에서 Ubuntu를 제거하고 GRUB 부트로더까지 없애는 작업을 했다. 운영체제를 다루는 것이 처음이라 용어를 찾아보고 원리를 이해하는 것에 시간을 조금 썼지만 소개가 워낙 잘 되어 있어 따라하기만 하면 온전히 수행할 수 있는 작업이다. 운영체제를 공부하면서 컴퓨터의 하드웨어와 소프트웨어가 어떤 식으로 상호작용하고 그 사이에 어떤 프로그램들이 실행되는지 간략한 이해를 해볼 수 있었다. 프로그래밍을 하다보면 하드웨어적인 접근이 필요한 경우가 많았는데 운영체제를 공부해서 관련 지식을 익히는 것도 좋을 듯하다. 틀린 부분이 있을 수 있습니다. 만약 있다면 댓글로 가르쳐 주셔서 도움을 주시면 감사하겠습니다

 

 

 

오늘의 결론: 운영체제를 공부하자.