LoginSignup
36
41

More than 5 years have passed since last update.

Ubuntu で研究・開発環境を構築する

Last updated at Posted at 2019-04-12

この資料は研究室用のマニュアルを一般公開したものです。

研究以外にも開発などで使う端末のセットアップの役に立つと思い、公開しました。
間違いや新しい情報や提案がありましたら、コメントやプルリクをお願いします。

Ubuntu のインストール

マニュアル (Ubuntu 16.04)

訂正

ページ
7ページ 「Ubuntu を Windows Boot Manager とは別にインストール」 「それ以外」を選択することを推奨
7ページ $ apt remove libreoffice-common $ sudo apt purge libreoffice-common

Ubuntu の初期設定

Ubuntu 18.04 にて確認済みです。

日本語入力できるようにする

Ubuntu 18.04 の本家版はデフォルトでは、キーボードによる切り替えで日本語の入力ができないようです。

まずは落ち着いてググって対処しましょう。

Google: Ubuntu 18.04 日本語入力

apt サーバの切り替え

初期設定では日本国外のサーバに設定されている場合があるので、必要であれば変更する必要があります。
現在の設定状況は「/etc/apt/sources.list」のファイルを開くことで確認できます。

$ less /etc/apt/sources.list

# から始まる行はコメントアウトされている行です。
それ以外の行に記述されている URL に jp とかが入っていれば,大丈夫です。
こだわる方は, jaist などが提供するサーバのアドレスに変更しましょう。

apt のパッケージの更新

apt で管理されているパッケージを更新します。

$ sudo apt update # リポジトリ一覧を更新
$ sudo apt upgrade # パッケージを更新 (通常のパッケージ更新時)
$ sudo apt full-upgrade # パッケージを更新 (保留パッケージ更新時)
$ sudo apt autoremove # 不要になったパッケージを削除する

一通り終わったら一度再起動をおすすめします。

日本語ディレクトリ名から変更する

日本語でインストールした場合、home ディレクトリ下に「ダウンロード」や「ミュージック」などの日本語クソダサディレクトリが生成されます。
ターミナルからの利便性が低いので、英語に戻すのがおすすめです。

$ env LANGUAGE=C LC_MESSAGES=C xdg-user-dirs-gtk-update

上のコマンドを実行すると下のような画面が表示されます。

image.png

「Don't ask me this again」にチェックを入れ、「Update Names」をクリックします。

UbuntuMate18.04での実行結果
$ env LANGUAGE=C LC_MESSAGES=C xdg-user-dirs-gtk-update
Gtk-Message: 00:16:01.199: GtkDialog mapped without a transient parent. This is discouraged.
Moving DESKTOP directory from  to Desktop
Moving DOWNLOAD directory from ダウンロード to Downloads
Moving TEMPLATES directory from テンプレート to Templates
Moving PUBLICSHARE directory from 公開 to Public
Moving DOCUMENTS directory from ドキュメント to Documents
Moving MUSIC directory from ミュージック to Music
Moving PICTURES directory from ピクチャ to Pictures
Moving VIDEOS directory from ビデオ to Videos

すると上のように変更されます。

デュアルブートでも時計をいい感じにする

WindowsとUbuntuのデュアルブート環境では切り替えた際に時計がずれるので、下のコマンドを実行することでどちらでもいい感じにします。

$ sudo timedatectl set-local-rtc true

amazon のアンインストール

インストールされている場合,不必要だと思いますので削除しましょう。

Ubuntu 18.04以降:

$ sudo apt remove --purge ubuntu-web-launchers 

それ以外:

$ sudo apt remove --purge unity-webapps-common

libreoffice のアンインストール

libreoffice はフリーのオフィスソフトです (MS office 互換)。
libreoffice が不要であればアンインストールしましょう。

環境によって以下のどちらかを実行します。

$ snap remove libreoffice-common
$ sudo apt remove --purge libreoffice-common

なお,Linux 用の MS office はありません。
必要な場合は libreoffice などの互換ソフトウェアを利用するか,MS Office Online, Google ドキュメントなどを利用しましょう。

LinuxBrew のインストール

必要に応じてパッケージ管理ツールの LinuxBrew をインストールしましょう。

$ sudo apt install build-essential curl file git # 依存パッケージのインストール
$ sh -c "$(curl -fsSL https://raw.githubusercontent.com/Linuxbrew/install/master/install.sh)"

