20201012のLinuxに関する記事は8件です。

X Window Systemとは?

  • Linuxとは独立したソフトウェアで、GUI環境を提供するウィンドウシステムのこと。「X」と略されることが多い。

  • 現在はほとんどのUnix系システムで標準的に採用されている。

  • X Window Systemはクライアント・サーバーモデルを採用している。通常のクライアント・サーバーモデルとは逆で、ユーザーが直接操作する側がサーバー(Xサーバー)で、リモートで動作する側がクライアント(Xクライアント)となる。(これは、X Window Systemの機能を提供する側か、利用する側かという視点で見ている為)

Xサーバーとは

  • ユーザーが操作したキーボードやマウスのイベントをXクライアントに伝える。また、Xクライアントから送られてきた描画命令を解釈してディスプレイに表示する役目もある。つまりXサーバーは、ユーザーとアプリケーションとの間を取り持っている。

Xクライアントとは

  • XクライアントはXサーバーに対して文字やグラフィックスの描画命令を発行したり、Xサーバーからキーボードやマウスの入力のイベントを受け取って動作する。

XサーバーとXクライアントの通信について

  • XクライアントとXサーバの間の通信には、「Xプロトコル」というOSに依存しない規約を用いている。

X Server Systemて使われるウィンドウマネージャーとは

  • X Server SystemによるGUI環境は、実際には「ウィンドウマネージャー」と呼ばれるフロントエンドプログラムを使うことで提供される。このウィンドウマネージャーにはいくつか種類があり、その中から自分の好みにあったGUIを選択することができる。

参考サイト:http://www.astec-x.com/FAQ/aboutx.html

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

ターミナルって何?

ターミナル説明

ターミナルは、PCに命令をすることができるツールですね。
環境構築を実行するには コマンドラインというツールが必要となります。
Macにデフォルトでインストールされているコマンドラインがターミナルです。

コマンドライン説明

コマンドライン(または コマンドラインインタフェース:CLI )とは、コンピュータに対してキーボードからコマンドという文字を打ち込んで操作を行うツールになります。

GUI(グラフィカルユーザインターフェース)

コマンドラインとは対照的に、グラフィックを用いて操作を行う仕組みを グラフィカルユーザインタフェース(GUI) と言います。

例えば、「マウスでファイルをダブルクリックして開く」という操作など、普段PCで行う操作のほとんどはGUIで行なっていることが多いです。

基本.png

ターミナルを使う理由を学ぼう

先程、マウスなどを使った直感的に操作をすることができるGUIと、ターミナルのようにコマンドを使用して操作するCLIがあることを説明させて頂きました。

直感的に操作ができて普段から使い慣れたGUIではなく、なぜわざわざターミナルの操作に慣れ、それを使用しなければならないのでしょう?

その理由は、GUIとCLIでは CLIの方が行える操作の数が圧倒的に多いためです。

GUIのように全ての操作をグラフィカルに表現していては画面がメニューやボタンで溢りかえってしまって、分かりづらくなってしまうためです。
普段行わない操作についてはボタンが無かったり、そもそも簡単に操作できては危険なものであれば操作できないものである場合が多いです。

ボタン.png

CLIでは、PCに対しての操作のほとんどが行えると言って良いほどに、
様々な操作を行うことができます。

「Rubyプログラムの実行」もCLIが行える操作の1つです。
そのため、 ターミナルの操作は必須スキルだと思います。

ターミナルの見方説明

まずは、ターミナルを開いて表示画面を見てみましょう!!

ターミナル見方.png

コンピュータ名は自分のコンピュータの名前ですね。
ここでは「A-137」となっています。ユーザ名は自分の名前です。
ここでは「div-M.T」となっています。このあとに続く「$」または「%」は プロンプト といい、 コンピュータが命令を受け付けられる状態であることを示します 。つまり今は、命令待ちの状態です。

まとめ

・ターミナルとは、PCに命令をすることができるツールのこと
・「〜」には、カレントディレクトリが入ります。
 「%」は、プロンプトを言います。

