9/03/2019

Lenovo Ubuntu 설치및 HW 테스트 진행완료

1. Lenovo Ubuntu 설치가이드 

나의 Laptop 모델사양 재확인 
- Lenovo Y540-15IRH LEGION i7 Prime 2060

드디어 아래의 문서를 찾았으며, 아래의 문서대로 하면, WIFI Driver가 동작되는 것을 확인하였다.
특히한것은 ETCHER를 이용하여, 그대로 사용했는데 RUFUS를 이용 안해도 되는것 같다.
궁금한것은 RUFUS의 역할이 정확하게 뭐하는지 좀 애매한 것같다.
EFI Partition을 만들어주는 역할이 추가 된 것로 생각 하면 될 것 같다. 

  • Lenovo Y530 Ubuntu Install Guide 
Lenovo에서 출시한 Laptop 중 내것 과 가장 유사하며, CPU와 GPU와 Driver들은  많이 다르지만 기본 Board가 비슷할 것이며, 아래 설치가이드대로 설치 진행

  https://forums.lenovo.com/t5/Gaming-Laptops-Knowledge-Base/Installing-Ubuntu-on-the-Legion-Y530/ta-p/4187251
  https://github.com/kfechter/LegionY530Ubuntu
  https://github.com/kfechter/LegionY530Ubuntu/blob/master/Sections/Troubleshooting.md


이전 Ubuntu  와 Window 설치 문제사항 
  https://ahyuo79.blogspot.com/2019/09/lenovo-laptop-ubuntu.html

처음  ETCHER or Win32DiskImager를 이용하려 했었지만, RUFUS의 독특한 설정으로 (GPT/MBR 설정, BIOS설정)으로 RUFUS를 사용하게되었다.
결론은 BIOS-> Legacy로 USB Boot를 하면, Rufus까지는 불필요한 것으로 보인다. 물론 사용하면 좋지만, ETHER로만으로 충분한 것 같다. 

상위 Install  Guide의 파란화면은 WINDOW 10의 Recovery Mode의 설정이며, 관련부분은 별도 설정을 하지 않았다.
이 궁금증은 나중에 보도록하고 설치를 진행하자

1.1  상위 Y530 설치가이드 대로 진행 

세부 그림 및 설정 사항은 상위 Y530 Ubuntu Install Guide를 보면 될 것 같다. 

  • Ubuntu 18.04 설치 진행 (WIFI 동작확인) 
  1. Ubuntu USB Boot가능한 Flash 생성 후 Lenovo USB에 연결
  2. 부팅후 F2를 눌러 BIOS 모드로 진입 
  3. BIOS->BOOT 를 Legacy Mode로 변경 
  4. BIOS->BOOT의 EFI 와 Legacy 부분의 USB 우선순위 맨 위로 변경 저장후 재부팅 
  5. USB 우선순위는 F10을 눌러 BOOT Manager 에서 순서변경가능 
  6. UBUNTU의 GRUB 실행시 try ubuntu without installing  실행
  7. UBUNTU가 실행 제대로 되면, Open Terminal 생성 후 아래의 Command WIFI 동작 
  8. sudo rmmod ideapad_laptop ( WIFI 동작가능)
  9. UBUNTU의 맨 왼쪽 아이콘에서 Ubuntu Install 진행하여 Ubuntu 18.04 설치진행
  10. 설치진행완료 후 아래와 같이 부팅시마다 ideapad_laptop 모듈을 미동작하도록 수정  
  11. sudo gedit  /etc/modprob.d/blacklist.conf  (WIFI 동작 )
  12. sudo update/ upgrade 
  13. Reboot 후 GRUB에서 e를 눌러 Kernel Parameter에 quiet splash nouveau.modeset=0 추가 (NVIDIA Driver설치 후 필요없다고함)
  14. GRUB에서 수정된 Parameter 값으로 부팅 F10진행 


nouveau 관련내용 이해 , 설명이 잘되어 있음 
  https://blog.neonkid.xyz/66


WIFI 미동작원인은 두개의 Driver가 동작되어 충돌되어 미동작되는 것이며, 이 모듈을 매번제거하면 해결 (ideapad_laptop)

  • WIFI 미동작 관련 부분  
$ sudo rmmod ideapad_laptop  // WIFI Driver 동작확인 

$ sudo gedit /etc/modprobe.d/blacklist.conf
........
blacklist ideapad_laptop 

매번 rmmod로 제거 할 수 없으니 Kernel Module Load하는 부분에서 완전히 제거 


  • 크롬설치진행 및 필요사항 설치
$ wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add - 
$ sudo sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list'
$ sudo apt-get update
//크롬 설치
$ sudo apt-get install google-chrome-stable
$ sudo rm -rf /etc/apt/sources.list.d/google.list 

Ubuntu 기반의 개발환경 구성 
  https://ahyuo79.blogspot.com/2019/01/ubuntu.html
  https://ahyuo79.blogspot.com/2018/05/ubuntu-1604-lts-version.html

Ubuntu 18.04 설치관련 정보 (NVIDIA 관련사항)
  https://eungbean.github.io/2018/08/08/Ubuntu-Installation1/

NVIDIA Driver를 설치전에는 Setting 부분이 그래픽카드문제로 동작되지 않는다.
그리고, 자주 사용하는 screenshot 과

1.2 NVIDIA RTX-2060 Driver 설치진행

자료출처
  https://hiseon.me/linux/ubuntu/install_nvidia_driver/

상위에서 쉽게 설명을 해주어서 내  RTX-2060도 쉽게 설치했지만 더 쉽게 그냥 3줄로 설치 가능할 것 같다

  • NVIDIA DRIVER 설치준비

$ cat /proc/driver/nvidia/version 
cat: /proc/driver/nvidia/version: No such file or directory

$ lspci -k
...
01:00.0 VGA compatible controller: NVIDIA Corporation Device 1f11 (rev a1)
 Subsystem: Lenovo Device 3ffd
 Kernel driver in use: nouveau
 Kernel modules: nvidiafb, nouveau
...

$ release="ubuntu"$(lsb_release -sr | sed -e "s/\.//g")

$ echo $release
ubuntu1804

$ sudo apt install sudo gnupg
$ sudo apt-key adv --fetch-keys "http://developer.download.nvidia.com/compute/cuda/repos/"$release"/x86_64/7fa2af80.pub"
$ sudo sh -c 'echo "deb http://developer.download.nvidia.com/compute/cuda/repos/'$release'/x86_64 /" > /etc/apt/sources.list.d/nvidia-cuda.list'
$ sudo sh -c 'echo "deb http://developer.download.nvidia.com/compute/machine-learning/repos/'$release'/x86_64 /" > /etc/apt/sources.list.d/nvidia-machine-learning.list'
$ sudo apt update

