0%

環境

  • Windows10
  • Ubuntu 18.04

手順

マウント

マウントしたいドライブのドライブレターを確認し、以下コマンドを実行

今回はドライブレターはAとします。

1
2
$ mkdir -p /mnt/a
$ mount -t drvfs A: /mnt/a

アンマウント

1
$ umount /mnt/a

環境

  • Windows10
  • Ubuntu 18.04(WSL)

手順

WSLのディレクトリを開く

実はエクスプローラからWSLのディレクトリを除くことが出来ます。

エクスプローラにて、\\wsl$を開く

1

マウントしたいディレクトリを開き、アドレスをコピー

2

マウント

「ネットワーク」を右クリックし、「ネットワークドライブの割り当て」を選択します。

3

その後、割り当てたいドライブレターを選択し、先ほどのアドレスを張り付けし、OKします。

4

確認

「PC」のツリー上に表示される様になります。

5

アンマウント

6

anacondaとは、データサイエンティスト向けのpythonパッケージを含んだパッケージマネージャの様な物です。

そのため、沢山のツールがインストールされてしまうため、
3GBの容量を使用してしまったり、
プラットフォームに予めインストールされている実行ファイルとの競合を起こす事があります。

minicondaとは、anacondaからそれらのパッケージを除外したパッケージマネージャが主な機能となります。

環境

  • Ubuntu 18.04

手順

minicondaをインストールする

1
2
3
4
5
6
7
8
9
10
11
$ wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh

$ ./Miniconda3-latest-Linux-x86_64.sh
この後、以下操作でインストールが完了します。
1.Enter
2.yesを入力後、Enter
3.Enter
4.yesを入力後、Enter

bashを再起動
$ exec $SHELL -l

インストール中に、以下の様なリストが表示されますが、これらのツールも同時にインストールされます。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
The following NEW packages will be INSTALLED:                                           

_libgcc_mutex pkgs/main/linux-64::_libgcc_mutex-0.1-main
asn1crypto pkgs/main/linux-64::asn1crypto-1.2.0-py37_0
ca-certificates pkgs/main/linux-64::ca-certificates-2019.10.16-0
certifi pkgs/main/linux-64::certifi-2019.9.11-py37_0
cffi pkgs/main/linux-64::cffi-1.13.0-py37h2e261b9_0
chardet pkgs/main/linux-64::chardet-3.0.4-py37_1003
conda pkgs/main/linux-64::conda-4.7.12-py37_0
conda-package-han~ pkgs/main/linux-64::conda-package-handling-1.6.0-py37h7b6447c_0
cryptography pkgs/main/linux-64::cryptography-2.8-py37h1ba5d50_0
idna pkgs/main/linux-64::idna-2.8-py37_0
libedit pkgs/main/linux-64::libedit-3.1.20181209-hc058e9b_0
libffi pkgs/main/linux-64::libffi-3.2.1-hd88cf55_4
libgcc-ng pkgs/main/linux-64::libgcc-ng-9.1.0-hdf63c60_0
libstdcxx-ng pkgs/main/linux-64::libstdcxx-ng-9.1.0-hdf63c60_0
ncurses pkgs/main/linux-64::ncurses-6.1-he6710b0_1
openssl pkgs/main/linux-64::openssl-1.1.1d-h7b6447c_3
pip pkgs/main/linux-64::pip-19.3.1-py37_0
pycosat pkgs/main/linux-64::pycosat-0.6.3-py37h14c3975_0
pycparser pkgs/main/linux-64::pycparser-2.19-py37_0
pyopenssl pkgs/main/linux-64::pyopenssl-19.0.0-py37_0
pysocks pkgs/main/linux-64::pysocks-1.7.1-py37_0
python pkgs/main/linux-64::python-3.7.4-h265db76_1
readline pkgs/main/linux-64::readline-7.0-h7b6447c_5
requests pkgs/main/linux-64::requests-2.22.0-py37_0
ruamel_yaml pkgs/main/linux-64::ruamel_yaml-0.15.46-py37h14c3975_0
setuptools pkgs/main/linux-64::setuptools-41.4.0-py37_0
six pkgs/main/linux-64::six-1.12.0-py37_0
sqlite pkgs/main/linux-64::sqlite-3.30.0-h7b6447c_0
tk pkgs/main/linux-64::tk-8.6.8-hbc83047_0
tqdm pkgs/main/noarch::tqdm-4.36.1-py_0
urllib3 pkgs/main/linux-64::urllib3-1.24.2-py37_0
wheel pkgs/main/linux-64::wheel-0.33.6-py37_0
xz pkgs/main/linux-64::xz-5.2.4-h14c3975_4
yaml pkgs/main/linux-64::yaml-0.1.7-had09818_2
zlib pkgs/main/linux-64::zlib-1.2.11-h7b6447c_3

