「apt-key」に登録されているキーの確認と、「apt-key add」で追加したキーを削除する。

ここ最近しばらくの間はSteamでゲームをやっていなかったのですが、ふとまたゲームをplayしたくなってplayonlinux経由でゲーム環境を整えることにしました。
環境構築自体は昔のメモの情報を使って割合簡単にできたのですが、その際うっかりしてUbuntuの別バージョン用のaptキーを追加してしまい、登録されているキーの確認と誤って登録したキーの削除に困ったので、確認と削除の方法をめもしておきたいと思います。

現在登録されているキーの確認方法

現在登録されているキーの確認は、端末上で以下コマンドを実行すれば、簡単に確認することが可能です。

sudo apt-key list

実行結果はこんな感じです。
今回うっかり「apt-key add」してしまったのはPlayOnLinuxのものだったのですが、一番最後にきっちり表示されていました。
やっぱり気のせいじゃありませんでしたね。

/etc/apt/trusted.gpg
——————–
pub 1024D/437D05B5 2004-09-12
uid Ubuntu Archive Automatic Signing Key
sub 2048g/79164387 2004-09-12

pub 4096R/C0B21F32 2012-05-11
uid Ubuntu Archive Automatic Signing Key (2012)

pub 4096R/EFE21092 2012-05-11
uid Ubuntu CD Image Automatic Signing Key (2012)

pub 1024D/FBB75451 2004-12-30
uid Ubuntu CD Image Automatic Signing Key

pub 1024D/C4676186 2010-12-23
uid PlayOnLinux Packaging (PlayOnLinux packaging keys)

現在登録されているキーの削除方法

続いてキーの削除方法は以下の通りです。

sudo apt-key del 「削除したいキーのID」

この「削除したいキーのID」ですが、どこで確認するかというと先ほどの「sudo apt-key list」で確認できます。
具体的に言うと、今回誤って登録したキーはplayonlinuxのものなので、これを削除したい場合は以下のようにします。
上にコピペした「sudo apt-key list」の結果の赤字部分がそのままdelの後に入る感じです。コマンドを実行して、以下のように2行目に「OK」と表示されれば削除成功です。

sudo apt-key del C4676186
OK

ちなみに、キーを追加した際最後に「apt-get update」を実行したので、キーを削除した際にも必要かと思って「apt-get update」を再実行してみたのですが、キーが削除されているので「鍵が利用できない」とのエラーが表示されました。
情報が更新されなくなったのは確認できましたが、エラーメッセージが表示されるのはなんだか気持ちが悪いものですね。

スーパーで買ったアボカドから取り出した種を栽培してみる

6月下旬にアボガドの栽培を開始したわけですが、写真だけでは無くて気温や湿度に加えて気圧情報なんかも取得しているので、そのあたりの情報を下のグラフに写真を添えて公開しておこうと思います。私がアボガトの栽培について調べている時には、日々の様子を公開しているサイトを見かけることが無かったので一つ位そんなサイトがあってもいいですよね。私農業や園芸はド素人ですけど。

グラフですが、温度(赤色)のグラフにマウスをのせるとその時撮影した写真を表示するようにしてあります。ちなみに当初の構想ではRaspberry Piで照度センサの情報も取得して夜間はLEDを着けるなり写真の撮影を止める予定だったのですが、照度センサを使いこなせなかったので毎時無条件に写真を撮影しています。夜間の写真が真っ暗なのはそういうことです。


2016年7月3日(日)のアボガド

アボガドを水道水に浸し始めて一週間ほどで種が割れてきました。
grow-avocado_01

2016年7月22日(金)のアボガド

種が割れてから更に2週間ほどでちょこんと根が生えてきました。
もっと時間がかかると思っていたので嬉しい誤算です。
grow-avocado_02

2016年7月30日(土)のアボガド

ぐんぐんと根が伸びています。
一旦根が出てしまえば早いものですね。
grow-avocado_03