$ apt-cache search nvidia // NSIGHT 부터 CUDA nvvp 와 cuda-visual-tools 도 설치 가능 
dmraid - Device-Mapper Software RAID support tool
libvdpau-dev - Video Decode and Presentation API for Unix (development files)
libvdpau-doc - Video Decode and Presentation API for Unix (documentation)
libvdpau1 - Video Decode and Presentation API for Unix (libraries)
libvdpau1-dbg - Video Decode and Presentation API for Unix (debug symbols)
libxnvctrl-dev - NV-CONTROL X extension (development files)
libxnvctrl0 - NV-CONTROL X extension (runtime library)
nvidia-prime - Tools to enable NVIDIA's Prime
nvidia-settings - Tool for configuring the NVIDIA graphics driver
ubuntu-drivers-common - Detect and install additional Ubuntu driver packages
vdpau-driver-all - Video Decode and Presentation API for Unix (driver metapackage)
xserver-xorg-video-nouveau - X.Org X server -- Nouveau display driver
libcuda1-340 - NVIDIA CUDA runtime library
libnvidia-cfg1-390 - NVIDIA binary OpenGL/GLX configuration library
libnvidia-common-390 - Shared files used by the NVIDIA libraries
libnvidia-compute-390 - NVIDIA libcompute package
libnvidia-decode-390 - NVIDIA Video Decoding runtime libraries
libnvidia-encode-390 - NVENC Video Encoding runtime library
libnvidia-fbc1-390 - NVIDIA OpenGL-based Framebuffer Capture runtime library
libnvidia-gl-390 - NVIDIA OpenGL/GLX/EGL/GLES GLVND libraries and Vulkan ICD
libnvidia-ifr1-390 - NVIDIA OpenGL-based Inband Frame Readback runtime library
nvidia-331 - Transitional package for nvidia-331
nvidia-331-dev - Transitional package for nvidia-340-dev
nvidia-331-updates - Transitional package for nvidia-340
nvidia-331-updates-dev - Transitional package for nvidia-340-dev
nvidia-331-updates-uvm - Transitional package for nvidia-340
nvidia-331-uvm - Transitional package for nvidia-340
nvidia-340-dev - NVIDIA binary Xorg driver development files
nvidia-340-updates - Transitional package for nvidia-340
nvidia-340-updates-dev - Transitional package for nvidia-340-dev
nvidia-340-updates-uvm - Transitional package for nvidia-340-updates
nvidia-340-uvm - Transitional package for nvidia-340
nvidia-346 - Transitional package for nvidia-346
nvidia-346-dev - Transitional package for nvidia-352-dev
nvidia-346-updates - Transitional package for nvidia-346-updates
nvidia-346-updates-dev - Transitional package for nvidia-352-updates-dev
nvidia-352 - Transitional package for nvidia-361
nvidia-352-dev - Transitional package for nvidia-361-dev
nvidia-352-updates - Transitional package for nvidia-361
nvidia-352-updates-dev - Transitional package for nvidia-361-dev
nvidia-361 - Transitional package for nvidia-367
nvidia-361-dev - Transitional package for nvidia-367-dev
nvidia-361-updates - Transitional package for nvidia-361
nvidia-361-updates-dev - Transitional package for nvidia-361-dev
nvidia-367 - Transitional package for nvidia-375
nvidia-367-dev - Transitional package for nvidia-375-dev
nvidia-375 - Transitional package for nvidia-384
nvidia-375-dev - Transitional package for nvidia-384-dev
nvidia-compute-utils-390 - NVIDIA compute utilities
nvidia-dkms-390 - NVIDIA DKMS package
nvidia-driver-390 - NVIDIA driver metapackage
nvidia-headless-390 - NVIDIA headless metapackage
nvidia-headless-no-dkms-390 - NVIDIA headless metapackage - no DKMS
nvidia-kernel-common-390 - Shared files used with the kernel module
nvidia-kernel-source-390 - NVIDIA kernel source package
nvidia-opencl-icd-340 - NVIDIA OpenCL ICD
nvidia-utils-390 - NVIDIA driver support binaries
xserver-xorg-video-nvidia-390 - NVIDIA binary Xorg driver
bbswitch-dkms - Interface for toggling the power on NVIDIA Optimus video cards
boinc-client-nvidia-cuda - metapackage for CUDA-savvy BOINC client and manager
bumblebee - NVIDIA Optimus support for Linux
bumblebee-nvidia - NVIDIA Optimus support using the proprietary NVIDIA driver
conky-all - highly configurable system monitor (all features enabled)
conky-all-dbg - highly configurable system monitor (all features enabled - debug)
cpufreqd - fully configurable daemon for dynamic frequency and voltage scaling
flashrom - Identify, read, write, erase, and verify BIOS/ROM/flash chips
gcc-7-offload-nvptx - GCC offloading compiler to NVPTX
gcc-8-offload-nvptx - GCC offloading compiler to NVPTX
gcc-offload-nvptx - GCC offloading compiler to NVPTX
gimp-normalmap - Normal map plugin for GIMP
hobbit-plugins - plugins for the Xymon network monitor
kubuntu-driver-manager - Driver Manager for Kubuntu
kubuntu-driver-manager-dbg - Driver Manager for Kubuntu -- debug symbols
libgomp-plugin-nvptx1 - GCC OpenMP v4.5 plugin for offloading to NVPTX
libnvtt-bin - NVIDIA Texture Tools (Binaries)
libnvtt-dev - NVIDIA Texture Tools (Header)
libnvtt2 - NVIDIA Texture Tools
mate-optimus - MATE Desktop applet for controlling NVIDIA Optimus graphics cards
mate-sensors-applet - Display readings from hardware sensors in your MATE panel
mate-sensors-applet-nvidia - Display readings from hardware sensors in your MATE panel (NVIDIA sensors)
numba-doc - native machine code compiler for Python (docs)
nvidia-common - transitional package for ubuntu-drivers-common
nvtv - tool to control TV chips on NVidia cards under Linux
primus - client-side GPU offloading for NVIDIA Optimus
psensor - display graphs for monitoring hardware temperature
psensor-server - Psensor server for monitoring hardware sensors remotely
pyrit - GPGPU-driven WPA/WPA2-PSK key cracker
pyrit-opencl - OpenCL extension module for Pyrit
python-numba - native machine code compiler for Python 2
python3-numba - native machine code compiler for Python 3
sensors-applet - Display readings from hardware sensors in your Gnome panel
sysinfo - display computer and system information
vc-dev - Library to ease explicit vectorization of C++ code
vdpauinfo - Video Decode and Presentation API for Unix (vdpauinfo utility)
hashcat-nvidia - Installs hashcat and its dependencies for users with NVIDIA GPU
libaccinj64-9.1 - NVIDIA ACCINJ Library (64-bit)
libcg - Nvidia Cg core runtime library
libcggl - Nvidia Cg Opengl runtime library
libcublas9.1 - NVIDIA cuBLAS Library
libcudart9.1 - NVIDIA CUDA Runtime Library
libcufft9.1 - NVIDIA cuFFT Library
libcufftw9.1 - NVIDIA cuFFTW Library
libcuinj64-9.1 - NVIDIA CUINJ Library (64-bit)
libcupti-dev - NVIDIA CUDA Profiler Tools Interface development files
libcupti-doc - NVIDIA CUDA Profiler Tools Interface documentation
libcupti9.1 - NVIDIA CUDA Profiler Tools Interface runtime library
libcurand9.1 - NVIDIA cuRAND Library
libcusolver9.1 - NVIDIA cuSOLVER Library
libcusparse9.1 - NVIDIA cuSPARSE Library
libnppc9.1 - NVIDIA Performance Primitives core runtime library
libnppial9.1 - NVIDIA Performance Primitives lib for Image Arithmetic and Logic
libnppicc9.1 - NVIDIA Performance Primitives lib for Image Color Conversion
libnppicom9.1 - NVIDIA Performance Primitives lib for Image Compression
libnppidei9.1 - NVIDIA Performance Primitives lib for Image Data Exchange and Initialization
libnppif9.1 - NVIDIA Performance Primitives lib for Image Filters
libnppig9.1 - NVIDIA Performance Primitives lib for Image Geometry transforms
libnppim9.1 - NVIDIA Performance Primitives lib for Image Morphological operations
libnppist9.1 - NVIDIA Performance Primitives lib for Image Statistics
libnppisu9.1 - NVIDIA Performance Primitives lib for Image Support
libnppitc9.1 - NVIDIA Performance Primitives lib for Image Threshold and Compare
libnpps9.1 - NVIDIA Performance Primitives for signal processing runtime library
libnvblas9.1 - NVBLAS runtime library
libnvgraph9.1 - NVIDIA Graph Analytics library (nvGRAPH)
libnvrtc9.1 - CUDA Runtime Compilation (NVIDIA NVRTC Library)
libnvtoolsext1 - NVIDIA Tools Extension Library
libnvvm3 - NVIDIA NVVM Library
nouveau-firmware - Firmware for nVidia graphics cards
nvidia-cg-dev - Cg Toolkit - GPU Shader Authoring Language (headers)
nvidia-cg-doc - Cg Toolkit - GPU Shader Authoring Language (documentation)
nvidia-cg-toolkit - Cg Toolkit - GPU Shader Authoring Language
nvidia-cuda-dev - NVIDIA CUDA development files
nvidia-cuda-doc - NVIDIA CUDA and OpenCL documentation
nvidia-cuda-gdb - NVIDIA CUDA Debugger (GDB)
nvidia-cuda-toolkit - NVIDIA CUDA development toolkit
nvidia-libopencl1-331 - Transitional package for nvidia-libopencl1-340
nvidia-libopencl1-331-updates - Transitional package for nvidia-libopencl1-340
nvidia-libopencl1-340 - NVIDIA OpenCL Driver and ICD Loader library
nvidia-libopencl1-340-updates - Transitional package for nvidia-libopencl1-340
nvidia-libopencl1-346 - Transitional package for nvidia-libopencl1-352
nvidia-libopencl1-346-updates - Transitional package for nvidia-libopencl1-352-updates
nvidia-libopencl1-352 - Transitional package for nvidia-libopencl1-361
nvidia-libopencl1-352-updates - Transitional package for nvidia-libopencl1-361
nvidia-libopencl1-361 - Transitional package for nvidia-libopencl1-367
nvidia-libopencl1-361-updates - Transitional package for nvidia-libopencl1-361
nvidia-libopencl1-367 - Transitional package for nvidia-libopencl1-375
nvidia-libopencl1-375 - Transitional package for nvidia-libopencl1-384
nvidia-modprobe - utility to load NVIDIA kernel modules and create device nodes
nvidia-nsight - NVIDIA Nsight Eclipse Edition
nvidia-opencl-dev - NVIDIA OpenCL development files
nvidia-opencl-icd-331 - Transitional package for nvidia-opencl-icd-340
nvidia-opencl-icd-331-updates - Transitional package for nvidia-opencl-icd-340
nvidia-opencl-icd-340-updates - Transitional package for nvidia-opencl-icd-340
nvidia-opencl-icd-346 - Transitional package for nvidia-opencl-icd-352
nvidia-opencl-icd-346-updates - Transitional package for nvidia-opencl-icd-352-updates
nvidia-opencl-icd-352 - Transitional package for nvidia-opencl-icd-361
nvidia-opencl-icd-352-updates - Transitional package for nvidia-opencl-icd-361
nvidia-opencl-icd-361 - Transitional package for nvidia-opencl-icd-367
nvidia-opencl-icd-361-updates - Transitional package for nvidia-opencl-icd-361
nvidia-opencl-icd-367 - Transitional package for nvidia-opencl-icd-375
nvidia-opencl-icd-375 - Transitional package for nvidia-opencl-icd-384
nvidia-profiler - NVIDIA Profiler for CUDA and OpenCL
nvidia-visual-profiler - NVIDIA Visual Profiler for CUDA and OpenCL
python-pycuda - Python module to access Nvidia‘s CUDA parallel computation API
python-pycuda-dbg - Python module to access Nvidia‘s CUDA API (debug extensions)
python-pycuda-doc - module to access Nvidia‘s CUDA computation API (documentation)
python3-pycuda - Python 3 module to access Nvidia‘s CUDA parallel computation API
python3-pycuda-dbg - Python 3 module to access Nvidia‘s CUDA API (debug extensions)
tegrarcm - Tool to upload payloads in Tegra SoC recovery mode
xserver-xorg-video-nouveau-hwe-18.04 - X.Org X server -- Nouveau display driver
libnvidia-cfg1-418 - Transitional package for libnvidia-cfg1-430
libnvidia-cfg1-430 - NVIDIA binary OpenGL/GLX configuration library
libnvidia-common-418 - Transitional package for libnvidia-common-430
libnvidia-common-430 - Shared files used by the NVIDIA libraries
libnvidia-compute-418 - Transitional package for libnvidia-compute-430
libnvidia-compute-430 - NVIDIA libcompute package
libnvidia-decode-418 - Transitional package for libnvidia-decode-430
libnvidia-decode-430 - NVIDIA Video Decoding runtime libraries
libnvidia-encode-418 - Transitional package for libnvidia-encode-430
libnvidia-encode-430 - NVENC Video Encoding runtime library
libnvidia-fbc1-418 - Transitional package for libnvidia-fbc1-430
libnvidia-fbc1-430 - NVIDIA OpenGL-based Framebuffer Capture runtime library
libnvidia-gl-418 - Transitional package for libnvidia-gl-430
libnvidia-gl-430 - NVIDIA OpenGL/GLX/EGL/GLES GLVND libraries and Vulkan ICD
libnvidia-ifr1-418 - Transitional package for libnvidia-ifr1-430
libnvidia-ifr1-430 - NVIDIA OpenGL-based Inband Frame Readback runtime library
linux-modules-nvidia-390-4.15.0-1022-oracle - Linux kernel nvidia modules for version 4.15.0-1022
linux-modules-nvidia-390-4.15.0-1047-aws - Linux kernel nvidia modules for version 4.15.0-1047
linux-modules-nvidia-390-4.15.0-58-generic - Linux kernel nvidia modules for version 4.15.0-58
linux-modules-nvidia-390-4.15.0-58-lowlatency - Linux kernel nvidia modules for version 4.15.0-58
linux-modules-nvidia-390-4.15.0-60-generic - Linux kernel nvidia modules for version 4.15.0-60
linux-modules-nvidia-390-4.15.0-60-lowlatency - Linux kernel nvidia modules for version 4.15.0-60
linux-modules-nvidia-390-5.0.0-1018-azure - Linux kernel nvidia modules for version 5.0.0-1018
linux-modules-nvidia-390-aws - Extra drivers for nvidia-390 for the aws flavour
linux-modules-nvidia-390-azure - Extra drivers for nvidia-390 for the azure flavour
linux-modules-nvidia-390-generic - Extra drivers for nvidia-390 for the generic flavour
linux-modules-nvidia-390-lowlatency - Extra drivers for nvidia-390 for the lowlatency flavour
linux-modules-nvidia-390-oracle - Extra drivers for nvidia-390 for the oracle flavour
linux-modules-nvidia-418-5.0.0-1018-azure - Linux kernel nvidia modules for version 5.0.0-1018
linux-modules-nvidia-418-azure - Extra drivers for nvidia-418 for the azure flavour
nvidia-340 - NVIDIA binary driver - version 340.107
nvidia-compute-utils-418 - Transitional package for nvidia-compute-utils-430
nvidia-compute-utils-430 - NVIDIA compute utilities
nvidia-dkms-418 - Transitional package for nvidia-dkms-430
nvidia-dkms-430 - NVIDIA DKMS package
nvidia-driver-418 - Transitional package for nvidia-driver-430
nvidia-driver-430 - NVIDIA driver metapackage
nvidia-headless-418 - Transitional package for nvidia-headless-430
nvidia-headless-430 - NVIDIA headless metapackage
nvidia-headless-no-dkms-418 - Transitional package for nvidia-headless-no-dkms-430
nvidia-headless-no-dkms-430 - NVIDIA headless metapackage - no DKMS
nvidia-kernel-common-418 - Transitional package for nvidia-kernel-common-430
nvidia-kernel-common-430 - Shared files used with the kernel module
nvidia-kernel-source-418 - Transitional package for nvidia-kernel-source-430
nvidia-kernel-source-430 - NVIDIA kernel source package
nvidia-utils-418 - Transitional package for nvidia-utils-430
nvidia-utils-430 - NVIDIA driver support binaries
xserver-xorg-video-nvidia-418 - Transitional package for xserver-xorg-video-nvidia-430
xserver-xorg-video-nvidia-430 - NVIDIA binary Xorg driver
linux-modules-nvidia-390-5.0.0-1020-oem-osp1 - Linux kernel nvidia modules for version 5.0.0-1020
linux-modules-nvidia-390-oem-osp1 - Extra drivers for nvidia-390 for the oem-osp1 flavour
linux-modules-nvidia-418-5.0.0-1020-oem-osp1 - Linux kernel nvidia modules for version 5.0.0-1020
linux-modules-nvidia-418-oem-osp1 - Extra drivers for nvidia-418 for the oem-osp1 flavour
nsight-systems-2019.3.7 - NVIDIA Nsight Systems is a statistical sampling profiler with tracing features.
cuda-drivers-diagnostic - CUDA Driver diagnostics meta-package
cuda-drivers - CUDA Driver meta-package
cuda-gdb-10-0 - CUDA-GDB
cuda-gdb-10-1 - CUDA-GDB
cuda-libraries-10-0 - CUDA Libraries 10.0 meta-package
cuda-libraries-10-1 - CUDA Libraries 10.1 meta-package
cuda-libraries-dev-10-0 - CUDA Libraries 10.0 development meta-package
cuda-libraries-dev-10-1 - CUDA Libraries 10.1 development meta-package
cuda-nsight-10-0 - CUDA nsight
cuda-nsight-10-1 - CUDA nsight
cuda-nsight-compute--10-0 - NVIDIA Nsight Compute Addon
cuda-nsight-compute-10-0 - NVIDIA Nsight Compute
cuda-nsight-compute-10-1 - NVIDIA Nsight Compute
cuda-nsight-systems-10-1 - NVIDIA Nsight Systems
cuda-nvtx-10-0 - NVIDIA Tools Extension
cuda-nvtx-10-1 - NVIDIA Tools Extension
cuda-nvvp-10-0 - CUDA nvvp
cuda-nvvp-10-1 - CUDA nvvp
cuda-visual-tools-10-0 - CUDA visual tools
cuda-visual-tools-10-1 - CUDA visual tools
libcuda1-384 - Transitional package for nvidia-headless-418
libnvidia-cfg1-410 - NVIDIA binary OpenGL/GLX configuration library
libnvidia-common-410 - Shared files used by the NVIDIA libraries
libnvidia-compute-410 - NVIDIA libcompute package
libnvidia-decode-410 - NVIDIA Video Decoding runtime libraries
libnvidia-diagnostic-410 - NVIDIA driver diagnostics utilities
libnvidia-diagnostic-418 - NVIDIA driver diagnostics utilities
libnvidia-encode-410 - NVENC Video Encoding runtime library
libnvidia-fbc1-410 - NVIDIA OpenGL-based Framebuffer Capture runtime library
libnvidia-gl-410 - NVIDIA OpenGL/GLX/EGL/GLES GLVND libraries and Vulkan ICD
libnvidia-ifr1-410 - NVIDIA OpenGL-based Inband Frame Readback runtime library
nsight-compute-2019.4.0 - NVIDIA Nsight Compute
nvidia-384-dev - Transitional package for nvidia-driver-418
nvidia-384 - Transitional package for nvidia-driver-418
nvidia-compute-utils-410 - NVIDIA compute utilities
nvidia-dkms-410 - NVIDIA DKMS package
nvidia-driver-410 - NVIDIA driver metapackage
nvidia-headless-410 - NVIDIA headless metapackage
nvidia-headless-no-dkms-410 - NVIDIA headless metapackage - no DKMS
nvidia-kernel-common-410 - Shared files used with the kernel module
nvidia-kernel-source-410 - NVIDIA kernel source package
nvidia-libopencl1-384 - Transitional package for nvidia-headless-418
nvidia-opencl-icd-384 - Transitional package for nvidia-headless-418
nvidia-utils-410 - NVIDIA driver support binaries
xserver-xorg-video-nvidia-410 - NVIDIA binary Xorg driver
libnccl2 - NVIDIA Collectives Communication Library (NCCL) Runtime
libnccl-dev - NVIDIA Collectives Communication Library (NCCL) Development Files
nvidia-machine-learning-repo-ubuntu1804 - nvidia-machine-learning repository configuration files