プログラミングは、膨大な量の情報があるので、
基本から徐々に焦らずに理解していきましょう!!
できるようになるまで時間は、かかります。
でも、毎日継続して行えばだんだんとできるようになるので
一緒に頑張りましょう!!

以上。

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

【Shell】Gitでリモートのデフォルトブランチを取得する方法

  • 普段Gitを用いた開発の際に、shellやCIでデフォルトブランチ名を取得した処理を記述する場合がある。
  • ただ、最近諸事情でデフォルト名がmasterからmainへ変更されたため、汎用的に取得する必要がある。
  • そのため、Gitソースのリモートデフォルトブランチ名を取得する2つの方法を記録する。

結果

  • git remoteコマンドを利用した主に2つのやり方は下記。
    • 環境に合わせて選択
# awkの場合
# 出力 : master(or main)
git remote show origin | awk '/HEAD/ {print $NF}'

# grep / cutの場合
# 出力 : master(or main)
git remote show origin | grep 'HEAD branch' | cut -d' ' -f5

参考

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

EC2のキーペアを紛失した時の簡単な対処法

EC2のキーペアを無くしてしまった時、既存のインスタンスに別のキーペアを登録できます。
新しいインスタンスを作成する必要はありません。

例としてlinux/MacOSの場合の手順を示します。

新しいキーペアを作成する

新しいキーペアの作成は必須ではありません。
既存の別のキーペアを使用する場合はスキップしてください。

  • AWSマネジメントコンソールにアクセス
  • EC2 > ネットワーク&セキュリティ > キーペア へ移動
  • 「キーペアを作成」をクリック スクリーンショット 2020-10-12 15.38.00.png
  • キーペア名を入力して「キーペアを作成」をクリック スクリーンショット 2020-10-12 15.38.26.png
  • pemファイルがダウンロードされる
  • pemファイルを適当なディレクトリに移動し、適切な権限を設定する
  $ mv xxxxx.pem ~/.ssh/
  $ chmod 400 ~/.ssh/xxxxx.pem

Windowsの場合

公開キーを作成する

  • $ ssh-keygen -y -f ~/.ssh/xxxxx.pem
  • 出力された公開キーを「ssh-rsa 」も含めて全てコピーしておく
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQClKsfkNkuSevGj3eYhCe53pcjqP3maAhDFcvBS7O6V
hz2ItxCih+PnDSUaw+WNQn/mZphTk/a/gU8jEzoOWbkM4yxyb/wB96xbiFveSFJuOp/d6RJhJOI0iBXr
lsLnBItntckiJ7FbtxJMXLvvwJryDUilBMTjYtwB+QhYXUMOzce5Pjz5/i8SeJtjnV3iAoG/cQk+0FzZ
qaeJAAHco+CY/5WrUBkrHmFJr6HcXkvJdWPkYQS3xqC0+FmUZofz221CBt5IMucxXPkX4rWi+z7wB3Rb
BQoQzd8v7yeb7OzlPnWOyN0qFU0XA246RA8QFYiCNYwI3f05p6KLxEXAMPLE

Windowsの場合

EC2インスタンスのユーザーデータを変更する

  • EC2インスタンスを停止
  • アクション > インスタンスの設定 > Edit user data をクリック スクリーンショット 2020-10-12 15.56.06.png
  • すでに定義されたユーザーデータがある場合は、一旦どこかへ退避しておく
  • ユーザーデータに下記のスクリプトを貼り付ける
Content-Type: multipart/mixed; boundary="//"
MIME-Version: 1.0

--//
Content-Type: text/cloud-config; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename="cloud-config.txt"

#cloud-config
cloud_final_modules:
- [users-groups, once]
users:
  - name: username
    ssh-authorized-keys: 
    - PublicKeypair
  • users.namePublicKeypair を修正して「保存」をクリック

    • users.name ... ec2-user など
    • PublicKeypair ... 先ほど作成した公開キー スクリーンショット 2020-10-12 15.59.52.png
  • インスタンスを起動

  • 起動後、ダウンロードしたpemファイルを使用してssh接続出来ることを確認する

    • ssh -i ~/.ssh/xxxxx.pem ec2-user@xxx.xxx.xxx.xxx
  • インスタンスを停止

  • 先ほど貼り付けたスクリプトを公開キーを含め全て削除する

    • 退避したユーザーデータがある場合は貼り付ける
  • 「保存」をクリック

  • インスタンスを起動する