2016年7月31日(日)のアボガド

アボガドを水道水に浸し始めて約一ヶ月が経ちました。ここまでやったことと言えば、数日に一回水を交換していただけなんですが、多分順調に育っているんじゃないかと思います。
早く葉っぱがでてこないかなぁ。
grow-avocado_04

2016年8月7日(日)のアボガド

ふとアボガドに目をやると、上のほうに伸びている影を発見。
どうやら芽がでてきたようです。
grow-avocado_05

2016年8月20日(土)のアボガド

最初に出てきた根の成長が一旦ストップして芽が出てきたと思ったら、いつの間にか2本目の根が伸びてきました。
お盆で数日家を空けた時があって心配だったのですが、順調に成長を続けています。
grow-avocado_06

2016年8月27日(土)のアボガド

芽が枝分かれしてくると共に、この画像ではよく見えませんが3本目の根が伸びてきています。
既に生えていた根はそれ以上伸びていないので、ある伸びてくると新しい根がまた生えてくるんでしょうか。
grow-avocado_07

Raspberry Pi3にカメラモジュール(v2)を接続してみる

Raspberry Pi3を購入してしばらく経ちましたが、高性能なカメラモジュールが発売されたよ!との情報を目にしたので、せっかくなので購入してみることにしました。
Ubuntu Mateではもしかしたら使えないのか?なんて思ったりもしたのですが、こちらにある通りきちんと使えることがわかりましたので、自分用の設定も含めて初期設定とpythonコードをメモしておこうと思います。
ちなみに、ちょうど観葉植物が欲しくてアボカドを種から育てる方法を実践してみようかなぁ・・・なんて考えていたところでしたので、アボカド観察用定点カメラとして利用する予定でいます。

Raspberry Piとカメラモジュールの接続

まずはRaspberry Piとカメラモジュールの接続ですが、カメラから伸びている白いケーブルをRaspberry Pi本体の下の画像の赤枠で囲った部分に差し込みます。
と言ってもそのまま差し込んではダメで、正確に言うと差込口の白い枠を上に引き上げた後ケーブルを差し込んで白い枠を元に戻す感じです。挟み込むと言ったほうがいいのかな。
そうそう、一応電源を切った状態で作業したほうが良いと思います。
UbuntuMate16-04_camera_module_01

カメラモジュールを利用するための初期設定

カメラの接続が完了したら電源を入れ、端末で以下コマンドを実行して[/boot/config.txt]を編集します。

sudo vi /boot/config.txt

viが苦手な方はplumaを使うのがお勧めです。メモ帳的なテキストエディタなのでとても使いやすいですよ。

sudo pluma /boot/config.txt

[/boot/config.txt]を開いたら、469行目辺りに移動し、もし「start_x=0」と記載された行を見つけたら、「start_x=1」に変更します。さらに516行目あたりを確認し、「#gpu_mem=128」という行があったら「#」を削除して有効にします。(「start_x=1」の行頭にも「#」が存在した場合はこれも削除です。)

[/boot/config.txt]の編集が終わったら上書き保存し、続いて以下コマンドを実行します。

sudo apt-get install libraspberrypi-dev
sudo pip install picamera

編集が終わったら以下コマンドで再起動します。

sudo shutdown -r now

pythonコードの記述

続いて写真撮影用のphtyonコードの記述です。
ほぼコピペでOKですが、7行目の「/path/to/」だけは画像を保存したいディレクトリに変更してください。

#!/usr/bin/python
import picamera
from datetime import datetime
cam = picamera.PiCamera()
cam.vflip = True
fileName = datetime.now().strftime(“%Y%m%d%H%M%S”)
cam.capture( ‘/path/to/’ + fileName + ‘.jpg’ )
cam.close()

phtyonコードの記述が終わったら、「任意の名前.py」として保存します。
(今回は「~/」に「cameramodule.py」として保存します。)

カメラモジュールを使った撮影テスト

