秋月電子で買えるIGZO液晶を試してみた

秋月電子で SHARPの7インチIGZO液晶モジュール を購入したらあっという間に届いたので動作確認してみました。 動作確認自体は土曜に終わっていて、本当はアクリルのケースを作成してから記事を書くつもりでした。 が、月曜の夜に見積もり依頼を出して既に木曜の深夜です… メールには2営業日と書いてあったのに何が起きているんだろうなぁと少しイラッときたので先に記事だけ書いてしまうことにしました。 (ちなみに今日くらいから シリコンハウスでも購入できる みたいですね。)

組み立てと接続に関しては付属の説明書を参考にすれば特に問題なく済ませることができると思います。 注意すべきことがあるとすれば、細い方のフレキシブルケーブルのコネクタは、開く方向が太い方とは逆になっていた点くらいです。 あとは単純に壊さないように作業するだけです。(すごく壊れやすそうなので何度も作業したくない感じでした。)

映像の出力機器に関して、とりあえず普段使用している MiniDP-HDMI変換ケーブル を使ってMBAと接続してみたのですが無反応でした。 次にGentooがインストールされているデスクトップと DVI-HDMI変換ケーブル を使って接続してみたら、こちらはうまく表示されました。 MBAが悪いのか、変換ケーブルが悪いのかは切り分けることができていませんが多少相性はあるようです。 Twitterでも報告している人がいましたが接続する機器によっては映らないということがわりと当たり前に起こりそうです。こわいですね。

下の画像はデスクトップに接続して画面を左に90度回転した状態で撮影したものです。 この液晶の仕様でデフォルトでは縦画面の1200x1920で認識されるようです。 なので、横向きで使用したい場合はOS側で画面を回転させてやる必要があります。 (この仕様のせいでおそらくPC以外の機器との接続が難しくなっているのだと思われます。)

Gentoo(Linux)のXでは xrandr というコマンドがあり、これを利用すると画面を回転させることができます。 今回はこのように xrandr -o left 実行しました。

image

アクリルケースに関しては、本当はCADやIllustratorを使用して書くのかもしれませんが、木材を使った家具のイメージ作りのために SketchUp を使っていて ...

more ...

WN-G300UAを使ってみる

今までWiFiのアクセスポイントには WLI-UC-GNM を使用していたのですが、たまにOSごと巻き込んでクラッシュするのとアンテナがないので電波が悪い部屋があったので交換してみることに
アンテナがついている機種でLinuxでの動作実績がありそうなものを探した結果 WN-G300UARaspberryPiでの動作実績もあるみたい で良さそうだったので購入してみました
ちなみにWLI-UC-GNMは772円、WN-G300UAは1470円でした
上述の参考サイトにはモジュールのオプションでパワーマネージメントを無効にすれば普通に動くということだったのですが、これから色々ハマるとは思いもしませんでした…

  • このデバイス用のドライバがカーネルに含まれていますがまともに動作しませんでした (繋がるけれどすぐ切れるという動作 Kernel 3.14.48)
  • チップセットメーカーもドライバを提供していて参考にしていたサイトではそれを使うように説明がありました
    しかし手元のカーネルではビルドすらできませんでした
    参考にしていたサイトはRaspberryPiを使ったサイトが多かったのですが、彼らの使用しているカーネルは古かったようです

いろいろ検証した結果ArchLinuxのパッケージで使われているリポジトリとパッチを当てたものを使用すれば動作することがわかりました
Arch以外のディストリビュージョンではそのままビルドすることができないのでArchで使っているリポジトリをサブモジュールにしてMakefileとWN-G300UA用のパッチを追加したリポジトリを作成しました

以下の手順でビルドすることができます

$ git clone https://github.com/lostman-github/8192cu
$ cd 8192cu
$ git checkout WN-G300UA
$ git submodule init
$ git submodule update
$ make
$ cd -

$ git clone ...
more ...

Xvfb上でChromeを動かしてみた

外出中にFlashを使ったサイトをチェックしたいという要望が某所から出てきたので環境を作ってみた
普段から PC を持ち歩いている人には必要ないことかもしれないけれど普通の人は持ち歩いていないよね
私も荷物を持つのが嫌いなのでポケットに入るスマホと財布くらいしか持ち歩いていないです
ということで、スマホで見れるといいけれど Android の Firefox で使える Flash はもうサポートが切れているのでいまいちな感じ
で、自宅には常時起動のマシンがあるのでそこで何か用意できないかなと考えて今回 Xvfb を試してみた

Xvfb はなにかというと通常 X はクライアントからの要求を受けてドライバを経由して実際のモニタに描画するのに対し、
モニタでなくメモリ上に確保した仮想のフレームバッファに画面を描画します
このため画面がないマシンでも GUI のアプリケーションが起動できます
サーバ上で GUI のアプリを動かすにはうってつけですね
ただこのままだと外部から描画された画面を見ることができないので
x11vnc を使って外部から画面の様子をVNCクライアントを使って見れるようにしました
Chrome を選択したのは Flash を動かすのに追加でプラグインが必要ないためってだけ

必要なものをインストールする前に package.use に必要は USE フラグを追加して

app-text/ghostscript-gpl cups
media-fonts/ja-ipafonts X
net-libs/libvncserver threads ...
more ...

SketchUpをLinuxにインストール

