twitter icon   twitter icon   rss icon

Linux.com Japan

Home Linux Jp チュートリアル

チュートリアル



Zorin OS:Windows XP/7 ユーザーのための Linux ディストリビューション

原文は、2016 年 2 月 24 日に掲載されました。

Windows XP/7 は、MicroSoft にとってはすでに過去の製品です。しかし、たくさんのユーザーがまだ使用しています。これらのデスクトップ OS が EOL  (Eod Of Life )  を迎えたにもかかわらず、ビジネスと家庭の両方のユーザーが、これらを使用しています。MicroSoftは、もうこれらの製品をサポートしません。つまり、セキュリティ アップデートが出ないのです。エンドユーザーにとって、自分たちのコンピューターや、その中のデータが危険にさらされることを意味します。

 Installing Virtual DJ with the help of Wine.

Zorin OSは、それほど新しいものではありません。実際、最新のリリースは 11 版です。最新のリリースはその前のリリースとそっくりです。また、さらにその前のリリースにも似ています  (遡っても似ているのです ) 。しかし、Zorin は Windows XP/7 ユーザーが快適に使えるようなプラットフォームを提供しています。Zorin OS 11  (最新リリース )  と Zorin OS 9  (安定版 )  が提供されています。どちらかを選択して、Zorin OS ダウンロード ページから 9 か 11 をダウンロードしてください。大きく分けて 4 つのフレーバーがあります。

  • Core (Free): 通常のデスクトップに必要な全ての物が含まれるフレーバー
  • Lite (Free): 古いハードウェアで実行するための軽量フレーバー
  • Business (8.99ユーロ): Core に、ビジネスで必要とされる会計、帳簿、資産管理等のツールを含んだフレーバー
  • Ultimate (9.99ユーロ): Core に、ビジネス、マルチメディア、ゲーム関係を含んだフレーバー

Lite 以外のフレーバーは、32 ビット、64 ビット両エディションが提供されています。

 

Zorin OS と Windows XP/7 は、どのくらい似ているか?

これは、難しい質問です。Zorin OS デスクトップの詳細を知るまでは、これは Windows プラットフォームではないと言えると思いました。大半の人にとっては悪いことではありませんが、日常の仕事を完全に Windows に依存していた人にとっては、ハードルになるに違いありません。

しかし、Zorin は、Wine を含んでいます。Wine を使うと、多数の Microsoft 用ソフトウェアをインストールすることができます。つまり、.exe ファイルをダウンロードし、ファイル マネージャーで右ボタンをクリックし、Wine でインストール (図 1) できるのです。インストールを完了すると、期待どおりに実行することができます。

もちろん、Linux 上で Windows ソフトウェアを実行しなければならないということではありません。Zorin OS は、仕事に必要なすべてを含んでいます。Firefox (Web閲覧)、LibreOffice (オフィス スイート)、Geary (メール) 、Gimp (グラフィックス処理)、Rhythmbox (音楽) などです。それ以外にも、Ubuntu Software Center から必要なソフトウェアをインストールできます (Zorin は、USC を GNOME ソフトウェアにマイグレートしています)。

Windows XP/7 で、ネットワークを利用してフォルダーを共有している場合は、同じことができます。フォルダーを共有するために以下のようにします。

  1. ファイル マネージャーを開きます。
  2. 共有するフォルダーを右クリックします。
  3. ローカルネットワークを選択します。
  4. 図 2 のようなウィンドウが表示されたら、共有フォルダーのボックスをチェックします。
  5. 共有名称を設定します。必要ならば、コメントをつけます。パーミッションのボックスをチェックします。
  6. 共有の生成をクリックします。

パーミッションのボックスをチェックして変更したら、パーミッション追加をクリックするよう促されます。クリックすると、共有が生成され、ネットワーク上で見えるようになります。

 

 Sharing a folder to your network is simple on Zorin.

注意: 共有時にエラーが生じるのは、たいていは Samba が実行されていない時です。Samba は、ネットワークでフォルダーを共有するためのサービスです。このエラーが出たら、次のようにして修正してください。

  1. Zorin スタートボタンをクリック
  2. 'start' をタイプ
  3. 'startup Application' をクリック
  4. 表示されたウィンドウで、'Add' をクリック
  5. 図 3 のような詳細を入力
  6. 'Save' をクリック
  7. リブート

※訳注: 訳者は、次のようにしました。

  1. Zorin スタートボタンをクリック
  2. 'System Tools' を選択
  3. 'Preference' を選択
  4. 'Startup Application' を選択

 Adding Samba to the list of startup applications.

これで、Samba が自動的に起動されます。コマンドラインを叩く必要はありません。

 

AWN

Windows XP/7 に似ている機能で重要なものに、Avant Window Navigator があります。デスクトップ上にドックとして表示され、Windows の開始ボタン、タスクバーやシステムトレイと同様の機能を提供します。

AWN は、安定しているだけでなく、柔軟性にも優れています。アプレットの追加、削除、テーマの変更、アプリケーションのラウンチャー追加などができます。AWN は、Windows XP/7 のパネルが提供しているものより高機能です。Zorin OS を XP/7 のようにしたい方が知っておくべきことを説明しましょう。

