Masato's IT Library

Microsoftの製品・サービスを中心に,色々と書いていきたいと思います

Ubuntu 16.04 (Bash on Ubuntu on Windows)でaptを高速化する

WSL(Windows Subsystem for Linux)のUbuntu 16.04では,aptで参照する既定のリポジトリhttp://archive.ubuntu.com/ubuntu/ であるため非常に遅いです.

そこで,日本国内から高速でアクセスできるミラーであるIIJjaistリポジトリを追加します.

listファイルの追加

次のファイルを作成します.
ほかにお好きなサーバがあれば同様に追加します.

/etc/apt/sources.list.d/iij.list
deb http://ftp.iij.ad.jp/pub/linux/ubuntu/archive/ xenial main restricted universe multiverse
deb http://ftp.iij.ad.jp/pub/linux/ubuntu/archive/ xenial-updates main restricted universe multiverse
deb http://ftp.iij.ad.jp/pub/linux/ubuntu/archive/ xenial-backports main restricted universe multiverse
deb http://ftp.iij.ad.jp/pub/linux/ubuntu/archive/ xenial-security main restricted universe multiverse
/etc/apt/sources.list.d/jaist.list
deb http://ftp.jaist.ac.jp/pub/Linux/ubuntu/ xenial main restricted universe multiverse
deb http://ftp.jaist.ac.jp/pub/Linux/ubuntu/ xenial-updates main restricted universe multiverse
deb http://ftp.jaist.ac.jp/pub/Linux/ubuntu/ xenial-backports main restricted universe multiverse
deb http://ftp.jaist.ac.jp/pub/Linux/ubuntu/ xenial-security main restricted universe multiverse

archive.ubuntu.comの無効化

続いて,元々設定されていた http://archive.ubuntu.com/ubuntu/ を参照しないようにします

/etc/apt/sources.list
deb http://archive.ubuntu.com/ubuntu/ xenial main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu/ xenial-updates main restricted universe multiverse
deb http://security.ubuntu.com/ubuntu/ xenial-security main restricted universe multiverse

のsecurity以外の行を次のようにコメントアウトします

#deb http://archive.ubuntu.com/ubuntu/ xenial main restricted universe multiverse
#deb http://archive.ubuntu.com/ubuntu/ xenial-updates main restricted universe multiverse
deb http://security.ubuntu.com/ubuntu/ xenial-security main restricted universe multiverse

以上です.
あとは通常通り sudo apt update を実行すると追加したリポジトリを参照するようになります.

よいWindows Subsystem for Linux(WSL)ライフを!

Bash on Ubuntu on Windows (WSL)のシェル配色テーマ変更

既定の配色だとカレントディレクトリetc. が大層見にくいので,こちらの記事に沿って変更

www.hanselman.com

f:id:mst8000:20170731150948p:plain:w600

配色テーマのダウンロード

wgetここから dircolors.ansi-universal を取得
このとき,保存ファイル名を .dircolors にして ~/に保存します

github.com

wget -O .dircolors https://raw.githubusercontent.com/seebi/dircolors-solarized/master/dircolors.ansi-universal

配色テーマの適用

.bashrc を再読み込みして適用します

source ~/.bashrc

f:id:mst8000:20170731154228p:plain:w600

プロンプト文字列のカレントディレクトリの色を変更

ついでに,カレントディレクトリの色も青だと見づらいので,シアンにでも変更しておこうと思います

.bashrc の60行目付近

if [ "$color_prompt" = yes ]; then
    PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
else

if [ "$color_prompt" = yes ]; then
    PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[00;36m\]\w\[\033[00m\]\$ '
else

に変更して,.bashrc を再読み込みします

source ~/.bashrc

ずいぶんと見やすくなりましたね

f:id:mst8000:20170731155327p:plain:w600

よいWindows Subsystem for Linux(WSL)ライフを!

BugCheck (ブルースクリーン)発生時の便利ページ

docs.microsoft.com

個人用 Git おぼえがき

コミット

すべての追加変更ファイルをステージする
git add .

コミットを作成
git commit -m "commit message"

リモートに反映
git push

ブランチ

ブランチの作成

git branch [branch name]

ブランチの移動

git checkout [branch name]

ブランチの削除

git branch -d [branch_name]

ブランチ名の変更

git branch -m [branch_name]

ブランチの一覧

ローカルブランチを一覧する
git branch

リモートとローカルブランチを一覧する
git branch -a

リモートブランチを一覧する
git branch -r

ブランチに別のブランチの変更を反映させる

masterブランチから派生したotherブランチを編集中にmasterブランチに加えられた変更をotherブランチに取り込む

mergeバージョン

git checkout master
git pull origin master
git checkout other
git merge master
git add .
git commit -m "merge message"
git push

rebaseバージョン

git checkout master
git pull origin master
git checkout other
git rebase master

コンフリクトが発生したら修正して
git add .
git rebase -continue

rebaseを中断するには
git rebase --abort

最後にリモートに反映
git push -f

参考ページ
backpaper0.github.io