GALLERIA RL5C-R35　ROS専用マシン化


![8fd45811-7564-415f-8793-36c55d42c1b3.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1040271/5925a5c8-0571-19a0-3022-4f701e0765a9.jpeg)

以前まで使っていたノートPCが寿命が来た為、新たにGALLERIA RL5C-R35　ゲーミングノートを購入。
今まで幾度となく、ROS用に様々なPCをセットアップしたが、今回は特に落とし穴満載だったので、
ubuntu導入からNvidia　GPU設定方法など、メモ代わりでここに記す。

【落と穴1】
ガレリアにubuntu導入直後、wi-fi,有線によるネットワークが出来ない。(表示すらされない。。。)

【落とし穴2】
Nvidia driver導入後、ubuntuが立ち上がらなくなる。（ガレリアの表示でフリーズ。。。）

# 用意するもの
USBメモリ（ubuntu　LiveUSB）


# あれば助かるもの
tp-link　無線LAN子機

# ubuntu Install
こちらの記事をご参考ください。
https://linuxfan.info/ubuntu-18-04-install-guide

ここではあくまでも落とし穴の解決方法を中心に記します。

# 【落とし穴1】ネット繋がらない問題
## 症状

上記の手順でubuntuのインストールは難なく行えたかと思います。
しかし、再起動するとwi-fiの表示はおろか、有線LANを接続しても全く何も反応しない・・・
設定からwi-fiをONしようにもそのボタンすら表記がされない・・・
![Screenshot from 2022-05-15 16-02-30.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1040271/f0a98128-f725-8db2-1495-acf5e65408c5.jpeg)


## 解決方法
## 1.wi-fi ドライバーをアップデートしてwi-fiを使えるように

### ①ネットワーク接続
まず何としてもネットワークに繋げれないと何もできない。。。
なので、下記3つの手順のいずれかでネットに接続してください。

①ご自身のスマホを使ってデザリングをONにしてUSBデザリングを行う。
参考記事：　https://www.kashi-mo.com/media/78153/

②無線LAN子機を使って無線通信
https://www.amazon.co.jp/TP-Link-WIFI-%E7%84%A1%E7%B7%9ALAN-%E3%83%87%E3%83%A5%E3%82%A2%E3%83%AB%E3%83%A2%E3%83%BC%E3%83%89%E5%AF%BE%E5%BF%9C%E3%83%A2%E3%83%87%E3%83%AB-TL-WN725N/dp/B008IFXQFU/ref=sr_1_5?keywords=tp-link+%E5%AD%90%E6%A9%9F&qid=1652582103&sprefix=tp-link+koki%2Caps%2C194&sr=8-5

③有線LANで接続

私の環境では①、③ではうまくネット接続出来ず。
近くの家電量販店で無線LAN子機を購入してUSB接続したところ無事ネット接続が可能に

### ②Wi-fiドライバーのインストール
ターミナルで下記コマンドのどちらかで無線lanのハードウェアが認識されているか確認。

```
lspci -nnk | grep 0280 -A2

#もしくは

sudo lshw -class network
```
![Screenshot from 2022-05-15 11-38-11.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1040271/fea9cfd9-a227-a83f-1938-2eb2134cb013.jpeg)
認識されていればこのような表示がされるかと思います。
表示されれば、下記コマンドをすればwifiドライバーを必要なバージョンへアップグレードすればOK
```
sudo apt update

sudo apt upgrade

reboot
```
### ③wi-fi設定
無線LAN子機を取り外す。
設定→ wi-fi　でON-OFFボタンが表示されていればONにして、wi-fi passを入力すれば完了

wi-fiアイコンが復活！↓
![Screenshot from 2022-05-15 15-57-38.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1040271/58630ed8-eac3-4df0-79a8-d12c814ea2af.jpeg)
## 2.有線LANによるネットワーク接続が出来ない問題の解決方法