アプリケーション ラウンチャーの追加を行うには、まず、以下のようにしてデスクトップに追加します。

  1. 'Start' メニューから、アプリケーション ラウンチャーを探す。
  2. ラウンチャー上で、右クリックする。
  3. 'Ceate Destop Shortcut'を選択する。
  4. デスクトップに行く。
  5. ショートカットをクリックし、パネルにドラッグする。

必ず存在しているラウンチャーのショートカットをパネルに追加しなければなりません (そうしないと追加されません)。小さい '+' 記号が表示 (図 4) されたら、ボタンをリリースして、パネルに追加します。

注意:パネルにラウンチャーを追加したら、デスクトップのショートカットは削除しても大丈夫です。

AWN を設定するためには、パネルを右クリックし、'Preference' を選択します。’Preference'ウィンドウ (図 5) で、必要に応じて AWN を設定できます。

 The AWN Preferences window.

気に入ったテーマがなければ、(Devian Art などの) 多数のテーマから選択できます。新しくテーマをインストールするための方法です。

  1. ~/Downloads にテーマをダウンロードします。
  2. ファイル マネージャーで、Downloads ディレクトリを開きます。
  3. ダウンロードしたテーマを右クリックし、'Extract Here'  を選択します。
  4. AWN'Preference' を開きます。
  5. 'Themes' タブに行きます。
  6. インストールをクリックします。
  7. 展開したテーマ (.tgzで終わるファイルです) を探し、指定します。
  8. 'Open'  をクリックします。
  9. 'theme' ウィンドウで、'newly installed them' を選択します。
  10. 'Apply' をクリックします。

必要や好みに合わせて AWN を設定してください。

 

Zorin のツール

'Star' ボタンをクリックして、zorin とタイプします。'Zorin Look Changer' をクリックすると、Windows XP/7 と GNOME 2 のいずれかを選択できます (図 6)。

  • 訳注: 訳者が 9-32bit core で実行したところ、以下の手順でした。
  1. Start ボタンをクリックする。
  2. 'System Tools' を選択する。
  3. その中の Zorin Look Changer をクリックする。

このツールは、Windows 7/XP の微妙な部分をサポートしています。

 The Zorin Look Changer.

'Start' メニューで zorin とタイプすると、Zorin Web Browser Manger が起動します。このツールは、Firefox (標準)、Chrome、Web、そして Midori ブラウザを選択できます。

※ 訳注: 訳者の場合は、次のようにしました。

  1. 'Start' メニューから、'Internet' を選択します。
  2. 'Zorin Web Browser Manager' を選択します。
  3. パスワードを入力します。
  4. Browser の選択肢は、Firefox、Chrome、Opera、Midori でした。インストールしたいブラウザをクリックします (図 7)。
  5. プロンプトの 'Yes' をクリックし、インストールします。

 

 Easy browser installation from the Zorin Web Browser Manager.

 

どのくらい、希望どおりになるか

Zorin OS の見え方 (Look and Feel) は、Windows XP/7 のそれにものすごく似せることができます。本当に、Windows XP の使用感にそっくりです。ちょっと工夫するだけで、Zorin OS は求めるものになります。完全な Windows の置き換えになるでしょうか? それは、何をしたいかによります。

Wine は、多数の Windows アプリケーションを実行できますが、いくつかのアプリケーションはうまく動きません。どのアプリケーションが実行できるかのリストが、Wine Application Database にあります。もし必要なアプリケーションが Wine 上で実行可能であれば、Zorin OS は、Windows XP/7 とそっくりなものになります。さらに、Linux プラットフォームの安定性と信頼性が加わるのです。めでたし、めでたしです。

 

Linux WiFiを快適に利用するためのちょっとしたこと

原文は、2015 年 12 月 10 日に掲載されました。

利用している OS にかかわらず、無線関係は頭痛のタネです。信号を拾えなかったり、接続が不安定だったり、遅かったり、無線用デバイスが MIA を終わらせたりします。

Linux の利用者であれば、無線の問題が OSS のプラットフォームだけに限らないことを理解しているでしょう。プリンターを制御しているすべての OS が無線問題に悩まされています。幸いなことに、Linux では問題を解決する方法がいくつかあります。

システムの最大限のパワーと機能を利用したい人のために、無線に関するいくつかの知恵とトリックを教えましょう。これらの知恵やトリックが、皆さんの無線接続を快適にすることを期待します (図 1)。

著者は、これらの内容を Ubuntu GNOME 15.10 と elementary OS Freya で確認しました。他のディストリビューションを使う場合でも、コマンドを多少変えるだけで問題なくできると思います (たとえば sudo の代わりに su を使うなど)。

 

無効になった無線デバイスを有効にする

たとえば次のような状態になることがあります。デスクトップ、ラップトップ マシンで何かした (マシン内臓の WiFi アダプターのスイッチを切った) 場合、Network manager から WiFi が、認識されません。何度リブートしても、無線を有効にできません。これは、'rfkill' によって、ハードブロックされるからです。