$ apt search nvidia  // 자세한 설명로 확인가능 


  • NVIDIA Site에서 Linux Driver  확인 및 Driver Version 정보확인 
NVIDIA Driver를 보니, GRD(Game Ready Driver) 와 SD(Studio Driver)로 나누어지는데, 개발자는 SD를 사용한다고 한다고 하는데  RTX2060은 미지원 확인
  https://www.nvidia.com/Download/index.aspx?lang=en-us

RTX-2060(Notebook) 최신 Version 430 확인
  https://www.nvidia.com/Download/driverResults.aspx/149138/en-us

Version 418의 RTX 2060 상위 1f11 과 동일 확인
  https://download.nvidia.com/XFree86/Linux-x86_64/418.43/README/supportedchips.html

  • NVIDIA DRIVER 설치 (Version 430)
설치를 진행 한 후 Ubuntu Reboot

$ sudo apt install nvidia-driver-430 
$ sudo apt install nvidia-prime  //상위 설치시 포함됨 

//430 Version 관련부분 확인 
$ apt-cache search nvidia | grep 430  
$ dpkg -l libnvidia-gl-430

$ nvidia-smi
Wed Sep  4 22:30:27 2019       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 430.26       Driver Version: 430.26       CUDA Version: 10.2     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GeForce RTX 2060    Off  | 00000000:01:00.0 Off |                  N/A |
| N/A   54C    P0    N/A /  N/A |      0MiB /  5926MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|=============================================================================|
|  No running processes found                                                 |
+-----------------------------------------------------------------------------+

