검색결과 리스트
글
부팅시 grub가 화면에 나오지는 않으나 정상적으로 동작할 때 해결방법
종종 다양한 환경의 컴퓨터에 새로운 환경을 사용하기 위해 운영체제를 새로 설치하여 원하는 환경을 구축하곤 합니다. 컴퓨터마다 설치된 사양과 환경등이 제각각이지만 운영체제를 새로 설치하고나서 부터는 어느 정도 해당 환경에 맞추어 나가다 보면 어느덧 컴퓨터가 손에 길들여지는 것이 느껴지고는 합니다.
그런데 이번에 설치를 시도하게 된 컴퓨터는 유독 희안한 증상이 있었습니다. 우분투도 처음부터 새롭게 설치했음에도 멀티부트 환경 등에서 사용되는 grub 화면이 나오지 않는 것입니다.
대개 거의 대부분의 경우 이는 grub 설정에서 화면을 띄우기도 전에 바로 우분투가 부팅되는 경우이기 때문에 다음과 같이 설정하면 grub 화면이 나타납니다.
# sudo vi /etc/default/grub
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
# info -f grub -n 'Simple configuration'
GRUB_DEFAULT=0
GRUB_TIMEOUT_STYLE=menu
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""
# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"
# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console
|
ddcs |
위의 코드에서 해당 부분에 시간을 부여해주면 grub 메뉴들을 볼 수 있습니다.
GRUB_TIMEOUT=10
그런데 이번에 제가 다루게 된 컴퓨터는 희안하게도 grub 화면에 나타나지 않는 것입니다. 혹시나 해서 grub가 실행되고 있을법한 타이밍에 방향키를 누른 다음 엔터키를 눌러보았는데 희안하게도 해당 메뉴가 실행되는 것을 눈으로 직접 확인하였습니다. 즉, 모종의 이유로 grub가 실행이 되고 있음에도 화면에서는 나타나지 않는 현상으로 보였습니다. 왠지 해당 컴퓨터의 그래픽 출력 관련 문제인 것으로 보아 다음과 같이 다시 시도해 보았습니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
# info -f grub -n 'Simple configuration'
GRUB_DEFAULT=0
GRUB_TIMEOUT_STYLE=menu
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""
# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"
# Uncomment to disable graphical terminal (grub-pc only)
GRUB_TERMINAL=console
|
cs |
다음과 같이 해당 부분의 주석을 지워줍니다.
GRUB_TERMINAL=console
해당 커맨드를 활성화 시키면 grub의 터미널 모드를 그래픽 터미널에서 콘솔 터미널로 바꾸어줍니다. 아마도 그래픽 출력 문제로 인해 화면이 나오지 않는 것으로 추정되어 해당 방법을 시도해 보았는데요 이제 변경된 내용을 grub에 적용해줍니다.
# sudo update-grub
# sudo reboot
여기까지 진행한 다음 리셋을 했더니 드디어 grub메뉴가 모니터에서 나타났습니다.
일반적으로 많이 보던 grub의 모습과 달리 완전 새까만 배경의 모습으로 메뉴를 표시합니다. 추정컨데 그래픽 모드가 아닌 콘솔 모드로 출력되어 그래픽카드가 아닌 텍스트 콘솔 출력 방식으로 띄우는 듯 합니다. 그래픽 카드의 문제를 해결해보고 싶었지만 일단 화면이 안나온 것을 해결하였으니 여기서 만족하기로 하였습니다.
해당 원인에 대해 좀 더 자세히 확인하고 싶으신 분들께서는 아래의 포스팅을 참조해 주시기 바랍니다.
Get grub menu back after installing Ubuntu 20.04 alongside Windows
TL;DR
medium.com
'공대생의 팁' 카테고리의 다른 글
VMware에서 Fedora에 VMware Tools 설치 후에도 해상도 변경이 안될때 (0) | 2021.05.16 |
---|---|
Windows Powershell 명령어를 바로가기로 구현하기 (1) | 2021.04.30 |
python에서 pip install 과정에서 SSL 오류 해결방법 (0) | 2021.03.16 |
USB없이 GRUB2를 통해 ISO파일 부팅하기(DVD 없이 우분투 설치) (0) | 2021.03.11 |
Gower's distance(가워 거리) (2) | 2021.02.01 |
설정
트랙백
댓글
글
python에서 pip install 과정에서 SSL 오류 해결방법
python의 라이브러리를 사용함에 있어 pip를 통해 관련 라이브러리 패키지를 다운로드 받아 설치할 수 있습니다. 비록 pip가 root 권한 관련 문제가 있지만 그나마 사용할만한 것입니다. 물론 이러한 문제는 아나콘다의 설치환경 설정으로 어느정도 해결된 감이 있습니다.
pip를 통해 직접 다운로드를 하는 과정에서 내부망의 정책에 의해 제한 등이 있을 경우 아래와 같이 SSL 문제가 발생되는 것을 볼 수 있었습니다. 아래의 예는 Python에서 사용되는 라이브러리인 SciPy를 설치하는 과정에서 발견하게된 오류입니다.
Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:852)'),)': /simple/scipy/
Could not find a version that satisfies the requirement scipy (from versions: )
No matching distribution found for scipy
해당 문제롤 해결하기 위해 pip에서 제공하는 --trusted-host 옵션을 사용합니다. 명령어는 아래와 같습니다.
#Python2
$ python2 -m pip --trusted-host pypi.python.org --trusted-host files.pythonhosted.org --trusted-host pypi.org install 패키지명
# Python3
$ python3 -m pip --trusted-host pypi.python.org --trusted-host files.pythonhosted.org --trusted-host pypi.org install 패키지명
만약 위의 명령어가 너무 길어 차후 설치할 때 일일이 입력하지 않고 간단하게 실행을 원하시는 분은 다음과 같이 .bashrc에 기록해줍니다.
$ vi ~/.bashrc
#Python2
alias pip2='python2 -m pip --trusted-host pypi.python.org --trusted-host files.pythonhosted.org --trusted-host pypi.org'
#Python3
alias pip3='python3 -m pip --trusted-host pypi.python.org --trusted-host files.pythonhosted.org --trusted-host pypi.org'
위와같이 설정하신 후 차후에는 다음과 같이 명령어를 입력하시면 간편하게 Python 라이브러리를 pip를 통해 설치하실 수 있습니다.
#Python2
$ pip2 install 패키지명
#Python3
$ pip3 install 패키지명
※ 2022년 5월 12일 추가
Windows 환경에서 pip의 SSL error 이슈를 해결하기 위해 위에서 설명한바와 같이 --trusted-host로 웹사이트를 추가하여 pip에 적용합니다. 이를 Powershell로 간단하게 적용하는 방법을 아래의 글에서 소개해드리겠습니다.
Windows Powershell로 긴 명령어를 짧게 만드는 function 함수 사용
Windows 환경에서 Python을 사용할 때 pip로 라이브러리를 설치할 때 cmd 혹은 Powershell을 사용합니다. 일반적인 상황에서는 단지 > pip install 라이브러리명 위와 같이 입력만 해줘도 바로 라이브러
elecs.tistory.com
'공대생의 팁' 카테고리의 다른 글
Windows Powershell 명령어를 바로가기로 구현하기 (1) | 2021.04.30 |
---|---|
부팅시 grub가 화면에 나오지는 않으나 정상적으로 동작할 때 해결방법 (0) | 2021.03.23 |
USB없이 GRUB2를 통해 ISO파일 부팅하기(DVD 없이 우분투 설치) (0) | 2021.03.11 |
Gower's distance(가워 거리) (2) | 2021.02.01 |
2021년 이후 어도비 플래시 플레이어를 사용하는 방법 (4) | 2021.01.16 |
설정
트랙백
댓글
글
USB없이 GRUB2를 통해 ISO파일 부팅하기(DVD 없이 우분투 설치)
불과 10년전만 해도 CD와 DVD가 쓰이곤 했었는데 어느새부터인가 데스크톱에서 조차 DVD-ROM이 탑재되지 않는 모델들이 등장하고 있습니다. 2021년 기준 32GB짜리 USB메모리를 3천원에 구할 수 있는데다 어느 컴퓨터에나 있는 USB에 꽂아 데이터를 전송하고 변경도 가능한데 굳이 공DVD를 구해 구워서 데이터를 저장할 필요가 없어진 것이지요. 그러다보니 자연스럽게 컴퓨터에 운영체제를 설치하기 위해 USB로 부팅하는 경우가 흔해지고 있습니다. 그만큼 DVD보다 데이터를 다루는 것이 편해서기 때문이겠지요?
이번 포스팅에서는 Linux 환경에서 GRUB2를 수정하여 USB를 사용하지 않고 하드디스크만으로 ISO 파일을 부팅할 수 있도록 설정하는 방법에 대해 알아보도록 하겠습니다.
※Ubuntu 18.04 데스크톱을 기준으로 Ubuntu 20.04 ISO 파일을 설치하는 과정을 다룹니다.
1. 부팅하고자 하는 ISO 파일을 구합니다.
아래의 사이트를 통해 Ubuntu 설치 ISO 파일을 다운로드한 다음 원하는 폴더에 위치하도록 합니다.
http://mirror.kakao.com/ubuntu-releases/
Ubuntu Releases
These older Ubuntu releases are now in Extended Maintenance (ESM): We are happy to provide hosting for the following projects via the cdimage server. While th
mirror.kakao.com
2. ISO파일이 위치한 폴더의 파티션을 확인한다.
다음 명령어를 통해 폴더의 파티션이 어디에 속해있는지 확인할 수 있습니다.
$ df -h
위의 결과에서 Filesystem에서 /dev/sd~~ 라고 써있는 부분이 설치시 필요한 파티션들입니다. 혹시 자신의 파티션이 단 하나일 경우 해당 파티션에 우분투가 설치되어 있어 ISO로 부팅했을 때 해당 파티션을 잡게 되어 새로 설치하는 것이 어렵습니다. 이를 위해서는 단일 파티션을 쪼개 ISO 파일을 위치시킬 파티션을 따로 만들어주어야 합니다. 해당 방법에 대해서는 아래의 링크를 참조해주세요.
리눅스 파티션 설정 ( 파티션 만들기 / 파티션 나누기 )
안녕하세요 롯사입니다. 리눅스를 설치할 때 자동으로 파티션을 구성하여 설치하셨다면 이번엔 리눅스 터미널 환경에서 fdisk라는 명령어를 이용해서 수동으로 파티션을 나누어 보겠습니다. 여
wlsvud84.tistory.com
ISO 파일을 위치시킬 파티션에 ISO파일을 옮긴 후 다음으로 진행합니다.
3.GRUB2에 ISO파일을 등록
다음 명령어를 입력하여 GRUB2에 부팅할 ISO파일을 등록해줍니다.
# sudo vi /etc/grub.d/40_custom
해당 파일에 다음과 같은 내용을 작성해줍니다.
1
2
3
4
5
6
7
|
menuentry "Ubuntu 20.04.2 ISO" {
set isofile="/<파일경로>/ubuntu-20.04.2.0-desktop-amd64.iso"
#/dev/sda5에 설치시
loopback loop (hd0,5)$isofile
linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$isofile noprompt noeject
initrd (loop)/casper/initrd.lz
}
|
cs |
만약 자신의 운영체제가 GRUB 2.04 버전을 사용하고 있을 경우 다음과 같은 내용을 작성해줍니다.
1
2
3
4
5
6
7
8
|
menuentry "Ubuntu 20.04.2 ISO" {
set isofile="/<파일경로>/ubuntu-20.04.2.0-desktop-amd64.iso"
rmmod tpm
#/dev/sdc1에 설치시
loopback loop (hd2,1)$isofile
linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$isofile noprompt noeject
initrd (loop)/casper/initrd.lz
}
|
cs |
위의 코드를 한 줄 씩 살펴보겠습니다.
menuentry "Ubuntu 20.04.2 ISO" {
GRUB 첫 화면에서 메뉴 선택시 제목을 설정합니다. "Ubuntu 20.04.2 ISO"라는 제목으로 메뉴가 표출됩니다.
set isofile="/<파일경로>/ubuntu-20.04.2.0-desktop-amd64.iso"
ISO 파일이 위치한 경로를 선택합니다.
만약 여러분들이 /dev/sdb 파티션에 위치한 ISO 파일을 부팅하기를 원할 때 절대경로는 /mnt/파일명.iso이지만 /dev/sdb의 기본 주소가 /mnt 이므로 파일경로는 /mnt를 생략하고 다음과 같이 작성하면 됩니다.
set isofile="/ubuntu-20.04.2.0-desktop-amd64.iso"
다음으로 파티션 위치를 설정하는 방법에 대하여 설명해보도록 하겠습니다.
loopback loop (hd0,5)$isofile
위의 에서 hd0,5는 파티션 /dev/sda5에 위치한 ISO 파일을 가리키고 있습니다. /dev/sdXY에서 X는 파티션의 알파벳 부분으로 a부터 0으로 카운트되며 Y는 해당 파티션의 번호입니다. ISO 파일이 위치한 파티션을 확인하신 다음 입력하시면 되겠습니다.
정확하게 ISO 파일이 위치한 파티션의 위치를 확인하기 위해 재부팅후 GRUB 화면으로 넘어옵니다.
위 화면에서 'c' 버튼을 누르면 GRUB의 커맨드창이 나옵니다. 아래와 같이 명령어를 입력해줍니다.
grub> ls -al
입력후 아래와 같이 컴퓨터에 연결된 파티션 정보가 출력됨을 알 수 있습니다.
위의 경우 hd0에는 (hd0,msdos5) 파티션과 (hd0,msdos1) 파티션이 존재함을 확인할 수 있습니다. ISO 파일이 어떤 파티션에 있는지 확인하기 위해 다음과 같은 명령어를 입력하면 해당 파티션의 파일 구조를 확인할 수 있습니다.
grub> ls (hd0,msdos5)/
이를 통해 ISO 파일의 파일 경로를 확인후 ISO가 있는 파티션을 입력해줍니다.
4. GRUB2의 메뉴를 확인할 수 있는 대기시간을 확보합니다.
아래의 명령어를 입력합니다.
# sudo vi /etc/default/grub
해당 부분을 다음과 같이 수정하여 GRUB2에서 메뉴를 선택할 수 있는 시간을 확보합니다. 여기서는 10초 할당하였습니다.
GRUB_TIMEOUT=10
5. GRUB2의 설정을 업데이트한 다음 리셋하여 확인
아래의 명령어를 입력하여 GRUB2의 메뉴를 업데이트합니다.
# sudo update-grub
여기까지 진행하셨다면 시스템을 리셋하여 GRUB2 메뉴에 ISO 파일 부팅이 되는 것을 확인합니다.
# sudo reboot
'공대생의 팁' 카테고리의 다른 글
부팅시 grub가 화면에 나오지는 않으나 정상적으로 동작할 때 해결방법 (0) | 2021.03.23 |
---|---|
python에서 pip install 과정에서 SSL 오류 해결방법 (0) | 2021.03.16 |
Gower's distance(가워 거리) (2) | 2021.02.01 |
2021년 이후 어도비 플래시 플레이어를 사용하는 방법 (4) | 2021.01.16 |
MobaXterm에서 X server 사용시 전체화면 모드 화면이 안나올때 해결방법 (1) | 2020.10.25 |