テクノロイド

コンピュータやゲーム他、色々日々思ったことをつづっていきます。

ポスグレのエラー

2019-03-31 21:52:01 | ORCA関係,Debian Linux
Ubuntu12.04からアップグレードでバージョンアップした時に/etc/postgresql/に9.1と9.3が並存し、service postgres restartしても両バージョンとも再起動されるということになっていた。
そしてDBなんかは9.3を使うようになっているっぽいんだけど、アクセス制御とかは/etc/postgresql/9.1配下の設定ファイルに記述したものが反映されちゃうという奇妙なことになっていた。
なので9.1を消すのもためらわれるので、問題なく使えていたのでほっておいた。

しかし今回jma-setupでエラーが起き、にっちもさっちもどうにもブルドッグ状態になってしまった。
なのでDBのバックアップを取ってからpostgresql-9.1をapt-get removeした。すると以下のメッセージが出るようになった。
psql: could not connect to server: No such file or directory
Is the server running locally and accepting connections on Unix domain
socket "/var/run/postgresql/.s.PGSQL.5432"?
やはりわけのわからないことになってしまったかと。

/var/run/postgresql/.s.PGSQL.5432はないけど/var/run/postgresql/.s.PGSQL.5433がある。
なんだこれ?って思ってたらポート番号だとか。並存してたからそれぞれ別ポートを使用してたのかな。
とりあえずリンク先のようにport = 5432にするとエラーはでなくなったようだが、まだどこかおかしい感じがしないでもない。

SSHのRSA暗号の場合逆も可能だとか

2019-03-29 23:46:49 | Ubuntu Linux
RSA暗号の場合は特殊らしいのだが、普通SSHで認証鍵を使ってリモート接続する場合、公開鍵っていうくらいだから手元のid_rsa.pubをリモート接続先の.ssh/authorized_keysに登録する。

しかしその逆ができるということでやってみた。LXD使って手軽に試せるの便利(^_^)。

リモート接続先でssh-keygenして、id_rsa.pubを.ssh/authorized_keysに登録。
生成された秘密鍵id_rsaを手元(接続元)の.ssh/id_rsaに持ってくる。

今更RSA使うなって話かもしれないが。

※鍵は暗号/復号に使うんじゃなくて認証に使うということらしいので本文修正

lxd-p2cのバイナリが提供されてたので使う

2019-03-27 18:12:08 | LXC/LXD,コンテナ,snaps
以前Go言語で作られてるlxd-p2cのビルドが失敗したのかlxd-p2cを動作させることができなかったが、ググったら発見したので早速使ってみる。
lxd-p2c-bin

動的リンクなようなのでUbuntu14.04の環境を移したいのでtrusty版を取得する
$ bzr branch lp:lxd-p2c-bin/trusty
プログラム 'bzr' はまだインストールされていません。 次のように入力することでインストールできます:
sudo apt-get install bzr
$ sudo apt-get install bzr
$ bzr branch lp:lxd-p2c-bin/trusty
(略)
1個のリビジョンをブランチしました。
$ trusty/lxd-p2c

使い方はここ
$ sudo ./trusty/lxd-p2c https://192.168.0.xx:8443 test /
Generating a temporary client certificate. This may take a minute...
Certificate fingerprint: c517791e3f...a828277122e8a
ok (y/n)? y
Admin password for https://192.168.0.xx:8443:
Error: not authorized

なんでやのん。パスワードは今設定してimageのコピーもできてるから間違ってるはずないんだが!
→lxd-p2c側をシャットダウンして一旦中断してから再び挑戦。
 LXDサーバ側でlxc monitor仕掛けてメッセージ見ようと思ったらあっさり動いて拍子抜け。
 悩んだ時間返せー!!!(T_T)

ラズパイraspbianでjavaのフォントが・・・

2019-03-27 15:25:17 | ORCA関係,Debian Linux
monsiajというjavaで作られたアプリがラズパイの標準OSなraspbianで動作するか確認してみた。
monsiajはjava8で動作ということなのでまずはjavaのインストールから。
pi@raspberrypi:~ $ apt search java8
oracle-java8-jdk/stable,now 8u65 armhf [インストール済み]
Java™ Platform, Standard Edition 8 Development Kit
と思ってたら既にjava8が入ってた。
というか、openjdkじゃなくてoracleのが入ってるとは。間違ってopenjdkじゃなくてjava8でサーチして正解だっという。

