old-old-stableのDebian squeeze-LTSのサポートがもうすぐ終了


splash-squeeze

The Debian Long Term Support (LTS) Team hereby announces that Debian 6.0 (squeeze) support will reach its end-of-life on February 29, 2016, five years after its initial release on February 6, 2011.

There will be no further security support for Debian 6.0.

Debian 6 “Squeeze” until February 2016
Debian 7 “Wheezy” from February 2016 to May 2018
Debian 8 “Jessie“ from May 2018 to April/May 2020

LTS開始時のアナウンスなど

ということでDebian old-old-stableの長期サポート版squeeze-LTSが今月いっぱいでEOLです.当初は2/6までとなっていましたが1月近く伸びたようですね.
old-stableのwheezyかstableのjessieに移行しましょう.(国際宇宙ステーションのsqueezeはアップグレードされたのかな?)
Debianのアップグレードは簡単ですけど動作しているアプリケーションはバージョンが上がるので要設定だったりとちょっと面倒ですが必要な作業です.

今動いているバージョンがわからないよという方は以下のようなコマンドを実行して6若しくはそれより前のバージョンであればアップグレード対象です.

$ cat /etc/debian_version
6.0.10
$ lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description:    Debian GNU/Linux 6.0.10 (squeeze)
Release:        6.0.10
Codename:       squeeze

アップグレードの具体的な手順はリリースノートの第4章が参考になるでしょう.

万が一の時のためにバックアップを取得してから作業を行いましょう!
#作業依頼もお待ちしています.

awk 製 3Dシューティングゲーム awkaster で遊んでみた

awk 製 3Dシューティングゲームがあると聞いて遊んでみました.

遊ぶには GNU awk 4.0.0 以上が必要です.Debian だと gawk というパッケージです.とりあえず遊んでみるにはこんな感じで.

$ sudo apt install gawk
$ wget https://raw.githubusercontent.com/TheMozg/awk-raycaster/master/awkaster.awk
$ awk -f ./awkaster.awk

操作はこんな感じです.

  • 1234 画面表示切り替え
  • WASD 移動
  • JL 回転(16回で1回転)/Shiftを押しながらで高速回転(8回で1回転)
  • SPACE 攻撃
  • X エレベーターに乗る(ゲームクリア)
  • Q 終了

以下は遊んでいる様子です.

asciicast

3Dシューティングというとスターフォックスを思い浮かべたのですが,単純な 3D RPG 的な感じです.Wolfenstein 3D と doom に触発されたそうです.Wolfenstein 3DWolfenstein 3D は知らないのですが確かに doom みたいな感じです.
ターン制?なので敵の赤球が出てきても慌てず操作できます.

敵に触れるとHPが減っていって0になるとゲームオーバーでこんなメッセージが出ます.

GAME OVER! YOU LOSE!
Credits: Fedor 'TheMozg' Kalugin
https://github.com/TheMozg/awk-raycaster
Gameplay testing - Alex 'Yakojo' & Danya 'bogych97'
Go away!

うまいことエレベーターに到着して X を押すとゲームクリアです.
但し ELEVATOR COMING0 になっている必要があります.これは初め 1000 で1操作で1カウントダウンされます.ゴールのエレベーターの場所は見た目わかりません
敵が沢山居るところの辺りにあるので探してみて下さい.
(私は判んなくて結局 source 読んでクリアしましたorz)

YOU WIN! YOUR SCORE: 4900
Credits: Fedor 'TheMozg' Kalugin
https://github.com/TheMozg/awk-raycaster
Gameplay testing - Alex 'Yakojo' & Danya 'bogych97'
Go away!

ちなみにそこそこ広い領域が必要です.領域が狭いと画面に収まりきらずずれてしまいます.フォントサイズを小さくするなどして列と行を確保しましょう.
GNU screen 上でも Rasbian jessie 上でも問題なく動きました.