NIC（Network Interface Card）が認識されていないのが原因、
恐らく最初から入っていないので目的のNICをインストールする。
### ①どこのNICを使っているかチェック
```
lspci | grep 'Ethernet\|Network'
```
![Screenshot from 2022-05-15 16-16-18.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1040271/12f5e587-6976-b449-ec01-556e3fe52ab0.jpeg)
Realtek RTL8125の最新版のNICをダウンロードが必要なのが判明。
Realtek 公式から最新のドライバーをダウンロードする
現在はVer9.009
![Screenshot from 2022-05-15 16-23-31.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1040271/1dc431a4-c0ea-f0fc-ecad-8e4f40ff1388.jpeg)
https://www.realtek.com/ja/component/zoo/category/network-interface-controllers-10-100-1000m-gigabit-ethernet-pci-express-software


ターミナルで、そのパスに移動し解凍しておく

```
tar -jxvf r8125-9.009.00.tar.bz2
```

### ②dkms.confファイル作成
引用記事：https://qiita.com/Ihmon/items/7b3e1b81bb9b2c296eff

上で解凍したフォルダのパス(Downloads/r8125-9.009.00)に移動しvimで新しいファイルを作成する
テキストエディタでもOK。中身は下記をコピペする
但し、PACKAGE_VERSIONはダウンロードしたドライバのそれに書き換えること
このファイルにより今後カーネルの更新を行ってもドライバの再登録を行わなくて済むらしい
逆に言うと、これのファイルがないといつの間にかオンボードLANが使用できない状態になるかも

```
PACKAGE_NAME="r8125"
PACKAGE_VERSION="9.009.00"
BUILT_MODULE_NAME[0]="$PACKAGE_NAME"
DEST_MODULE_LOCATION[0]="/updates/dkms"
AUTOINSTALL="YES"
REMAKE_INITRD="YES"
CLEAN="rm src/@PKGNAME@.ko src/*.o || true"
```
ファイル名をdkms.confとし、今のパスに保存する
保存後、念のため権限を変更した

```
sudo chmod 777 dkms.conf
```
### ③古いドライバがあれば削除
もし、すでに古いバージョンのドライバがインストールされていたら下記を実行する
もちろんバージョン番号はその古いバージョンに変更する
```
sudo dkms remove r8125/9.002.02 --all
sudo rm -rf /usr/src/r81259.002.02/
sudo dkms status
```
### ④ドライバ登録
このフォルダを/usr/srcに移動し、同フォルダ内のautorun.shでドライバを登録する
ここでもバージョンは上記同様に変更する

```
cd /usr/src/r8125-9.009.00
sudo bash autorun.sh      # これでネットにつながる
sudo apt install dkms
sudo dkms add -m r8125 -v 9.009.00  # ドライバをdkmsで登録
sudo reboot
```

私の環境でも@Ihmonさんの方法で無事解決出来ました！
![Screenshot from 2022-05-15 16-36-30.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1040271/925167f7-ee44-7250-0d9d-c8779156a6c9.jpeg)
# 【落とし穴2】NvidiaDriver導入後、ubuntu立上がらない問題
色々と調べてみると各地で発生している模様。
原因はubuntu kernelとnvidia driver が一致していないときに起こる。
### GPUに適合したnvidia driver のバージョン確認
```
ubuntu-drivers devices
```
私の場合下記の様にrecommend(推奨版)は515ですが、いきなり515を導入すると、
ubuntuが立上がらなくなりました。
```
vendor   : NVIDIA Corporation
driver   : nvidia-driver-510-server - distro non-free
driver   : nvidia-driver-470-server - distro non-free
driver   : nvidia-driver-470 - distro non-free 
driver   : nvidia-driver-515 - third-party non-free　recommended
driver   : nvidia-driver-510 - third-party non-free
driver   : xserver-xorg-video-nouveau - distro free builtin
```
私のGPUはRTX3050で無事ubuntuが立上がったのはnvidia driver470-server のみでしたが、
下記導入手順で推奨版515の導入を行いました。