monsiajのzipをダウンロードして展開して
pi@raspberrypi:~ $ java -jar monsiaj-bin-2.0.12/orcamoclient.jar
で動いた。
まあ問題は無いようなんだけどフォントが汚いなあなんて思ったからフォントを追加インストールしてみた。
pi@raspberrypi:~ $ apt search noto
fonts-noto-cjk/stable,now 1:1.004+repack2-2 all [インストール済み]
"No Tofu" font families with large Unicode coverage (CJK)
notoフォントをインストールしようと思ったら既にCJKが入ってた。

メタパッケージfonts-noto自体は入ってなかったので入れて(apt install)みたら、何故かmonsiajで漢字が表示されなくなってしまった。豆腐じゃなくて表示がない。

とりあえずfonts-takaoを入れれば何とかならないかと思ったんだが効果なし。
どうすればいいんだ・・・。
→apt remove fonts-notoしてapt autoremoveすると、fonts-noto-hinted fonts-noto-unhintedが削除されて文字が表示されるようになった。ホッ。
文字の汚さは変わりなしだが、これはraspbianの問題かな。

ファーウェイの発表会

2019-03-27 05:08:49 | モバイル(携帯)
Huawei P30 Series(発表会のYouTube動画リンク)

う〜む、個人的にまさかファーウェイのことを気にする時がくるとは思わなかった。
昨日はAppleが発表会を行ったけれども、日本人的にはポッカーンってな内容だった。ファーウェイの発表会を見てしまったら、iPhone依存の脱却でコンテンツサービスに逃げてしまうのも無理はないって感じか。

先日docomoのGalaxyNote9かS9+が安くなってないかなと家電量販店に行ったんだけど安くなってなくてがっくりしたところ。
auはS9+がMNP0円だったようだが既にauなんで意味なし。機種変更は高いし。

それでソフトバンクはなんでGalaxy扱わなくなってるんだよおなんて思ってたんだけど、今年になってファーウェイのMate20Proを販売開始したようだ。
P30Pro程じゃないが、光学3倍ズームカメラ搭載。スーパースローもあるみたい。一応ステレオスピーカーらしいし、GalaxyのDeXみたいなPCモードなんてのもある。Galaxyの代わりになるか、つーかそれ以上なのか。一応GalaxyにはDeXでUbuntuが動くのに期待しているわけだけど。
今までファーウェイはほぼノーチェックだったんだけど、それが安く買えるようになるとしたらソフトバンクに移ろうかなと思わさせられた今回の発表会だった。

raspbianでLXD

2019-03-24 17:55:55 | LXC/LXD,コンテナ,snaps
ラズパイ用標準OSのraspbianにsnapdが用意されてサクッとLXDがインストールできるようなのでやってみた。

snap/LXD関係ないけどデフォルトでsshログインできなくなっているので、/boot/sshを作成
する必要があった。
# touch /boot/ssh

snap版LXDをインストール
# apt install snapd
# snap install lxd
piユーザをlxdグループに追加
# gpasswd -a pi lxd ← Debian系ならadduser pi lxdでいけるっぽい
再起動が手っ取り早いかな

pi@raspberrypi:~ $ lxc list
ERROR: ld.so: object '/usr/lib/arm-linux-gnueabihf/libarmmem.so' from /etc/ld.so.preload cannot be preloaded (cannot open shared object file): ignored.
エラーが出たのでググって対処
# rpi-update
再起動して正常になった
※直前にapt dist-upgradeしたのがいけなかったんだろうか?それとも再起動せずに再ログインで済ませてたからだったりして。
追記)再び発生したのでこっちの対策(/etc/ld.so.preloadでコメントアウト)をやってみた。

# lxd init
対話は省略するけどストレージはデフォルトのbtrfsで、容量はとりあえずデフォの倍の2GBを指定

pi@raspberrypi:~ $ lxc launch ubuntu u18 ← ubuntu:が正解だったっぽいけど実行できた
Creating u18
The local image 'ubuntu' couldn't be found, trying 'ubuntu:' instead.
Starting u18
pi@raspberrypi:~ $ lxc list
+------+---------+--------------------+----------------------------------------------+------------+-----------+
| NAME | STATE | IPV4 | IPV6 | TYPE | SNAPSHOTS |
+------+---------+--------------------+----------------------------------------------+------------+-----------+
| u18 | RUNNING | 10.0.246.40 (eth0) | fd42:f3f0:ddfa:a6c:216:3eff:fe9e:8892 (eth0) | PERSISTENT | |
+------+---------+--------------------+----------------------------------------------+------------+-----------+
pi@raspberrypi:~ $ lxc exec u18 bash
root@u18:~# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 18.04.2 LTS
Release: 18.04
Codename: bionic