これで全ての準備が整ったのでカメラモジュールを使った撮影テストに移りましょう。
といっても、以下のコードを実行するだけですが。
(「/path/to/」はスクリプトを保存したディレクトリを指定してください)

sudo python /path/to/cameramodule.py

定点観測用のcrontab設定

カメラの撮影テストが無事完了したところで、以下コマンドを実行して定点観測(1時間に1回自動的に先ほどのコマンドを実行)用の設定をcrontabに入れたいと思います。

sudo crontab -e

もしcrontabを初めて実行した場合、以下のようにどのエディタを使うか確認メッセージが表示されます。
どれを使っても一緒ですので、使い慣れたエディタをご利用ください。

no crontab for root – using an empty one
Select an editor. To change later, run ‘select-editor’.
1. /bin/ed
2. /bin/nano <---- easiest 3. /usr/bin/vim.tiny Choose 1-3 [2]:

というわけで、crontabが開いたら以下1行を追記し、それが済んだら上書き保存します。
(「/path/to/」は環境に合わせて変更してください)

0 */1 * * * /usr/bin/python /path/to/cameramodule.py 2> /path/to/log.txt

これで毎時0分にcameramodule.pyを自動実行し、何か問題があればログがlog.txtに保存されるようになります。

アボカドの撮影環境

というわけで準備が整いました。
色々試行錯誤した結果、まずカメラモジュールについているケーブル(FFCケーブルと言うそうです)を2メートルのものに変更して取り回しを簡単にし、続いてタブレット用のアームを別途購入、最後にグルーガンでカメラモジュールのカバーとアームを接着、最終的にこんな感じになりました。
UbuntuMate16-04_camera_module_02
UbuntuMate16-04_camera_module_03

撮影した画像はこんな感じです。
接写が苦手みたいなので若干引き気味で撮影する必要があるのですが、引くと散らかっている部屋の中まで写り込んでしまうため、それを防ぐために目隠し用にすだれを引いて・・・なんてやっていたら結構手間がかかりました。
UbuntuMate16-04_camera_module_04

ちなみに、6月下旬に種を半分ほど水没させて1週間ほどで種が割れてきました。
事前調査した情報に間違いが無ければ、この後しばらくで下方向に根が伸びてきた後、上方向に芽が伸びてくるはずです。
UbuntuMate16-04_camera_module_05

もし順調に育ってきた時にはタイムラプス動画でも作ろうかなぁ。
というか、一応思いついた時からそのつもりで準備したので、ちゃんと作りきりたいなぁ。

Ubuntu16.04にAsunderをインストールしてお手軽CDリッピング(mp3化)

今日の昼間の話なんですが、DVDを借りたくてレンタル屋さんに行ったところ、ふとレンタルCDのコーナーが目に付きました。
「そう言えば最後にCDを借りたのっていつだっけ・・・」なんて考えながらランキングのコーナーを見ていたところ、10位の棚に「BABYMETAL」の文字を発見。海外あちこちのロックフェスで聴衆を沸かせている動画をYoutubeで見て知ってはいたもののちゃんと聞いたことが無かったので、何時ぶりかわかりませんが久しぶりにCDを借りて聞いてみることにしました。

CDのリッピングソフト(Asunder)のインストール

というわけで、こうしてCDを借りてきたわけですが、CDのリッピングソフトをインストールしていません。
とりあえず一通り聞いてみたい気持ちもありますが、まずはCDのリッピングを済ませてしまいたいと思います。
Ubuntu16.04で使えるCDのリッピングソフトはいくつもありそうですが、今回使うのはAsunderというソフトです。GUIで使えてメニューも全て日本語化済み、mp3化した時のタグ付けも自動でやってくれる優れものです。
インストールは端末上で以下コマンドを実行するだけ。簡単ですね。

sudo apt-get install asunder

Asunderの初期設定

インストールが完了したら、とりあえずAsunderを起動して初期設定を行いましょう。
[アクティビティ]からインストールソフト一覧を表示し、Asunderを実行します。
UbuntuGnome16-04_asunder_01

