Ubuntu18.04環境構築メモ

Ubuntu16.04を18.04に置き換えて環境構築したときのメモです。今後のためにもnvidia-docker入れて、githubの設定して、gitのaliases設定して、vim導入したあたりまでをメモします。
環境は下記です。
OS:Ubuntu18.04 (デスクトップ版)
GPU:GTX1060



nvidia-dockerのインストール

昔はちょっと苦労した気がしますが、非常に簡単になってました。通常のdockerインストールとnvidiaドライバの導入もここに含みます。なにはともあれ、いつものやつを実行しましょう。

sudo apt update
sudo apt -y upgrade

nvidiaドライバ

念の為下記を実行してすでに何かしら入っていないか確認します。なにも返って来なければ大丈夫です。

sudo dpkg -l | grep nvidia
sudo dpkg -l | grep cuda

aptのリポジトリに追加してインストールします。

sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update

sudo apt search nvidia | egrep '^nvidia-[0-9]+/'
apt searchのリプライ(一部省略)
  nvidia-367/bionic 375.82-0ubuntu3 amd64
  nvidia-375/bionic 384.111-0ubuntu1 amd64
  nvidia-384/bionic,now 390.129-0ubuntu0~gpu18.04.1 amd64

環境によって返ってくるものは色々変わってくると思いますが、一番最新のものをインストールすればよいかと。インストールしたら再起動が必要です。その後インストールされているか確認しましょう。

sudo apt -y install nvidia-384
sudo reboot

nvidia-smi

docker

インストール自体は公式どおりで問題ないです。
https://docs.docker.com/install/linux/docker-ce/ubuntu/
好みですがsudo無しでdockerを実行できるようにしたいので下記を実行します。
※システムの再起動じゃなくてdockerの再起動でも大丈夫かもしれません。

sudo gpasswd -a $USER docker
sudo systemctl enable docker
sudo reboot

nvidia-docker

公式のQuickstart通りで問題ないです。
https://github.com/NVIDIA/nvidia-docker

githubのアクセストークン設定

githubで2段階認証を入れているのですが、新しい環境でgitを使うたびに忘れて調べてしまいます…。公式の通りです。
https://help.github.com/en/github/authenticating-to-github/creating-a-personal-access-token-for-the-command-line

gitのaliases設定

元々はChromebookにGUIのgitを入れたら重くなりそうなので導入した設定ですが、かなり気に入ったのでWindonws以外では使っています。aliases自体は下記の通り。
https://qiita.com/yukiarrr/items/9c21d97f6c8ac31de157
上記に必要なfzfがapt-getで入らないので下記が必要です。

git clone https://github.com/junegunn/fzf.git ~/.fzf
~/.fzf/install

vimの導入

vimは自分の中でまだ決まった設定を見つけられてなくて、Chromebookはスペックを考慮して軽めのものしか入れていないのですが、Ubuntuを入れているのはゲーミングPCなのでIDEっぽく使えるやつを試してみました。もはやvimじゃない気が…。ただ、サクッと使えるものが用意できるので素晴らしいです。
https://github.com/jarolrod/vim-python-ide

Google Cloud SDK のインストール

ubuntuなのでapt-getで入れられます。そのうちコマンドが変わるかもしれませんが、2020年1月時点では下記でした。

export CLOUD_SDK_REPO="cloud-sdk-$(lsb_release -c -s)"
echo "deb http://packages.cloud.google.com/apt $CLOUD_SDK_REPO main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list

curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
sudo apt-get update && sudo apt-get install google-cloud-sdk

gcloud init

あとはデュアルブートなのでWindowsに影響を与えないよう以前記事にした設定をします。年々環境構築にかかる時間が短くなっていく気がしますが、ローカルであれこれ設定する部分が少なくなってきたからでしょうか。本当はvimrcとかもgit管理したいところですが。

追記 nvidia ドライバの更新

nvidia ドライバの導入タイミングではかなり古いものが入ってしまうことがあったので、古いものが入った際に更新する方法を追記。ubuntu-drivers devices の結果に合わせてインストールのバージョンは変更してください。

sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update

ubuntu-drivers devices
sudo apt install nvidia-driver-450

450では発生しませんでしたが410入れるときに依存関係の修復が必要でした。依存関係が壊れている的なエラーが発生した場合は下記

sudo apt install aptitude
sudo aptitude install nvidia-driver-450
sudo reboot

カテゴリー:docker

Output不足なエンジニア

統計が好きになれず、機械学習やったら必然的に統計が必要になるだろうと思ったら想像以上に機械学習にハマる。数学は芸術なので商売にするつもりはないけど、DeepLearningは数学じゃないし商売にしたいと思っているところ。画像処理がメイン。