raspbianコンテナが無いようなんで、raspbianの元になったDebianにするか、Ubuntuにするか迷ってとりあえずUbuntuにしてみた

ついでにUbuntuコンテナの日本語環境の設定(※以下ラズパイ上で試してないけど)
$ lxc exec u18 bash
root@u18:~# apt install -y language-pack-ja fonts-takao
E: Unable to locate package fonts-takao ← apt updateしてなかったのでエラー(※ちなみにtakaoフォントは必要ないけども)
root@u18:~# apt update
root@u18:~# apt dist-upgrade
root@u18:~# apt install -y language-pack-ja fonts-takao
root@u18:~# update-locale LANG=ja_JP.UTF-8
root@u18:~# timedatectl set-timezone Asia/Tokyo
root@u18:~# exit
$ lxc restart u18 ← 念の為コンテナを再起動
$ lxc exec u18 bash
root@u18:~# su - ubuntu ← ユーザーアカウトへ
ubuntu@u18:~$ date
2019年 3月 25日 月曜日 13:23:04 JST ← 成功!

日本語化したのでコンテナ名を変更してみる
$ lxc mv u18 u18j
Error: Renaming of running container not allowed ← コンテナ動作中だったのでエラー
$ lxc stop u18
$ lxc rename u18 u18j ← renameコマンドを知ったので使用
$ lxc start u18j
$ lxc list
| u18j | RUNNING | 10.196.59.105 (eth0) | fd42:d2b7:8cf1:c761:216:3eff:fe7b:ba18 (eth0) | PERSISTENT | |

パスワード入力無しでu18jコンテナのubuntuユーザにsshログインするには
$ ssh-keygen
$ lxc file push .ssh/id_rsa.pub u18j/home/ubuntu/.ssh/authorized_keys
$ ssh ubuntu@10.196.59.105

今後は日本語化したのを色々と使い回ししたいのでイメージ化
$ lxc publish u18j --alias Japanese18.04
Error: The container is currently running. Use --force to have it stopped and restarted ← 再びコンテナ動作中だったのでエラー
$ lxc stop u18j
$ lxc publish u18j --alias Japanese18.04
Container published with fingerprint: bd939ff07(略)
$ lxc image list
| Japanese18.04 | bd939ff07daf | no (略) 288.24MB | Mar 25, 2019 at 4:52am (UTC) |

作成したイメージを使ってUbuntuデスクトップ用コンテナを作成
$ lxc launch Japanese18.04 u18x
Creating u18x
Starting u18x
$ lxc exec u18x bash
root@u18x:~# apt install ubuntu-desktop
root@u18x:~# apt install xrdp ← デスクトップ環境にRDP接続できるようにする
root@u18x:~# passwd ubuntu ← RDP接続用にubuntuユーザーのパスワードを設定する
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully

コンテナのアドレスをproxy設定して外部からRDP接続でu18xのデスクトップにアクセス可能にする
root@u18x:~# exit
$ lxc list
| u18x | RUNNING | 10.196.59.61 (eth0) | (略)
$ lxc config device add u18x rdp proxy listen=tcp:0.0.0.0:3389 connect=tcp:10.196.59.61:3389 bind=host
Device rdp added to u18x
これで他のUbuntuマシン等からReminna等を使ってu18xのデスクトップを使えるようになった。
ただし、接続してログイン後に最初に表示されるカラー設定はキャンセルしないと落ちるので注意。

ちなみにコマンド入力が面倒くさいので.bashrcにaliasを設定している。※alias使うとオプションのタブキー補完が効かないので注意
alias x='lxc'
alias xl='lxc list'
alias xe='lxc exec'
alias xs='lxc start'
alias xf='lxc stop'
alias xr='lxc restart'
xfのfはFINのfのつもり

MacにもLinuxでいうKVMみたいなのがあった模様

2019-03-20 14:42:37 | Ubuntu Linux
そういえばQEMUって具体的に何?とググって、QEMU Windowsとx86 Androidでエミュレーション環境を作成するというサイトを見ていたら、「Macの場合はxHyveが使えたりする」と書かれていたのでxHyveをググってみた。
macOSでもVIVO(neoscrypt)を掘りたい!xhyveでUbuntuを入れてCPUマイニング!」 って記事があった。MacでVirtualboxとか使わなくてもUbuntuを動かせるとは面白い。ちなみにxHyveはFreeBSDのbHyveの移植だそうで。
Macが無いから試せないけども、まあなんかの時に役に立つかも?
まあKVMもだけど、コンテナと違ってメモリが余計に必要なのがちょっとね。

