Thinkpad X395にUbuntu入れた

USキーボードが選択できるそこそこのスペックでそんなに重くないノートPCを探していましたが、Thinkpad X395が割とイメージ通りだったので購入しUbuntuをインストールしました。

本当はManjaroを入れたかったんですがUSBから起動できず、とりあえずUbuntuを入れることにしました。 別のRyzenマシンに18.04をインストールしたところフリーズが頻発し、色々調べたものの解消できず19.04にしたら発生しなくなったので19.04をインストールしました。

インストール用USB作成

日本語版をダウンロード

ubuntulinux.jp

チェックサム確認

md5sum ubuntu-ja-19.04-desktop-amd64.iso

USBメモリをフォーマット

mountコマンドでUSBのデバイスを確認。今回はsdb1

umount /dev/sdb1

sudo mkdosfs -F32 -nUSB /dev/sdb1

sudo dd bs=4M if=ubuntu-ja-19.04-desktop-amd64.iso of=/dev/sdb1 status=progress oflag=sync

Ubuntuをインストール

USB起動

Windows8以降は今までどおりに終了しても完全なシャットダウンにならないようで、起動メニューが表示されませんでした。 再起動しLenovoロゴ表示中にF12を押すことでUSBからの起動ができました。 起動できたら普通にインストールを実施

インストール後の設定

CapsLock をCtrlに変更

gsettings set org.gnome.desktop.input-sources xkb-options "['ctrl:nocaps']"

※元に戻す場合

gsettings reset org.gnome.desktop.input-sources xkb-options

各種ツールのインストール

fish

github.com

sudo apt-add-repository ppa:fish-shell/release-3
sudo apt-get update
sudo apt-get install fish

fzf,z

sudo apt install curl

curl https://git.io/fisher --create-dirs -sLo ~/.config/fish/functions/fisher.fish

fisher add  jethrokuan/fzf z 

sudo apt-get install fzf

go

github.com

sudo add-apt-repository ppa:longsleep/golang-backports
sudo apt-get update
sudo apt-get install golang-go

git

sudo apt-get install git

ghq

https://github.com/x-motemen/ghq

go get github.com/motemen/ghq

set -U fish_user_paths ~/go/bin $fish_user_paths

fisher add decors/fish-ghq

Docker

docs.docker.com

sudo apt-get update

sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg-agent \
    software-properties-common

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -


sudo apt-key fingerprint 0EBFCD88


sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
   $(lsb_release -cs) \
   stable"


sudo apt-get update


sudo apt-get install docker-ce docker-ce-cli containerd.io


AWS CLI

https://docs.aws.amazon.com/cli/latest/userguide/install-cliv1.html


https://www.python.jp/install/ubuntu/pip.html


sudo apt install python3-pip

pip3 install awscli --upgrade --user

sudo apt  install awscli 

kernel panic対応

インストール後にカーネルをアップデートしたらカーネルパニックが発生しましたが、以下手順で復旧しました。

http://www.stockdog.work/entry/2017/07/09/023637

Ubuntu 19.04でのbrightnessの変更方法、brightnessが勝手に変更される件の対応

まずUbuntu 19.04でモニタ側のbrightnessを最低まで下げてもまだモニタが明るすぎて困っていた。 これについては以下コマンドで変更できた。

xrandr --output DisplayPort-0 --brightness 0.65

--output でディスプレイを指定し、--brightnessで明るさを指定する。

ディスプレイは以下コマンドの結果から取得した。

xrandr --current

現在の値の確認

xrandr --current --verbose | grep -i bright

暫く使っていると今度はランダムに明るさが最大に戻ってしまうようになった。 以下の手順で解消した。

github.com

手順抜粋

-- How-to --
The GNOME Settings Daemon's color plugin auto-start on/off switch is hidden by default. To make it visible:

