Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

This article is a Private article. Only a writer and users who know the URL can access it.
Please change open range to public in publish setting if you want to share this article with other users.

More than 1 year has passed since last update.

01_Terminal 環境構築ハンズオン

Last updated at Posted at 2022-08-11

復習

コンピュータとは
Linuxコマンド1
Linuxコマンド2

0. このハンズオンで扱うこと

  • ターミナル
    • シェル
    • エディタ
    • Dockerの環境構築

0.1 インストール(確認)するもの

  • シェル
    • zsh
      • oh-my-zshell
    • fish
      • fisher
    • Fzf: 検索ツール
  • Git(第3回目の活動)
  • Docker(第4回目の活動)

次回以降使うツールもまとめてインストールします

1. はじめに

  • ターミナルの環境を構築するとその後の学習に役立つ(と思う).
  • 実際に手を動かすことで,理解が深まる.

Linuxコマンドを表現するために,文頭に$を記します.実際に入力する際には入力する必要はありません.他の記事でもこのようなケースが多いので覚えておいてください.
また実行結果は>>に続いて記述します.


2. 実践

2.1 基本コマンドの復習

// 自分が誰かわからなくなったとき(現在のユーザー名を確認)
$ whoami
// ログインシェルを確認する
$ echo $SHELL
// カレントディレクトリを表示
$ pwd
// ディレクトリの中身を表示
$ ls {引数でディレクトリを指定}

2.2 man コマンド ➖ マニュアルコマンド

$ man {調べたいこと}
// セクション番号を指定することもできる
$ man 1 {調べたいコマンド}
$ man 2 {調べたいシステムコール}
$ man 3 {調べたいライブラリ関数名}

2.3 環境構築の準備

aptのプロキシ設定を確認

$ sudo cat /etc/apt/apt.conf
    #以下が帰ってこればOK.
    Acquire::http::Proxy "http://proxy_server:port";
    Acquire::https::Proxy "http://proxy_server:port";

なにも帰ってこなかった場合

aptをアップデート

$ sudo apt update
$ sudo apt upgrade

apt: Advanced Package Tool の略
パッケージを操作するためのコマンドラインツール.上のコマンドは,要求のあったツールをどこからインストールすればよいかのリストを更新する.
参考: パッケージ管理コマンド aptとapt-getの違い

はしやすめ
$ apt moo
>>               (__)
                 (oo)
           /------\/
          / |    ||
         *  /\---/\
            ~~   ~~
..."Have you mooed today?"... 

(slコマンドなど,ジョークコマンドはエンタメとしては面白いのですが,だんだん鬱陶しくなるので,程々にしておくことをオススメします)
[参考] 薫のHack

2.3 エディタついて

CUI(黒い画面)上で動作するエディタを習得しておくと,ファイルのちょっとした編集に便利である.Emacs,やnano,vimなどある

image.png

ここでは,インストールされていることが多いvimの使い方を紹介する.

2.3.1 Neovimのインストール

$ sudo apt install neovim
起動
$ nvim

ソフトウェアの名前はNeovimであるが, nvimで起動することができる.

スクリーンショット 2022-10-04 22.12.45.png
*ウガンダの恵まれない子どもたちへの支援を呼びかけてくる.

エイリアスを作成する.
$ echo "alias vi=nvim" >> ~/.bashrc
$ echo "alias vim=nvim" >> ~/.bashrc
$ source ~/.bashrc

チートシート

2.4 他のシェルに触れてみる

今回はZshFishを紹介する.
まずは,利用できるシェルを確認する.

$ sudo vi /etc/shells
  >>(以下viの画面)
    /bin/sh
    /bin/bash
     ︙

/usr/bin/zshとか/usr/bin/fishがあれば良い.

ないとき
$ sudo apt install zsh
$ sudo apt install fish

今使っているシェルを確認する.

$ echo $SHELL 
>> /bin/bash

末尾がbashになっていることから,現在bashがログインシェルとして設定されていることがわかる.

2.4.1 Zsh

Zshとは

  • シェルの一種
  • Bashの上位互換(を謳っている)
    • 概ねBashと同じように扱える.

先程確認したように,デフォルトでは,ログインシェルがbashになっている.
Zshを使ってみよう.
Zshを起動してzshを触ってみよう.

$ zsh

と入力して実行すると,表示が少し変わる.

プロンプト表示比較
- [bash] | hoge@hoge:~$
+ [zsh]  | hoge%

プラグインマネージャ

oh-my-zshなどがある.低スペック(に割り当ててある)VM上でプラグインをもりもりの環境を作ると,動作が重くなることもあるので,ほどほどにしておく.

一旦抜ける.

$ exit

2.4.2 fish doc

fishとは

[F ] riendly [i ] nteractive [sh ] ell
のコンセプト.
デフォルトで補完機能が備わっている.

fishを触ってみよう.

$ fish
- [bash] | hoge@hoge:~$
- [zsh]  | hoge%
+ [fish] | you@hostname ~>

少し文字をタイプしてみよう.候補が薄く表示されたはずだ.自動補完が効くこのような仕様は有り難い.

プラグインマネージャー

Fisherなどが利用できる.

$ exit

で脱出.

2.5それでは

これまで,bash,zsh,fishを体験をしてもらった.ここで,ログインシェルを変える方法を紹介する.ログインシェルを変更するためには,以下のコマンドを用いる.[path/to/shell]には,使いたいシェルのパスを記す.