Asunderが起動したら、「設定」ボタンをクリックして初期設定を行いましょう。
UbuntuGnome16-04_asunder_02

「全般」タブの設定ですが、とりあえず保存フォルダをどこでもいいので変更しましょう。
デフォルトのままリッピングを実行すると、ホームディレクトリの直下にデータが保存されてしまいますからね。
光学ドライブのデバイス名ですが、ちゃんと接続認識さえされていれば初回起動時の時点で自動認識されていると思います。光学ドライブが複数あって使い分けたい場合はここで変更可能です。
UbuntuGnome16-04_asunder_03

「ファイル名」タブはデフォルトのままでも特に困ることは無いかと思いますが、ファイル名の付け方を変更することも可能です。
UbuntuGnome16-04_asunder_04

リッピング時のファイル形式の変更は「エンコード」タブで行います。
今回は「mp3」を選択します。
UbuntuGnome16-04_asunder_05

そして重要なのが「詳細」タブです。
下のスクリーンショットはデフォルト設定のままですが、freedb.orgにアルバム情報が登録されてさえいれば、自動的に情報を取得してファイル名はもちろんタグ情報まで全て自動的に設定してくれますので、特に理由が無ければディスク情報の取得設定はそのままにしておいたほうが色々と楽ちんかと思います。
全ての設定が済んだら「OK」ボタンをクリックしてウィンドウを閉じましょう。
UbuntuGnome16-04_asunder_06

CDのリッピング実行

それではいよいよリッピングの実行です。
CDを光学ドライブにセットすると、下のスクリーンショットのように自動的にアルバム名他が読み込まれます。それを確認したら右下の「吸い出す」ボタンをクリックします。
UbuntuGnome16-04_asunder_07

すると進行状況が表示されますので、後は完了するのを待つばかりです。
UbuntuGnome16-04_asunder_08

光学ドライブの読み込み速度にも寄りますが、しばらくすると完了メッセージが表示されます。
実はもうこれでmp3化とタグ付けまで完了しています。なんか昔はアルバム一枚mp3化してタグ付けまでするのにとても苦労した記憶があるのですが、知らない間に楽になりすぎて驚きです。
UbuntuGnome16-04_asunder_09

一応EASY TAGでタグ情報を確認してみました。
ちゃんとタグ情報も書き込まれています。
UbuntuGnome16-04_asunder_10

久しぶりに激しい曲を聞いたらHi-Standardを思い出した

というわけでmp3化もあっさり完了したので一通り聞いてきたわけですが、結構激しい曲も結構あって昔ほんとうに沢山聞いたHi-Standardを思い出しました。
BABYMETALに興味を持つ人のうち何割かの人はきっとHi-Standardが好きなはず。
まず間違いなく「ジャンルが違うがな!」なんて言われちゃうと思いますが、もし聞いたことが無い人はぜひHi-Standardも聞いてほしいなぁ。

Ubuntu16.04にVisual Studio Codeをインストールする

Ubuntu16.04に乗り換えてから数週間が経過して、そろそろテストコードを書こうかという気になりました。
「さぁ書くか!」とゴリゴリ書きたい気持ちはありますが、geditでは若干(かなり)厳しいので別途エディタを導入したいと思います。
ただ、エディタと言っても様々ありますが、今回導入するのはここ数年で試したエディタの中で一番使いやすいと感じたMicrosoftの無料エディタ、Visual Studio Codeをインストールします。

Visual Studio Codeのダウンロードとインストール

それでは早速インストールを開始しましょう。
Visual Studio Codeは、Ubuntu16.04の時点ではapt-getでインストールすることができませんので、まずはdebパッケージを自分でダウンロードしてくる必要があります。パッケージのダウンロードは公式サイトのダウンロードページのdebパッケージのリンクから行います。
UbuntuGnome16-04_visualstudiocode_01