ターミナルを開いて、'rfkill list' コマンドを投入してください。無線アダプターがハード/ソフト ブロックされていることがわかります。ブロックを解除するために 'rfkill unblock all' コマンドを投入します。これにより、アダプターのブロック状態が解除され、再び有効化できるようになります (通常、何もしなくても有効になります)。もし有効にならなかったら、リブートします。

 

802.11n を強制的に無効にする

802.11n は、より速い接続スピードを提供しますが、古いルーターの多くはこれをサポートしていません。そのような場合にスピードを向上させる方法の 1 つが、802.11n の無効化です。特に iwlwifi ドライバー (Intel 無線チップ) を利用している場合は、ドライバーが 802.11n では性能が出ないからです。このために、以下のようにしてプロトコル無効化を行います。

1. ターミナルを開く。

2. lshw -C network コマンドを使い、無線カードのドライバーを確認する。

3. driver= セクションから、ドライバー名を確認する。

4. sudo su でスーパーユーザーになる。

5. echo "options DRIVER_NAME 11n_disable=1" >> /etc/modprobe.d/DRIVER_NAME.conf を実行する (DRIVER_NAME にはドライバーの名称を入れます)。

注意: 上記で設定した変更は、常時有効となります。元に戻すためには、echo "options DRIVER_NAME 11n_disable=1" >> /etc/modprobe.d/DRIVER_NAME.conf コマンドを投入します (DRIVER_NAME はドライバの名称)。

 

電源管理を無効にする

電源管理ができる無線カードがあります。この機能が、接続の品質に影響を与える場合があります (スピードにも影響を与えます)。カードが電源管理機能を持っている場合は、以下のようにして無効化できます。

iwconfig wlp4s0 power off

問題は、リブートすると元の設定に戻ってしまうことです。これを避けるために、ブート時に実行される簡単なスクリプトを用意します。

wifipower と名付けた下記のようなスクリプト (wlp4s0 は、実際のデバイス名称で置き換えてください) を作成します。

#!/bin/sh
/sbin/iwconfig wlp4s0 power off

スクリプトを作成したら、"chmod u+x wifipower" コマンドで実行可とします。パーミッションを保ったまま、ファイルを /etc/init.d に移動し、"update-rc.d wifipower defaults" コマンドを実行します。これで、ブート後、電源管理機能が無効になります。ここで大事なことは、カードが電源管理機能を持っていることを確認することです。もし、持っていなければ、"power off" コマンドがエラーを返します。

 

BSSID をセットする

Network Manager は 2 分間隔でネットワークをスキャンし直します。これは、無線接続に影響を与えます。同一の場所で無線を使うのであれば、BSSID と MAC アドレスをルーターに設定することで、Network Manager がアクセス ポイントを再スキャンしないようにします。具体的には下記のようにします。

1. Network Mangerを開きます (通常、システムトレイ中にあります)。

2. 利用している無線接続を選択します。

3. 「編集」を選びます。

4. WiFi タブで、ドロップダウン メニューから BSSID を選択します (図 2)。

5. ルーターの MAC アドレスを選択します (ない場合は手入力します)。

6. 「保存」をクリックします。

 

デュアルブート

Linux ボックスが Windows とのデュアルブートの場合、Windows 使用後、IP アドレスが取得できないことがあります。これは、当該 MAC アドレスのマシンに対して既に IP アドレスを割り当てていると、ルーターが認識しているからです。

解決方法がいくつかあります。どれを使うかはマシンによります。ほとんどの時間を家で利用するのであれば、一方の OS に対して 1 つの静的 IP アドレスを割り当てます。これにより、ルーターが他方の OS に対して動的な IP アドレス割り当てに失敗することがなくなります。

Linux 上で静的 IP アドレスを割り当てる方法は下記の通りです。

1. Network Manager を開きます。

2. 利用している無線接続を選択します。「編集」を選びます。

3. IPv4 セクション設定タブに行きます。

4. 「方式」から手動を選択します。

5. アドレスを入力します (図 3)。

6. 「保存」をクリックします。

7. Network Manager を閉じます。

どちらの OS でも静的アドレスを設定したくない場合 (または、他者のネットワークを使用していて設定できない場合)、Windows を終了する前に IP アドレスを返却します。これは、以下のようにします。

ipconfig /release

Windows が IP アドレスを返却したら、ルーターは、次にその MAC アドレスが IP アドレスを必要とすると認識できます。リブートして、Linux を起動してください。無線関係で問題は生じないでしょう。

無線関係では、他にもさまざまな状況が生じて、それぞれの解があります。ここでは、Linux 上の無線関係で一番問題となるであろうものを説明しました。

 

LinuxとOSSを使って安全な家庭内ネットワークを構築する

原文は、2015 年 12 月 17 日に掲載されました。

セキュリティの確保は最重要で、それは将来にわたって変わることはありません。人々の生活がより先進技術に頼るようになっています。セキュリティにもっと気を使う時代になっているのです。

これは、家庭内ネットワークについても同じです。

自分自身のデータを安全に守るために、Linux を使う以外にできることは何があるでしょう。家庭中のすべての PC を Linux ベースにできるでしょうか。理想的にはそうすべきでしょう。しかし現実は違います。プラットフォームを変更したくないユーザーもいます。