$ sudo chsh -s [/path/to/shell]
  • chsh はchange shellの略語
$ sudo chsh -s /usr/local/bin/fish

ここでターミナルエミュレータを再起動すると変更したシェルが立ち上がる.


3 環境の確認

3.1 Gitの確認

次週はGitを取り上る.ハンズオンに備えてGitがインストールされているか確認します.(通常通りインストールすれば大抵はされているが,"最小限のインストール"を選択した場合は,入っていない.)

gitの確認
$ git --version
>> git version *.**.*
    // *には数字が入る.
$ sudo apt install git

3.2 Docker をインストール

詳しくは次の次の活動で扱います.
Dockerインストールサポートページ
を参照してください.
今回はubuntu環境にインスールします.windows環境にインストールするには別途設定が必要です.

以下は,上記サイトの内容を転記したものです.

上記サイトの内容を転記したもの(抜けがあるかも).
  1. 古いバージョンがインストールされていたら削除する.

     sudo apt-get remove docker docker-engine docker.io containerd runc
    
  2. 必要なツールをダウンロードしていく.

    sudo apt-get update
    
    sudo apt-get install \
        ca-certificates \
        curl \
        gnupg \
        lsb-release
    
  3. Docker's official GPG key を追加する.

    sudo mkdir -p /etc/apt/keyrings
    
    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
    
  4. いよいよインストール

    *option
    sudo apt-get install update
    
    sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin
    
  5. インストールできるバージョンを確認する.

    apt-chche madison docker-ce
    

こんなのが出ればok
こんなの.png

  1. バージョンを指定してインストール
    を4で確認した,バージョンに置き換えて実行.

    sudo apt-get install docker-ce=<VERSION_STRING> docker-ce-cli=<VERSION_STRING> containerd.io docker-compose-plugin
    

    例: 確認したバージョンが 5:20.10.18~3-0~ubuntu-jammのとき

    sudo apt-get install docker-ce=5:20.10.18~3-0~ubuntu-jamm docker-ce-cli=5:20.10.18~3-0~ubuntu-jamm containerd.io docker-compose-plugin
    
  2. インストールできたか確認する

    sudo service docker start
    
    sudo docker run hello-world
    

hello-worldはHello, World用に用意されているコンテナイメージ

☆ 「sudoを付けないと実行出来ない」を解消する

sudo usermod -aG docker $USER

を実行した後,ログアウトして,再度ログイン.(VMの場合,再起動が必要らしいので,うまく行かない場合は試してみてください)

docker container ps -a

vim (時間があったら)

  • vimはCIL上で動作するエディタ.大抵のUNIX系OSで使える.もちろんwindowsでも.
  • 今回使うのはNeovim.vimの上位互換.
  • なれると便利
  • プラグインを入れると強力なエディタになる.
zsh
// インストール
$ sudo apt install neovim
// 起動
$ nvim 
// エイリアスを作成する.
$ echo "alias vi=nvim" >> ~/.bashrc
$ echo "alias vim=nvim" >> ~/.bashrc
$ source ~/.bashrc
//*fishの場合
$ echo alias vi=nvim" >> ~/.config/fish/config.fish
$ echo alias vim=nvim" >> ~/.config/fish/config.fish
$ source ~/.config/fish/config.fish

*エイリアスを作っておくと,「xxというコマンドを叩いたときにyyを呼び出す」ことができる.

ハンズオンは以上です.

おまけ? Alarcritty を使ってみる

Aracrittyとは

  • Github

  • Rustで書かれた,クロスプラットフォームターミナルエミュレータ

  • 日本語対応がいまいち(変換を確定しないと描画されない)

VirtualBoxの画面サイズをフレキシブルにする

デフォルトのままだと,画面が小さくで操作がしづらい.そこで,マウスでドラックして,画面サイズを柔軟に操作できるようにする方法を紹介する.
① "デバイス"を選択
スクリーンショット 2022-09-20 18.54.20.png
② "Insert Guest Additions CD images..."を選択
スクリーンショット 2022-09-20 18.55.58.png
③ CDアイコンが出てくるので,開く.
autorun.shを右クリックしてRun as a Programを選択
スクリーンショット 2022-09-20 19.00.42.png
④パスワードを求められたりするので,あとは言われたとおりにすすめる.
終了後は,CDイメージを取り出してしまって構わない.

プロキシ設定

未検証

bash
export http_proxy="http://wwwproxy.kanazawa-it.ac.jp:8080/"
export https_proxy="http://wwwproxy.kanazawa-it.ac.jp:8080/"

aptのプロキシ設定

$ sudo nano /etc/apt/apt.confなどでエディタを起動し,

/etc/apt/apt.conf
Acquire::http::Proxy "http://wwwproxy.kanazawa-it.ac.jp:8080";
Acquire::https::Proxy "http://wwwproxy.kanazawa-it.ac.jp:8080";

を記述する.[戻る]
学外から接続する場合, #でコメントアウトする.
(https://qiita.com/ryo8/private/43c5e17e890e0138deed#22-%E7%92%B0%E5%A2%83%E6%A7%8B%E7%AF%89%E3%81%AE%E6%BA%96%E5%82%99)

/etcディレクトリには,システムの設定ファイルが格納されている.

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?