昔こんな3D迷路とかをポケコンBASIC で作っていたのを思い出しました.最近のマイコンやRaspberry Pi でこういうゲームを作ってみるのも楽しそうですね :)
(Arduboy とか POCKETC.H.I.P. とか )

さくらのVPS シリアルコンソール(β版) が開始されていたので試す

さくらのVPS ののサーバ設定を変えてtiarra や lingrircgw とかのの自動起動確認のために再起動しようと思い,再起動を見守るためにコンソールを立ち上げようとしたところ新しい項目が増えていました.

Screenshot from 2015-08-01 02-25-08

シリアルコンソール(β版) がそれです.
確認すると 7/23 ににリリースされたようです.

早速設定してみます.設定内容は自分メモを見ながら以下のような感じでで設定しましたちなみに,少なくともDebian Squeese ~ Jessie まで同じ設定でいけてます.

/etc/inittab

#T0:23:respawn:/sbin/getty -L ttyS0 9600 vt100

の部分を以下の様に変更.

T0:23:respawn:/sbin/getty -L ttyS0 115200 vt100

/etc/default/grub の以下の辺りを設定

GRUB_CMDLINE_LINUX_DEFAULT="console=tty0 console=ttyS0,115200n8"
GRUB_TERMINAL=serial
GRUB_SERIAL_COMMAND="serial --speed=115200 --unit=0"

GRUB に反映

$ sudo update-grub

再起動して動作確認.
これでGRUB の画面からシリアルコンソールに表示されるようになりました.

Screenshot from 2015-08-01 03-05-28
Screenshot from 2015-08-01 02-50-34
Screenshot from 2015-08-01 13-33-25
Screenshot from 2015-08-01 13-32-17

日本語入力は下のテキスト送信からとサポートサイトには書かれていますが,普通に uim-fep とかでも入力できました.
以下のような感じで設定すればいいんだけどこの辺りの詳細は以下のページを参考にしてみてください.