SketchUp を Mac にインストールして使用していたのですが、 Mac のタッチパッドだといまいち操作性が良くありませんでした
大画面でマウスを使って操作したかったのでデスクトップの Linux マシンにインストールしてみました
SketchUp は Linux 版が提供されていないので Wine を使用することになります (公式の FAQ にもしれっと記述があった
WineHQ にも SketchUpのWikiページ があり情報がまとめられています
ただ多少ハマった部分があったのでやったことを残しておく

まず 公式サイト からインストーラを入手する
自分がダウンロードしたのは SketchUpMake-ja-x64.exe だった
インストール後にバージョンを確認したら 15.3.331 64ビット となっていた

デフォルトの Windows XP だとバージョンチェックで起動できないので winecfg を起動して Windows 7 へ変更する
インストールするディレクトリを変えたい場合は WINEPREFIX 環境変数を使ってwine関係のコマンドを実行する
(デフォルトでは ~/.wine ...

more ...

操作ミスでファイルを消してしまった時の復活方法

ファイルサーバのデータを整理中に rm *hoge* と入力しようとして rm * まで入力した状態で
hogeをコピペで貼り付けようとしました
この時hogeの先頭に改行が含まれていたため、 rm * が実行されてしまい
カレントディレクトリ内のファイルを全て削除してしまいました、事故です
このような場合、 extundelete というソフトを使うと復活できるみたいなので、試してみました

まず削除してしまったファイルがあるボリュームをroでマウントしなおします
この作業はできるだけ早く行う必要があります
自分の場合、別のプロセスがこのボリュームに書き込みをしていたので
削除したファイルのinodeが再利用されてしまいかなりのファイルを失いました

# mount -o remount,ro /mnt/lvm

次にdateコマンドで操作ミスが発生した時刻の確認をします

$ date +%s
1413993600

extundeleteで復活させます
復活できなかったファイルが以下のようにログに出力されて
復活できたファイルはカレントディレクトリの RECOVERED_FILES 以下に出力されます

# extundelete --restore-all --after 1413993600 /dev/mapper/vg0-lv0
Only show and process deleted entries if ...
more ...

Windows10を試してみた

Windows10 Technical PreviewがでたのでKVMにインストールしてみた
このサイトにLinuxからアクセスすると「お使いのオペレーティング システムにはプレビュー版をインストールできません。」と
表示されるがUserAgentをIEに変更してから再度アクセスしたらダウンロードすることができた

QEMUはひさしぶりなので使い方を忘れていたんだけれど以下のようにすることで特に問題なくインストールして動作させることができた

$ qemu-img create -f qcow2 windows10.img 32G
$ qemu-system-x86_64 -enable-kvm -cpu host -hda windows10.img -cdrom Windows10-en-x64.iso -boot d -m 4G

ただ電源の切り方がWindows8.1から更に変更されているので少し戸惑った

Windows10 with KVM

more ...

今更Sambaをインストールした

しばらく前にASUS VivoTab Note 8を買ったり、HP Pavilion 15-n200 (AMD)が29800円だったので妻に買ったりMacBook Airもあるし
Linux以外のマシンが増えてきたので、これらのマシンからもファイルサーバを利用できるようにSambaの導入をしました
今までは自分のLinuxマシンだけだったんでNFSで間に合ってたんだけどね

Gentooでのインストールは特に気にすることなくいつも通り
自分はクライアントの機能は不要だったので -client-smbclient を指定した
デフォルトの設定ファイルをコピーして自分の設定を作っていく

# emerge -av samba
# cp /etc/samba/smb.conf.default /etc/samba/smb.conf

以下に変更した設定をメモしておく

  • workgroup = WORKGROUP
    Windowsのデフォルトに合わせる
  • hosts allow = 10.0.0.
    hosts deny = all
    LAN内のマシン以外からのアクセスを拒否する
  • load printers ...
more ...

MySQL5.1から5.5へアップデート

GentooからMySQL5.5がStableになったし5.1はmaskするよ、というお知らせが来ていました
epgrecとMediatombで使っているのですが5.5でも問題なさそうなのでアップデートしました

  1. MySQLの停止

    # /etc/init.d/mysql stop
    
  2. emergeを使用してアップデート

    # emerge -uav mysql
    # etc-update
    
  3. InnoDBが有効になっているとepgrecが遅くなるみたいなので設定を変更する *
    /etc/mysql/my.cnf に以下の二行を追加

    skip-innodb
    default-storage-engine=MyISAM
    
  4. 関連パッケージの更新

    # emerge @preserved-rebuild -a
    # revdep-rebuild --library libmysqlclient.so.16
    # revdep-rebuild --library libmysqlclient_r.so.16
    
  5. MySQLを再起動
    再起動すると /var/log/mysql/mysqld.err に以下のようなエラーが出力されて
    mysql_upgrade を実行するように指示されます ...

more ...

Nginxで自己署名証明書を使う

ドメインを取ったのでそのうちきちんとした証明書を使おうかとは思っていますが
とりあえずしばらくはオレオレ証明書で運用しようと思っています
ということで作成の仕方をメモ

  1. パスフレーズなしの秘密鍵を作成
    色々なサイトを見ていると一度パスフレーズありで作成してから
    パスフレーズを削除したファイルを作りなおすような手順を踏んでいたりしますがこれでよさそう

    # openssl genrsa -out server.key 2048
    Generating RSA private key, 2048 bit long modulus
    ................................................+++
    ........................................+++
    e is 65537 (0x10001)
    
  2. 公開鍵の作成
    HTTPSで暗号化されていればいいだけなので Common Name 以外は適当でいいです
    . を入力した場合そのフィールドは空になるみたいなので全て空にしました

    # openssl req -new -key server.key -out server.csr
    You are about to be asked to enter information that will ...
more ...