ダウンロードリンクをクリックすると、画面が切り替わると共にdebパッケージの処理について訪ねてきますので、ラジオボックスは「プログラムで開く」を選択し、リストは「ソフトウェアのインストール(既定)」が選択されていることを確認し、「OK」ボタンをクリックします。
UbuntuGnome16-04_visualstudiocode_02

新規ウィンドウが開いたら、「インストール」ボタンを押してインストール開始です。
ボタンを押すと認証要求が入りますのでパスワード入力は忘れずに。
UbuntuGnome16-04_visualstudiocode_03

「インストール」ボタンが「削除」に変わったらインストール完了です。
数秒で完了するので、終わったらウィンドウを閉じて動作確認に移りましょう。
UbuntuGnome16-04_visualstudiocode_04

Visual Studio Codeの動作確認

インストールが完了したら画面左上の「アクティビティ」からインストール済みのソフトウェア一覧を表示すると、Visual Studio Codeの青いアイコンが追加されているのでこれをクリックして実行します。
UbuntuGnome16-04_visualstudiocode_05

こんな感じで実行されればインストールは正常に完了しています。
UbuntuGnome16-04_visualstudiocode_06

ちなみに、端末から実行する際は「code」と入力して[Enter]キーでVisual Studio Codeが実行されます。debパッケージになったことで、以前のようにシンボリックリンクを作成する必要はなくなりました。フォントの変更や折り返し設定などについては過去の設定がそのまま使えるようですので、そちらを参照いただければと思います。

Raspberry Pi3にUbuntu Mate16.04をインストール

先日Raspbery Pi3にUbuntu Mate 15.10 をインストールしたばかりなのですが、気がついたらUbuntu Mate 16.04がリリースされていましたので、早速インストールしたいと思います。
アップグレードインストールも考えたのですが、まだ大した設定も済ませていないこともあってクリーンインストールすることにしました。
インストール手順は全てダウンロードページに書いてあるわけではありますが、せっかくなのでUbuntuPC(16.04 64bit環境)を使ってRaspberry Pi3をインストールする際の作業メモを残しておきたいと思います。
というわけで、早速公式サイトのダウンロードページアクセスしましょう。

イメージファイルのダウンロード

まずは、ダウンロードページにアクセスして「Download」の項にあるリンクをクリックしてtorrentファイルをダウンロードしましょう。
UbuntuMate16-04_install_01

torrentファイルのダウンロードが完了したらtorrentファイルをダブルクリックして[Transmission](デフォルトでインストールされていると思います)を起動します。
Torrentオプションウィンドウが開いたら右下の「開く」ボタンをクリックししてダウンロードを開始します。
UbuntuMate16-04_install_02

あとはゲージが100%になってダウンロードが完了するまでしばらく待ちます。
ダウンロードが完了したら[Transmission]のウィンドウは閉じてOKです。
UbuntuMate16-04_install_03

microSDカードを指したデバイスの確認

isoイメージのダウンロードが完了したらコマンドを実行してmicroSDカードにデータをコピーするわけですが、その前にmicroSDカードのデバイス名を確認しておく必要があります。
手っ取り早くデバイス名を確認したい場合、端末上で以下コマンドを実行しましょう。

sudo fdisk -l

こんな感じで結果が表示されるので、ディスク容量などを目安に該当するデバイス名を確認しましょう。

Disk /dev/sde: 7.4 GiB, 7963934720 bytes, 15554560 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xbcaf0fcb
デバイス 起動 Start 最後から セクタ Size Id タイプ
/dev/sde1 * 2048 133119 131072 64M c W95 FAT32 (LBA)
/dev/sde2 133120 15554559 15421440 7.4G 83 Linux

microSDカードにOSイメージをコピーするのに必要なパッケージのインストール

データをダウンロードしている間に、microSDカードにデータをコピーするのに必要なパッケージのインストールを済ませておきたいと思います。
UbuntuPC(16.04 64bit環境)の端末を開き、以下コマンドを実行します。