//상위 GPU Memory 확인 및 GPU PID 확인 
//After Reboot 

$ cat /proc/driver/nvidia/version 
NVRM version: NVIDIA UNIX x86_64 Kernel Module  430.26  Tue Jun  4 17:40:52 CDT 2019
GCC version:  gcc version 7.4.0 (Ubuntu 7.4.0-1ubuntu1~18.04.1) 



  • Lenovo Graphic Card 설정 (기본 Graphic Card를 Intel 선택하면 안됨)
상위 Lenovo 설치가이드에서는 기본 Graphic Card를 Intel로 사용하라고 했으나 나의 경우는 현재 확장 듀얼모니터 사용하여, Intel 이 지원이 안됨
(참고만 하고 추후 업데이트되면 다시 테스트 진행)

$ prime-select query 
nvidia

$ sudo prime-select intel
Info: selecting the intel profile
$ prime-select query
intel

$ sudo prime-select nvidia

$ prime-select query
nvidia

$ cat /etc/X11/xorg.conf

prime-select 관련내용
  https://github.com/wildtruc/nvidia-prime-select



  • Lenovo Graphic Card 사양
  1. Intel UHD Graphics 630: 4K 지원 (Default 설정)
  2. NVIDIA RTX-2060 (laptop) :  4K 지원

  https://www.intel.co.kr/content/www/kr/ko/support/articles/000025673/graphics-drivers.html


  • 추후에 쉽게 설치 (동작가능예측, 미확인)