99ドルのNVIDIA Jetson Nanoがやばすぎ

2019-03-19 16:37:09 | パソコン/マイコン全般
ちょうどまともな仕様で登場したiPad Air/Miniのニュースが一部で話題になってるのかな?
今時の仕様になっただけみたいだが「何故発表会で一緒に発表しなかったんだ、Appleのまぬけ」なんて声もあるようで、色んな人がいるもんだなと。

しかしLinuxerとしては断然小型AIコンピュータJetson Nanoでしょう。
128コアGPUで4GBメモリにHDMI/DisplayPort出力でたった99ドル。Ubuntu 18.04ベースのLinux環境。
ロボットとかの組み込み向けだから画面出力が無いんだろうか?なんて危惧したけど、(開発用ボードに?)あるようなんでひと安心。
1GBのラズパイでWindows10が動いてんだから、これだとまともに動くだろうなあ・・・。
すごすぎる。
※薄々そうじゃないかなと思っていたが、やはりNintendo Switchが内蔵するチップと同じアーキテクチャのチップだそうだ。

将棋のAIソフトが、グラフィックカードを追加してないXeonマシンとJetson Nanoでどっちが優秀なんだろうなあ。興味あるなあ。

個人的には50インチの4Kディスプレイが税込み送料込み3万円で投げ売りされたのが一番ショッキングなニュースだったけど。
情報知ったのが遅すぎて買えなかったので余計に(笑)。

10倍ズームカメラのスマホが日本でも発売

2019-03-19 16:28:35 | モバイル(携帯)
OPPOの10倍ズームカメラのスマホが日本でも発売されるそうだ。
いやあまさかスマホで10倍ズームなんて作られるとは思わなかった。
高くて買えないだろうけど。今んとこスマホに3万円以上出すつもりはないからなあ。

んで、光学2倍ズームだけどいたれりつくせり機能満載のGalaxy S9+かnote9が欲しいんだけど、なんかやばめな法律が作られそうだから安く買えることはなさそうなのが気がかり。

lxd.migrateなんてあったとは不覚

2019-03-13 16:40:26 | LXC/LXD,コンテナ,snaps
LXDをapt版からsnap版に移行するという記事を発見。
最初は特に気になったわけでもなくチラッと見てみると、個人的にめちゃくちゃ貴重な情報だったのでビックリした。

常用しているUbuntu16.04なPCにapt版LXD(なのでVer.2.0.11)を入れていた。
それがいつの間にか動かなくなっていたし、LXDのバージョン古いしUbuntuも18.04に上げたいので、他のマシンでsnap版LXD動かしてるのもあってこのままコンテナ毎捨て去って常用マシンをUbuntu18.04に入れ替えようかなと思ってた。
なので、今の常用環境(メール等)を2in1ノートPCなT101HAのLXDコンテナ内に移しているところだった。

ただT101HAを常用マシンにしようと思ってたが、さすがに常用には10インチは小さいし、キーピッチ17mm強程度だとやや使いづらい。
なので12インチノートPCなSG116jに移行しようかと考えて"lxd migrate"でググッて上の記事を発見。
WinとデュアルブートなSG116jのストレージ容量だと心許無いので、今の常用マシンがsnap版LXDになれば問題ないじゃんと。

以前別マシンでapt版を入れた後にsnap版を入れたら支障があったのでもうやりたくないと思ってたのに、超簡単コマンド一発で移行できるとはビックリだぜ。
幸い動かなくなってたLXDが動くようになってたので、さっそくsnap版LXDを入れてlxd.migrate実行。
マジで拍子抜けしちゃうくらいあっけなくsnap版に移行できちゃった。

記事中のsnap set lxd criu.enabled=trueでsnap版でもライブマイグレーションできるようになるってのも、何気に貴重な情報だなあ。ありがたや。

ーー
さっそくコンテナを転送(copy)。
remote$ lxc config set core.https_address "[::]"
remote$ lxc config set core.trust_password hoge
local$ lxc remote add remoho xx.xx.xx.xx
local$ lxc copy u16 remoho:
Error: The source server isn't listening on the network ←通常はpullなので失敗
local$ lxc copy u16 remoho: --mode push
Error: Requested profile 'gui' doesn't exist ←転送先にguiプロファイルが無くて失敗
local$ lxc profile copy gui remoho: ←まずはguiプロフィルを転送
local$ lxc copy u16 remoho: --mode push
成功!