よく使うコマンドというのは、本当に何度も使うものです。ここではコマンドリファレンスではなく、これからRaspberry Piを始める人向けに、よく使うコマンドをいくつかまとめてみました。
Raspberry Pi OS(旧Raspbian)はLinuxのディストリビューションの一つであるDebianを改良したOSです。従ってコマンドはDebian由来となります。つまりLinuxのコマンドです。
コマンドと言っても全て覚えるのは大変です。特に非エンジニアなら尚更です。もっと言うとオッサンレベルでは覚えるよりも速く忘れます。
それでも、いくつかの必要なコマンドだけ覚えていれば、大きく困ることもないでしょう。
コマンドは挙げればキリがありません。ここでは、私が覚えてきたコマンドで、Raspberry Pi でよく使うコマンドに絞ってご紹介していきます。
基本的なコマンド
優先順位は気にせず、コマンド単位や使いたいコマンド、便利なコマンドを覚えて使えば、自然と身についていきます。
1つずつ実践していきましょう。
apt —— アプリケーションをインストールするのに必要
公式Raspberry Pi OSやリポジトリ(パッケージアップデート先リスト)の更新に使用する機会が多いでしょう。おまじないとも言われていますね。
更新するソース先を更新します。これだけではアップデートできません。参照先を更新することになります。
sudo apt update
そして実際のアプリケーション(パッケージ)のインストールはinstallとアプリ名称です。
sudo apt install アプリケーション名
既にインストールされているアプリケーション(パッケージ)のアップグレード
sudo apt upgrade
2020年〜2021年にかけて、Raspberry Pi公式からアップグレードコマンドはfull-upgrade
がアナウンスされています。
間違いではありませんが、Raspberry Pi ではこちらで済ませましょう。
sudo apt full-upgrade
sudo apt upgrade
は推奨されなくなりました。
これは、Raspberry Pi に搭載されているFlashROMと呼ばれるブートROMも一緒にアップグレードさせるために推奨が変更されました。
apt upgrade
も間違いではないのですが、より確実に1回で済みます。
更に、これまではapt-get
が一般的でした。今の主流はapt
のみになっています。apt
で実行しましょう。短くなって覚えやすい。
ちなみにsudo
は、管理者権限で実行する時に用います。
パッケージとキャッシュの削除
もう一つは必要なくなったパッケージを削除してくれるコマンドです。
sudo apt autoremove
ターミナルに「自動削除を実行してね」というメッセージも出ます。アップグレードしたらたまに実行してみてください。
cleanも一緒に実行しておくと良いでしょう。キャッシュされているインストールに必要ファイルを削除してくれます。
sudo apt clean
この5行が基本になります。
sudo apt update
sudo apt full-upgrade
sudo apt autoremove
sudo apt clean
sudo apt install アプリケーション名
cdとls —— ディレクトリ移動と中身の表示
ディレクリの移動で使います。
よく使うであろうWi-Fiの設定ファイル「wpa_supplicant.conf」の場所へ移動する例だとこうなります。
cd /etc/wpa_supplicant
そのディレクトリ(フォルダ)にあるファイルを表示する場合
ls
権限など詳細を表示する場合
ls -l
オプションで-al
も使います。
cdコマンドの解説はこちら