## 導入手順

### ①先にnvidia driver 470-serverを導入
最初からnvidia driver515を導入するとubuntuが立上がらなくなるので、
先にvidia driver 470-serverを導入します。
使用しているGPUに合わせてNvidia driverを選定してくれ、且つnouveauの停止処理が不要なため、
GUIを使ってのダウンロードがおすすめ。
【ソフトウェアとアップーデート】→【追加のドライバー】→【nvidia-driver470-server】を選択→右下の【変更の適用】
![Screenshot from 2022-05-15 17-11-54.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1040271/ece2a1f2-47c0-ea9d-95c5-c33596a0d52b.jpeg)



### ②Cuda tool kit11.7 の導入
```
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-ubuntu1804.pin
sudo mv cuda-ubuntu1804.pin /etc/apt/preferences.d/cuda-repository-pin-600
wget https://developer.download.nvidia.com/compute/cuda/11.7.0/local_installers/cuda-repo-ubuntu1804-11-7-local_11.7.0-515.43.04-1_amd64.deb
sudo dpkg -i cuda-repo-ubuntu1804-11-7-local_11.7.0-515.43.04-1_amd64.deb
sudo cp /var/cuda-repo-ubuntu1804-11-7-local/cuda-*-keyring.gpg /usr/share/keyrings/
sudo apt-get update
sudo apt-get -y install cuda #バージョン指定したい場合は最後に cuda-10.04　等と記述する

echo 'export PATH=/usr/local/cuda-11.7/bin${PATH:+:${PATH}}' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=/usr/local/cuda-11.7/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}' >> ~/.bashrc
source ~/.bashrc

sudo reboot
```
下記ページに同様のダウンロード手順があります。
https://developer.nvidia.com/cuda-downloads?target_os=Linux&target_arch=x86_64&Distribution=Ubuntu&target_version=18.04&target_type=deb_local

Nvidia Driver の確認
```
nvidia-smi
```
![Screenshot from 2022-05-15 17-38-15.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1040271/75c28613-cbd2-4f76-9f2f-661b590108e2.jpeg)

cuda バージョン確認
```
nvcc -V #最後のVは大文字
```
![Screenshot from 2022-05-15 17-40-46.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1040271/b1309b28-b54f-48ca-ebf6-e4846c980e33.jpeg)

GPU動作確認
```
nvidia-smi -l
```
右下の GPU-Utilが39%になっており無事GPUが動作していることが伺える。
![Screenshot from 2022-05-15 17-44-33.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1040271/c8014f50-73e6-18f8-5993-314e3b3993db.jpeg)


## ubuntuが立上がら無い時の対処方法

電源長押しで強制シャットダウン後、再度、電源投入。
カーソルを　【Advanced options for Ubuntu】を選択
![Screenshot from 2022-05-15 17-20-45.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1040271/86ed8ce7-11d6-53ce-cda3-94d98282bc22.jpeg)
カーソルを【root】に選択しエンター
![Screenshot from 2022-05-15 17-20-53.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1040271/c8e174d0-91fb-7ef7-9b51-c3be2e991f0e.jpeg)
画面下部にターミナルが立ち上がるのでここで、nvidia driverを下記コマンドで削除
```
sudo apt-get --purge remove nvidia*
reboot
```

![Screenshot from 2022-05-15 17-20-59.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1040271/f5d48c35-a4b0-fbe9-0725-cfbc93919f0e.jpeg)

すると問題無くubuntuが立上がるので、別のドライバーを試してください。



## 稼働した環境
ubuntu 18.04
kernel 5.04
nvidia driver 515
cuda 11.7

## まとめ
比較的最新のスペックのPCはそれはそれで、各種ドライバーの
アップデートなどが必要で環境構築に苦労しました。

特にNvidia Driver周りは毎度苦労させられます。。。