ターミナルの使い方と設定ファイル変更方法(Raspberry Pi)

Raspberry Piではデスクトップ環境が用意されていますが、一部のソフトウェアはターミナルからの利用を前提としていたり、リモートから接続する場合はターミナルを使った方が便利です。また、設定ファイルはテキストファイルとなっており、ターミナルから変更することができます。本記事ではターミナルの基本操作について解説します。

Raspberry Pi OS Version 2021-10-30対応

更新日 : 2021年11月23日

ターミナルの起動

ターミナルを起動するには、左上のRaspberry Piアイコンをクリックし、出てきたメニューから「アクセサリ」->「LXTerminal」をクリックします。

以下のようなターミナル画面が表示されれば準備完了です。キーボードでコマンドを打ち込み、Enterキーを押すことで実行されます。基本的なコマンドについては、この後に解説していきます。

ターミナルの基本コマンド

ターミナルには多くのコマンドがあるほか、インストール済みのソフトウェアも起動することができます。今回は最低限知っておきたいものに絞って解説します。

現在のディレクトリのファイル一覧を表示する(lsコマンド)

ターミナルには、「現在どのディレクトリにいるか?」という概念が存在します。起動直後はpiユーザーのホームディレクトリである「/home/pi」に設定されています。

lsコマンドで、現在のディレクトリ内のファイル一覧を表示することができます。ターミナルで半角で「ls」と打ち込み、Enterを押してください。以下のように、ファイル(およびディレクトリ)の一覧が表示されていることが分かります。

別のディレクトリへ移動(cdコマンド)

cdコマンドで別のディレクトリに移動することができます。先ほど一覧で表示された中の「Documents」ディレクトリに移動するには「cd Documents」を実行します。

以下のように、$マークの前にDocumentsが表示され、Documentsディレクトリに移動したことが分かります。この状態でlsコマンドを実行した場合、Documentsディレクトリ内のファイル一覧が表示されます。

1つ上のディレクトリに移動したい場合は、以下のように「cd ..」を実行します。ターミナルの使い方は分かったと思うので、これ以降はコマンドと結果のみを示します。

$ cd ..

移動先のディレクトリは、「/」から始まる絶対パスで指定することもできます。以下のコマンドで、現在のディレクトリに関わらず、ホームディレクトリに移動します。

$ cd /home/pi
現在のディレクトリを表示(pwdコマンド)

pwdコマンドを使うと、現在のディレクトリを確認できます。この例では「/home/pi」にいることがわかります。

$ pwd
/home/pi

設定ファイルの編集

次に、ターミナルから設定ファイルを編集する方法について説明します。

設定ファイルについて

Raspberry Pi OSでは、システムの設定に関するファイルがテキストファイルとして保存されており、それをテキストエディターで編集することで、設定を変更することができます。

デスクトップ上のソフトウェアから変更できるものもありますが、細かい設定は直接ファイルを書き換える必要があります。Indoor Corgiで開発している拡張ボードや応用例についても、設定ファイルの編集が必要になるものがあります。

しかし、システムファイルに誤った内容を書き込んでしまうとRaspberry Piが起動しなくなったりする恐れがあります。そこで、本記事では練習として、システムファイルをコピーした上で編集することにします。

/bootディレクトリに移動

今回は例として、Raspberry Piの起動に関する設定が記述されている、「/boot/config.txt」を使います。以下のコマンドで/bootディレクトリに移動します。他の設定ファイルを編集するのが目的の場合は、そのファイルのあるディレクトリに移動して下さい。

$ cd /boot

lsコマンドで一覧の中にconfig.txtがあることが分かります。

$ ls
COPYING.linux             bcm2710-rpi-3-b.dtb  fixup4db.dat  start.elf
LICENCE.broadcom          bcm2710-rpi-cm3.dtb  fixup4x.dat   start4.elf
bcm2708-rpi-b-plus.dtb    bcm2711-rpi-4-b.dtb  fixup_cd.dat  start4cd.elf
bcm2708-rpi-b-rev1.dtb    bcm2711-rpi-400.dtb  fixup_db.dat  start4db.elf
bcm2708-rpi-b.dtb         bcm2711-rpi-cm4.dtb  fixup_x.dat   start4x.elf
bcm2708-rpi-cm.dtb        bootcode.bin         issue.txt     start_cd.elf
bcm2708-rpi-zero-w.dtb    cmdline.txt          kernel.img    start_db.elf
bcm2708-rpi-zero.dtb      config.txt           kernel7.img   start_x.elf
bcm2709-rpi-2-b.dtb       fixup.dat            kernel7l.img
bcm2710-rpi-2-b.dtb       fixup4.dat           kernel8.img
bcm2710-rpi-3-b-plus.dtb  fixup4cd.dat         overlays
管理者権限で実行する(sudoコマンド)

