- 投稿日:2021-01-09T22:27:52+09:00
Linux 基本コマンド 備忘録
Linuxとは
MacOSやWindowsと同じOS
OSはコンピュータのハードウェアを管理しているソフトウェアのことです基本コマンド
ls
カレントディレクトリ直下のファイルを確認
terminal.% ls //直下のファイル確認 Applications Pictures Desktop Public ~%pwd
カレントディレクトリ確認
terminal.Desktop % pwd //現在のディレクトリ確認 /Users/Desktop Desktop %mkdir
ディレクトリ作成
terminal.Desktop % mkdir sample //sampleディレクトリ作成 Desktop %cd
ディレクトリの移動
terminal.Desktop % cd sample //sampleディレクトリへ移動 sample %touch
空のファイル作成
terminal.sample % touth sample.html //空のファイル作成 sample %mv
名前の変更
terminal.sample % mv smaple.html sample2.html //変更 sample % ls //直下のディレクトリ確認 sample2.html sample %rm
ファイル・ディレクトリの削除
terminal.sample % rm -r sample2.html //削除 ample % ls //直下のディレクトリ確認 sample %history
過去のコマンドの記録
terminal.sample % history //履歴の確認 1010 ls 1011 cd sample.thml 1012 cd sample.html 1013 echo sample.html 1014 echo "Hello world > sample.html\na\n sample %まとめ
今回の記事は万が一忘れてしまった時の備忘録です
- 投稿日:2021-01-09T22:24:54+09:00
リモート環境で共同作業
リモートワークしてて、画面共有したくなったとき
主にLinuxを使ってリモートワーク中、別の作業者と画面共有したくなった場合お手軽に共有する方法。
xrdpで画面共有
/etc/xrdp/xrdp.ini
を編集し、ポートを固定することで、ログインユーザが同じセッションを共有するため、結果画面共有ができる。/etc/xrdp/xrdp.ini[xrdp1] name=sesman lib=libvnc.so username=ask password=ask ip=127.0.0.1 #port=-1 #xrdpが接続用のポートを検索する port=5912 #固定ポートにすることで、ログインユーザが同じセッションを共有するscreenコマンドでターミナル共有
同じサーバにターミナルでログインしている場合、screenのセッションを別のユーザが覗き見ることで、結果ターミナルを共有できる。
ターミナルを公開する人
screen名をつけなくても良いが、分かりやすく名前をつけてscreenセッションを起動する。
[userA]$ screen -S my-screen ←screen名ターミナルを覗き見したい人
同一サーバにログインし、アタッチされているスクリーンの画面を共有できる。
[userB]$ screen -ls There is a screen on: 50534.my-screen (Attached) ←覗き見したいスクリーンセッション [userB]$ screen -x my-screen ←アタッチされたscreenセッションにお邪魔
- 投稿日:2021-01-09T17:00:00+09:00
RaspberryPiでWindowsの共有フォルダをマウントする
1.この記事の内容
Raspberry Pi から Windows の共有フォルダをマウントする手順を紹介します.
Raspberry Pi からの手順ですが,Linux PCからでも同様の手順でマウント可能と思います.1-1.使用環境
- Raspberry Pi 3 Model B+
- Windows 10
2.Windowsの共有フォルダマウント手順
Windowsの共有フォルダを作成する
共有するフォルダを右クリックし,プロパティの共有タブの「共有」ボタンをクリックして設定します.
共有ボタンクリックで共有設定が完了します.
共有時に共有する範囲を指定する画面が表示された場合は,プライベートネットワーク内で共有する設定とすることをお勧めします.RaspberryPiで共有フォルダをマウントする
ラズパイでWindows共有フォルダーを使用できるようにする に記載の手順で共有フォルダへのアクセスが可能となります.
- 必要な環境のインストール
$ sudo apt-get update $ sudo apt-get install samba $ sudo apt-get install smbclient $ sudo apt-get install winbind $ sudo apt-get install libnss-winbind- /etc/nsswitch.confへのwins設定の追加
- Windows共有フォルダのマウント
$ sudo mount -t cifs -o user=abc,password=xxx //(コンピューター名)/(共有フォルダー名) /(マウント先)備考:Windowsの共有フォルダの解除
フォルダ共有が不要となった場合などは,右クリックメニューからアクセスを解除することができます.
3.さいごに
RaspberryPi上でCOCOデータセットが扱えない問題への対策として,Windowsの共有フォルダへアクセスする手段をとることとしました.
Linux環境からWindows環境へのデータ転送を行う際などの参考になればと思います.
4.関連リンク
- 投稿日:2021-01-09T13:21:36+09:00
Fedora33 DashToPanel のことなど
あけましておめでとうございます。
本年も宜しく!さて、新年1発目はLinux ネタ
Fedora33 を安定的に使っております。
時々「使いにくいな」と思う時があり Dash to panel を入れてみます。
Gnomeの新バージョンでは使えないようです?
そこでログインのときに「Gnomeクラシック」を選びます
そうすると、画面に出てこなかった Dash to panel が使えるようになっています。
「拡張機能設定」では三角マークがあり要注意のままですが・・
それでも、どことなく寂しいので Dock を追加します。
Plank という軽量なDockが好きです。
インストールしたあと、Tweaks のスタートアップに追加
再起動するとスタートからPlank が画面下に追加されています。
新型コロナの感染が広がっています。
とても残念で窮屈な正月です。
みなさん、メゲズに頑張って参りましょう!本年も宜しくお願い致します。
- 投稿日:2021-01-09T11:36:06+09:00
nvidia cudaセットアップ
Ubuntu 20.04LTSに、
NVIDIAドライバ(version 450)
、CUDA11対応のCUDA Toolkit
とcuDNN SDK 8.0.4
をインストールする方法をメモしておきます。TensorFlowを動かすのが目的です。
https://www.tensorflow.org/install/gpu
nouveau
をblacklistするインストール直後はOSSの
nouveau
ドライバがロードされています。$ lsmod | grep nouveau nouveau 1949696 1 mxm_wmi 16384 1 nouveau video 49152 1 nouveau ttm 106496 2 drm_vram_helper,nouveau drm_kms_helper 184320 4 ast,nouveau i2c_algo_bit 16384 2 ast,nouveau drm 491520 8 drm_kms_helper,drm_vram_helper,ast,ttm,nouveau wmi 32768 2 mxm_wmi,nouveau
CUDA
を使えるようにするにはNVIDIAのドライバが必要なので、nouveau
をblacklist
に記載し、initramfsからも抜いてNVIDIAのドライバが使えるようにします。再起動後にnouveau
がロードされていないのを確認します。$ sudo echo "blacklist nouveau" >> /etc/modprobe.d/blacklist-nouveau.conf $ sudo echo "options nouveau modeset=0" >> /etc/modprobe.d/blacklist-nouveau.conf $ sudo update-initramfs -u update-initramfs: Generating /boot/initrd.img-5.8.0-36-generic $ sudo reboot $ lsmod | grep nouveau $インストールするドライバのバージョンを確認する
次にubuntuで配布しているドライバのバージョンを確認します。
$ ubuntu-drivers devices == /sys/devices/pci0000:5d/0000:5d:00.0/0000:5e:00.0 == modalias : pci:v000010DEd00001DB4sv000010DEsd00001214bc03sc02i00 vendor : NVIDIA Corporation model : GV100GL [Tesla V100 PCIe 16GB] driver : nvidia-driver-450 - distro non-free driver : nvidia-driver-390 - distro non-free driver : nvidia-driver-460 - distro non-free recommended driver : nvidia-driver-450-server - distro non-free driver : nvidia-driver-440-server - distro non-free driver : nvidia-driver-418-server - distro non-free driver : xserver-xorg-video-nouveau - distro free builtin $ $ $ sudo apt info nvidia-driver-450 | grep -i version WARNING: apt does not have a stable CLI interface. Use with caution in scripts. Version: 450.102.04-0ubuntu0.20.04.1 $ $ $ sudo apt info nvidia-driver-450-server | grep -i version WARNING: apt does not have a stable CLI interface. Use with caution in scripts. Version: 450.80.02-0ubuntu0.20.04.3 $NVIDIAのウェブサイトを確認すると450.80.02を配布しているので、このバージョンをインストールできる
nvidia-driver-450-server
をインストールすることにします。ドライバのインストールと起動確認
ドライバをインストールして、リブート後に
nvidia-smi
でドライバの起動確認します。$ sudo apt install nvidia-driver-450-server $ sudo reboot $ $ lsmod | grep nvidia nvidia_uvm 1003520 0 nvidia_drm 49152 0 nvidia_modeset 1183744 1 nvidia_drm nvidia 19718144 2 nvidia_uvm,nvidia_modeset drm_kms_helper 217088 5 drm_vram_helper,ast,nvidia_drm drm 552960 7 drm_kms_helper,drm_vram_helper,ast,drm_ttm_helper,nvidia_drm,ttm $ $ nvidia-smi Fri Jan 8 16:11:05 2021 +-----------------------------------------------------------------------------+ | NVIDIA-SMI 450.80.02 Driver Version: 450.80.02 CUDA Version: 11.0 | |-------------------------------+----------------------+----------------------+ | GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. | | | | MIG M. | |===============================+======================+======================| | 0 Tesla V100-PCIE... Off | 00000000:5E:00.0 Off | 0 | | N/A 33C P0 37W / 250W | 0MiB / 16160MiB | 4% Default | | | | N/A | +-------------------------------+----------------------+----------------------+ +-----------------------------------------------------------------------------+ | Processes: | | GPU GI CI PID Type Process name GPU Memory | | ID ID Usage | |=============================================================================| | No running processes found | +-----------------------------------------------------------------------------+ $
CUDA Toolkit
のインストール次に
CUDA Toolkit
をインストールするのですが、Ubuntuではまだ11.0を配布していません。$ sudo apt info nvidia-cuda-toolkit | grep -i version WARNING: apt does not have a stable CLI interface. Use with caution in scripts. Version: 10.1.243-3 $NVIDIAのウェブサイトに行き、Ubuntu 20.04を選ぶと表示されるインストール手順を実行します。
インストールのコマンドは
cuda-11-0
のようにバージョンを指定する必要があります。これなしで実行したらcudaの11.2がインストールされてしまいました。$ wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-ubuntu2004.pin $ sudo mv cuda-ubuntu2004.pin /etc/apt/preferences.d/cuda-repository-pin-600 $ sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/7fa2af80.pub $ sudo add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/ /" $ sudo apt-get update $ sudo apt-get install cuda-11-0 $ sudo rebootリブート後、
CUDA Toolkit
がちゃんとインストールできているかnvcc -V
コマンドで確認します。入っていないと言われるのですが、パスが通っていないようなので通します。$ nvcc -V Command 'nvcc' not found, but can be installed with: sudo apt install nvidia-cuda-toolkit $ /usr/local/cuda/bin/nvcc -V nvcc: NVIDIA (R) Cuda compiler driver Copyright (c) 2005-2020 NVIDIA Corporation Built on Wed_Jul_22_19:09:09_PDT_2020 Cuda compilation tools, release 11.0, V11.0.221 Build cuda_11.0_bu.TC445_37.28845127_0 $ $ echo "export PATH="/usr/local/cuda/bin:$PATH" >> /etc/bash.bashrc
cuDNN
のインストール
cuDNN SDK 8.0.4
をNVIDIAのウェブサイトからダウンロードします。ダウンロードにはNVIDIAデベロッパーアカウント(無料登録)が必要です。Ubuntu 20.04用のダウンロードがないのでcuDNN Library for Linux(x86_64)をダウンロードします。解凍してみるとフォルダ2個にヘッダーファイルやライブラリが入っているものの、コピー先の指示がありません。txtファイルはライセンス契約書です。。。
$ ls include lib64 NVIDIA_SLA_cuDNN_Support.txt $ $ ls include/ cudnn_adv_infer.h cudnn_cnn_infer.h cudnn_ops_infer.h cudnn_adv_train.h cudnn_cnn_train.h cudnn_ops_train.h cudnn_backend.h cudnn.h cudnn_version.h $ $ ls lib64/ libcudnn_adv_infer.so libcudnn_cnn_train.so.8.0.4 libcudnn_adv_infer.so.8 libcudnn_ops_infer.so libcudnn_adv_infer.so.8.0.4 libcudnn_ops_infer.so.8 libcudnn_adv_train.so libcudnn_ops_infer.so.8.0.4 libcudnn_adv_train.so.8 libcudnn_ops_train.so libcudnn_adv_train.so.8.0.4 libcudnn_ops_train.so.8 libcudnn_cnn_infer.so libcudnn_ops_train.so.8.0.4 libcudnn_cnn_infer.so.8 libcudnn.so libcudnn_cnn_infer.so.8.0.4 libcudnn.so.8 libcudnn_cnn_train.so libcudnn.so.8.0.4 libcudnn_cnn_train.so.8 libcudnn_static.a $ググったら公式ドキュメントがすぐに見つかり、コピー先の指定とファイル権限の変更の指示がありました。パスも通しておきます。
$ sudo cp cuda/include/cudnn*.h /usr/local/cuda/include $ sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64 $ sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn* $ echo 'export LD_LIBRARY_PATH="/usr/local/cuda/lib64:$LD_LIBRARY_PATH"' >> /etc/bash.bashrc $ echo 'export LD_LIBRARY_PATH="/usr/lib/cuda/include:$LD_LIBRARY_PATH"' >> /etc/bash.bashrcインストールがちゃんとできたかの確認には
mnistCUDNN
をコンパイルするらしい。必要なファイルはcuDNN Code Samples and User Guide ~
にあるらしいので、Ubuntu18.04用のdeb
ファイルをダウンロードしてきて解凍します。$ mkdir libcudnn8-samples $ dpkg-deb -x libcudnn8-samples_8.0.4.30-1+cuda11.0_amd64.deb libcudnn8-samples $ $ cd libcudnn8-samples/usr/src/cudnn_samples_v8/mnistCUDNN $ make clean && make $ ./mnistCUDNN mnistCUDNN Executing: mnistCUDNN cudnnGetVersion() : 8004 , CUDNN_VERSION from cudnn.h : 8004 (8.0.4) Host compiler version : GCC 9.3.0 There are 1 CUDA capable devices on your machine : device 0 : sms 80 Capabilities 7.0, SmClock 1380.0 Mhz, MemSize (Mb) 16160, MemClock 877.0 Mhz, Ecc=1, boardGroupID=0 Using device 0 ... ... 0.0000012 0.0000006 Result of classification: 1 3 5 Test passed! $無事コンパイルに成功しました。これでCUDAの設定は完了です。
- 投稿日:2021-01-09T03:43:00+09:00
【Ubuntu18.04 LTS】画面の解像度が選択できなくなったときの対処法【NVIDIA】
ある日突然 Ubuntu 18.04 LTS が低解像度しか出力しなくなっていたので、対処しました。
全体として20分ほどあれば作業完了すると思います。症状
Ubuntu18.04LTS を起動したところ、あれれ、なんだか画面がおかしい。
どうやら解像度が1024x768になっているみたい。
手動で変更しようにも、他の解像度が選べない。困ったなあ。
動作環境
項目 詳細 OS Ubuntu 18.04.5 LTS (64bit) RAM 15.6GiB CPU Intel Core i5-10400F CPU @ 2.90GHz × 12 GPU GeForce GTX 1650/PCIe/SSE2 GNOME 3.28.2 備考 外付けSSD (240GB/USB3.0 経由) からブートして使用 試したこと
EDIDを再読込させてみる (解決せず)
"Unknown Display" と表示されているので、EDIDが読み込めていないのかな? と思い、
おもむろにHDMIケーブルを抜き差ししてみた。EDIDを再読込させるにはこれが一番手っ取り早い。
しかし、改善せず。NVIDIA Driver の再インストール (解決した)
発生している症状は、NVIDIA謹製のドライバを入れる前に陥った症状と同じ。
でもドライバインストールしたよな...? と思い、いろいろ確認してみる。
- VGA 接続しているデバイスの情報を確認
~$ lspci | grep VGA 01:00.0 VGA compatible controller: NVIDIA Corporation Device 1f0a (rev a1)NVIDIA Deviceが認識されている。問題なさそう。
- 解像度情報の確認
~$ xrandr xrandr: Failed to get size of gamma for output default Screen 0: minimum 1024 x 768, current 1024 x 768, maximum 1024 x 768 default connected primary 1024x768+0+0 0mm x 0mm 1024x768 76.00*1024x768@76Hzの解像度しか認識されていない。1920x1080@60Hz対応のモニタなんだけどなあ。
- NVIDIAの設定を確認
~$ nvidia-settings ERROR: NVIDIA driver is not loaded ERROR: Unable to load info from any available systemでました。driverが読み込めていないみたい。
というわけで、NVIDIAのDRIVERを再インストールしてみましょう。
- Ubuntu におすすめのドライバを聞いてみる
~$ ubuntu-drivers devices == /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0 == modalias : pci:v000010DEd00001F0Asv000010DEsd0000145Cbc03sc00i00 vendor : NVIDIA Corporation driver : nvidia-driver-450-server - distro non-free driver : nvidia-driver-450 - distro non-free driver : nvidia-driver-455 - distro non-free recommended driver : xserver-xorg-video-nouveau - distro free builtin
ubuntu-drivers devices
で、Ubuntu がおすすめのドライバを教えてくれます。
ちゃんとNVIDIA謹製のドライバを提案してくれていますね。早速導入しましょう。
- Ubuntu おすすめのドライバをインストール
~$ sudo ubuntu-drivers autoinstall導入するコマンドは、これだけです。自動的にインストールが始まるので、終わるのを待ちましょう。
- 再起動
~$ rebootインストールが終わったら再起動しましょう。うまくいくといいなあ。
結果
ちゃんと最大解像度 (1920x1080@60Hz) で表示できた。やったぜ!
4Kモニターほしいなあ...参考にしたサイト
Ubuntu 18.04 Displays Issue -> Unknown Display
https://askubuntu.com/questions/1069451/ubuntu-18-04-displays-issue-unknown-displayUbuntu18.04にNVIDIAドライバーをインストール
https://qiita.com/kannkyo/items/c506437704cd62b31077