以下でプロファイルに設定しましょう。
環境によっては適宜読み替えてください。
基本的には以下で大丈夫です。

$ test -d ~/.linuxbrew && eval $(~/.linuxbrew/bin/brew shellenv)
$ test -d /home/linuxbrew/.linuxbrew && eval $(/home/linuxbrew/.linuxbrew/bin/brew shellenv)
$ echo "eval \$($(brew --prefix)/bin/brew shellenv)" >>~/.bashrc # .profile でも可
$ exec $SHELL -l

anyenv のインストール

ほぼ必須です。
brew からインストールできますが、弊研究室では知っている限りでは直接入れているので、こちらでも git コマンドを用いてインストールする方法を紹介します。

依存パッケージのインストール:

$ sudo apt install git

本体のインストール:

$ git clone https://github.com/anyenv/anyenv ~/.anyenv
$ echo 'export PATH="$HOME/.anyenv/bin:$PATH"' >> ~/.bashrc
$ exec $SHELL -l
$ anyenv init

以降は anyenv init を実行した際に表示される手順に従ってセットアップしてください。

なお、参考までに私は以下のように表示されました:

# Load anyenv automatically by adding
# the following to ~/.bash_profile:

eval "$(anyenv init -)"

なので、~/.bashrceval "$(anyenv init -)" を追記しました。

その後、ターミナルを再起動します:

$ exec $SHELL -l

すると、以下のような警告が表示されるはずです:

ANYENV_DEFINITION_ROOT(/home/user/.config/anyenv/anyenv-install) doesn't exist. You can initialize it by:
> anyenv install --init

これはマニュフェストディレクトリというものがないためですので、表示に従い生成します。

$ anyenv install --init
$ exec $SHELL -l

今度は再起動しても警告表示が出ないはずです。

マニュフェストディレクトリのアップデートは以下で実行できます:

$ anyenv install --update

必要に応じて実行してください1

なお、インストールできる **env は次のコマンドで確認できます:

$ anyenv install -l

plugins

anyenv にはいくつかの便利なプラグインがあります。
有名なものでは anyenv-update と anyenv-git があります。

ここでは anyenv-update のインストール手順を紹介します2

anyenv-update

anyenv-update は anyenv でいれた *env をまとめて更新するプラグインです。
**env を更新することで最新バージョンの *
が使えるようになるのであると大変便利なプラグインです。

$ mkdir -p $(anyenv root)/plugins # プラグインを格納するディレクトリを作成
$ git clone https://github.com/znz/anyenv-update.git $(anyenv root)/plugins/anyenv-update # インストール

実行方法は次のとおりです:

$ anyenv update

anyenv でインストールした **env たちと anyenv のマニュフェストディレクトリがアップデートされます。

CapsLockの変更

私はほぼ必須だと思っています。

CapsLockをCtrlに変える
$ gsettings set org.gnome.desktop.input-sources xkb-options "['ctrl:nocaps']"

プライバシーの設定を変更する

Ubuntu では画面ロックのオンオフや時間、位置情報サービスや履歴などはシステム設定の「プライバシー」から変更できます。
お好みに変更してください。

Ubuntu 18.04 のシステムエラーの報告メッセージを無効化する

Ubuntu 使ってる人ならよく見るあのメッセージの無効化です。
本来なら無効化しないほうがいいかもですが…

$ sudo nano /etc/default/apport
# set this to 0 to disable apport, or to 1 to enable it
# you can temporarily override this with
# sudo service apport start force_start=1
enabled=0

開発環境の構築

Ubuntu 18.04 で確認済みです。

python の実行環境を構築する

pyenv のインストール

anyenv から pyenv を入れて環境を構築します。

依存パッケージのインストール:

$ sudo apt install make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev libffi-dev liblzma-dev python-openssl git zlib1g-dev libffi-dev

libreadline-dev の代わりに libedit-dev を使用することもできます:

$ sudo apt install libedit-dev

本体のインストール:

$ anyenv install pyenv
$ exec $SHELL -l

pipenv のインストール

pipenv は npm などに代表されるようなライブラリーの管理ツールです。

次のコマンドでインストールできます:

$ sudo apt install python3-distutils
$ brew install pipenv