参考

最初の起動後に SSH キーペアを紛失した場合、Amazon EC2 インスタンスに接続するにはどうすればよいですか?

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

シンボリックリンクの作成/削除方法

情けない話ですが、いつも忘れてしまうので自分の備忘録です:point_up:
自分は画像などを切り分けて、シンボリックリンクを使って表示させています。参考になれば幸いです。
間違っている点等ありましたらご指摘ください!!

☆やること

① .ssh/configの作成
② シンボリックリンクの作成

☆手順

ssh接続

シンボリックリンク作成

シンボリックリンク削除

☆ssh接続

configの設定

SSHコマンドを入力するのが面倒なので、サーバごとに設定しています。
現場の先輩から教わって、タイムアウト設定を無しにしています。

$ cd ~/.ssh
$ vi config

Host *
ServerAliveInterval 30
ServerAliveCountMax 5
TCPKeepAlive yes

### Connect Setting Name ###
Host sample_w1
HostName 0.0.0.1
Port     22
User     hoge
IdentityFile    sample.pem

設定が終わったら、続きです。
サーバの/var/sample_api/publicを対象にシンボリックリンクを作成します。

$ ssh sample_w1

[hoge@sample_w1 ~]$ ls /var/sample_api/public
fonts  img  index.html  js
[hoge@sample_w1 ~]$ cd プロジェクト

シンボリックリンクの作成

[hoge@sample_w1 ~]$ ln -s /var/sample_api/public sample_api
[hoge@sample_w1 ~]$ ll
drwxrwsr-x 1 hoge   team  0 1月 1 13:54 .
drwxrwsr-x 1 hoge   team  0 1月 1 13:54 ..
lrwxrwxrwx 1 hoge   team  0 1月 1 13:55 sample_api -> /var/sample_api/public/

シンボリックリンクの削除

[hoge@sample_w1 ~]$ unlink sample_api
[hoge@sample_w1 ~]$ ls -a
.           ..

注意すべき点として、rmコマンドで実体を削除しないようにしてください...

☆参考文献

https://qiita.com/colorrabbit/items/2e99304bd92201261c60
https://www.atmarkit.co.jp/ait/articles/1605/30/news022.html
https://qiita.com/passol78/items/2ad123e39efeb1a5286b

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

なぜLinuxを使うのか

はじめに

どうも、isso0424です。
この記事はLinux布教を推し進めたい変態による記事になっています。
興味のある方はどうぞ。

Linuxって何?

まず「Linuxって言われてもわからん!!!」っていう人もいるかもしれないので軽く紹介しておきます。
LinuxはコンピュータのOSの一つです。
OSがまずわからんって人はWindowsとかMacOSとかと同じようなものだと思ってください。
そしてLinuxは基本的にMacOSと同じUNIX系のOSに分類されます。

利点紹介TIME

能書きはここまで。
Linuxの利点について紹介していきます。

1.軽い

はい、見出しのとおりです。
Windowsで、低スペックなPCを使っていると結構動作が重くなります。(筆者は一昨年までこの環境でした)
これは、バックグラウンドで余計なプロセスが大量に走ることに起因するものです。
ここでLinuxを見てみましょう
Linuxは最低限のプロセスで動くので基本軽いです。
重いと言われているGnomeですらWindowsよりも軽いです。

2.ソフトウェアのインストールが楽

ここではArchlinuxの例を示します。
もしGitをインストールするとすると、Windowsであれば

  • 1.ダウンロードするためのページに移動
  • 2.インストーラーをダウンロード
  • 3.ダウンロードしたインストーラーを使ってインストール

の少なくとも3ステップが必要です。
しかし、ArchLinuxであれば、

$ sudo pacman -S git

これでインストールが終わります。
見ればわかるとおり、**1行でソフトウェアのインストールを済ませることができます。