$ sudo add-apt-repository ppa:graphics-drivers/ppa
$ sudo apt-get update
$ sudo apt install nvidia-driver-430 

  https://www.reddit.com/r/Ubuntu/comments/b761of/nvidia_2060_rtx/
  https://launchpad.net/~graphics-drivers/+archive/ubuntu/ppa
  https://www.linuxbabe.com/ubuntu/install-nvidia-driver-ubuntu-18-04


1.3  Laptop  WIFI/Bluetooth/ UVC  테스트 

Laptop의 아래의 테스트만 이제 하면 얼추 다 테스트가 되는 것 같다
  1. LAN :  동작확인
  2. WIFI : 동작확인 
  3. RF-Bluetooth :  동작확인
  4. UVC Camera : Laptop의 Camera가 USB에 연결  및 동작확인  

$ rfkill list all
0: hci0: Bluetooth
 Soft blocked: no
 Hard blocked: no
1: phy0: Wireless LAN
 Soft blocked: no
 Hard blocked: no

$ lsusb -t
/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 10000M
/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 480M
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/8p, 10000M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/16p, 480M
    |__ Port 6: Dev 3, If 0, Class=Video, Driver=uvcvideo, 480M           // Laptop Camera 
    |__ Port 6: Dev 3, If 1, Class=Video, Driver=uvcvideo, 480M
    |__ Port 9: Dev 4, If 0, Class=Human Interface Device, Driver=usbhid, 12M      // Key board / Mouse
    |__ Port 14: Dev 5, If 0, Class=Wireless, Driver=btusb, 12M           // Bluetooth
    |__ Port 14: Dev 5, If 1, Class=Wireless, Driver=btusb, 12M