それを前提として、家庭内ネットワークをより安全なものにするために、いくつかの提案をしたいと思います。提案の一部は簡単に実行できますが、他のものは考慮が必要です。それでは、Linux を使って家庭内ネットワークを安全なものにする方法を見ていきましょう。

 

ルーター

ネットワークの心臓部、ルーターから始めましょう。ISP の仕事は、モデム・ルーターを設置して終わりです。しかし、ルーターに関して考えるべき要素はいくつもあります。ただのモデムでしかないわけですが、それを Linux ベースのルーターに置き換えるのです。

いくつかの方法があります。DD-WRT は、たくさんの商用ルーターに適用可能なオープン ソースのファームウェアです。簡単な方法として、DD-WRT をプリインストールしたルーターも販売されています (バッファロー製 訳注: 日本では販売されていません)。または、自分でハードウェアに DD-WRT ファームウェアを書き込むこともできます (サポートリスト 訳注: 実際には、こちらから Router Database をたぐった方がよいでしょう)。

書き込んだら、DD-WRT のチュートリアルを読んでください。そこには、Access RestrictionsFirewallEasy SSH TunnelsPort BlockingOpenVPN Remote Access by Static Keyの説明があります。

無線ルーターの設定の際、SSID と管理者用のパスワードを強力なものにしてください。

 

マシン

ここから、デスクトップ、ラップトップ マシンについて説明します。たくさん説明することはありますが、それらはプラットフォームに依存します。最初に Windows について説明します。最も攻撃されやすいプラットフォームですから、多少時間を使って理解しておく必要があります。アンチ・マルウェア、アンチ・ウイルス ツールをインストールしなければなりません。OSS のアンチ・マルウェアを見つけることは難しいです。しかし、ClamAV という、OSS のアンチ・ウィルスがあります。これは、ウィルスとマルウェアの両方を検出できます。ですから、家庭内ネットワークに存在する Windows マシンにインストールしてください。OS X マシンの場合は、アンチ・ウィルス/アンチ・マルウェア ツールとして ClamXav が良いと思います。さらに、標準のブラウザ (internet Explore) ではなく、Firefox か Chromium を使うことを強くお勧めします。

もし可能ならば (平均的なユーザーならば可能だと思いますが)、家庭内ネットワークでは Windows マシンを利用しないようにしたいものです。Linux デスクトップ、Chromebooks または、OS X を利用し、ゲーム等で必要ならば、Windows をデュアル ブートで利用するのです。

また、Windows とはフォルダーを共有しないようにします。もし共有の必要性がある場合は、Linux マシンか専用の NAS を利用します (これについては、後で触れます)。

ネットワーク内の Linux マシンについてはどうでしょうか。安全だと思ってはなりません。オンラインであれば、常に危険です。ディストリビューションのファイアウォールを利用しましょう。iptables を使うのは大変ですから、たいていのディストリビューションは、簡単に利用できる UFW を提供しています。これは、iptables のフロントエンドで、平均的なユーザーのためのツールです。

UFW は、読者が利用しているディストリビューションにも含まれていると思います (UFW 入門を読んでください)。また、各ユーザーが適切なパスワードを使用するように注意してください。これは必須です。

すべてのプラットフォームについて、定期的な更新を行ってください。サボらないでください。さもないと、デスクトップ、ラップトップ、サーバーすべてが危険にさらされます。毎日チェックして、更新があればインストールしてください。

 

フォルダーの共有

会社のネットワークでも、フォルダーを共有していると思います。会社では、多額の費用を投資して、セキュリティ アプライアンス (Cisco など) を使って、外部から守っています。ですから、普段、Windows 上の共有フォルダーに関して、危険性を気にしないで利用することができるのです。そのようなハードウェアがない場合の最善の方法は、Linux か NAS を利用することです。Linux デスクトップで共有したい時は、大半のディストリビューションが持っている共有機能を利用できます (図 1)。

Linux デスクトップでフォルダーを共有したくない場合は、NAS を使ってください。NAS を自分で構築する時は、FreeNAS を利用してください。FreeNAS は強力な NAS 機能を提供するだけでなく、マルチメディア ストリーミング機能も提供します。

クラウド的なソリューションが必要な場合は、ownCloud が良いでしょう。家庭内ネットワークでデータを共有できるだけでなく、メディアのストリーミング、予定表の共有、協業などさまざまなことが、内部 LAN に触ることなくできるのです。

 

内容のフィルタリング

特に悪意がなくても、有害なソフトウェアやコードを設置したサイトに誘導されてしまうことがあります (これは、特に Windows マシンの場合に大事です)。これを避けるために、Dans Guardian のようなフィルタリング システムを利用することをお勧めします。これについては、別途詳細のチュートリアルを書きたいと考えています。セットアップすると、URLBlacklist からブラックリストをダウンロードできます。また、自分専用のリストを作成可能です。

 

VPN