3.ターミナルで生活できる

windowsでは、GUIが無いと生活ができません。
しかし、linuxではGUIが無くともコンソール上で生活ができます。
コンソール上でビルド、ファイル編集、
何が嬉しいかというと、充電が不安なときに仮想コンソールで作業したり、sshでリモートログインしてPCコンソール上で作業したりすることができます。

その他にも...

  • 様々なディストリビューションがある
  • サーバーの運用時に勉強が楽になる
  • 自分の好きなデスクトップ環境を使える
  • 全部カスタマイズできる

など数多くのメリットがあります。

まとめ

VMでも良いのでぜひLinuxを一回使ってみてください!!!
もしかしたらPC生活が変わるかもしれません!!!!

おまけ

この記事の本質とはそれてしまうのですが、VMでのUbuntuの実行についての記事を貼っておきます
Windows10上に仮想Ubuntu環境を構築(VMware Workstation Player)
Windows10にVirtualBoxとUbuntuをインストール

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

LAMMPS コマンドのメモ(完全に自分用)

概要

LAMMPS用のコマンドをまとめておきます。完全に自分用ですが、誰かの役に立つかもしれないので一応公開しておきます。
https://lammps.sandia.gov/doc/Manual.html ←基本はここから、自分の役に立ったことについて日本語でメモをしていきます。
間違いなどありましたら、ご指摘いただけると非常に助かります。

用途別

リスタートファイルを作りたい

restartとwrite_restartは違うので注意

write_restart

write_restart filename.rst

コマンドが実行された時点での状態を保存する。runの後とかにおいておくと良い。
基本的に計算後の状態の保存に使う。

restart

restart N filename1.rst filename2.rst

Nステップごとにfilename1.rstとfilename2.rstが交互に更新されていく。
計算中の状態の保存に使える。

コマンド別

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

Windows Subsystem for Linux 2(WSL2)のUbuntuの設定方法

概要

Windows Subsystem for Linux(WSL)のUbuntuでやった設定を備忘録的にまとめていきます。

前提

Windows 10 バージョン 2004以上

確認方法

1.Win+Rで「ファイル名を指定して実行」を起動します
image.png
2.winverと入力しEnterを押します

winver.png

WSLの有効化

1. 「Linux 用 Windows サブシステム」のオプションを有効化します

PowerShellを管理者で実行し以下のコマンドを実行

PowerShell[管理者]
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

2. 「仮想マシン プラットフォーム」のオプションを有効化します

PowerShellを管理者で実行し以下のコマンドを実行

PowerShell[管理者]
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

3. PCを再起動します

4. Linux カーネル更新プログラム パッケージをダウンロード

こちらからダウンロードして、インストールしてください。

5. WSL2をデフォルトに設定

PowerShell[管理者]
wsl --set-default-version 2

6. Microsoft StoreからUbuntuのインストール

以下から入手、インストールしてください。
https://www.microsoft.com/ja-jp/p/ubuntu/9nblggh4msv6?

7. Ubuntuを起動する

Windowsキーを押し、アプリ一覧からUbuntuを起動します。
まず、ユーザーネームを設定します。
今回、画像ではuserになっていますが、半角英数の範囲で好きに決めてもらってOKです。
つづいて、パスワードを2回入力します。入力しても表示されませんがちゃんと入力されています。
(以後、何度も使うので忘れないようにしてください)
image.png

参考
https://docs.microsoft.com/ja-jp/windows/wsl/install-win10

VcXsrv Windows X Serverのインストール

Linux上のGUIプログラムを実⾏するために、X-Windowサーバーをインストールします。

1. インストーラのダウンロード

こちらから、インストーラをダウンロード。

2. インストーラ起動

ダウンロードしたインストーラを起動、指⽰に従ってインストール。

3. XLaunchの起動

スタートメニューでXLaunchを検索して起動
次へをクリックしていき、3枚目の画面Additional parameters for VcXsrvの欄に-acと書き込みます。
image.png

save configurationで設定ファイルをshell:startupに保存しておくと、Windows起動時に自動でVcXsrvを起動してくれるようになります。
image.png