上の階層へ戻る指定は、../
で指定できます。
cd ../etc/wpa_supplicant
今いる場所を指定するのは、./
です。その上の階層と思えばドットが2つなのも分かりやすいでしょう。
2つ上の階層の場合は../
を並べます。これは相対的なパスで、もちろん頭から記載した絶対パスでも構いません。
cd ../../
覚えておきたいhomeは~/
ユーザーのホームフォルダはhomeフォルダ内にあります。代替として(~)チルダが使えます。
cd ~/
チルダなら自分がどこのフォルダにいても、起点の表記をhome(フルパス)として使えて便利です。
cd /home/pi/example/
cd ~/example/
cd ~/
ls
ls -l
慣れるまで、cdコマンドで移動してからlsコマンドをセットで実行すると、自分の今居る場所も確認できて便利です。
ファイルやディレクトリ(フォルダ)の移動、コピー、削除
初心者が困ることの1つがターミナルでファイルを操作したい場合です。
cpコマンド
cpはコピーです。copyと連想できますね。
readme.txtをbk_readme.txtと名前を変更してコピーする場合
cp readme.txt bk_readme.txt
ファイル単体ではなく、ディレクトリのコピーは中身も全てコピーしたいので、オプションを付けます。
testディレクトリの中身ごとbk_testディレクトリとしてコピーする場合
cp -r test bk_test
-r
とあるのはオプションです。
全く同じようにコピーしたい場合のオプションは-p
指定(タイムスタンプも同じになる)
cp -p
コマンドのオプションを調べたい場合はどのコマンドでもhelpを使います。
cp --help
操作する際、フルパスで指定しない限り、操作したい対象ディレクトリへcdコマンドで移動してからおこなってください。
mvコマンドは2つの役割がある
moveから連想できる移動コマンドです。但し、2つの役割があります。
- ファイル・ディレクトリの移動
- ファイル・ディレクトリの名前変更
移動は分かっても名前変更はピント来ませんね・・・。これは覚えるしかありません。
/Downloadディレクトリへファイルを移動するの場合
mv readme.txt /Download
ディレクトリ(フォルダ)の中身も移動する場合(フォルダごとすべて)
mv test test2
但し、この後にご紹介する名前変更になる場合がありますから、フォルダへの移動は最後に/.を付けると良いでしょう。(もしくは/
)
mv test test2/.
フォルダ(sample_1)を同じ階層にあるフォルダ(sample_2)の中にコピーする場合
mv sample_1/ sample2
mv sample_1/ sample2/
mv sample_1/ sample2/.
意味は少しずつ異なりますが、結果は3つとも同じです。
スラッシュ(/)の有る無し
一部ご説明すると、スラッシュでディレクトリ(フォルダ)として指定しています。同じ名前のデータファイルが無いならば、スラッシュが無くてもディレクトリとして認識します。
しかし、同じ名前のデータファイル、例えば同名のTXTなどがあるとディレクトリとして認識できません。名前変更にも繋がってしまいます。注意が必要です。
名前変更
次に名前変更をcpコマンドと同じ例で示します。
mv readme.txt bk_readme.txt
コピーでも移動でもなく、readme.txtの名前だけ変更したことになります。
これはディレクトリでも同じです。
mv test test2
test2というディレクトリ(フォルダ)があれば移動になります。
test2というディレクトリが無い場合は名前が変更されます。
確実に移動させたい場合はスラッシュ(/)やスラッシュ+ドット(/.)を付けてください。もしも同じ名前のtest2フォルダが無い場合、スラッシュなどが付いていればエラーになります。
rmでファイルやディレクトリの削除
削除は初心者が最初に困ることが多いと思います。私もそうでした。
デスクトップGUIならゴミ箱へですし、キーボードでもDELETEボタンでポンですからね。コマンドだと面倒に感じるでしょう。
readme.txtを削除する場合
rm readme.txt
これは簡単です。
次にディレクトリ(フォルダ)の場合はオプションが必要です。
rm -r test
オプションが付かないと「ディレクトリですから削除できない」とエラーになります。
中身が空であれば、-dを指定するだけで削除はできます。
rm -d test
ディレクトリ内にファイルが存在すると、-d
オプションでもエラーになります。
「中身が入っているディレクトリ(フォルダ)だからムリ!」というエラーになります。
-r
を付けると、中身が存在しても無くて空でも削除できます。
rm -r test
削除コマンドrmは本当に(?)その場で削除してしまいますから注意してください。
ディレクトリ(フォルダ)の新規作成
ちにみにディレクトリ(フォルダ)を新たに作成する場合はmkdirコマンドです。
mkdir newfolder
覚えておきたい役割まとめ
ファイル | ディレクトリ(フォルダ) | |
cp | コピーする | 空の場合 |
cp -r | 中身もコピーする | |
cp -p | 中身も全く同じにコピーする | |
mv | 移動する・名前変更 | 空の場合移動・名前変更 |
mv -r | 中身も移動する | |
rm | 削除する | 空の場合 |
rm -r | 中身があっても無くても削除できる | |
rm -d | 中身が空なら削除できる |
-r のオプション付きで意味が変わることと、mvコマンドは名前変更でも用いることが特殊です。
もちろんこれ以外にもオプションがあります。ただ、これだけ知っていれば普段は問題ないと思います。
cat —— テキストの中身を読むだけ
Raspberry Pi OSにはテキスト編集に「nano」が入っています。初心者はnanoで充分ですが、読むだけなら間違う恐れがないcatコマンドも活用しましょう。
catは閲覧だけなので編集できません。
ターミナル画面に中身を表示してくれます。
cat /etc/wpa_supplicant/wpa_supplicant.conf
詳しくはこちら

