Open4
シェルスクリプト備忘録

apt
インストール済みの一覧を取得
apt list --instaled
にて一覧を取得できる。
一覧出力(日本語化している場合)
username@penguin:~$ apt list --installed
一覧表示...
adduser/stable,now 3.134 all [インストール済み]
adwaita-icon-theme/stable,now 43-1 all [インストール済み、自動]
alsa-topology-conf/stable,now 1.2.5.1-2 all [インストール済み、自動]

パッケージ名のみで良い場合は、awk
を使って出力を /
区切りにし、最初のフィールドのみ抽出する。
パッケージ名のみ抽出
username@penguin:~$ apt list --installed | awk -F '/' '{print $1}'
一覧表示...
adduser
adwaita-icon-theme
alsa-topology-conf

Visual Studio Code のインストール
公式サイトの deb
ファイルを使ったインストールでなく、マイクロソフトのリポジトリを登録して apt
経由でインストールする方法について。
スクリプト全体
# 0. HTTPS経由でリポジトリにアクセスするためのソフトをインストール
sudo apt install -y apt-transport-https
# 1. マイクロソフト公開鍵の取得
curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg
# 2. 鍵をインストール
sudo install -o root -g root -m 644 packages.microsoft.gpg /usr/share/keyrings/
# 3. インストールして不要となった鍵を削除
rm packages.microsoft.gpg
# 4. apt に登録
sudo sh -c 'echo "deb [arch=amd64 signed-by=/usr/share/keyrings/packages.microsoft.gpg] https://packages.microsoft.com/repos/vscode stable main" > /etc/apt/sources.list.d/vscode.list'
# 5. リポジトリ情報を更新し、VSCode をインストール
sudo apt update
sudo apt install -y code

0. HTTPS経由でリポジトリにアクセスするためのソフトをインストール
マイクロソフトのリポジトリは https://packages.microsoft.com/repos/ にあり、HTTPS通信で取得することになる。
ここでは apt
で HTTPS 経由でアクセスする際の apt-transport-https
をインストールしている。
1. マイクロソフト公開鍵の取得
ここでは curl
経由でマイクロソフトの公開鍵を取得し、GPG(GNU Privacy Guard:公開鍵を利用した暗号化ソフトウェア)で鍵データをカレントディレクトリに出力している。
マイクロソフトの公開鍵は下記のようになっているため、gpg --dearmor
で OpenPGP ASCII armor 形式のバイナリデータに変換している。
microsoft.asc
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.4.7 (GNU/Linux)
■■■ ここに鍵情報 ■■■
-----END PGP PUBLIC KEY BLOCK-----
2. 鍵をインストール
install
コマンドを使い、所有者や権限情報等を設定した上で 特定のディレクトリにコピーすることができる。
ここでは前述の鍵データを /usr/share/keyrings/
に、所有者及びグループを root
、アクセス権は 644
(-rw-r--r--
)の形でコピーしている。
3. インストールして不要となった鍵を削除
カレントディレクトリにある鍵データは不要になったので、rm
コマンドで削除している。
4. apt に登録
apt
に各種情報(公開鍵をどこに設置しているか、リポジトリの場所 など)を登録している。
5. リポジトリ情報を更新し、VSCode をインストール
先程の登録情報を反映するため、一旦 apt update
で更新をかけている。その後は code
でインストールが可能に。
参考文献
ログインするとコメントできます