pythonがインストールされている事を確認

1
2
$ python -V
Python 3.7.4

pipがインストールされている事を確認

1
2
pip -V
$ pip 19.3.1 from /root/miniconda3/lib/python3.7/site-packages/pip (python 3.7)

アンインストール

~/miniconda3フォルダ以下に全てインストールされるため、以下できます。

1
2
3
4
$ rm -r ~/miniconda3

bashを再起動
$ exec $SHELL -l

環境

  • Ubuntu 18.04

手順

Microsoftのリポジトリキーを追加

1
2
3
$ wget -q https://packages.microsoft.com/config/ubuntu/19.04/packages-microsoft-prod.deb
$ sudo dpkg -i packages-microsoft-prod.deb
$ sudo apt update

dotnet-sdkインストール

dotnetコマンドでPowerShellをインストールするため、dotnet-sdkをインストールします。

1
$ sudo apt install dotnet-sdk-3.1 -y

PowerShellインストール

1
$ dotnet tool install --global powershell

インストール完了後、ターミナルを再起動します。

実行できる事を確認

1
2
3
4
5
6
7
8
$ pwsh
PowerShell 6.2.4
Copyright (c) Microsoft Corporation. All rights reserved.

https://aka.ms/pscore6-docs
Type 'help' to get help.

PS /home/user>

試しにコマンドを実行してみる

PowerShellでgrepをしてみます。

1
2
3
4
5
PS /home/user> echo "aaaabbbb" | Select-String "aaaa"

aaaabbbb

PS /home/user> echo "aaaabbbb" | Select-String "cccc" # 何も表示されない

環境

  • Ubuntu 18.04

インストール

1
2
$ apt update
$ apt install nmon -y

使い方

起動

1
$ nmon

nmon

各パフォーマンスを確認する

各操作はコマンドで行います。

CPU

C

nmon1

メモリ

M

nmon2

DISK I/O

D

プロセス

t

nmon3

ネットワーク

n

nmon4

システムリソースビュー

r

nmon5

終了

Ctrl-C

byobuを使うと、一つのターミナルで複数のプロンプトが使えます。

実行と同時にリソースの消費具合を確認したいから、右側にnmon、左側でvim、なんて事が出来る様になります。

内部ではtmux(ターミナルマルチプレクサー)又はscreenが動いていて、
byobuはtmuxをショートカットベースで使いやすくしてくれます。

byobu

環境

  • Ubuntu 18.04

インストール

1
2
$ apt update
$ apt install byobu -y

使い方

byobuを起動する

1
$ byobu

以降の全てのショートカットはbyobuを起動した状態で行います。

画面を垂直に分割する

トップの画像はターミナルを垂直に分割した物です。

Ctrl-F2

垂直に分割

画面を水平に分割する

Shift-F2

水平に分割

分割された他のプロンプトにフォーカスを移動

操作するプロンプトを変更したい時に

  • 次へ
    • Ctrl-F4
  • 前へ
    • Ctrl-F3

フォーカス移動前
フォーカス移動後

分割されたプロンプトの移動

  • 次へ
    • Shift-F4
  • 前へ
    • Shift-F3

移動前
移動後

新しいウィンドウを作成

F2

新規ウィンドウ

他のウィンドウに移動

  • 次へ
    • F4
  • 前へ
    • F3

ウィンドウのフォーカス移動
ウィンドウのフォーカス移動

分割されたプロンプト(ウィンドウ)を終了

終了したいプロンプトにフォーカスし、exitします。

1
$ exit

終了
終了後

画面の共有

他の人と同じ所にSSHした状態でbyobuを起動すると、同じ画面(セッション)を共有できます。

気になる方は試してみてください。

環境

  • LinuxMint19 Mate

手順

anyenvをインストール

anyenvをclone

1
$ git clone https://github.com/riywo/anyenv ~/.anyenv

パスを通す

ターミナル起動時にanyenvのパスを通す設定を書く

1
2
3
4
5
6
7
$ echo 'PATH=${PATH}:${HOME}/.anyenv/bin' >> ~/.bashrc
$ echo 'eval "$(anyenv init -)"' >> ~/.bashrc
$ source ~/.bashrc

anyenv用のインストールフォルダを作成する
一度だけ実行する必要がある
$ anyenv install --init

インストール出来るenvを確認

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
$ anyenv install -l
Renv
crenv
denv
erlenv
exenv
goenv
hsenv
jenv
luaenv
nodenv
phpenv
plenv
pyenv
rbenv
sbtenv
scalaenv
swiftenv
tfenv