外部から家庭内ネットワークに入る必要がある時は、VPN を利用します。当然、SSH を使うのですが、内部で利用する時とは使い勝手が違います。この場合、OpenVPN を使うに越したことはないでしょう。OpenVPN の使い方については、"Install and Configure OpenVPN Server on Linux" に書かれています。最新のVPNに関する情報は、"Setting up VPN on Linux" にあります (こちらは、PPTP を利用した VPN の構築を説明しています)。

 

ネットワークのテスト

家庭内ネットワークの安全性を確認するためには、実際にテストしてみるのが一番です。そのためには、Kali Linux のような、ペネトレーション テスト ディストリビューションが使えます。このディストリビューションを使うと、情報の収集、危険性の解析、無線からの攻撃、WEB アプリケーション、侵入に関する調査、ストレス テスト、スニッフィング、スプーフィング、パスワード攻撃、アクセス攻撃、リバース解析そしてハードウェアのハッキングが行えます。

Kali Linux のような強力なツールを使うと、思っていたより、ネットワークが安全でないことがわかると思います。良い点として、どこから始めたら良いかがわかります。

家庭内ネットワークが、マリシャス ソフトウェアや、外部の悪意あるユーザーの餌食にならないようにしましょう。ちょっとした追加作業とオープン ソースの利用で、家庭内ネットワークも企業ネットワーク並みに安全なものになります。

 

Gallium OS: Chromebook に最適な Linux ディストリビューション

原文は、2015 年 12 月 3 日に掲載されました。

実を言うと、著者は Chromebook の大ファンです。小説を書く時、最初の版は Pixel (これは、スクリーン、キーボード、トラックパッドいずれも最高です) を使っています。出かける時には Acer C720 を持ち歩きます。しかし Chrome OS を使っていると、Google プラットフォームではできないことがあることを感じます。例えば、Google doc 用のエディターは使いづらいものです。Pixir でイメージを編集すると、GIMP で作業する時の半分の効率になるのです。録音する時には Audacity の柔軟性やパフォーマンスを捨てなければなりません。

これらの機能をフルに使いたい時はどうすればよいでしょうか。1 つは、Chrombook に Linux をインストールすることです。なぜそうしないのか。これにより、充分安価なハードウェア上で、完全なプラットフォームを使ってすべての仕事ができるようになります。もちろん、普通のハードウェアが用意でき、Chrome OS を使いたいとしたら、CloudReady をインストールすれば良いのです (これについては、"Neverware's CloudReady Brings a Chromium-Fueled Chromebook OS to Standard Hardware"を参照してください)。

Chromebook に Bodhi Linux をインストールする方法については、以前解説しました。Bodhi は、たいていの Chrombook にインストールできますが、いくつかの Chrombook では工夫が必要になります。そこで、GalliumOS の出番です。GalliumOS は以下のような点で Chromebook 用 Linux として理想的です。

  • Xubuntu をベースとしており、軽量で性能を重視したデスクトップ環境を提供しています。

  • 他の Chromebook 用 Linux Distribution の半分の時間でブートできます。

  • Chromebook 備え付けの touchpad 用のパフォーマンスやレスポンス性能に優れたドライバーが組み込まれています。

  • 省電力のために Kernel watchdog timer を禁止しています。

  • 性能向上のために Kernel を最適化しています。

  • さらなる性能向上のために zram をスワップに使用しています。

通常は Acer C720 に Linux をインストールし、数日使用したら Chrome OS に戻してしまいます。Gallium OS をインストールして 2、3 週間使用した時、私はそのまま使用続ける決心をしました。使いやすかったからです。

興味を持たれましたか? それでは、Gallium OS をインストールしましょう。

注意: Gllium をインストールする前に、Chromebook Recovery Tool  をインストールして、復活用に USB ドライブを作成することをお勧めします。復活用ドライブなしでは、Chrome OS へ戻すのは大変です。

 

ハードウェアについて

ブート用 USB ドライブ作成に先立って、いくつか考慮しておくことがあります。まず、ハードウェアの互換性です。Gallium OS の開発者は、現在、動作するハードウェアのリストを compatibility matrix  として公開しています。それには、チップセットの情報も含まれています (後で必要になります)。自分の所有しているハードウェアが入っているか確認してください (チップセットも確認してください)。

次の確認点は、チップセットです。Haswell チップセットであれば、問題ありません (やることは、ブートフラグのいくつかを有効にするだけです)。もし Broadwell か Bay Trail のチップセットだった場合は、ここに書かれた方法で Gallium OS 用の設定をしてください。著者の Acer c720 は Haswell を使用していたので、そのまま次のステップに行きます。

 

USB ドライブの作成

まず、ブート用の USB ドライブを作成します。Linux マシンに対応した正しいイメージ をダウンロードします。~/Downloads にダウンロードしたら、以下の手順を実行します。

 

1. ターミナルを開きます。

2. cd ~/Downloads として、Downloads ディレクトリに移動します。

3. ダウンロードしたファイルの名称を galliumos.iso とします。

4. USB ドライブを挿します。

5. lsblk コマンドで、USB デバイスの名称を確認します (/dev/sdjのような名前です)。

6. USB ドライブを (mountされていれば) unmount します。umount /dev/sdX (X はドライブの名称です) コマンドを使います。