$ sudo apt install uim-fep uim-mozc
$ cat << __EOF__ > ~/.uim
(define-key generic-on-key? '("<Control>\\" "<Shift> " "<Control> "))
(define-key generic-off-key? '("<Control>\\" "<Shift> " "<Control> "))
$ uim-mozc -u mozc

Screenshot from 2015-08-01 13-34-11
Screenshot from 2015-08-01 13-37-51

これまでは VNCコンソール(HTML5版)を利用していましたがこれからはシリアルでの利用が多くなりそうです.コピペが出来るのが大きい!後はこのシリアルが ssh 経由で利用できたりしたらまた色々使いやすくなりそうな気もします.(セキュリティは注意が必要ですが)

そうそう,ブラウザのシリアルの画面を閉じただけじゃ切断されずそのままなので最後にちゃんとログアウトしておきましょう.

user@hostname:~$ exit
logout

Debian GNU/Linux 8 hostname ttyS0

hostname login:

Debian squeeze LTS リリース

Debian squeeze(old-stable) が今月末でサポートが切れます.しかし,i386とamd64 アーキテクチャについてはLong-Term-Support を実施して2016年02月06日までサポートを行うことになりました.このためのリポジトリがリリースされたようです.

backports もサポートされるようなので利用している人も助かりますね.
注意しないといけないのは,squeeze 全てのパッケージがサポートされるわけでは無い
LTS のリポジトリを登録しないといけないところです.
サポート状況のチェックツールもリリースされました.ツールのパッケージは debian-security-support で,コマンドは check-support-status です.

https://wiki.debian.org/LTS/Development#Add_squeeze-lts_to_your_sources.list
を参考にsource.list を書き換えて(mirrorにも対応しているので日本に向けるといいと思います)

/etc/apt/sources.list

# squeeze-lts
deb http://ftp.jp.debian.org/debian squeeze-lts main contrib non-free
deb-src http://ftp.jp.debian.org/debian squeeze-lts main contrib non-free

# backports(非利用時は以下は不要)
deb http://backports.debian.org/debian-backports squeeze-backports main
deb-src http://backports.debian.org/debian-backports squeeze-backports main

以下のような感じで行けました.

$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get install debian-security-support
$ check-support-status
Security support has ended for one or more packages

Unfortunately, security support for some packages needed to be stopped
before the end of the regular security maintenance life cycle.

The following packages found on your system are affected by this:

* Source:libplrpc-perl, ended on 2014-05-31 at version 0.2020-2
  Details: Not supported in squeeze LTS
  Affected binary package:
  - libplrpc-perl (installed version: 0.2020-2)

* Source:zabbix, ended on 2014-05-31 at version 1:1.8.2-1squeeze5
  Details: Not supported in squeeze LTS
  Affected binary packages:
  - zabbix-agent (installed version: 1:1.8.2-1squeeze2)
  - zabbix-frontend-php (installed version: 1:1.8.2-1squeeze2)
  - zabbix-server-mysql (installed version: 1:1.8.2-1squeeze2)

Security support is limited for one or more packages

Unfortunately, security support for some packages had to be limited.

The following packages found on your system are affected by this:

* Source:php5
  Details: See README.Debian.security for the PHP security policy
  Affected binary packages:
  - libapache2-mod-php5 (installed version: 5.3.3-7+squeeze19)
  - php-pear (installed version: 5.3.3-7+squeeze19)
  - php5 (installed version: 5.3.3-7+squeeze19)
  - php5-cli (installed version: 5.3.3-7+squeeze19)
  - php5-common (installed version: 5.3.3-7+squeeze19)
  - php5-curl (installed version: 5.3.3-7+squeeze19)
  - php5-gd (installed version: 5.3.3-7+squeeze19)
  - php5-gmp (installed version: 5.3.3-7+squeeze19)
  - php5-mcrypt (installed version: 5.3.3-7+squeeze19)
  - php5-mysql (installed version: 5.3.3-7+squeeze19)

実はWheezy への以降は済んでいたのですが,LTS を試したいのでsqueeze 環境を復活させました :p

Debian/Ubuntu に Arduino IDE を導入する

今度の日曜日にフィジカルコンピューティングワークショップ Arduinoで遊んでみよう【定員20名】 に参加予定ですが,Linux での導入手順がないので.

実はパッケージが用意されています.
なので,

% sudo apt-get install arduino

で導入完了です.

しかし,このままではArduino に接続する際にroot 権限が必要になって面倒なので,Arduino のデバイスが自分のユーザで利用できるように dualout グループに登録しておきます.

% sudo addgroup user dialout
ユーザ `user’ をグループ `dialout’ に追加しています…
ユーザ user をグループ dialout に追加
完了。

※user 部分は自分のユーザに置き換えてください.

もし,以下のように表示されたら既に登録済みなので問題ありません.

% sudo addgroup mk dialout
ユーザ `mk’ はすでにグループ `dialout’ のメンバーです。

– ドライバは?
自動認識するので特に導入の必要はありません.Arduino  をPC に接続すると /dev/ttyUSB0 や /dev/ttyACM0 などとして認識されます.このデバイスをArduino IDE のポートに設定します.
#最後の0部分はデバイスが増えると1,2,3…と増えていきます.dmesg 等で確認できます.

– おまけ

最新のArduino IDE が使いたい!

例えばDebian Stable のWheezy ではArduino 1.0.1 ベースですが,公式サイトを見ると1.0.5 がリリースされています.
Debian — wheezy の arduino パッケージに関する詳細
Arduino – Software
新機能を使いたい場合やBETA版を使いたい場合などは標準パッケージのままでは利用できません.

以下はArduino IDE BETA を ~/opt 以下に導入する例です.
Arduino IDE をダウンロードします.32bit/64bit は uname -m 等で確認できます.以下の例では64bit になります.

% uname -m
x86_64
% wget http://downloads.arduino.cc/arduino-1.5.5-linux64.tgz

~/opt 以下に展開します.

% tar xvzfC arduino-1.5.5-linux64.tgz ~/opt

シンボリックリンクを貼っておく.(バージョンアップ時にリンクを貼り直して何時も同じパスで利用できるように)

% ln -s ~/opt/arduino-1.5.5 ~/opt/arduino-beta

起動しやすいようにメニューに登録しておく.(シンボリックの方を登録する)
Screenshot-ランチャのプロパティ
Screenshot-メイン・メニュー

Ardublock や Fritzing もお勧めです :-)
Getting Started with ArduBlock | Ardublock
Download – Fritzing

Debian Squeeze にWP を試しに立ててみる

IMGP8267

ずっとblog 放置してて最近はGoogle+ やPukiwiki にメモしたりしてますがblog もたまに書きたくなって来ました.
ということで,blog を立ち上げてみようかと思います.
先ずはこのblog の為にWP を入れてみたエントリから.

環境

$ cat /etc/debian_version 
6.0.5

導入

$ sudo apt-get install wordpress wordpress-l10n

設定

apache の設定

$ cd /etc/apache2/sites-enabled
$ sudo vi 004-matoken.org
$ sudo git diff 004-matoken.org
diff --git a/apache2/sites-enabled/004-matoken.org b/apache2/sites-enabled/004-matoken.org
index df3c502..1c9f8b7 100644
--- a/apache2/sites-enabled/004-matoken.org
+++ b/apache2/sites-enabled/004-matoken.org
@@ -14,6 +14,13 @@
                allow from all
        </Directory>

+       Alias /blog /usr/share/wordpress
+       <directory /usr/share/wordpress>
+               Options FollowSymLinks
+               AllowOverride Limit Options FileInfo
+               DirectoryIndex index.php
+       </directory>
+
        ErrorLog ${APACHE_LOG_DIR}/error-matoken.org.log

        # Possible values include: debug, info, notice, warn, error, crit,
$ sudo /etc/init.d/apache2 restart

db の作成

DB 名 : wordpress
DB User : wp
DB Password : password

$ mysql -uroot -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 7158
Server version: 5.1.63-0+squeeze1 (Debian)

Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> CREATE DATABASE wordpress;
Query OK, 1 row affected (0.04 sec)

mysql> GRANT ALL PRIVILEGES ON wordpress.* TO wp@localhost IDENTIFIED BY 'password';
Query OK, 0 rows affected (0.22 sec)

mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.16 sec)