好きなenvをインストール

今回はrbenvをインストールします

1
2
3
$ anyenv install rbenv
インストール後、シェルを再起動させる必要がある様なので以下実行
$ exec $SHELL -l

rbenvが使える事を確認

1
$ rbenv --version

anyenvでインストールしたenvの確認

1
2
$ anyenv local -l
rbenv: no local version configured for this directory

envをアンインストール

1
2
3
4
$ anyenv uninstall rbenv
rbenvが使えなくなる
$ rbenv
anyenv: env `rbenv' not installed

環境

  • LinuxMint19 Mate

手順

nodenvをインストール

1
$ git clone https://github.com/nodenv/nodenv.git ~/.nodenv

nodenvのパスを通す

ターミナル起動時にパスを通す様に設定

1
$ echo 'PATH=${PATH}:${HOME}/.nodenv/bin' >> ~/.bashrc

initする

ターミナル起動時にinitする様に設定

1
echo 'eval "$(nodenv init -)"'

nodenvコマンドは使えるが、nodenv installコマンドはまだ使えない

1
$ nodenv install 12.14.1

nodenvのinstallコマンドをインストール

installコマンドやuninstallコマンドを使うためにはnode-buildが必要らしい

1
2
$ git clone https://github.com/nodenv/node-build.git /usr/local/src/
$ echo 'sudo PREFIX=/usr/local /usr/local/src/install.sh' >> ~/.bashrc

nodenvでnodeをインストール

ターミナルを起動し直し、以下コマンドを実行

1
2
$ nodenv install 12.14.1
$ nodenv global 12.14.1

nodeとnpmのバージョンを確認する

1
2
3
4
$ node -v
v12.14.1
$ npm -v
6.13.4

vim-lspをインストールする所まで
この手順では、python3.7.2をインストールするためにpyenvを入れています

環境

  • Ubuntu18.04

手順

Pythonとpipをインストールする

~/.bashrcに以下を追記する

1
2
3
4
5
6
7
8
9
10
11
## pyenv init and install
PYENV_ROOT="${HOME}/.pyenv/bin"
PATH="${PATH}:${PYENV_ROOT}"
pyenv --version > /dev/null || {
git clone https://github.com/pyenv/pyenv ${HOME}/.pyenv
sudo ${HOME}/.pyenv/plugins/python-build/install.sh
pyenv install 3.7.2
pyenv rehash
pyenv global 3.7.2
}
eval "$(pyenv init -)"

~/.bashrcを読み込み直す

1
$ source ~/.bashrc

Neovimをインストールする

~/.bashrcに以下を追記する

1
2
3
4
5
6
7
8
9
10
11
## neovim init and install
XDG_CONFIG_HOME="${HOME}/.config"
XDG_CACHE_HOME="${HOME}/.cache"
nvim --version > /dev/null || {
sudo add-apt-repository ppa:neovim-ppa/stable -y
sudo apt-get update
sudo apt-get install neovim -y
mkdir -p ${XDG_CONFIG_HOME}/nvim
touch ${XDG_CONFIG_HOME}/nvim/init.vim
}
pip install neovim

~/.bashrcを読み込みなおす

1
$ source ~/.bashrc

vim-lspをインストールする

~/.config/nvim/init.vimを以下の内容にする

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
if has('vim_starting')
set rtp+=~/.vim/plugged/vim-plug
if !isdirectory(expand('~/.vim/plugged/vim-plug'))
echo 'install vim-plug...'
call system('mkdir -p ~/.vim/plugged/vim-plug')
call system('git clone https://github.com/junegunn/vim-plug.git ~/.vim/plugged/vim-plug/autoload')
end
endif

call plug#begin('~/.vim/plugged')
Plug 'junegunn/vim-plug',{'dir': '~/.vim/plugged/vim-plug/autoload'}
Plug 'prabirshrestha/async.vim'
Plug 'prabirshrestha/vim-lsp'
Plug 'mattn/vim-lsp-settings'
call plug#end()

上記設定ではNeovim起動時にvim-plugが無ければインストール、
その後async.vim,vim-lsp,vim-lsp-settingsをインストールしています。

Neovimを起動

1
$ nvim

コマンド「:PlugInstall」を実行し、上記プラグインをインストールする

その後「:PlugStatus」を実行し、全てOKになっていれば問題なし、qキーでステータス画面を抜ける

nodejsやgolang、pythonのlspをインストールする場合は、
init.vimに設定を追記、必要なモジュールをインストールするなど、それぞれlspに合わせた設定が必要となる