WSLの設定

私はWindows Terminalを使用しています。かなり使いやすいので、使いたい方はにインストール・設定方法を記載していますので参考にしてください。

1. Ubuntuを起動

2. パッケージのインストール

以下のコマンドを順に実行してください。多分数時間は軽くかかると思います。
※3行目は、かなり長いですので注意してください。

bash
sudo apt update -y
sudo apt upgrade -y
sudo apt install -y language-pack-ja manpages-ja manpages-ja-dev nkf build-essential x11-apps emacs emacs-mozc fcitx-mozc dbus-x11 gtypist typespeed texlive-full evince gnome-terminal sox nodejs libsdl2-dev libsdl2-image-dev libsdl2-mixer-dev libsdl2-net-dev libsdl2-ttf-dev libsdl2-gfx-dev libopencv-dev freeglut3-dev fonts-freefont-ttf fonts-ubuntu gdb python3-pip libreadline-dev libssl-dev

一応何やってるか説明します

1行目:パッケージ一覧を更新(以後リポジトリの追加・削除時には必ず実行するようにしてください)
2行目:パッケージを更新
3行目:基本的なパッケージ・debファイルのインストール

3.各種設定

ディスプレイの設定として、以下のコマンドを実行します。

bash
echo "export DISPLAY=$(cat /etc/resolv.conf | grep nameserver | awk '{print $2}'):0" >> ~/.profile
echo 'export LIBGL_ALWAYS_INDIRECT=1' >> ~/.profile

ローケルの設定として以下のコマンドを実行します。

bash
sudo update-locale LANG=ja_JP.UTF-8

続いて、⽇本語⼊⼒の設定として、以下の内容を~/.profile追記します。

~/.profile
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx
export DefaultIMModule=fcitx
if xset -r 49; then
fcitx-autostart >/dev/null 2>&1 &
else
echo "Start XLaunch and then Restart Ubuntu"
fi

続けてタイムゾーンの設定をしていきます。

bash
sudo dpkg-reconfigure tzdata

を実行して、AsiaTokyoを選択します。

4.テキストエディタの設定

VSCodeをインストールしてRemort - WSLを導入していれば、codeコマンドでVSCodeが開けますが、sudoで編集できない(やる方法あれば教えてください...)ので、vimやemacsの設定もしておきましょう。

VSCode

以下から入手、インストールします。
https://code.visualstudio.com/download

続いて、ctrl+shift+xまたは左端の□マークから拡張機能をインストールします。
Remort - WSL
Japanese Language Pack for Visual Studio Code
は必須です。(※日本語にしたくなければRemort - WSLだけでOKです。)

拡張機能のインストール後、再読み込みして、ctrl+shift+pを押してコマンドパレットを表⽰させます。
Configure Display Languageを⼊⼒&選択し、jaに変更すると、日本語化できます。

その他、お好みで拡張機能の導入をしてください。

ほかにも私は
Vimのキーバインドを導入する拡張機能
カラースキームMonokai Proの拡張機能
などの拡張機能をインストールしていますが、好みが分かれるので割愛します。

ctrl+,あるいは左下の歯車→設定から設定が開けます。
GUIになっているのでわかりやすいと思います。(jsonでも編集可能)

参考
https://rfs.jp/sb/vsc/vsc-setting.html
https://qiita.com/hi85/items/eaede5ebb509f21f27f5

LaTeXを使う場合は、以前記事にしていますので、
こちら)を参考に設定してみてください。

Vim

~/.vimrcに設定を記述します。
また、初期では配色がよくないので、私はカラースキームmolokaiを導入しています。

設定例

molokaiのダウンロード

bash
mkdir ~/.vim
cd ~/.vim
mkdir colors
git clone https://github.com/tomasr/molokai
mv molokai/colors/molokai.vim ~/.vim/colors/
vi ~/.vimrc

~/.vimrcの内容