7. sudo dd bs=1M if=gallium.iso of=/dev/sdX (X は USB ドライブの名称) コマンドを実行して、ブート可能なドライブを作成します。

8. 終了を待ちます。

注意:  sudo が使えないディストリビューションを利用している場合は、su コマンドで root になり、dd コマンドは sudo を省いて実行してください。

USB ドライブを抜いて Chromebook に差します。

Developer モードで Chrombook を起動します。Escape と Refresh ボタンを押したまま、電源ボタンを押します。デバイスがリブートすると、警告メッセージが表示されます。Ctrl+D を押して、続けます。Developer モードになったら、必要なブート フラグを設定します。次のようにします。

1. Ctrl+Alt+T を押します。

2. bash 画面で、shell と打ちます。

3. sudo crossystem dev_boot_usb=1 dev_boot_legacy=1 を実行して、フラグを設定します。

これで、USB ドライブを挿して Chromebook をリブートします。先ほどと同様の警告メッセージが表示されたら、Ctrl+L を押し、USB ドライブから起動させます。

 

Gallium OS のインストール

Gallium OS がいわゆる Live イメージで起動するため、親しみやすい画面が見えます。まず、無線 LAN を接続し、Gallium OS アイコンをダブル クリックします。これで、インストールの wizard 画面が表示されます (図 A)。

インストール wizard はいたって標準的で、Linux をインストールした経験のある人であれば、問題なくできるでしょう。インストールを完了したらリブートして、Chromebook で Linux を使いこなしてください。

 

使い方

デスクトップ環境は使いやすくできています。Xfce を使うことで、Gallium は学びやすい環境を提供しています。デスクトップのレイアウトも柔軟性に富んでいます。しかし、これがすべてでもあります。Acer C720 の Gallium OS をインストール後、最初に Audacity をインストールして、音楽を録音できるようにしました (図 B)。

Synaptic を使って、簡単にアプリケーションをインストールできます。アプリケーションを検索し、インストールするだけです。コマンド ラインがよければ、ターミナルを開いて、インストールのためのコマンドを実行します (図 C)。

ストレージの限界

Chromebook はストレージに制限があります。Gallium は、家で Linux を使用するのと同じ環境を提供してくれます。実際に持っているより大きいストレージがあるかのように見せてくれます。アプリケーションをインストールする時は、このことに気をつけてください。そうすれば問題ありません。

Chromebook を使いこなしたい人たちにとって、Gallium OS は理想的なプラットフォームと言えます。インストールも簡単で、得られるものも驚異的です。是非ともこのディストリビューションを試して、それがもたらすものを感じてください。

 

Raspberry Piを使ってハードウェアを制御する

原文は 2015 年 11 月 24 日に掲載されました。

 このシリーズの最後のチュートリアルは、Raspberry Pi 2 の 40 ピンをタッチ スクリーンに接続するものでした。今回は、コマンドラインを使って、40ピン ヘッダーからハードウェア (モーター) を直接制御することを学びましょう。Raspbery Pi を小さいロボットに搭載し、動かすことを目標にします。

 Raspberry Pi は ARM シングル ボードで、コミュニティも活発で、多数のディストリビューションが動作します。Raspberry Pi 2 は最新モデルです (今は、Raspberry Pi Zero が出ています)。クアッドコア ARM、1GB の RAM、イーサネット、USB、HDMI、マイクロ SD と 40 ピン ヘッダーを持っています。

 まず、Pi をブレッドボードに接続します。ブレッドボードに接続するため、オスオスのケーブルを使いますが、Pi では使えません。オスメスのケーブルを使えば、Raspberry Pi 2 を直接接続できます。他のやり方として、Raspberry Pi とリボン ケーブルを使って接続する "Wedge" ボードがあります。これは、直接ブレッドボードに接続できる PCB です (訳注: 秋月電子でも似たものを扱っています)。Wedge には、ピンにラベルが付けられているので、ラベルのない Pi のピン ヘッダーに接続するより簡単です。

 次に WiringPi をインストールします。WiringPi は、gpio コマンドで Raspberry Pi の 40 ピンを制御するものです。Raspbian を使っています。下記の手順で最新のソースを入手し、コンパイル、インストールします。(訳注: 最近の Raspbian ではパッケージ化されているため、下記の手順は不要です)。

pi@pi ~/src $ git clone git://git.drogon.net/wiringPi


Cloning into 'wiringPi'...


remote: Counting objects: 914, done.


remote: Compressing objects: 100% (748/748), done.


remote: Total 914 (delta 654), reused 217 (delta 142)


Receiving objects: 100% (914/914), 285.58 KiB | 123 KiB/s, done.


Resolving deltas: 100% (654/654), done.


pi@pi ~/src $ cd ./wiringPi


pi@pi ~/src/wiringPi $ ./build