参考までに、よく使われているであろうライブラリは以下の通りです:

  • jupyterlab
  • numpy
  • scipy
  • pandas
  • xlrd (Excel ファイルを扱う場合)
  • scikit-learn
  • matplotlib
  • japanize-matplotlib
  • seaborn
  • Pillow

Docker のインストール

便利なツールです。
紹介は他に任せます。

Dockerのインストール
$ snap install docker

docker-compose

複数の docker コンテナの管理・連携に便利なツールです。

docker-composeのインストール
$ sudo apt install docker-compose

その他のソフトウェア

以下、よく使うであろうソフトウェアなどのインストール手順を記します。

私の場合ではTeX Live, Chrome, Atom, Franz, vlc といったところでしょうか。

TeX Live

論文執筆などはやっぱり TeX ですよね。

$ sudo apt install texlive-full

Slack

snap からインストールする (非推奨)
$ snap install slack --classic

snap からインストールすると日本語が入力できないです。
snap からインストールした人は,まずはアンインストールしましょう。

$ snap remove slack

その後,公式サイト から.debファイルをダウンロードしてインストールします。

「.DEB(64ビット) をダウンロード」ボタンをクリックして .deb ファイルをダウンロードします。
その後,以下のコマンドでインストールします (ファイル名はダウンロード時の名前に合わせて下さい)。

$ sudo apt install ./slack-desktop-3.3.*-amd64.deb

ブラウザ

Ubuntu であれば Firefox がデフォルトでインストールされている。

その他のブラウザを使いたい場合は自主的にインストールしてください。

Chromium

Chromium は一言で言うと Chrome のオープンソース版です。
apt や snap でインストールできます。
selenium で使うときには経験上、apt でインストールすることをおすすめします。

$ snap install chromium
# OR
$ sudo apt install chromium-browser

Chrome

Screenshot from 2017-07-03 13-19-55.png

「Linux 版(Debian / Ubuntu / Fedora / openSUSE)」となっていることを確認して「Chrome をダウンロード」をクリックします。

「64 bit .deb (Debian / Ubuntu 版)」を選択して「同意してインストール」をクリックします。

「google-chrome-stable_current_amd64.deb」がダウンロードされるので、ターミナルを起動しダウンロードディレクトリに移動し、次のコマンドを実行します。

$ sudo apt install ./google-chrome-stable_current_amd64.deb

その他

Debian 系なので .deb ファイルをダウンロードし、 apt コマンドを実行すればなんとかなる

テキストエディタ

Ubuntu にはデフォルトで以下がインストールされているはずです。

  • gedit
  • nano
  • vi

宗教上などの理由により、他のものをインストール場合には次を参考にしてください。

Atom

2 パターン紹介します。

snap コマンド

$ snap install atom

.deb ファイル

「ダウンロード .deb」をクリック。「atom-amd64.deb」がダウンロードされるので、ターミナルを起動しダウンロードディレクトリへ移動、

$ sudo apt install ./atom-amd64.deb

を実行する。

VSCode

過去には snap コマンドでインストールできたようですが、記事執筆時点ではできません。

上の URL から .deb ファイルをダウンロードし、ターミナルを開きダウンロードディレクトリに移動し、次のコマンドを実行してください:

$ sudo apt install ./code_*_amd64.deb

Vim

一番オーソドックスであろう、vim のインストールは次の方法です。

$ sudo apt install vim

その他、neovim などがあります。
私個人はあまり vim をカスタマイズして使わないので詳しい別の方を頼るといいと思います。

その他

もちろん、Emacsでもいいですけど…

OBS Studio

収録や配信に必要なソフトです。

$ snap install obs-studio

franz

最後に

もちろん、Windowsで作業しても構いませんし、「Windows Subsystem for Linux」というものが発表され、Windows 10 の Anniversary Update を適用すれば、 Windows 上で仮想的に Ubuntu 等を動かすこともできます (Bash on Ubuntu on Windows 等)。
とりあえずであれば以下を参考にすれば導入できるはず。

参考

Todos

  • gnome-tweaks
  • ubuntu-restricted-extras
  • Docker

  1. マニュフェストディレクトリがいまいち何なのかわかっておらず、どのようなときに更新するものなのかわかりません。詳しい方おしえてください。 

  2. anyenv-git はこの記事の執筆の下調べ中に知ったので、いまいちどのように使うものかよくわかっていませんので詳しい方教えてください。 

36
41
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
36
41