~/.vimrc
set fenc=utf-8 "UTF-8形式で保存する
set title "編集中のファイル名を表示
set showmatch "括弧入力時の対応する括弧を表示
set number "行番号を表示
syntax on "コードの色分けをオンにする
set smartindent "スマートインデントを設定
set tabstop=2 "インデントをスペース2個分に設定
syntax on "コードの色分け
set showcmd "入力中のコマンドを表示する
set virtualedit=onemore "行末の1文字先までカーソルを移動できるようにする
set clipboard=unnamedplus "yankした時クリップボードに入るようにする
set ignorecase "検索文字列が小文字の場合は大文字小文字を区別なく検索する
set smartcase "検索文字列に大文字が含まれている場合は区別して検索する
set incsearch "検索文字列入力時に順次対象文字列にヒットさせる
set wrapscan "検索時に最後まで行ったら最初に戻る
set hlsearch "検索語をハイライト表示
nmap <Esc><Esc> :nohlsearch<CR><Esc> "ESC連打でハイライト解除
colorscheme molokai "カラースキームをmolokaiにする
set t_Co=256 "vimを256色対応させる

emacs

~/.emacs.d/init.elに記述します。
初期ではディレクトリ~/.emacs.dはないと思うので

bash
mkdir ~/.emacs.d

で作成しておきます。

設定例