sudo apt-get install gddrescue xz-utils

OSイメージの展開

OSイメージのダウンロードが完了したらすぐにデータのコピーを行いたいところではありますが、ダウンロードしたOSイメージは圧縮されているため、microSDカードにデータをコピーする前に以下のような感じでコマンドを実行してデータを展開する必要があります。

unxz /path/to/ubuntu-mate-16.04-desktop-armhf-raspberry-pi.img.xz

OSイメージがホームディレクトリ以下の「ダウンロード」に存在してる場合はこんな感じ

unxz ~/ダウンロード/ubuntu-mate-16.04-desktop-armhf-raspberry-pi.img.xz

OSイメージがホームディレクトリ以下の「Downloads」に存在してる場合はこんな感じ

unxz ~/Downloads/ubuntu-mate-16.04-desktop-armhf-raspberry-pi.img.xz

microSDカードにOSイメージをコピー

さて、これでmicroSDカードにデータをコピーする準備が整いました。
以下のような感じでコマンドを実行してデータをコピーしましょう。

sudo ddrescue -D –force ubuntu-mate-16.04-desktop-armhf-raspberry-pi.img /dev/sdx

イメージファイルがホームディレクトリの[Downloads]以下にあってmicroSDカードのデバイス名が[sde]の場合はこんな感じになります。

sudo ddrescue -D –force ~/Downloads/ubuntu-mate-16.04-desktop-armhf-raspberry-pi.img /dev/sde

コピーが完了したらすぐにRaspberry Pi3に挿してセットアップに入りたいところではありますが、このまま使おうとしても私の環境ではカーネルパニックが発生してしまい

コピーが完了したらすぐにRaspberry Pi3に挿してセットアップに入りたいところではありますが、このまま使おうとしても私の環境ではカーネルパニックが発生してしまい正常に起動しませんでしたので、gpartedを使って若干調整したいと思います。
もしgpartedがインストールされていない場合は以下コマンドでインストールしましょう。

sudo apt-get install gparted

microSDカードを指した状態でgpartedを起動すると、「ディスクの外側にパーティションは作れません」とのメッセージが表示されました。
どうやらイメージファイルの環境と実際の環境に食い違いが発生しているようですので、試しにディスク容量を上書きする形でパーティション情報を上書きしてみます。
UbuntuMate16-04_install_04

gpartedが起動したら右上のデバイス一覧からmicroSDカードを選択して[sde2]を右クリック、「リサイズ/移動」を選択します。
UbuntuMate16-04_install_05

子ウィンドウが開いたら、新しいサイズを若干縮小した後「リサイズ/移動」ボタンをクリックします。
UbuntuMate16-04_install_06

子ウィンドウが閉じたら、以下スクリーンショットの赤枠で囲ったチェックボタンを押し、「本当に保留中の操作を適用してもよろしいですか?」と聞いてきたところで「適用」ボタンをクリック、パーティション情報の書き換えを実行します、
UbuntuMate16-04_install_07

パーティション情報の書き換え中「ディスクの外側にパティションは作れません」とのメッセージが表示されますが、「無視」ボタンをクリックして処理を続行します。
処理が完了したらgpartedのウィンドウを全て閉じ、Raspberry Pi3に差し込んで起動するかチェックしてみましょう。
UbuntuMate16-04_install_08

無事にUbuntu Mateのロゴが表示されたでしょうか。
ちゃんと表示されたようであれば、後の手順は15.10のインストール手順と同じです。

まだ早かったか?

わかってはいたことですが、Ubuntu Mate 16.04ではpythonのバージョンが若干(2.7.11+)あがっています。
そのため、現状対応していないSimpleCVが使えません。いくら新しい物が好きと言ってもRaspberry Piを使ううえでは新しい物を追いかけるのはちょっと控えたほうが良いかもしれません。
さて、15.10を入れ直してくるかな。