WiringPi ライブラリは、Raspberry Pi の GPIO ピンを制御するために、gpio コマンドと、ユーザー プログラムからアクセスするための API とを提供しています。また、外部チップとの通信を行う機能も提供しています。例えば、GPIO ピンをマルチプレクサー チップにマップするための API (digitalWrite() 関数のように、Aruduino 開発者に親しみやすい API) を提供しています。

 WiringPi は、独自のピン番号を持っています。下記のテーブルからわかるように、ピン名称と WiringPi が使用する名称はほぼ一致しています。著者は、SparkFun の Wedge を使っていますが、それには、BCM 番号を利用した GPIO ピンがラベル付けされています。例えば、Raspberry Pi の 12 番ピンは BCM ピン 18 ですが、Wedge 上でも G18 とラベル付けされています。WiringPi では、当該ピンは 1 番です。一見複雑に思えます。しかし、Wedge を使っていれば、BCM ピン番号を読み取り、そのピンを制御するためには、WiringPi のピン番号を知るだけでよいのです。Wedge を利用すれば、電源線を誤って接地することもありません。

root@pi:~# gpio readall
+-----+-----+---------+------+---+---Pi 2---+---+------+---------+-----+-----+
| BCM | wPi |   Name  | Mode | V | Physical | V | Mode | Name    | wPi | BCM |
+-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
|     |     |    3.3v |      |   |  1 || 2  |   |      | 5v      |     |     |
|   2 |   8 |   SDA.1 |   IN | 1 |  3 || 4  |   |      | 5V      |     |     |
|   3 |   9 |   SCL.1 |   IN | 1 |  5 || 6  |   |      | 0v      |     |     |
|   4 |   7 | GPIO. 7 |   IN | 1 |  7 || 8  | 1 | ALT0 | TxD     | 15  | 14  |
|     |     |      0v |      |   |  9 || 10 | 1 | ALT0 | RxD     | 16  | 15  |
|  17 |   0 | GPIO. 0 |   IN | 0 | 11 || 12 | 1 | ALT5 | GPIO. 1 | 1   | 18  |
|  27 |   2 | GPIO. 2 |   IN | 0 | 13 || 14 |   |      | 0v      |     |     |
|  22 |   3 | GPIO. 3 |   IN | 0 | 15 || 16 | 0 | IN   | GPIO. 4 | 4   | 23  |
|     |     |    3.3v |      |   | 17 || 18 | 0 | IN   | GPIO. 5 | 5   | 24  |
|  10 |  12 |    MOSI | ALT0 | 0 | 19 || 20 |   |      | 0v      |     |     |
|   9 |  13 |    MISO | ALT0 | 0 | 21 || 22 | 0 | IN   | GPIO. 6 | 6   | 25  |
|  11 |  14 |    SCLK | ALT0 | 0 | 23 || 24 | 1 | ALT0 | CE0     | 10  | 8   |
|     |     |      0v |      |   | 25 || 26 | 1 | ALT0 | CE1     | 11  | 7   |
|   0 |  30 |   SDA.0 |   IN | 1 | 27 || 28 | 1 | IN   | SCL.0   | 31  | 1   |
|   5 |  21 | GPIO.21 |   IN | 1 | 29 || 30 |   |      | 0v      |     |     |
|   6 |  22 | GPIO.22 |   IN | 1 | 31 || 32 | 0 | IN   | GPIO.26 | 26  | 12  |
|  13 |  23 | GPIO.23 |   IN | 0 | 33 || 34 |   |      | 0v      |     |     |
|  19 |  24 | GPIO.24 |   IN | 0 | 35 || 36 | 0 | IN   | GPIO.27 | 27  | 16  |
|  26 |  25 | GPIO.25 |   IN | 0 | 37 || 38 | 0 | IN   | GPIO.28 | 28  | 20  |
|     |     |      0v |      |   | 39 || 40 | 0 | IN   | GPIO.29 | 29  | 21  |
+-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
| BCM | wPi |   Name  | Mode | V | Physical | V | Mode | Name    | wPi | BCM |
+-----+-----+---------+------+---+---Pi 2---+---+------+---------+-----+-----+

確認

 LED を GPIO に接続することは、GPIO が正しく動作しているかを確認する基本的な方法です。LED-抵抗の直列を Wedge 上の G18 (BCM18) に接続し、他方をグラウンドに接続します。以下のようにして、点滅させます。

