====== Ubuntu ======
コマンドまとめ
===== apt =====
| ''apt-cache policy hoge'' | 配布されているバージョンの一覧\\ 配布者のURL |
| ''apt-cache policy hoge'' | インストール可能バージョンの一覧\\ インストールされているものの確認\\ バーション指定していないときにインストールされるものの確認\\ パッケージ配布者のURL |
| ''apt-get purge hoge'' | 完全削除 ''apt-get remove --purge hoge''も同じ |
* add-apt-repositoryができないとき\\ ''sudo apt-get install software-properties-common python-software-properties''
==== apt-key ====
apt-key は廃止。
gpg コマンドなどを用いて keyrings に鍵の認証情報を保存する。
(''/usr/share/keyrings'', ''/etc/apt/keyrings'', )
=== POSIX ===
* find\\ findでやってもいいしパイプで繋いでgrepしてもいい.\\ ''find ディレクトリ -type f -name "文字列"''
=== SVG PDF 変換 ===
inkscapeのppa追加 ''sudo add-apt-repository ppa:inkscape.dev/stable''
inkscapeのppaを追加しようとしたら''retrieving gpg key timed out''が出た.
何かのバグ?鍵を後から認証させる.
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys ${KEY}
でパブリックキーの認証をし直すとapt-get update出来るようになる.
===== ストレージの管理 =====
パーティションテーブルの方式としては MBR と GPT があるが、
MBR は2TBまでなど制限があるので基本は GPT のパーティションテーブルを作成する。
''fdisk'' コマンドは MBR にのみ対応しているので、
パーティション作成等には利用しない。
基本は ''parted'' コマンドで操作することになる。
=== デバイスの存在確認 ===
lsblk -f
=== デバイス UUID の確認 ===
sudo blkid
=== デバイスのパーティションを見る ===
sudo fdisk /dev/sda -l
=== パーティションを作成する ===
sudo parted /dev/sda
mkpart
開始? 0%
終了? 100%
* エラーが出たら ''mklabel'' して ''gpt'' を指定する必要があるかも
=== ファイルシステムの作成 ===
sudo mkfs -t ext4 /dev/sda1
=== USB等を強制初期化する ===
''/dev/sdf'' を初期化する例。GPTパーティション、ext4
sudo parted -s /dev/sdf mklabel gpt
sudo mkfs -t ext4 -F /dev/sdf
sudo parted -s /dev/sdf mklabel gpt
sudo parted -s /dev/sdf mkpart my_patition_name ext4 0% 100%
sudo mkfs -t ext4 -F /dev/sdf1
=== 不良セクタの検出 ===
sudo badblocks -w -v -s -o /tmp/badblocks.txt /dev/sdf
OSの載っているディスクを生きたままチェックする場合は以下のようにする。(''-w''は書き込みテストをしてしまうので外す。何も指定していないと読み込みチェックだけする。)
sudo badblocks -v -s -o /tmp/badblocks.txt /dev/sdf
=== 不良セクタを無視させる ===
https://kaworu.jpn.org/ubuntu/Linux%E3%81%A7%E3%83%87%E3%82%A3%E3%82%B9%E3%82%AF%E3%81%AE%E3%82%A8%E3%83%A9%E3%83%BC%E3%82%84%E4%B8%8D%E8%89%AF%E3%82%BB%E3%82%AF%E3%82%BF%E3%81%AE%E3%83%81%E3%82%A7%E3%83%83%E3%82%AF%E3%81%A8%E4%BF%AE%E6%AD%A3%E3%82%92%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95
=== /etc/fstab を設定 ===
/dev/disk/by-uuid/3c96c2da-9627-4c6a-89ce-b11c752fa271 /scratch ext4 defaults 0 0
==== ディレクトリ容量の把握 ====
du -d0 -m * .[^\.]* 2>/dev/null | sort -n -r
===== USBハードウェアの管理 =====
キーボードなど認識しないときにがんばる方法。
https://server-setting.info/blog/usb-reset-for-command.html
Realforce R2 が Ubuntu マシンで動かなかったので苦しんだが、\\
結局のところ、ソフトウェア的に解決するよりはUSB2.0延長ケーブルなどで繋ぐほうが確実なので、\\
いらないことをするべきではない。\\
たぶん USB3.0 で繋がってしまったときにドライバを探しに行って失敗する。
===== 日本語入力 =====
Ubuntu で USキーボードを使い、日本語入力をするときのベストプラクティスは、\\
Mozc だけを使うようにし、Ctrl Space で toggle するように設定する方法だと思う。
=== やり方 ===
いろいろと設定をいじっていたので以下の操作だけで完璧に設定できるかどうかは不明。
- 入力ソースを一つだけにする\\ 「設定」→「キーボード」→「入力ソース」を「日本語(Mozc)」だけにする
- Mozc の設定でキー設定を変更
- 「設定」→「キーボード」→「入力ソース」→「日本語(Mozc)」→「︙」→「設定」でいけるMozcプロパティを開く
- 「キー設定」→「編集...」でMozcキー設定を開く
- コマンドが「IMEを有効化」「IMEを無効化」になっているキー設定をすべて消す。
- 以下の2つを追加する
* 「直接入力」「Ctrl Space」「IMEを有効化」
* 「入力文字なし」「Ctrl Space」「IMEを無効化」
- 入力ソース切り替えのショートカットを無効化する\\ 「設定」→「キーボード」→「キーボードショートカット」→「ショートカットの表示とカスタマイズ」→「タイピング」で以下の2つを無効化する
* 「前の入力ソースへ切り替える」
* 「次の入力ソースへ切り替える」
=== Ctrl と CapsLock 入れ替わり設定 ===
デフォルトで CapsLock と Ctrl が入れ替えられてしまっている設定みたいなのがされてしまうことがある。\\
Tweaks をインストールして治すの以外うまくいかなかった。sudo apt install gnome-tweaksして Tweaks というGUIアプリを開き\\
「キーボードとマウス」→「追加のレイアウトオプション」→「Ctrl position」から設定。
=== キーボードレイアウトの設定 ===
たぶんUbuntuバージョンによって設定方法が違う。
22.04環境では
* ''/etc/default/keyboard''
* ''/usr/share/ibus/component/mozc.xml''
* ''~/.mozc/ibus_config.textproto''
のいずれかが影響している気がする。
一応、今うまくいっている設定を書き残しておく。
engines {
name : "mozc-jp"
longname : "Mozc"
layout : "us"
}
XKBLAYOUT="us"
BACKSPACE="guess"
XKBMODEL="pc105"
XKBOPTIONS="ctrl:nocaps"
XKBVARIANT=""
===== 未整理メモ =====
==== パーティションのサイズ変更 ====
=== swapパーティションを消して/bootを広くした話 ===
**やったこと**\\
* swap パーティションを消して swapfile にする。\\ (https://kledgeb.blogspot.com/2016/12/ubuntu-1610-79.html)\\
* swap パーティションで空いたぶん /boot を大きくする。\\ (https://wiki.archlinux.jp/index.php/Parted)
コードなど
# スワップ設定の確認
swapon -s
# スワップファイルの作成
sudo fallocate -l 16G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
# スワップ領域として指定してみる
sudo swapon /swapfile
# /etc/fstab にある swap パーティションの設定を消す。
sudo vim /etc/fstab
### この行を追加 /swapfile none swap sw 0 0
# インタラクティブモードで parted を開く必要がある。
sudo parted /dev/sda
# パーティションテーブルの確認
(parted) print
# スワップ領域のパーティションを消す
(parted) rm 3
# 消せたか確認。/boot の終了ポイントと、
# 次のパーティションの開始ポイントが問題ないか確認しておく
(parted) print
# /boot の終了ポイントをずらしてパーティションのサイズを変更する。
(parted) resizepart 2 2048MB
# パーティションのサイズは変わるが、Ubuntu 側では再起動等でもサイズが反映されない。
# 以下コマンドで反映させる。
resize2fs /dev/sda2