ubuntuメモ
my pageに戻る

ubuntu関連の備忘録

環境構築

▼やる操作一覧

▼入れるソフトウェア

ディレクトリ名を英語表記に変更

$ env LANGUAGE=C LC_MESSAGES=C xdg-user-dirs-gtk-update
気が向いたら機会学習の環境構築について書くかも
cudaとかtensorflowとかyoloとか

キーバインドの変更

例としてHomeをBackSpaceに置き換える
$ xev
変更したいキーのkeycodeを確認できる
$ xmodmap -pke
対応させたいキーの書き方を確認できる
(例)
$ xmodmap -pke | grep Home
$ xmodmap -pke | grep 110

適応させる

$ xmodmap -e 'keycode 110 = BackSpace'
動作することを確認したら、後はこれをログインシェルなどに書き込めばOK

ubuntu18.04で日本語入力に切り替える

ここを参照

ログインループ時の対処

CUIモードでログインする(ctrl + alt + F1)

GPUの型番を調べて,そのグラボにあったnvdiaドライバを入れて再起動する.

$ sudo add-apt-repository ppa:graphics-drivers/ppa -y
$ sudo apt-get update
$ sudo apt-get install nvidia-***
$ sudo reboot

python virtualenv関連

仮想環境の作成

深層学習の環境は仮想環境上に構築したほうがいいらしい.(切り替えが楽だし,バージョン依存の問題の際に対処しやすいからとか?)
Dockerも試してみたいけど放置中...
(例)python3.6の環境作成
$ virtualenv -p python3.6 py3.6env

環境の有効化(ubuntu)

.bashrcにaliasを書いておくと楽になります.
$ source /home/$USER/00_program/virtualenv/py3.6env/bin/activate
※仮想環境名(py3.6env)より上のパスは個人の環境により異なります.また,linux以外のOSのアクティベートファイルもbin/以下にあります.

環境から出る

$ deactivate

機械学習環境の構築

必ずcuda,cudnn,tensorflowのバージョン関係のチェックをすること.最新のcudaを入れるとバージョンを下げることになるパターンが多い.

cudaのインストール

debファイルをローカルに持ってきたときの手順(cuda10.0の場合)
$ sudo dpkg -i cuda-repo-ubuntu1804-10-0-local-10.0.130-410.48_1.0-1_amd64.deb
$ sudo apt-key add /var/cuda-repo-10-0-local-10.0.130-410.48/7fa2af80.pub
$ sudo apt-get update
$ sudo apt-get install cuda-toolkit-10-0

cudnnのインストール

nvidiaのサイトからcudaのバージョンにあったものをダウンロードする.
$ sudo dpkg -i libcudnn7_7.6.5.32-1+cuda10.0_amd64.deb
$ sudo dpkg -i libcudnn7-dev_7.6.5.32-1+cuda10.0_amd64.deb 
$ sudo dpkg -i libcudnn7-doc_7.6.5.32-1+cuda10.0_amd64.deb 

Tensorflowのインストール

# tensorflow 1.xx系
$ pip install tensorflow-gpu==1.13.1
# tensorflow 2.xx系
$ pip install tensorflow-gpu==2.0.0
また,numpyのバージョンが合わないときがあり,その際は入れ直す必要がある.(importしたときに警告文がでる.)
$ pip uninstall numpy
$ pip install numpy==1.16.4
最後にpython上でimportしてみて警告が出なければOK

cronの使い方

参考: Cronの使い方とテクニックと詰まったところ

設定ファイルの構成

cron.d

このディレクトリに入っている拡張子のないファイルが実行される. 普段はここの中にファイルを作成して操作する.

cron.**

時間,日,月毎などで実行しやすいように作成されている.

crontab

一番メインのファイル.

コマンド

状態の確認

$ sudo service cron status

起動,停止

$ sudo service cron start
$ sudo service cron stop

設定ファイルの書き方

# m h dom mon dow user  command
分 時 日 月 曜日 ユーザー コマンド
# 1分ごと
* *    * * *  root   touch /home/ubuntu/test.txt
# 1:00〜1:59まで1分ずつ実行
* 1    * * *  root   touch /home/ubuntu/test.txt
# 毎日1:00に実行
0 1    * * *  root   touch /home/ubuntu/test.txt
# 毎月12日~20日00:00に実行
0 0    12-20 * *  root   touch /home/ubuntu/test.txt
# 毎週月曜日〜金曜日00:00に実行
0 0    * * 1-5  root   touch /home/ubuntu/test.txt

不要のaptリポジトリの削除

$ cd /etc/apt/sources.list.d
$ ls
$ sudo rm "消したい対象"
// GPG公開鍵の削除
$ sudo apt-key list
$ sudo apt-key del "keyid"
※keyid : finger printの最後八文字
// aptリポジトリの確認
$ cat /etc/apt/surces.list
→ここを編集すればよいと思われる