mysql> EXIT
Bye

wordpress の設定

$ cat /etc/wordpress/config-matoken.org.php
<?php                                                                                                                                                 
define('DB_NAME', 'wordpress');                                                                                                                       
define('DB_USER', 'wp');                                                                                                                              
define('DB_PASSWORD', 'password');                                                                                                                 
define('DB_HOST', 'localhost');                                                                                                                       
define('DB_CHARSET', 'utf8');                                                                                                                         
define('DB_COLLATE', '');                                                                                                                             
define ('WPLANG', 'ja');                                                                                                                              
define('WP_HOME', 'https://matoken.org/blog');                                                                                                         
define('AUTH_KEY', 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx');                                                                                                                                                         
define('SECURE_AUTH_KEY', 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx');                                                                                                                                                  
define('LOGGED_IN_KEY', 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx');                                                                                                                                                    
define('NONCE_KEY', 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx');
?>

https://matoken.org/blog/ にアクセスして設定.

Plugin の導入

WordPress › Markdown on Save Improved « WordPress Plugins

Markdown 記法が使えるようになるPlugin です.

$ cd /tmp
$ wget http://downloads.wordpress.org/plugin/markdown-on-save-improved.2.2.zip
$ cd /usr/share/wordpress/wp-content/plugins
$ sudo unzip /tmp/markdown-on-save-improved.2.2.zip

管理画面の「プラグイン」から Markdown on Save Improved を有効化

その他

パーマリンク設定が有効にならない

rewrite が無効になっているので有効にする

$ sudo a2enmod rewrite
Enabling module rewrite.
Run '/etc/init.d/apache2 restart' to activate new configuration!
$ sudo /etc/init.d/apache2 restart
Restarting web server: apache2 ... waiting .