root@pi:~# gpio mode 1 output 
root@pi:~# gpio write 1 1 
root@pi:~# gpio write 1 0

 Raspberry Pi のピン 18 (BCM18) はパルス幅変調 (Pulse Width Modulated:PWMを処理できます。

PWM は、電気のオンとオフの時間の割合を意味します。例えば、値 0 は、常に Low (グラウンド レベル) を意味し、値 1023 は、常に High を意味します。512 は、Low と High が半分ずつになっているのです。

 次のスクリプトは、徐々に LED を明るくしていきます。Trap コマンドを使って、スクリプトがコントロール C により中断または停止させられた時に、clearup 関数を実行します。

root@pi:~# cat ./gpio-pwm.sh
#!/bin/bash

pin=1;
minval=10
maxval=1023

trap "{ echo 'bye...'; gpio mode 1 output; gpio write 1 0; exit 0; }" EXIT SIGINT SIGTERM
gpio mode 1 pwm

for i in $(seq 1 10); do

  for v in $(seq $minval 10 $maxval); do
     gpio pwm $pin $v
     sleep 0.001
  done
  for v in $(seq $maxval -10 $minval); do
     gpio pwm $pin $v
     sleep 0.001
  done
  sleep 0.5
done

exit 0

モーターを回そう

 上の写真は、マイクロコントローラーやコンピューターからモーターを制御するための一般的な方法です。コンピューターから制御する時に、少し複雑なことがあります。モーターが回転し始める時は、コンピューターが使用する電力より多い電気を必要とします。GPIO が供給できる電力でモーターが動作できるとしても、モーターは、より多くの電気を消費しようとします。そのため、GPIO で直接モーターを制御することは危険です。制御コンピューターにダメージを与えるでしょう。モーター制御チップを利用して、電源供給を分離します。そして、そのチップをコンピューターに接続します。

 写真の左に見える赤色の PCB は、TB6612FNG (訳注: 日本でも、秋月電子で多数のチップを扱っています。) と呼ばれるモーター制御チップです。TB6612FNG を搭載した PCB は多数あり、ブレッドボードに刺すことができます。このチップは 2 つのモーターを制御し、コンピューターからチップを制御できます。各モーターは、Raspberry Pi の 3 つのピンを使います。1 つは、回転速度を制御する PWM 用、他の 2 つのピンは、回転方向を制御します。

 TB6612FNG の左に、モーターが B01,B02 に接続されています。どちらに接続しても構いません。回転方向が逆になるだけです。モーターの電源として、単三電池 4 本を利用しています。+ 側を VM (モーター電源)、- 側をグラウンドに接続します。両方が短絡しないように、赤を + 側、緑、黒をグラウンドに使用するのが一般的な方法です。Raspberry Pi のグラウンドと電池の - 側を共通のグラウンドとします。電池パックから VM ピンに電源を供給します。VM ピンは、モーターに電力を供給します。TB6612FNG への信号は、Raspberry Pi によって制御されます。

 STBY (スタンバイ) を、High にプルアップします。内部的にプルダウンされています。STBY が Low (グラウンド) になると、モーターが停止します。PWMB、BIN2 と BIN1 は、それぞれ、G18、G19 と G20 に接続します。G18 は、Raspberry Pi からの PWM 信号を利用します。

下記のスクリプトの最初のコマンドは、モーターの回転方向を設定し、PWM の設定をします。PWM は標準では 0 から 1023 の間で、大きいほど速く回ります。モーターが停止すると、ピン 24 と 28 の設定を入れ替え、回転を逆転させます。

root@pi:~# gpio mode 24 out
root@pi:~# gpio mode 28 out
root@pi:~# gpio write 24 1
root@pi:~# gpio write 28 0
root@pi:~# gpio mode 1 pwm

root@pi:~# gpio pwm 1 200
root@pi:~# gpio pwm 1 800
root@pi:~# gpio pwm 1 0
root@pi:~# gpio write 24 0
root@pi:~# gpio write 28 1
root@pi:~# gpio pwm 1 800
root@pi:~# gpio pwm 1 0

 wPi ピン 1 を制御する PWM チップは、wPi ピン 26 も制御します。モーターの PWM ピンを wPi ピン 26 に変更しても、wPi ピン 1 の PWM 信号を設定することでモーターを制御できます。つまり、同じ PWM 信号を共有しているのです。gpio ツールを使って制御することもできます。Wiring ピン 24 (BCM ピン 19) を開放することで、もう一方の PWM 信号を利用できるようになります。例えば、BCM_20 と BCM_21 を利用する音でモーターの回転を逆転させます。

 

最後に

 Raspberry Pi 2 は、2 つの PWM ( https://www.raspberrypi.org/forums/viewtopic.php?f=91&t=105044 ) を搭載しています。PWM を利用すると、音再生に影響が出るとの記載があります。ロボットの制御には、通常、差動輪 (differential drive) を利用します。これは、2 つの独立したモーターを使って車輪やボールを制御し、3 番目の接地点とします。2 つの PWM 信号と 4 つの GPIO ピンを利用することで、Raspberry Pi を小型のロボットに搭載し、動かすことができます。

 Wring Pi は、595 シフト レジスターと、MCP23008 や MCP23017 のような GPIO 拡張チップを制御できます。将来、これらの制御方法や TWI/SPI の使用方法について、チュートリアルを書きたいと思います。

 
1 / 16 ページ
Linux Foundationメンバーシップ

30人のカーネル開発者

人気コンテンツ

  1. Today's Linux 2018/10/12 2018年 10月 11日
  2. Today's Linux 2018/10/17 2018年 10月 16日
  3. Today's Linux 2018/10/18 2018年 10月 17日
  4. Today's Linux 2018/10/19 2018年 10月 18日
  5. Today's Linux 2018/10/22 2018年 10月 21日

Linux Foundationについて

Linux Foundation はLinux の普及,保護,標準化を進めるためにオープンソース コミュニティに資源とサービスを提供しています

 

The Linux Foundation Japan

サイトマップ

問い合わせ先

サイトに関するお問い合わせはこちらまで

Linux Foundation Japan

Linux Foundation

Linux Training

提案、要望

Linux.com JAPANでは広く皆様の提案、要望、投稿を受け付ける予定です。

乞うご期待!