20210109のLinuxに関する記事は6件です。

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 %

まとめ

今回の記事は万が一忘れてしまった時の備忘録です

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

リモート環境で共同作業

リモートワークしてて、画面共有したくなったとき

主に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セッションにお邪魔
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

RaspberryPiでWindowsの共有フォルダをマウントする

1.この記事の内容

Raspberry Pi から Windows の共有フォルダをマウントする手順を紹介します.
Raspberry Pi からの手順ですが,Linux PCからでも同様の手順でマウント可能と思います.

1-1.使用環境

  • Raspberry Pi 3 Model B+
  • Windows 10

2.Windowsの共有フォルダマウント手順

Windowsの共有フォルダを作成する

共有するフォルダを右クリックし,プロパティの共有タブの「共有」ボタンをクリックして設定します.

01_Windowsプロパティ(共有前).png

02_Windowsプロパティ(共有設定画面).png

共有ボタンクリックで共有設定が完了します.
共有時に共有する範囲を指定する画面が表示された場合は,プライベートネットワーク内で共有する設定とすることをお勧めします.

04_Windowsプロパティ(共有完了).png

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の共有フォルダの解除

フォルダ共有が不要となった場合などは,右クリックメニューからアクセスを解除することができます.

05_Windowsプロパティ(解除).png

06_Windowsプロパティ(解除実行).png

3.さいごに

RaspberryPi上でCOCOデータセットが扱えない問題への対策として,Windowsの共有フォルダへアクセスする手段をとることとしました.

Linux環境からWindows環境へのデータ転送を行う際などの参考になればと思います.

4.関連リンク

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

Fedora33 DashToPanel のことなど

あけましておめでとうございます。
本年も宜しく!

さて、新年1発目はLinux ネタ
Fedora33 を安定的に使っております。
時々「使いにくいな」と思う時があり Dash to panel を入れてみます。
Gnomeの新バージョンでは使えないようです?
そこでログインのときに「Gnomeクラシック」を選びます
work21_01.jpg
そうすると、画面に出てこなかった Dash to panel が使えるようになっています。
「拡張機能設定」では三角マークがあり要注意のままですが・・
work21_02.jpg
それでも、どことなく寂しいので Dock を追加します。
Plank という軽量なDockが好きです。
インストールしたあと、Tweaks のスタートアップに追加
work21_03.jpg
再起動するとスタートからPlank が画面下に追加されています。
work21_04.jpg
新型コロナの感染が広がっています。
とても残念で窮屈な正月です。
みなさん、メゲズに頑張って参りましょう!

本年も宜しくお願い致します。

 

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

nvidia cudaセットアップ

Ubuntu 20.04LTSに、NVIDIAドライバ(version 450)、CUDA11対応のCUDA ToolkitcuDNN SDK 8.0.4をインストールする方法をメモしておきます。TensorFlowを動かすのが目的です。

image.png
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のドライバが必要なので、nouveaublacklistに記載し、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をインストールすることにします。

image.png

image.png

ドライバのインストールと起動確認

ドライバをインストールして、リブート後に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を選ぶと表示されるインストール手順を実行します。

image.png

インストールのコマンドは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デベロッパーアカウント(無料登録)が必要です。

image.png

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の設定は完了です。

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

【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-display

Ubuntu18.04にNVIDIAドライバーをインストール
https://qiita.com/kannkyo/items/c506437704cd62b31077

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む