変奏現実

パソコンやMMORPGのことなどを思いつくまま・・・記載されている会社名・製品名・システム名などは、各社の商標、または登録商標です。

この画面は、簡易表示です

2014 / 11月

Android X86 4.4 RC2 を入れてみた

# wget http://sourceforge.net/projects/android-x86/files/Release%204.4/android-x86-4.4-RC2.iso/download
100%[======================================>] 348,127,232 3.49MB/s 時間 2m 31s
2014-11-18 18:21:18 (2.20 MB/s) – `download’ へ保存完了 [348127232/348127232]
# mv download android-x86-4.4-RC2.iso
# mv android-x86-4.4-RC2.iso /tmp
パーテーション設定でディスクが認識せず失敗。
リセットすると
Booting from Hard Disk
Boot failed: not a bootable disk
No bootable device.
何が悪いんだろう・・・
1.CentOS7は64ビット(x86_64)。これでデバイスをうまくいかないのは、AndroidX86が32ビット版だからだろう。

※x86 だけど _64が付くとは書かれてない。

2.だからrhel7もダメ。でもrhel6でもダメで、rhel5で落ち付いた。
【動いたスクリプト】

#ネットワークインストールするリポジトリURL指定
IMAGE=/tmp/android-x86-4.4-RC2.iso

#KVM上での名前を指定
IMAGE_NAME=Android4.4
IMG_PATH=/var/lib/libvirt/images

#virt-installでインストールする
  virt-install \
  --name ${IMAGE_NAME} \
  --ram 1024 \
  --disk path=${IMG_PATH}/${IMAGE_NAME}.qcow2,size=16,format=qcow2 \
  --vcpus=1 \
  --os-type linux \
  --os-variant=rhel5 \
  --arch=i686 \
  --accelerate \
  --graphics spice,listen=0.0.0.0 --channel spicevmc \
  --cdrom=${IMAGE}

 ※修正個所 

CFDISKコマンドがfdiskとちょっと違うので、このページの通りにやった方がよさそう。
ネットワークはWifiがうまくいっていないが youtobeも観れるし、中で端末ターミナルを実行すると ip addr で IPアドレスが取れてたからキニシナイ方針。
Googleアカウントを登録しておけばPlayStoreも使えるみたいだ。
他のAndroidエミュレータなどよりは速く動いている感じがする。
spiceでマウスを画面の外に出すにはShift+F12
AndroidX86を正しくシャットダウンするには、Spiceの画面上部分の時刻表示のある黒いバーをマウスでダラダラとドラッグすると、POWER OFFってボタンが出てくるので、それを押す。
デバッグするアプリを放り込む方法が思いつかない。 ←重要!
 



update phpmyadmin

いつまでもアップデートしないと思ったらリポジトリィがepelだった。

yum --enablerepo=epel update phpMyAdmin
================================================================================
  Package            アーキテクチャー
                                    バージョン                リポジトリー  容量
 ================================================================================
 更新します:
  phpMyAdmin         noarch         4.2.10.1-1.el7            epel         4.0 M
トランザクションの要約
 ================================================================================
 更新  1 パッケージ

完了。
ps. 2014/12/23

yum --enablerepo=epel update phpMyAdmin

================================================================================
Package             アーキテクチャー
バージョン             リポジトリー   容量
================================================================================
更新します:
phpMyAdmin          noarch          4.3.2-1.el7            epel          4.2 M
トランザクションの要約
================================================================================
更新  1 パッケージ
ps. 2014/12/24
しかし、phpmyadminのページにはこう書かれていた。
phpMyAdmin の新しいバージョンが提供されています。アップグレードの検討をお奨めします。最新バージョンは 4.3.3 で、2014-12-21 にリリースされています。

# yum --enablerepo=epel info phpMyAdmin
インストール済みパッケージ
名前                : phpMyAdmin
アーキテクチャー    : noarch
バージョン          : 4.3.2
リリース            : 1.el7
容量                : 20 M
リポジトリー        : installed
提供元リポジトリー  : epel
要約                : Handle the administration of MySQL over the World Wide Web
URL                 : http://www.phpmyadmin.net/

さて、yumのepelリポジトリィにアップされるのはいつ頃かな?



Javaとは・・・帯に短し襷に長きものなり

JavaでWEBアプリを組むにはまずServletを用い、アクセスの度にクラスからオブジェクトを生成しないようにする。
なぜ、そうなったのかと云えば、

Servletを採用した当時はハードウェアもソフトウェアも圧倒的に貧相だったからだ。

だから、もうServletなんぞ捨てて、ポートを直接listeningしか方が数段良いという本音を「サーバーもJavaScriptで作ろう」というキャッチコピーでやっているのがNode.js派だ。
直接listeningしているのだから、apacheやTomcatが適当にはぐらかしているブロッキングI/O(他の処理に比べ1桁も2桁も遅い処理が混入していることによるスループット低下)問題にまともにぶち当たるのはTCP/IP通信の碇石だ。
いずれは、ポートListenerChainクラスをインスタンス化するとか、ブロッキングI/O依存クラスをブローカークラスのインナークラスにするリファクタリング機能とかで妥協するだろうから、それまでNode.jsは待ち状態。
そんなこんなで、J2EEちゃん。
エンタープライズな準廃SE用パッケージとして今でもServletやEJBを大事にしてる。
とは云ってもJavaなWEBアプリ・コンテナ(Tomcatなど)がWARファイルの中のServlet派生クラスにアクセスする時点でマルチスレッドで解決しているのであってJ2EEはただのゲスト・ライブラリィ。だからデプロイも簡単。
一気にスタックを食いつぶす勢いでアクセスされればあっさりクラッシュするけど、それはJavaなWEBアプリ・コンテナの問題であってJ2EEの問題ではない(つまりサーバー運用の問題)と云い訳ができてしまうから始末が悪い。
勿論、ServletやEJBを直接アクセスするのは誰でも嫌(理由:サラっとドキュメントを見ればスパゲッティーなコードしか出来ないのがすぐ判る)なので、色々とワークフレームが作られた。
その代表例がStrutsだ。労働集約型でweb.xmlから参照されるstruct.xmlなど多数のXMLファイルにマークアップを入れ、その通りにたくさんのコードを埋めていくのでスケジュールを立てやすく見通しも原則的には良いハズだが、その場凌ぎのたくさんのコードを埋めていくというのがクセもので、粗製乱造された仕様書がピンボケ(意味:意味不)なのは避けられず、その類の仕事は前世期から上手くいった試しが無い。
その後、Spring、Seasar,wicket あるいは Struts 2 と Java WEBアプリのワークフレームは変遷を続け 軽量ワークフレームまで 出てくるが、
【帯に短し襷に長し】
の状況はそのまんまだったとさ。
 
メデタシメデタシ?
 
 



LIVA preinstall win.8 with being version

News! Windows 8.1 with Bing in LIVA Mini PC の後、
全く音沙汰なし。
全く在庫が履けてないんだろうなぁ~
で、結局・・・
Win.8 with Bing バンドル待ちから
店頭売り待ちに変わっただけ。(笑
多分、クリスマスシーズン(12月ぐらい)にはボチボチ出てくるんじゃないかな?
LIVAにインストできるOSはCPU(Bay Trail-M)とeMMC(HDDやSSDではない)の組み合わせてブートしファイルシステムをマウントしなければいけないので、カーネルイメージのブートストラップやドライバーの対応が必要。
今はWindows8 か Ubuntuのみとなっている。
Linuxの場合、カーネルのバージョンが3.13以降ならちゃんと対応できるらしいが、今のCentOS7は、
# uname -a
Linux ********.******.*** 3.10.0-123.9.2.el7.x86_64 #1 SMP Tue Oct 28 18:05:26 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
# yum update
http://ftp.riken.jp/Linux/centos/7.0.1406/updates/x86_64/repodata/repomd.xml: [Errno 14] curl#6 – “Could not resolve host: ftp.riken.jp; 不明なエラー
他のミラーを試します。

あ、DHCPやめてSTATICに変えたんだった。

# vi  /etc/sysconfig/network-scripts/ifcfg-br0

GATEWAY=192.168.*.*
DNS1=192.168.*.*

を追記。

Loading mirror speeds from cached hostfile
 * base: centos.mirror.secureax.com
 * extras: centos.mirror.secureax.com
 * rpmforge: apt.sw.be
 * updates: centos.mirror.secureax.com
13 packages excluded due to repository priority protections
================================================================================
Package                 アーキテクチャー
バージョン              リポジトリー  容量
================================================================================
インストール中:
kernel                  x86_64      3.10.0-123.9.3.el7      updates       29 M
kernel-debug-devel      x86_64      3.10.0-123.9.3.el7      updates      9.0 M
更新します:
kernel-headers          x86_64      3.10.0-123.9.3.el7      updates      1.4 M
kernel-tools            x86_64      3.10.0-123.9.3.el7      updates      679 k
kernel-tools-libs       x86_64      3.10.0-123.9.3.el7      updates      618 k
sssd-client             x86_64      1.11.2-68.el7_0.6       updates      121 k
トランザクションの要約
================================================================================
インストール  2 パッケージ
更新          4 パッケージ
合計容量: 41 M
Is this ok [y/d/N]:
なので、もう暫く待たなくてはいけない。
但し、カーネルをリビルドして3.13以降にする方法があるらしい。
KVMで素のCentOS7を作り
どこからか
mmc_core
mmc-block
sdhci
sdhci-acpi
acpi_lpss
pinctrl
pinctrl-baytrai
を取り込んで
イメージファイルをLIVAのeMMCに展開すればいいらしい。
# virt-clone -o CentOS7.0 -n liva -f /var/lib/libvirt/images/liva.qcow2
# uuidgen
# virt-edit -d liva /etc/sysconfig/network-scripts/ifcfg-eth0  でUUIDをuuidgenの結果で上書き
# virsh start liva
ルータを観ると、違うMACアドレスが割当たっている。その結果にifcfg-eth0のHWADDRを上書き
なお、同じeMMCの DE3815TYKHEの情報もみつけた。
で、mmc_core が見当たらないので先の日記にあがっていたRPMをダウンロードしてゲストのliva にインストしてみる
# wget https://dl.dropboxusercontent.com/s/e3ezngudvbc9h74/kernel-3.16.2-5.x86_64.rpm
–2014-11-17 05:44:16–  https://dl.dropboxusercontent.com/s/e3ezngudvbc9h74/kernel-3.16.2-5.x86_64.rpm
dl.dropboxusercontent.com (dl.dropboxusercontent.com) をDNSに問いあわせています… 54.225.137.118, 23.23.132.156, 54.221.201.50, …
dl.dropboxusercontent.com (dl.dropboxusercontent.com)|54.225.137.118|:443 に接続しています… 接続しました。
HTTP による接続要求を送信しました、応答を待っています… 200 OK
長さ: 322905268 (308M) [application/x-redhat-package-manager]
`kernel-3.16.2-5.x86_64.rpm’ に保存中
100%[======================================>] 322,905,268 3.35MB/s 時間 85s
2014-11-17 05:45:43 (3.60 MB/s) – `kernel-3.16.2-5.x86_64.rpm’ へ保存完了 [322905268/322905268]
# ls
kernel-3.16.2-5.x86_64.rpm
# rpm -ivh kernel-3.16.2-5.x86_64.rpm
準備しています…              ################################# [100%]
更新中 / インストール中…
1:kernel-3.16.2-5                  ################################# [100%]
# uname -a
Linux liva.localdomain 3.10.0-123.9.2.el7.x86_64 #1 SMP Tue Oct 28 18:05:26 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
# reboot
# uname -a
Linux liva.localdomain 3.10.0-123.9.2.el7.x86_64 #1 SMP Tue Oct 28 18:05:26 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
# ls -l /boot
-rwxr-xr-x   1 root root 59396227  9月 20 21:50 vmlinux-3.16.2.bz2
lrwxrwxrwx   1 root root       20 11月 17 05:50 vmlinuz -> /boot/vmlinuz-3.16.2
・・・
-rw-r–r–   1 root root  5241232 11月 17 05:50 vmlinuz-3.16.2
なのでブートローダ次第かな
コンソール接続できるようにgrub2の構成ファイルを作り直す

# grub2-mkconfig -o /boot/grub2/grub.cfg

Generating grub configuration file …

# vi /etc/default/grub

GRUB_CMDLINE_LINUX=”vconsole.keymap=jp106 crashkernel=auto vconsole.font=latarchrheb-sun16 console=tty0 console=ttyS0,115200n8r

設定内容を反映

# grub2-mkconfig -o /boot/grub2/grub.cfg

コンソールで繋いで様子を見る

# virsh console liva

ブート画面で 3.16.2 を選択
CentOS Linux 7 (Core)
Kernel 3.16.2 on an x86_64
liva login:
# uname -a
Linux liva.localdomain 3.16.2 #1 SMP Sat Sep 20 21:50:15 JST 2014 x86_64 x86_64 x86_64 GNU/Linux
デフォルトが書き換わっていないかったようだ。
# 仮想ゲストのlivaを再起動してみたら
# uname -a
Linux liva.localdomain 3.16.2 #1 SMP Sat Sep 20 21:50:15 JST 2014 x86_64 x86_64 x86_64 GNU/Linux
なので、
カーネルを入れ直したら
grub2-mkconfig -o /boot/grub2/grub.cfg
を2度実行するといいらしい。
KVMにしておいてよかったよかった。
あとはLIVAを買ってddでイメージを展開してみるだけ(USBメモリで転送?)
あ、イメージ容量はeMMCより少ないしないとダメだよね?
もし、win.8 with being 入ってたら、KVM化できるかな?



モバイルルータにつながりにくい

スマフォ(SO-04E)のWifiテザリングには反応するので
モバイルルータも問題ないだろうと思ったけど
うまくいかない。
とりあえず
priority=1
※非公開SSID用
を設定すればつながるけど、他は全く無視する設定なので都合が悪い。
priority=2
では、他に良さげなSSIDが無い状況でしかつながらない。
さらに
モバイルルータの公衆無線LAN設定のリストに自宅の無線LANを追加
自宅LANに正常に接続できた途端に
スマフォをモバイルルータにつなぐと認証失敗する始末。
諦めてリセットボタンを長押ししたら・・・
スマフォもRaspberryPiもちゃんとモバイルルータにつながるようになった。
 
 



FLET'S光のギガ速いに変更してみようかな

100Mbps帯域でも十分なハズなのにニコニコ動画をみていると
何分かおきに止まる現象が起きている。
多分、ギガ得に帯域を取られているような気がしている。
なので「ギガ速い」をWEBで申込みしたところ
確認の電話がやってきた

新規契約ではなく

契約の変更になるので、

通常の月額料金になります

※2年割は継続

とのこと、なのでキャンセルしました。
困るくらい「ギガ速い」に帯域を取られるようになったら
ドコかに変えようかな。
順当な移行先:NURO光、AU光、JCOM、WiMAX2
ダークホース:ドコモ光(2015/2予定)



USB HDD 3TB を買ってみた

アマゾンで3TBのUSB HDDが11Kになっていた。
BDレコーダ(BDZ-EW500)はHDDは0.5GBなので、
増設用にと・・・ポチってみた。
BUFFALO USB3.0 外付けハードディスク PC/家電対応 3TB HD-LBV3.0TU3/N [フラストレーションフリーパッケージ(FFP)]
ついでなのでRaspberry pi用に
【Amazon.co.jp限定】PLANEX 無線LAN子機 (USBアダプター型) 11n/g/b 150Mbps GW-USNANO2A (FFP)
も一緒にポチっておいた。

お届け予定日: 2014年11月15日土曜日

そしていつもの様に
JRでブツを長距離を搬送中であろう今日は
ずーっと大雪。
それにしても、ちょっと

振り過ぎだろう?

それでも、記録的な規模にまで発達した台風がやってきた ゲームパッドをポチった時よりはマシかもしれない。

【ブリスターパッケージ版】HD​MI to VGA adapter ブラック / HDMI信号ををVGA出力信​号に変換するアダプター音声出力​付
を忘れていた。
Panasonic LEDシーリングライト 調光・調色タイプ ~6畳 HH-LC464A
も安くなっていた。
GW-USNANO2Aは支障なく接続。
USB-HDDに30分番組を転送するのに4分かかる。BD(4倍)に、ダビングする時間と同じだった。 (転送速度:約1GB/分) BD高速ダビングが速すぎるのか?BDZ-EW500のUSBがVer1なのか?
そしてBDレコーダの電源ONに連動するハズが接続中はHDDのモーターが回りっぱなし。
 



Tomcat8を入れる

参考:https://hirooka.pro/?p=6698
モジュールを最新にする
# apt-get update
# apt-get upgrade
Tomcat用のアカウントを作る
# adduser tomcat
Tomcat8をダウンロードして展開
# wget http://ftp.jaist.ac.jp/pub/apache/tomcat/tomcat-8/v8.0.15/bin/apache-tomcat-8.0.15.tar.gz
# tar zxvf apache-tomcat-8.0.15.tar.gz
# chown tomcat:tomcat apache-tomcat-8.0.15
/usr/localに移す
# mv apache-tomcat-8.0.8 /usr/local/

※気のせいか、/usr/local/ 以外の場所に移すとちゃんと動かない。

パスにバージョンが付くと後々、不便なのでシンボリックリンクを作る
# ln -s /usr/local/apache-tomcat-8.0.15 /usr/local/tomcat8
サービスっぽい起動用のシェルスクリプトを作る
# vi /etc/init.d/tomcat8
# chmod 755 /etc/init.d/tomcat8
起動してみる
# /etc/init.d/tomcat8 start
ブラウザから観てみる
http://192.168.*.*:8080
画面に

Apache Tomcat/8.0.15
If you’re seeing this, you’ve successfully installed Tomcat. Congratulations!

と出ていればOKらしい。
conf/tomcat-users.xml
<role rolename=”manager-gui”/>
<user username=”tomcat” password=”tomcat” roles=”manager-gui”/>
を追加して再起動しようとして気が付いた。スクリプトがダメポだった。
停止してみる
# /etc/init.d/tomcat8 stop
※サービスっぽい起動用のシェルスクリプトの中身
やっていることは、
共通部:

環境変数の設定

起動部:

多重起動チェック、実行時のユーザの切り替えてstartup.shを実行

停止部:

起動中チェック、実行時のユーザの切り替えてshutdown.shを実行

注意するべきは tomcat のプロセスIDの探し方。

元ネタではTOMCAT=…の部分が無く、
多重起動できてしまう。
しかし安易にTOMCAT=tomcatとしてしまうと
# service tomcat8 start 自身がひっかかり、さらに、対象プロセスが複数あった場合にはうまく処理できないものなので
ps auxの結果を観てみると、これが丁度良かった。
できれば2-3個見つけてしまった場合にも対応できるようにした方がいいのだろうが、
そんなときは確実に自プロセスが先頭にあるので自滅(kill  -9 自プロセス)する。
なお、chkconfig で自動起動の登録は
# chkconfig –add tomcat8
tomcat8                   0:off  1:off  2:on   3:on   4:on   5:on   6:off
— スクリプトの中身 —

#!/bin/bash
### BEGIN INIT INFO
# Provides:tomcat8
# Required-Start:
# Required-Stop:
# Default-Start:2 3 4 5
# Default-Stop:0 1 6
# Short-Description:
# Description:
### END INIT INFO
#
# tomcat
#
# chkconfig:
# description: Start up the Tomcat servlet engine.

# Source function library.
# /etc/init.d/functions

CATALINA_HOME=”/usr/local/tomcat8″
TOMCAT_USER=”tomcat”
SHUTDOWN_WAIT=10
TOMCAT=/usr/local/tomcat8/endorsed

tomcat_pid() {
echo `ps aux | grep $TOMCAT | grep -v grep | awk ‘{ print $2 }’`
}

start() {
pid=$(tomcat_pid)
if [ -n “$pid” ]
then
echo “Tomcat is already running (pid: $pid)”
else
echo “Starting Tomcat”
/bin/su $TOMCAT_USER $CATALINA_HOME/bin/startup.sh
fi

return 0
}

stop() {
pids=$(tomcat_pid)
if [ -n “$pids” ]
then

echo “Stoping Tomcat  processes ${pids[@]}
/bin/su $TOMCAT_USER $CATALINA_HOME/bin/shutdown.sh

for pid in ${pids[@]}; do

echo -n “Waiting for processes to exit [“
let kwait=$SHUTDOWN_WAIT
count=0;
until [ `ps -p $pid | grep -c $pid` = ‘0’ ] || [ $count -gt $kwait ]
do
echo -n “.”;
sleep 1
let count=$count+1;
done
echo “Done]”

if [ $count -gt $kwait ]
then
echo “Killing processes ($pid) which didn’t stop after $SHUTDOWN_WAIT seconds”
kill -9 $pid
fi

done
else
echo “Tomcat is not running”
fi

return 0
}

status() {
pid=$(tomcat_pid)
if [ -n “$pid” ]
then
echo “Tomcat is running with pid: $pid”
else
echo “Tomcat is not running”
fi
}

case “$1” in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
status)
status
;;
*)
echo “Usage: $0 {start|stop|restart|status}”
exit 1
;;
esac
exit 0



ブログの引っ越し

  • 引っ越しの準備
  • ※以下、/var/www/blog/にWordPressをインストした場合。
    1. ダッシュボード -> Database ->Backup DBで、バックアップファイルを作る。
      • ※ GZIP Database Backup File? は当然Yes。
      • ※  /var/www/blog/wp-content/backup-db などにできているのを確認する。
    2. インストしたWordPressをひとまとめに圧縮。
      • ※ GZIPオプション(z)は必須。
      • # cd  /var/www
      • # tar zcf /var/blog.tar.gz  ./blog/*
      • ※圧縮するファイルのパスを/var/www/blog/*ではなく./<ブログのインスト先のフォルダ> にするのは、
      • パスが被ってしまった時に何とかなるというより、tarファイルを少しでも小さくしたいから。
  • 引っ越し先の行動
    1. どこかで、インストしたWordPressをひとまとめに圧縮したファイルを展開。
      • # tar zxf /var/blog.tar.gz
    2. WordPressをインストした時と全く同じファイルパスに移動。
      • # mv blog   /var/www
    3. ファイルのオーナーを変える
      1. CentOS なら
        • # chown apache.apache -R /var/www/blog
      2. Raspbian なら
        • # chown www-data -R /var/www/blog
    4. mysql コマンドで ユーザとデータベースを作る
      • # mysql -u<管理者のユーザID> -p<管理者のパスワード> -Dmysql   <   <作っておいたSQL>
      • ※SQLの内容 設定する内容はphp-config.phpに書いてある通り
        • /* ユーザを新規に作成。パスワードも設定。 */
          insert into user set user=”データベースのユーザID” password=password(“データベースのパスワード“), host=”localhost”;
          /* wordpress用にデータベースを作成します。 */
          create database データベース名;
          /* データベースに ユーザが常にアクセスできるように。 */
          grant all on データベース名.* to データベースのユーザID;
          /* 最新に更新 */
          FLUSH PRIVILEGES;
    5. ブラウザから ブログのurlを開くと、Wordpressのインスト画面になるので、適当にインスト。
      • データベースをリストアするときに全て上書きされる。
    6. プラグインを有効化したりダウンロードしたりする。
    7. ダッシュボード -> Database -> Manage Backuo DBでバックアップした最新のファイルを選択して【restore】ボタンを押す。

多分、これでOK。
※若干難あり。
 
 



BlueToothアダプタ

手持ちのBlueToothアダプタを繋いでみる。
参照:http://count0.org/2014/02/06/tethering-raspi-bluetooth-iphone.html
# sudo apt-get update
# sudo apt-get install bluetooth bluez-utils bluez-compat
※起動前にアダプタを繋いでおかないとちゃんとインストされないようだ。hcitool コマンドも見つからない。
# hcitool dev

Devices:
hci0 **:**:**:**:**:**

アダプタは見つかっている。
SO-04EのBlueToothテザリングにチェックを入れても反応が無い。SmartWatch2を繋いでいるせいかもしれない。
 
 




top