ラズパイはLinux (1) ファイルを扱う

 Linuxの解説本では、文字ベースで利用する説明が多いので、Windowsと同じようにGUIを使った方法が説明されず、敷居を上げています。Linuxでも利用場所によっては、GUIのほうが楽に使えることが多いです。

GUIでファイルを扱う

 データのバックアップや音楽データを入れるために、家庭内LANにNASが設置していることがあります。LinuxとWindowsとではファイル・システムが異なりますが、ラズパイは、デフォルトでFat形式のファイルが扱え、LAN経由でWindowsのディスクを読み書きできます。Windows10で、ネットワーク・ユーザが共有設定したフォルダの読み書きを設定できます。けれど、アップデートのたびに設定方法が変更になったり、一筋縄で利用できません。

 ここでは、samba(Windowsネットワーク)のサーバがデフォルトですぐに有効になるNetgearのファイル・サーバを利用します。

 ラズパイのOSは、Raspbian Busterの2019-9-26版をupdateして利用します。

File Manager

 メニューのファイルのアイコンをクリックしてFile Managerを一つ起動します。

 もう1回クリックします。同じ、/home/piのフォルダが見えています。Linuxでは通常、新しいユーザは/homeの下に作られます。

 File ManagerのメニューGoからNetworkを選びます。

 LANにつながっているサーバやルータ、PCが見えます。NetgearのNASはnas1-ssdという名前なので、それをクリックします。

 アクセスの権利を聞いてきます。Netgearの管理ツールでは、だれでもアクセス可能にしているので、デフォルトで選択されているConnect anonymouslyのままConnectボタンをクリックします。
 もしアクセス・ユーザを設定している場合は、Connect as userをチェックし、UsernameとPasswordを入れます。家庭内LANでは通常DomainはWorkgroupです。企業では、その部署で利用できる名前に設定されているはずです。

  nas1-ssdの中で交際されているフォルダ名が見えるので、利用するフォルダをクックするのその中身が表示されます。

 以降、二つのFile Managerの間で、マウスを使ってドラッグ・アンド・ドロップをしてファイルのコピーや移動ができます。1年ぐらい前は、一つのFile Managerで操作できたのですが、操作の方法が変わったようです。

ファイルのアクセス権

 テキスト・エディタを使ってプログラムを作成し、保存したら、そのファイルには利用者piの所有権だけがついていて、実行権がありません。chmodのコマンドで実行権を755とかに変更する作業を、ここではGUIで行います。

 次のシェル・プログラムを、テキスト・エディタを使って書き込み、ファイル名cput.shで/home/piに保存します。

#!/bin/sh
while [ true ];
do
echo -n $(
vcgencmd measure_temp
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq
)
echo Hz
sleep 5
done

 このcput.shをマウスの右ボタンをクリックします。サブメニューが出るので、一番下のPropertiesを選択します。

 File Propertiesパネルの中のPermissonsのタブをクリックします。

 実行権ExcuteがNobody(だれでもない)になっています。▼をクリックして変更します。

 Only ownerつまりpiユーザが実行権をもちました。

 実行するために、cput.shのアイコンをダブルクリックします。小さなパネルが出ます。ターミナルでシェル・プログラムを動かしたいので、Excute in Terminalを選びます。これは、ターミナル内で ./cput.shと実行するのと同じです。

 CPUの温度とクロックを表示します。