ssh —— 他のマシンからラズパイを遠隔操作
sshでRaspberry Pi と接続すれば、モニターやキーボード&マウスは必要ありません。有線か無線のネットワークで家庭内LANに入っていれば可能です。
ssh pi@192.168.xx.xx
詳しくはこちら

IPアドレスを探す・知る
モニターレスのRaspberry Pi のIPアドレスを忘れてしまった場合など、わざわざモニターに繋げなくても調べる方法があります。
arp -a
詳しくはこちら

単純にRaspberry Pi のIPアドレスをターミナルに表示させるにはipコマンド
ip a
これは省略形です。本来の構文は少し長い。
ip -4 addr show dev wlan0
-4
のオプションはIPv4、-6
とすればIPv6でこれも省略可能です。
addrはaと省略できるので、最初のip a
ように引数としてハイフン無しでa
とできます。
showもdevも省略でき、Wi-Fiか有線かのwlan0、eth0も1つしか無ければ同じなので省略できます。他にもオプションはありますが、ここでは省きます。
すると、ip a
というとても短いコマンドで最低限はOKとなるわけです。
場面別のよく使うコマンド
基本操作系のコマンドだけではやりたいことができません。ラズパイ(Raspberry Pi)を使う場面毎によく使うコマンドをご紹介します。
外付けハードディスクを接続する場合——mount、umount
Linuxでは外部メディアはマウントしないと使えません。マウントさせるディレクトリ(フォルダ)を作成し、それにマウントさせます。(例:3tbhdd)
sudo mkdir /media/3tbhdd
mount デバイス場所 マウントさせる場所
sudo mount /dev/sda1 /media/3tbhdd
どこに外付けハードディスクが繋がっているのか調べるコマンド
df

今回の環境では/dev/sda1に繋がっているとなっていました。
もしくはlsで検索してみます。
ls /dev/sd*
マウントしたいデバイスをラズパイに繋げる前と後で結果が変わります。繋げた後に増えている場所sd*がそのデバイスと分かります。
/dev/sda /dev/sda1 /dev/sda2 /dev/sda3
同じsdaやsdbでも、番号が付いたsda1やsdb1などが、繋げた後のコマンド実行で増えているでしょう。
外付けハードディスクのUUIDを調べる
一意(ユニークなID)でマウントする場合も多いでしょう。UUIDと言います。これをデバイス毎に表示させるのにblkidを使います。
sudo blkid -o list
マウントに関する記事


sshでログインできない場合
何回か同じPCやMacでSSH接続していると、ローカルにSSHで接続するため認証が違うと怒られログインできません。

これはよく遭遇したので最初に覚えました!
@@@@@@@@@@@@ @ WARNING: POSSIBLE DNS SPOOFING DETECTED! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
この場合、macOSなら認証したファイルは、/Users/’ユーザー名’/.ssh/known_hosts
にあり、それを編集すれば良いのですが、探すのも面倒なうえ、間違えそうなのでコマンドから削除して対処しています。(正確にはoldと名前変更してバックアップされている)
ssh-keygen -R IPアドレスまたはホスト名
ssh-keygen -R 192.168.xx.xx (またはraspberrypi.localなどのホスト名)
認証のファイル情報が削除されればいつものようにSSHで接続できます。
もう一度sshコマンドで接続すればOKです。
手元にコマンドリファレンスがあると便利です。
Raspberry Pi 専用ではありませんが、私が手元に置いてあるリファレンスブックはこれです。とても参考になりました。
とても古く、現在では異なっているコマンドやオプションばかりです。これより新しいリファレンス本が発売されていません。基本は理解できました。
もしくは、この記事やWebにまとめられている情報をブックマークしておくと便利です。
以上、Raspberry Piでよく使うであろうコマンドのご紹介でした。
Linuxのコマンドは奥が深い(?!)ので、すべて正しく細かく完璧に記載していません。予めご了承ください。
あくまでもRaspberry Piでよく使うであろうコマンド達でした。
この記事のコメント(承認後に公開)