$ sudo apt install cheese  // UVC Camera TEST 

상위 항목들을 다 테스트를 진행을 했으니, 얼추 Laptop의 동작이 제대로 되는 것 같다.
드디어 제대로 된 설치가 된것 같으나, ACPI 부분이 좀 문제가 있어서,  Battery 부분정보가 95%로 나옴 ( Window는 100%로 표시)

일단 기본동작 및 기본 HW 테스트 동작을 확인하였으나, mini Displayport 부분은 케이블과 모니터가 없기에 테스트 하지 못했지만, 상위 NVIDIA Driver에서 지원가능확인


1.4  Gparted 사용 후 Partition 정리 

Gparted를 이용하여 Partition 관리부분으로 Ubuntu 설치가 다 된 후에 별도로 Parition들을 추가하여 만들어 각각의 관리하기 위해서 아래와 같이 정리 

일반부팅을 해서 Gparted를 이용하여 Partition을 생성하면 아래와 같이 Partition을 수정 및 생성하면 Pending이 되고 진행되지 않는다.



왼쪽 아래 계속 Pending이 되고 진행이되지 않으며, 반드시 Edit->Apply All operations 실행해야진행된다.



1GB NVMe 
- EFI Partition 구성  (BIOS-UEFI BOOT 도 지원)