~/.emacs.d/init.el
;;日本語入力の設定
(require 'mozc)
(set-language-environment "Japanese")
(setq default-input-method "japanese-mozc")
;;初期画面でwelcome画面の表示を消す
(setq initial-scratch-message t)
(setq initial-scrarch-message nil)
;;画面の下のバーで何行何列にいるか表示
(line-number-mode t)
(column-number-mode t)
;;yesとnoをyとnで打てるようにする
(defalias 'yes-or-no-p 'y-or-n-p)
;;行番号表示
(global-linum-mode)
(setq linum-format "%4d ")
;;テキストエンコーディングをUTF-8にする
(set-default-coding-systems 'utf-8)
(set-keyboard-coding-system 'utf-8)
(set-terminal-coding-system 'utf-8)
(set-buffer-file-coding-system 'utf-8)
(prefer-coding-system 'utf-8)

5.フォントの設定

WindowsのフォントをWSLでも使えるようにします。
まずsudoで/etc/fonts/local.confを開きます。
viのところはemacsでもいいです(codeは不可)

bash
sudo vi /etc/fonts/local.conf

続いて、以下の内容を貼り付けます。

/etc/fonts/local.conf
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
    <dir>/mnt/c/Windows/Fonts</dir>
</fontconfig>

この後、

bash
fc-cache -fv

を実行するとWindowsのフォントがWSLでも使えるようになります。

開発ツールのインストール

1.Python

Ubuntu20.04のデフォルトでは3.8.6と若干古いですし、バージョンの複数管理できたほうが便利です。

1.pyenvのダウンロード

bash
git clone https://github.com/pyenv/pyenv.git ~/.pyenv
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(pyenv init -)"' >> ~/.bashrc
source ~/.bashrc

2.pyenvでのpythonのダウンロード

bash
pyenv install --list

でインストールできる一覧が見れます。

投稿時点での最新版は3.9.0なので、それをインストールしていきます。別バージョンをインストールする場合は適宜読み替えてください。

bash
pyenv install 3.9.0
pyenv global 3.9.0

3.pipパッケージインストール

bash
pip3 install pandas numpy scipy xlrd matplotlib japanize-matplotlib Pillow opencv-python folium plotly requests beautifulsoup4 lxml Flask Flask-Bootstrap4 Django PyMySQL

2.Ruby on Rails

1.rbenvのインストール

bash
git clone https://github.com/sstephenson/rbenv.git ~/.rbenv
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
~/.rbenv/bin/rbenv init
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
source ~/.bashrc

2.ruby-buildのインストール

bash
git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build

3.Rubyのインストール

bash
rbenv install -list

としてやると、

bash
2.5.8
2.6.6
2.7.2
jruby-9.2.13.0
maglev-1.0.0
mruby-2.1.2
rbx-5.0
truffleruby-20.2.0
truffleruby+graalvm-20.2.0

のように出てきます。今回は2.7.2をインストールします。
別バージョンをインストールする場合は適宜読み替えてください。

bash
rbenv install 2.7.2
rbenv rehash
rbenv global 2.7.2

4.Railsのインストール

bash
gem install rails

5.SQL/bundler/yarnのインストール

bash
sudo apt install libsqlite3-dev
gem install sqlite3
gem install bundler
curl -o- -L https://yarnpkg.com/install.sh | bash

6.Railsの実行

bash
rails new app
cd app
rails server

ブラウザで127.0.0.1:3000にアクセスして、
image.png
このようなものが出ればOKです。

エイリアスの設定

エイリアスとはコマンドの別名のことです。
~/.bashrc追記する形で記述していきます。

以下、私の設定ですが、下2つ以外は基本的なものばかりなので追加しておいて損はないと思います。

設定例

~/.bashrc
#(略)
#追記してください
alias ..='cd ..'
alias ..2='cd ../..'
alias ..3='cd ../../..'
alias agi='sudo apt install'
alias agr='sudo apt remove'
alias agu='sudo apt update && sudo apt upgrade'
alias agi='sudo apt install'
alias ags='apt search'
alias cp='cp -i'
alias mv='mv -i'
alias rm='rm -ri'
alias g='git'
alias ga='git add'
alias gd='git diff'
alias gs='git status'
alias gp='git push'
alias gb='git branch'
alias gst='git status'
alias gco='git checkout'
alias gf='git fetch'
alias gc='git commit'
#この2つは少し過激なので注意...
alias m='mkdir'
alias p='python3

参考
https://qiita.com/reireias/items/d906ab086c3bc4c22147

シンボリックリンク

シンボリックリンクとは、 Windowsで言うところのショートカットのようなものです。

WSLでWindowsのCドライブは/mnt/cになっていますので、Downloadsフォルダは/mnt/c/User/(Windowsのユーザー名)/Downloadsとなります。

ここにシンボリックリンクを貼ってみましょう。

bash
ln -s /mnt/c/User/(Windowsのユーザー名)/Downloads

image.png
このようにシンボリックリンクが貼れています。このようにシンボリックリンクを使うとWSLとホストのWindowsの連携がとりやすくなります。

とりあえず私はこれくらい貼ってます。
image.png

Microsoft StoreからWindows Terminalのインストール・設定(任意)

以下から入手、インストールしてください。
https://www.microsoft.com/ja-jp/p/windows-terminal/9n0dx20hk701

インストール出来たら起動して、∨から設定を選ぶか、Ctrl+,で設定を開きます。

profiles内のUbuntuのprofileのguidをglobalsのdefaultProfileに指定しましょう。
listの順番を並び替えて自分の好きなようにしてください。
私はUbuntuPowershellcmdの順にしています。

続いて、Ubuntuのprofile内のstartingDirectoryを//wsl$/Ubuntu/home/(ユーザー名)に設定します。
ここでのユーザー名はUbuntuのユーザー名です。

参考までに、私の場合は以下のようになっています。

settings.json
{
    "$schema": "https://aka.ms/terminal-profiles-schema",
    "defaultProfile": "{2c4de342-38b7-51cf-b940-2309a097f518}",
    "profiles": {
        "defaults": {
        },
        "list": [
            {
                "guid": "{2c4de342-38b7-51cf-b940-2309a097f518}",
                "hidden": false,
                "name": "Ubuntu",
                "startingDirectory": "//wsl$/Ubuntu/home/user",
                "source": "Windows.Terminal.Wsl"
            },
            {
                "guid": "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}",
                "name": "Windows PowerShell",
                "commandline": "powershell.exe",
                "hidden": false
            },
            {
                "guid": "{0caa0dad-35be-5f56-a8ff-afceeeaa6101}",
                "name": "コマンド プロンプト",
                "commandline": "cmd.exe",
                "hidden": false
            },
            //(略)
        ]
    },
    //(以下略)
}

ターミナルの配色やキーバインディングの設定については割愛します。(好みが分かれそうなため)

参考
https://docs.microsoft.com/ja-jp/windows/terminal/get-started

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