1- Open Terminal and type: sudo sed -i "s/NoDisplay=true/NoDisplay=false/g" /etc/xdg/autostart/*.desktop ~/.config/autostart/*.desktop

To disable GNOME Settings Daemon's color plugin from auto-starting:

2- Open Command via ALT+F2

3- Type gnome-session-properties

4- Scroll down to GNOME Settings Daemon's color plugin and disable the checkbox and close the startup pref. window.

5- Now log-off to the login screen and log back in. Open Brightness Controller and set your colors / brightness. Open Chromium (or any other app that caused problem) and it should now keep your settings and never reset them.

If everything works perfect and you are happy, you should "re-hide" the previously unhidden settings:

6- In Terminal type : echo NoDisplay=true | find /etc/xdg/autostart ~/.config/autostart -name \*.desktop -exec sudo tee -a {} + >/dev/null

7- To REVERT back to original behavior, repeat steps 1 to 6 but re-enable the checkbox at step 4.

見たページ

askubuntu.com

github.com

fishに切り替えた2 2019/11

MacをCatalinaにアップしたら劇遅になり何もできなくなり、当然バックアップなど取ってなかったのでクリーンインストールすることになった。 前自分が書いた手順の通りだとインストールできなかったので再度書く。

以下手順

fishインストール

$ brew install fish

ghqインストール

$ brew install go
$ go get github.com/motemen/ghq

iTerm2の設定

zsh から fish にした - HsbtDiary(2017-04-21)

上記を参考に以下の通りiTerm2の設定をした。

f:id:saito400:20170429080447p:plain

fisherインストール

GitHub - jorgebucaran/fisher: A package manager for the fish shell.

$ curl https://git.io/fisher --create-dirs -sLo ~/.config/fish/functions/fisher.fish

fzf,fish-ghq,zのインストール

GitHub - jethrokuan/fzf: Ef-🐟-ient fish keybindings for fzf

GitHub - motemen/ghq: Remote repository management made easy

GitHub - jethrokuan/z: Pure-fish z directory jumping

$ brew install fzf

$ fisher add jethrokuan/fzf decors/fish-ghq z

プロンプト設定

fish_configを実行するとwebの設定画面が立ち上がる。

参考にしたサイト

zsh から fish にした - HsbtDiary(2017-04-21)

Amazon LinuxにMeCabとPython3バインディングをインストールする手順

時間がかかったので手順を残す。

公式サイト

http://taku910.github.io/mecab/

インストール手順

MeCab本体

wget -O mecab-0.996.tar.gz "https://drive.google.com/uc?export=download&id=0B4y35FiV1wh7cENtOXlicTFaRUE"
tar zxvf mecab-0.996.tar.gz
cd mecab-0.996
./configure
make
make check
sudo make install

辞書

wget -O mecab-ipadic-2.7.0-20070801.tar.gz "https://drive.google.com/uc?export=download&id=0B4y35FiV1wh7MWVlSDBCSXZMTXM"
tar zxvf mecab-ipadic-2.7.0-20070801.tar.gz
cd mecab-ipadic-2.7.0-20070801
./configure --with-charset=utf8
make
sudo make install

Pythonバインディング

pip-3.5 install mecab-python3 --user
echo "/usr/local/lib" | sudo tee -a /etc/ld.so.conf
sudo ldconfig

サンプルコード

import sys
import MeCab


mecab = MeCab.Tagger('')

text = 'すもももももももものうち'
mecab.parse('') #これがないと文字列がGCされてしまう?
node = mecab.parseToNode(text)
while node:
    word = node.surface
    pos = node.feature
    print('{0} , {1}'.format(word, pos))
    node = node.next

MeCab以外の選択肢

Janomeという形態素解析器はpip install janomeでインストールできるので手軽に利用できる。

Welcome to janome’s documentation! (Japanese) — Janome v0.3 documentation (ja)

参考にしたページ

http://qiita.com/grachro/items/4fbc9bf8174c5abb7bdd

MacBook Proのスリープ中のバッテリー消費が激しいので調べた

前はそんなこと無かったと思うけど、いつからか夜スリープして朝復帰すると30%ぐらいバッテリーが消費している状態になっていたので、少し調べてみた。 pmsetコマンドでスリープモードの変更ができるそうなので、変更してみた。

https://developer.apple.com/legacy/library/documentation/Darwin/Reference/ManPages/man1/pmset.1.html

上記のマニュアルによるとスリープモードは以下3種類存在する。

  • 0 メモリの内容をディスクに退避しない?従来からのスリープ
  • 3 メモリの内容をディスクに退避する。ラップトップのデフォルト
  • 25 メモリの内容をディスクに書き出し、メモリへの給電を切る?復帰が一番遅いが、スリープ中のバッテリー消費は一番少ない
$ pmset -g 

で現在の値を確認できる。3が設定されていたので、以下コマンドで0に変更した。

$ sudo pmset -a hibernatemode 0

これで3%ぐらいしか消費しなくなった。

改善したがついでに色々調べたところ、pmsetでスリープモード以外の設定値も変更できるらしい。

また以下コマンドでスリープ中に復帰したログを確認できるそう。

$ log show --style syslog | fgrep "Wake reason"

追記

改善した、と思ったのは勘違いだった?ようで、朝確認すると30%程度消費している状態に戻ってしまった。 他の設定も確認してみる

追記2

以下を実行した。

$ sudo pmset -a hibernatemode 25

追記3

まだ一晩しか様子を見てないが、朝起きてバッテリーを確認すると100%(全く消費してない)だった。 電源ボタンを押さないと復帰しなくなったけど、バッテリーが無くなってシャットダウンすることがなくなりそうなので良かった。

CSRの作り方

毎回ググってるので一旦まとめておく。

基本的には以下のページに全て書いてある

https://knowledge.symantec.com/jp/support/ssl-certificates-support/index?page=content&actp=CROSSLINK&id=SO23384

秘密鍵作成

openssl genrsa -des3 -out private.key 2048

CSR作成

openssl req -new -key private.key -out server.csr

パスフレーズ解除

openssl rsa -in private.key -out private.key_passoff.key 

CSRの内容確認

openssl req -in server.csr -noout -text

fishに切り替えた

今までzshを使ってたけど、SierraにバージョンアップしてからMacが異常終了したりフリーズするような問題が頻発していたので、OSをTimeMachineからではなくクリーンインストールする事にした。 ついでにfishに切り替えたのでログを残しておく。

ちなみにクリーンインストール後は問題が発生しなくなった。

以下手順

fishインストール

$ brew install fish

ghqインストール

$ brew install go
$ go get github.com/motemen/ghq

iTerm2の設定

zsh から fish にした - HsbtDiary(2017-04-21)

上記を参考に以下の通りiTerm2の設定をした。

f:id:saito400:20170429080447p:plain

fishermanインストール

GitHub - fisherman/fisherman: A concurrent plugin manager for fish

$ curl -Lo ~/.config/fish/functions/fisher.fish --create-dirs git.io/fisher

fzf,fish-ghq,zのインストール

GitHub - junegunn/fzf: A command-line fuzzy finder written in Go

GitHub - motemen/ghq: Remote repository management made easy

GitHub - fisherman/z: Pure-fish z directory jumping

$ brew install fzf

$ fisher install fzf decors/fish-ghq z

プロンプト設定

.config/fish/functions/fish_prompt.fishを編集して設定できるように見えたが、webの設定ツールがあったのでそれを使った。 fish_configを実行するとwebの設定画面が立ち上がる。今回はRobbyrussellを選択した。

参考にしたサイト

zsh から fish にした - HsbtDiary(2017-04-21)