1GB SDA(HDD)
- EFI Partition 구성됨  (BIOS-UEFI BOOT 도 지원)



$ ls -l /dev/disk/by-uuid  // or blkid
UUID 확인 후 아래에서 설정 

$ sudo vi /etc/fstab  // Linux Partition 세부설정 및 확인 
# / was on /dev/nvme0n1p2 during installation
UUID=38d297a7-29db-4b04-b293-bc4aa9dcb5ba /               ext4    errors=remount-ro 0       1
# /boot/efi was on /dev/nvme0n1p1 during installation
UUID=E549-D056  /boot/efi       vfat    umask=0077      0       1
/swapfile                                 none            swap    sw              0       0


#
# ls -l /dev/disk/by-uuid  //UUID 확인 후 설정 
#
# Virtual box
# 4ea3fb0a-50e0-4e27-a347-ac57b67effe7 -> ../../nvme0n1p3
UUID=4ea3fb0a-50e0-4e27-a347-ac57b67effe7 /home/jhlee/VirtualBox        ext4    errors=remount-ro 0       1

# 
# ls -l /dev/disk/by-uuid  // UUID 확인 후 설정 
# Workspace
# 59289fb6-1c09-40a8-ae5d-2cf08d7e39d5 -> ../../nvme0n1p4
#
UUID=59289fb6-1c09-40a8-ae5d-2cf08d7e39d5 /home/jhlee/Worksapce        ext4    errors=remount-ro 0       1

$ cat /proc/cmdline     //최종 Kernel Parameter 확인 
BOOT_IMAGE=/boot/vmlinuz-5.4.0-53-generic root=UUID=38d297a7-29db-4b04-b293-bc4aa9dcb5ba ro quiet splash vt.handoff=1


Ubuntu 관련부분 설치
   https://ahyuo79.blogspot.com/search/label/Ubuntu%20x86%20DevelEnv