- 投稿日:2020-08-05T22:44:27+09:00
Kubuntuのインストールから初期設定
この記事は,基本的なKubuntu環境セットアップの個人的なメモを兼ねたチュートリアルです。
なるべく自分で設定することが少なくなるような環境を選択しています。日本語入力とターミナルの設定を主に行います。
個人的な好みで設定しているので適宜読み替えてください。ハード環境はThinkPad X1 Carbon 6th のUSキーボード仕様です。
ディストリビューション(デスクトップ環境)
ディストリビューションはKubuntuを選択します。
デスクトップ環境はKDEで,ウィンドウマネージャはX Windowです。
Windowsライクで使いやすいと思います。インストール
isoファイルをここからダウンロードします。
何かしらのツールでUSBに焼いてください。起動順序を変えてUSBを指した状態で起動すると,Kubuntuが起動するのでインストールアイコンをクリックしてインストールに進みます。
デュアルブート時以外は,特に設定することもありません,案内に従ってインストールしてください。USBを抜いて再起動,aptのアップデートをかけます。
その後,各ソフトを選択してインストールしてください。$ sudo apt update $ sudo apt upgradeHiDPI設定
サイズに対して解像度の大きいモニタを使っている場合,表示が小さすぎて読みにくくなります。
KDE設定の「ディスプレイとモニタ→ディスプレイの設定」からGlobal scaleを調整するとすべての要素が拡大されます。
解像度が2560x1440のノートパソコンの場合,倍率150%に設定するのがいいと思います。キーコンフィグ
個人的な好みで
Ctrl
はA
の横に来てほしいので設定からleft Ctrl
と入れ替えます。
KDE設定から「入力デバイス→キーボード→詳細→Ctrl position→Swap Ctrl and Caps Lock」を有効化して,入れ替えることができます。フォント
和文フォントとして,Notoを選択します。
(Kubuntuではインストール済み)プログラミング,コンソール向けの等幅フォントはHackGenNardを使用します。
リリースページから最新バージョンダウンロードし,~/.fonts
に展開したttfファイルを配置して$ fc-cache -fv
でインストールされます。設定
KDE設定の「外観→フォント→すべてのフォントを調整」から
Noto Sans CJK JP
を選択してサイズを調整します。
これでシステムフォントがNotoになったはずです。等幅フォントも
HackGenNard
ファミリーのうちどれかに変えておきます。ターミナル環境
ターミナル環境はyakuakeにFishを起動させています。
yakuakeはドロップダウン式の端末エミュレータです。
ホットキーを押すことで画面上部からターミナルが出てきます。fishは,zshなど他の高機能シェルと異なり,無設定でプラグインを使わなくてもシンタックスハイライトなどの機能が最初から使えるユーザーフレンドリなシェルです。
.bashrc
などにFishを起動させる設定を行うこともできますが,ログインシェルは残したいというのと,シェルスクリプトの書式が異なるのでデフォルトのシェル等は意図的に無設定で残しています。fish on yakuakeの設定
sudo apt install yakuake fish
でインストールされます。まずは,起動時にyakuakeが自動起動するように設定します。
1度yakuakeを起動して,トリガーキーを設定しておきます(デフォルトだとF12)。KDE設定の「ワークスペース→起動と終了→自動起動→プログラムを追加」からyakuakeを検索して登録します。
再起動し,登録したキーを押して起動していることを確認してください。次に,起動したyakuakeの右下の「閉じる」の横のボタンをクリックして幅と高さを好きなように調整してください。
同じところから「プロファイルの管理」に入ってfishの起動設定をします。「New...」で新しいプロファイルを作り,「Edit...」で編集画面に入ります
「全般→コマンド」で
/usr/bin/fish
を設定してください。
これで最初からfishが起動されます。「外観」でテーマをお好みに変えておくとよいです。
テーマを編集することで透明にすることもできます。また,「Choose...」をクリックしてフォントを変えることができます。
ここでもHackGenを指定しますが,デフォルトでは出ないのでShow all fonts
を有効にして,HackGen35Nard Console
を選択してRegularの12ptに設定します。最後に,編集を抜けたプロファイル管理画面で「デフォルトにする」を押してyakuakeの設定は完了です。
今回,
Ctrl+Alt+T
ショートカットは残しているので,bashを使いたい場合はKonsoleを使用できます。日本語入力環境
Fcitx-Mozcを使用します。
入力切り替えはCtrl + Space
の他にLeft Alt
を設定します。Mozcでは日本語環境でのふるまいを調整します。
Fcitx設定
Fcitx設定を起動して現在の入力メソッドに英語とMozcが登録されていることを確認します。
「全般の設定→Trigger Input Method」の「全半キー」になっているところをクリックして
Left Alt
を登録します。Mozc設定
Mozc設定を起動して,「一般」から句読点を「,。」に,スペースを半角に設定します。
「入力補助」から全角半角の設定をします。
文字グループのうち,アルファベット,数字,「(){}[]」,「#\$&2@$^_|`\」の変換前文字列を半角に設定します。まとめ
この他に,メモリが足りない場合にはスワップ領域の拡張を行ってください。
おすすめの設定や環境があれば,教えてください。
- 投稿日:2020-08-05T20:58:19+09:00
Linuxコマンド#4
linuxコマンド#4です。
grepコマンド
文字を検索する
gerep [オプション] <検索パターン> <ファイル名>
<ファイル名>から<検索パターン>に一致する行を取り出す。[wataru@localhost work]$ cat work.02.txt 2020/07/17 test?cat 123445 [wataru@localhost work]$ [wataru@localhost work]$ grep 17 work.02.txt 2020/07/17[wataru@localhost work]$ grep -n test work.02.txt #-nを指定すると行数を出力できる 2:test?cat[wataru@localhost work]$ grep -i test work.02.txt #-iを指定すると大文字小文字の区別をしない test?cat TEST?CAT test testcat[wataru@localhost work]$ grep -v test work.02.txt #-vを指定すると一致しなかった行を表示する 2020/07/17 123445 TEST?CAT[wataru@localhost work]$ grep 't[ef]*' work.02.txt #特定の文字列を指定したい場合は、[]というメタ文字を使用する test?cat test testcat tfst[wataru@locsalhost work]$ grep 'test[01-10]' work.02.txt #test01~10までを検索指定している test01 test02 test03 test04sedコマンド
ストリームエディタ(非対話型エディタ)
[wataru@localhost work]$ cat work.02.txt #work.02.txtの全量 2020/07/17 test?cat 123445 TEST?CAT test testcat tfst test01 test02 test03 test04 [wataru@localhost work]$ sed 1d work.02.txt #1dで1行目を削除する意味 test?cat 123445 TEST?CAT test testcat tfst test01 test02 test03 test04[wataru@localhost work]$ sed 1,5d work.02.txt #,[カンマ]で「n行目~m行目まで」と指定可能 testcat tfst test01 test02 test03 test04[wataru@localhost work]$ sed '4,$d' work.02.txt #$を指定することで最終行まで削除することが可能 #4行目~最終行目 2020/07/17 test?cat 123445[wataru@localhost work]$ sed -n 2p work.02.txt #行を表示するpに-nオプションを追加すると、特定の行を出力する test?catawkコマンド
パターン検索
テキストの検索、抽出・加工などの編集処理をする[wataru@localhost work]$ ls -l total 8 drwxrwxr-x. 2 wataru wataru 6 Jul 5 04:38 gogodur drwxrwxr-x. 3 wataru wataru 156 Jul 17 04:25 testgo -rw-rw-r--. 1 wataru wataru 83 Jul 29 05:56 work.02.txt -rw-rw-r--. 1 wataru wataru 0 Jul 5 04:09 work.03.txt -rw-rw-r--. 1 wataru wataru 25 Jul 21 04:32 work.04.txt -rw-rw-r--. 1 wataru wataru 0 Jul 5 04:09 work.05.txt -rw-rw-r--. 1 wataru wataru 0 Jul 5 04:09 work.06.txt -rw-rw-r--. 1 wataru wataru 0 Jul 5 04:09 work.07.txt -rw-rw-r--. 1 wataru wataru 0 Jul 5 04:09 work.08.txt -rw-rw-r--. 1 wataru wataru 0 Jul 5 04:09 work.09.txt [wataru@localhost work]$ ls -l | awk '{print $1}' #awkでよく使用される処理は、特定のフィールドを抽出して表示する、列選択 #フィールド1番を抽出している total drwxrwxr-x. drwxrwxr-x. -rw-rw-r--. -rw-rw-r--. -rw-rw-r--. -rw-rw-r--. -rw-rw-r--. -rw-rw-r--. -rw-rw-r--. -rw-rw-r--. [wataru@localhost work]$ ls -l | awk '{print $1,$9}' #フィールドを複数選択することも可能 total drwxrwxr-x. gogodur drwxrwxr-x. testgo -rw-rw-r--. work.02.txt -rw-rw-r--. work.03.txt -rw-rw-r--. work.04.txt -rw-rw-r--. work.05.txt -rw-rw-r--. work.06.txt -rw-rw-r--. work.07.txt -rw-rw-r--. work.08.txt[wataru@localhost work]$ echo 100 300 | awk '{print $1}' 100 [wataru@localhost work]$ echo 100 300 | awk '{x=$1*$2; print x}' #awkは計算も可能 #計算結果をx変数に格納して、その結果を出力することも可能 30000 [wataru@localhost work]$ seq 1 10 | awk '{x=x+$1; print x, $1}' #seqコマンドで1~10までの数字を出力します #awkコマンドで入力の1~10までの数字を足してその結果を出力 1 1 3 2 6 3 10 4 15 5 21 6 28 7 36 8 45 9 55 10
- 投稿日:2020-08-05T15:54:32+09:00
WSL1からWSL2への移行
モチベーション
WSL1を用いてUbuntu18.04を利用中なので、それをWSL2を用いてで動かしたい。
手順
まず、スタートメニューの検索窓にwinverと打って、windows10のバージョンを確認。
このバージョンが2004かつOSビルドが1904であることを確認(そうでなければアップデートできない)。
そして、確認後、スタートメニューの検索窓にpowershellと入力し、powershellを管理者モードで実行し、wslのdefault設定をver 2に変更。PS C:\WINDOWS\system32> wsl --set-default-version 2 Error: 0x1bcしかし、上記のエラーが発生。StackOverFlowに類似の質問があり、その答えとしてWSL Linuxカーネルを更新せよと指示されていたので、その通りにする。
https://docs.microsoft.com/ja-jp/windows/wsl/wsl2-kernel にアクセスしLinuxカーネル更新プログラムをダウンロードし実行。
実行後、再度、管理者権限にてPowerShellを開き、以下のコマンドを実行PS C:\WINDOWS\system32> wsl --set-default-version 2 WSL 2 との主な違いについては、https://aka.ms/wsl2 を参照してくださいどうやら、default-versionは更新できたようなので、すでに動作しているUbuntu-18.04をWSL2に変更
PS C:\WINDOWS\system32> wsl --set-version Ubuntu-18.04 2 変換中です。この処理には数分かかることがあります... WSL 2 との主な違いについては、https://aka.ms/wsl2 を参照してください 変換が完了しました。最後に確認
PS C:\WINDOWS\system32> wsl --list --verbose NAME STATE VERSION * Ubuntu-18.04 Stopped 2無事完了。
- 投稿日:2020-08-05T10:06:16+09:00
bash: cannot create temp file for here-document: No space left on device が表示された時の対処法
エラー概要
cd でディレクトリを移動しよとしてtabを押していたら何度も
bash: cannot create temp file for here-document: No space left on device
が表示されました。よくよく英語を読むとディスクフルになっていることが分かり、対応しました。環境はUbuntu(18.04)です。
対応
1. 全体のディスク容量を確認
落ち着いて、
df
コマンドでディスク容量を確認します。-h
オプションを付けることで、容量が読みやすい状態で表示されます。$ df -h Filesystem Size Used Avail Use% Mounted on udev 16G 0 16G 0% /dev tmpfs 3.2G 114M 3.1G 4% /run /dev/sda2 219G 208G 0 100% / tmpfs 16G 784K 16G 1% /dev/shm (以下略
/dev/sda2 219G 208G 0 100% /
とありほぼ一杯になっており、ここの容量を下げる必要があります。2. 原因のファイルを特定する
ルートディレクトリから順番にディレクトリを辿りつつ、
du
コマンドでどのファイルが大きいかどうかを確認します。使うコマンドは以下の通り。sudo du -sh *単純にduと打ってしまうと、膨大なファイル容量が表示されてしまい、容量の表示も分かりにくいです。上記コマンドは、以下の方法で対応しています。
-h
オプションで容量を読みやすいものに変える-s
オプションでサブディレクトリを含めない結果にする- アクセスできないファイルがある場合には
sudo
を利用して、ファイル容量を確認できるようにする*
を付けることで、カレントディレクトリ直下のディレクトリとファイルの容量を表示する(付けない場合、カレントディレクトリのサイズ)また、sortを使うことで容量順に表示することも可能です。ただし、この場合、
-h
を付ける私の環境では正しくソートしてくれなかったので、以下のようなコマンドを使いました。du -s * | sort -nr
-n
で数値の並び替え、-r
で逆順にして大きい容量が先に来るようにします。容量の大きいファイルを特定し、削除可能であることを確認できれば、削除して完了です。
おまけ
head と sort を併せて利用して、容量の大きいファイルから順に数行だけ並べることもできます。
du |sort -nr | head -n 5ただ、当然ながら大きいファイルであればすぐに消していいなんてことはないので、結局は地道に削除できそうなディレクトリ・ファイルを探していくことになるかと思います。
参考
- 投稿日:2020-08-05T08:52:05+09:00
Linux で内蔵カメラが認識されない時の解決方法
次のような状態で内蔵カメラが使えませんでした。
$ sudo ls /dev/video* ls: '/dev/video*' にアクセスできません: そのようなファイルやディレクトリはありません解決策は、
F10 のキーを押すことです。$ sudo ls /dev/video* /dev/video0 /dev/video1次のコマンドでカメラの動作を確認します。
cheese