設定ファイルの入っているbootディレクトリは、通常は読み取り専用になっており、書き換えできません。こういった場所で変更を加えるには、「sudo」コマンドに続けてコマンドを実行します。これにより、管理者(rootユーザー)権限で実行することができ、変更が可能となります。

実際の使用例は、この後に説明します。

config.txtファイルをコピー(cpコマンド)

設定ファイルの書き換えを間違えるとRaspberry Piが起動しなくなる危険があります。そこで、書き換える前にバックアップを作成します。cpコマンドの後に「コピー元ファイル名」、「コピー先ファイル名」を入力することでファイルをコピーできます。

前述のsudoコマンドと組み合わせて、以下を実行すると、config.txtがconfig-bak.txtという名前でコピーされます。

$ sudo cp config.txt config-bak.txt
テキストエディターで開く(nanoコマンド)

設定ファイルの編集にはテキストエディターを使います。今回は、デフォルトでインストールされている「nano」を使用します。

本来は「config.txt」を編集するところですが、今回は練習としてコピーした「config-bak.txt」を編集してみましょう。管理者権限が必要なので、sudoコマンドと組み合わせ、以下を実行します。別の設定ファイルを変更する場合は、そのファイル名を入力して下さい。

$ sudo nano config-bak.txt

以下のような編集画面になれば成功です。十字キーで左上のカーソルを移動させることができます。好きな位置に移動させ、キーボードで追記や削除をすることができます。

今回は練習なので好きに変更して構いません。実際の変更の際は、マニュアル等の指示に従って下さい。

編集が終わったら保存します。画面下にコマンド一覧が表示されています。保存するには「書き込み」を使います。

キーボードで「Ctrl+o」と入力すると、以下のようにファイル名の確認が表示されるので、そのままEnterを押すことで保存(書き込み)が行われます。

「Ctrl+x」でnanoを終了して、もとのターミナルの画面に戻ります。以上で編集の手順は終了です。

ファイルを削除(rmコマンド)

最後に、不要になったファイルを削除するrmコマンドを紹介します。今回作成したコピーである「config-bak.txt」を削除するには、以下を実行します。

誤って必要な設定ファイルを削除すると、Raspberry Piが正常に動作しなくなる場合があります。削除するファイル名の指定には十分注意して実行して下さい。

$ sudo rm config-bak.txt

まとめ

ターミナルの基本操作と、設定ファイルの変更方法は以上です。ターミナルを使えると、別のパソコンからsshでリモート接続した際に便利ですし、トラブルでデスクトップ環境が動かない場合でも対処できます。

Raspberry Piはソフトや拡張基板を追加することで様々な応用が可能です。Indoor Corgi製の拡張基板を使うことで、センサーのデータを読み出したり、赤外線通信を行う方法なども解説しているので、ぜひ参考にして下さい。

次のステップとしてSSHでRaspberry Piをリモート操作する手順や、VNCを利用してPCからRaspberry Piにリモート接続する手順を用意しています。

TSL2572センサーとRaspberry Piで明るさ(照度)を測定する

Indoor Corgiのセンサー制御ソフトウェア「cgsensor」を利用して、TSL2572センサーで明るさを測定する方法を解説します。コマンドラインツールを使って1行もコードを書かずに測定ができるほか、Pythonパッケージを使えばご自身のプログラムから簡単にセンサーを制御できます。

BME280センサーとRaspberry Piで気温、湿度、気圧を測定する

Indoor Corgiのセンサー制御ソフトウェア「cgsensor」を利用して、BME280センサーで気温、湿度、気圧を測定する方法を解説します。コマンドラインツールを使って1行もコードを書かずに測定や記録ができるほか、Pythonパッケージを使えばご自身のプログラムから簡単にセンサーを制御できます。

CO2濃度に応じてLEDの色を変化させ、リレーで外部機器をON/OFFする

Raspberry PiとRPZ-CO2-Sensorを使ってCO2(二酸化炭素)濃度を測定し、LEDの色を変化させる応用例です。LEDを見ることで、換気の必要性がひと目でわかります。濃度が一定以上になったらリレーで換気ファンなどの外部機器をONすることも可能です。

定期撮影Raspberry Piカメラをモバイルバッテリーで長期運用 (RPZ-PowerMGR)

Raspberry Pi(ラズパイ)と純正カメラを使用して、定期的に撮影するタイムラプス機能を実装する方法を解説します。RPZ-PowerMGR拡張基板を使うことで、指定時刻に起動し、撮影後は自動的にシャットダウン&電源OFFします。待機時の消費電力をカットすることで、モバイルバッテリーで長期運用が可能になります。