Linux

この記事は Raspberry Pi 勉強会 の一部です。

  1. Linux とは
  2. Linux コマンド
  3. Shell から GPIO を制御する

教科書
LPI ジャパン「Linux標準教科書」 

Linux とは

ラズパイでは Raspbian というLinuxベースのOS (Operating System) が使われています。
Linux のディストリビューションの一つである Debian をベースにしています。
Linux の源流は、1970年代に米国ベル研究所で開発された UNIX です。

UNIXとLinuxの歴史

1969 UNIXの誕生
1991 Linuxの誕生
2012 ラズパイ (Raspbian) の登場

UNIXコンピュータの歴史

UNIXコンピュータの歴史 へ

右の写真は、DEC社のミニコン PDP−7 を前にした UNIX の開発者の Dennis Ritchie と Ken Thompson です。

Tux

Tux (タックス)は、Linuxオペレーティングシステムの公式マスコットです。
Tux は、魚をいっぱい食べて満足している ぽっちゃりしたペンギンと言われています。
Linux の作者リーナス・トーバルズによれば、Linux を使う人も、Tux のような気分になって欲しいそうです。

Linuxコマンド

Linux では shell と呼ばれるソフトウェアを介して、コマンドが実行されます。

shell

shell (シェル) は、オペレーティングシステム (OS) のユーザーのためにインタフェースを提供するソフトウェアであり、カーネルのサービスへのアクセスを提供します。
Raspbian (Debian) では dash が使われいます。

詳しくは Raspbian の シェル  へ


sudo

sudo (スードゥ) は、UNIXおよびUnix系オペレーティングシステムのプログラムの1つで、ユーザーが別のユーザーの権限レベルでプログラムを実行するためのコマンドである。
使い方: sudo + コマンド
例
  • sudo cat /etc/sudoers
  • sudo -l
sudo - man

su

su (スー) は、再ログインすることなく、シェルのユーザを切り替えるために利用される。
switch user
例
  • su - (rootユーザになる)
su - man

echo

echo は、引数に与えられた文字列を表示する
例:
  • echo "abc"
  • echo "abc" > abc.txt
echo - man

exit

exit (イグジット) は、アプリケーションなどを終了させるときに用いる。他のプロセスがないとログアウトする。
exit - man

その他

  • コマンド早見表
  • slコマンド
  • システム情報
  • シバン (shebang)

Shell から GPIO を制御する


LED接続

P11(GPIO17)とP6(GND)の間に、LEDと1kΩの抵抗を直列に入れます。

CONNECTING AN LED WITHOUT A BREADBOARD

LED点灯

下記をコマンドを実行します。
$ sudo su - 
# echo "17" > /sys/class/gpio/export 
# echo "out" > /sys/class/gpio/gpio17/direction 
(点灯)
# echo "1" > /sys/class/gpio/gpio17/value
(消灯) 
# echo "0" > /sys/class/gpio/gpio17/value
... 
# exit

コマンドプロンプト

コマンドプロンプト とは、コマンドインタプリタが画面上に表示する「コマンド入力待ち状態であることを表す記号」の事を言い、利用者にコマンド入力を促すものである。
$ は一般ユーザのとき
# はrootユーザのとき

リダイレクション

リダイレクション (redirection) は、コマンドの入力や出力を切り替えること。
通常は、標準入力(キーボード)から入力し、標準出力(ディスプレイ)に入力します。
「<」で標準入力の代わりに、ファイルを指定できます。
「>」で標準出力の代わりに、ファイルを指定できます。

デバイスファイル

/sys/class/gpio/gpio17/ はデバイスファイルと呼ばれるものです。

デバイスファイル とは、ファイルシステム上であたかも通常のファイルのような形で提示されるデバイスドライバのインタフェースである。