일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- bindings
- JupyterLab
- Melodic
- jupyter
- Baselines
- Ros
- wsl2
- 강화학습
- mujoco-py
- python
- 우분투
- systemctl
- Robotics
- RemoteDesktop
- WSL
- TensorFlow
- MuJoCo2.1.5
- python3
- pyTorch
- MuJoCo
- Anaconda
- OpenAI
- GYM
- 무조코
- ubuntu
- Robot
- simulation
- Physics
- Reinforcement Learning
- 주피터랩
- Today
- Total
Creative-Chan
우분투 reboot과 NVIDIA Driver 에러로 인한 재설치 본문
1. 문제
Ubuntu 원격 서버를 재부팅했더니 다음과 같이 해상도가 깨지고 그래픽 카드 드라이버가 제대로 동작하지 않았다.
nvidia-smi 명령어를 통해 확인하면 다음과 같은 에러 메시지를 뱉어낸다.
NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver. Make sure that the latest NVIDIA driver is installed and running.
![](http://t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png)
확인해보니 Jupyter 원격 서버가 돌아가던 도중 여러가지 이유로 재부팅이 되었을 때, 그래픽카드 드라이버가 꼬여서 위와 같은 현상이 생긴다고 한다.
해결하는 방법은 간단하다고 한다. Nvidia 드라이버를 재설치 하는 것이다.
2. 해결방법
- 해당 컴퓨터에 설치된 nvidia-driver 버전을 확인한다.
apt --installed list | grep nvidia-driver
- 설치된 드라이버를 삭제한다.
sudo apt remove nvidia-drvier-<설치된 버전>
- 관련된 패키지를 모두 삭제한다.
sudo apt autoremove
- nvidia 드라이버를 재설치한다.
sudo apt-get install nvidia-driver-510
- 재부팅한다.
sudo reboot now
위의 방법으로 재설치하면 일반적으로는 깔끔하게 해결이 된다고 하는데 본인의 경우 드라이버가 제대로 설치되지 않았다.
수많은 시도 끝에 확인한 것은 설치되어있는 nvidia 드라이버는 510.54 버전이었는데 apt
로 받아지는 버전은 510.45 버전이었던 것이다.
복구했던 방법을 다시 소개하고자 한다.
이를 재설치하기 위해서는 우선 깔끔하게 nvidia 관련 프로그램을 삭제해주어야 한다.
4-1. nvidia와 관련된 모든 것을 삭제한다.
sudo apt remove --purge nvidia\*
sudo apt remove --purge nvidia*
sudo apt remove --purge nvidia-*
sudo apt remove --purge nvidia-\*
sudo apt remove --purge libvidia*
4-2. nvidia 드라이버를 다운받는다.
https://www.nvidia.com/Download/index.aspx
4-3. Ubuntu의 DisplayManager를 비활성화한다.
sudo systemctl isolate multi-user.target
4-4. 다운받은 파일의 실행 권한을 부여한다.
chmod +x ./NVIDIA-Linux-x86_64-510.54.run
4-5. 설치를 진행한다.
sudo sh ./NVIDIA-Linux-x86_64-510.54.run
- 본인의 경우 설치 과정 가운데 빌드가 안되는 경우가 있었다. 이는 c 컴파일러의 버전 문제가 있었던 것으로 확인하였다. 이를 해결하기 위해서는 요구하는 버전 (본인의 경우 clang 7.5 이상)으로 업데이트 후에 설정해주어야한다.
# c++ compiler
sudo update-alternatives --config c++
# c compiler
sudo update-alternatives --config cc
4-6. Ubuntu의 DisplayManager를 활성화한다.
sudo systemctl start graphical.target
그리고 우분투를 재부팅하면 다음과 같이 nvidia 드라이버가 잘 작동하는 것을 볼 수 있다.
![](https://blog.kakaocdn.net/dn/b1fIr9/btrx75baNTv/L8YYDrfykM3KHT8pIVG4n0/img.png)
'Programming > Linux' 카테고리의 다른 글
wsl에서 systemctl 사용하기 (0) | 2023.02.05 |
---|---|
Windows Deep Learning Server using WSL2 (0) | 2023.02.04 |
Jupyter Notebook (JupyterLab) 원격서버 설정하기 (0) | 2022.03.24 |
Anaconda 가상환경을 통한 딥러닝 환경 설정 (TensorFlow, PyTorch) (0) | 2022.03.23 |
Ubuntu 18.04에서 Chrome Remote Desktop 설정하기 (0) | 2022.03.23 |