アレコレ・ティプス

これ便利だな〜と思ったことなど

Chrony で 自動 強制 時刻 同期 設定  for 仮想OS VM ( CentOS7 )

chrony の一部設定において 日本語 サイト では 以下対策の情報が とてもヒットしづらかったので 書き起こします。

 

https://chrony.tuxfamily.org 

f:id:asuki_y:20180908120247p:plain

 

自身は 仮想OS を扱いますが、その仮想OS は、夜中の間、仮想サスペンド状態 になります。
 
そして、朝 特定の時間になると、 サスペンド から復帰した時に、時刻が 夜中のまま盛大に毎回ずれるという仕様です。( QNAP Virtulization Station の VM - CentOS7 上で )
 
そのとき、どうやって chrony の設定ファイルを使って 毎朝 強制時刻同期させるか? というテーマです。

 

f:id:asuki_y:20180421214033p:plain

 


 

[ 結論 ]

 
/etc/chrony.conf  の makestep 指定において、最後の引数を -1 に する。
 
例) 10秒以上 ずれてたら 毎回 stepモードで 強制的に時間を設定する。
 
makestep 10 -1

 


 
通常 makestep は、このような設定などが 例としてあげられています。
リアルマシン向け にも妥当な設定かと思います。

 


 
makestep 3 
 
1秒以上の 時刻ズレ があったら、3回まで ntpサーバーに同期する " 設定です。

 


 

 

しかし、 回数 無制限 の指定はどうするのか、わからなかった。
 
アシタリスク * を使ってもNGだったし🤔むむむ
 
「 回数指定を -1  にするんだよ 」
 
あ、なるほどね。。

 


 
こちら を参照しました。
 
参考1  
" 3.3. Is chronyd allowed to step the system clock?  "  の段落
 
参考2
" makestep "  の 段落
 (マイナス値を使うと、制限を無効にできます)。

Node-RED  グローバル変数

フロー外 変数を共有する。
フローを またいで変数を共有する。
フローを 横断する変数の設定。
 
いろんな言い方があるかと思いますが、
ともかく、
 
Node-Redグローバル変数 を使う。
 
 
 
1、変数の設定書き出し側のフロー内に以下内容んの function ノードを設置。
var text = " グローバル変数を設定するよ";
 
global.set("global_temp",26);
msg.payload = text;
return msg;
 
例えばこんな感じで、 timeStamp でもtrue でもいいので、
とりあえず ボタンを押して イベント発火して グローバル変数の " Set " を 行って テストをすると 使い方を 体感しやすいかと思います。
 
 
2、読み側 の フロー内に 以下内容の function ノードを設置。
 
var temp = global.get("global_temp");
msg.payload = "グローバル変数を、読み出すよ : " + temp;
return msg;
 
 
以上です。
 

iPhone iOS11 の AirDrop " すべての人 " からの通信を許可するには

 最近 弟からの相談で、昔の iPhone に入っていたデータを、 新しい iPhone に入れたい けど windowsiTunes が微妙な動きをしていてできない。 といったことだったので、 古いiPhone から 新しいiPhone へ 直接画像データを転送する方法 をアドバイスした。 どうもそれで解決しそうだ。
 
その時 AirDrop の設定変更は iOS11 で どのようにやるのか 気になったので、まとめてみた。
 
< iOS11 における AirDrop の設定変更 >
 
 メインのアプリを選択する画面 を開く。
 
下から、メニューを出す。
 
 

 
この 一番左上の部分を長押しする。( iPhone SE でした )
 
するとこのような画面に。

 
ここで AirDrop を選択する。
 
" すべての人 " を選べば、 他の iPhone から Bluetooth - AirDrop経由での画像送信を 受け付けやすくなります。
 
 
 

iPhone を simロック解除 して MNP 作業完了できた記録

GWは 朝4:30 に起きたり、GoogleMapを駆使したりして 苦戦しながら 都会の渋滞を抜けて、大自然の空気に触れてきました。
 
 写真は 5/3 軽井沢 雲場池 にある CAFE R's POND にて、景色撮影に夢中になっていたら、、

f:id:asuki_y:20180515163225p:plain

 
5/4 長野の戸隠 で 雪に降られてびっくりした。 
 
さて今回は、手持ちの iPhone SE の SIM ロック を解除して、電話番号ポータビリティー制度 MNP で電話番号を持ち運び、LINE アカウントの引き継ぎまで うまくいったので、備忘録として 大切そうなポイントと  大まかな流れ、 フロー を記録しておこうと思います。
 
 
 

iPhoneのバックアップをとっておく

iTunes を使う。
 

Sim ロック解除 申請

事前に 契約していたキャリアのアカウントで Sim ロック解除 申請処理を済ませておく
 
マイソフトバ○ク など
 

iPhoneを探す」 機能を必ず オフ にする

( アクティベーションロック を解除 )
 
 

LINEアカウント 引き継ぎ を オン にしておく

( 自分の場合は 個人的なセキュリティ〜ポリシー上 LINEに電話番号を渡さずにFacebookアカウントで利用していたので、LINEに必要な作業はなかったのかも。)
 
LINE の設定画面から アカウント引き継ぎ 設定 にいけます。

 

MNP 申請

 
これまで使用していたキャリアで MNP 申請
( ここで電話番号が法人アカウントだとBIGLOBE側でNGになる💦BIGLOBE側では、個人アカウントのみMNPに対応している? )
 
今回は、BIGLOBE のsimを使うため、一旦 MNP申請の前に 法人アカウントから 個人アカウントにする必要があった。法人アカウントから 個人アカウントに切り替えは、1日かかるので、切り替え申請の翌日から MNP申請ができた。
 

電源オフ

iPhone 電源OFF 
 

Sim入れ替え

BIGLOBEの店頭 で sim入れ替え作業 を店員さんにやってもらえた。
 

電源オン

 iPhone 電源ON
 
 

プロビジョニングプロファイルのインストール

 
まず、店舗で wifi 回線 などを借りて iPhoneから インターネットに接続。
 
指定の アドレスにアクセスして、新しいsim、BIGLOBE用の プロビジョニングプロファイルのインストール。
 
これの設定がうまくいと、 iPhone 単体で インターネットができたり、電話できるようになる。
 
うまくいかない場合は、sim Lock が解除されているか、アクティベーションロックが解除されているか、よく確認しよう。
 
だめなら、とっておいたバックアップを  使ってなんとかやる方法がある と思う。
 
自分は、今回は、すんなりいけたので、 バックアップファイルは使わずにすみました。
( でも 念のため一応 バックアップ はしておこう。)

動作確認 

電話、インターネット通信、LINE アカウントの動作確認
 
 
以上。
 
家族割引も手伝って 電話と通信データで、月額 2000円くらいになった(゚o゚)
 
 

早く寝たい時に使うサプリを選んでみたが、、

〜 いつもより早く寝たい時に使うサプリの選定をしてみた 〜

 

今年も、週一で 6:00からの早朝テニスが始まった!
( 冬の間は、暗くてボールが見えないので、どれだけこの時を待ち続けていたことか! )
 
そのために、今回は、その前夜だけは早寝したいという要求仕様になります。
 
良さげなサプリはないか? いろいろと考えてみました。
 

f:id:asuki_y:20180421214033p:plain

 

 

目次

 

 

GABA

 

この前 ツイッター100円均一で 売ってる

 

って話題になったから気になったので、買おうと思った。

 

-> どこも売り切れてるやん。。

 

仕方ない。他の方法で探す。

 

 


グリシン を使う。

 

ん〜 これとか?

 

 

 

グリシンは、コンビニの弁当とかおにぎりにも入っていて、ご飯も相まって結構眠くなりますよね。防腐効果もあるみたいですね。( 個人的には、亜硝酸ナトリウム とかよりましかな )

 

ただ、こういったものは人工的に作ったものがほとんどとのことで、
なるべく自然な食品から取りたい。


コラーゲンペプチド


この中にも グリシン の成分が含まれているとのことでした。

 

http://www.sciencecomlabo.jp/healthy_food/collagen.html


なので、吸収率の高い コラーゲンペプチド の入った 青汁とか そういった類のものや、原料 および 生産地 ( 〇〇県〇〇産 とか) が書いてあるものも結構ありだなと考えました。

 


でも、最近 ごぼう の代わりに ごぼうの粉末アンチエイジング 用途で、折を見て愛用していて思ったのですが、粉末は コスパはいいけど、管理 が難しい。 主に 湿気対策 


なので、カプセル錠で 飲めるタイプがいいなと思った。

 

 
これはイイ!


と思って、一応 原材料名 を確認。


ひとつ 気になったのは、、


グリセリン脂肪酸エステル

 


乳化剤 として、懸念される人もいるようで、気持ちもわかりますが、これを使わないことで油の酸化 が進みやすくなり、そっちの方の発ガン性物質の方が、影響が大きいかも。ということも考慮された上での トレードオフ を検討された方がより実質的な結論になるかもしれません。


自分は、欲張りなので、どっちもないのがいいなと思い、また深掘りしてみると、発芽玄米を食べることで、自然にグリシンがとれそうということがわかった。


そういえば、体感として、ご飯たべたら眠くなるし、それを逆手に使おうと考えた。

 

自分の慢性病を次々に直していく、原因を明らかにしていく尊敬する漢方先生がいらして、その先生曰く、

 

「 ご飯を食べて眠くなる。 これは農耕民族の 自然な からだの作用  」

 

とのことです。( 詳細は一旦今回は省きます )

 


ところが、面白い記事を発見した。

 

検索ワード

 

" 発芽玄米  眠くなる "

 

 

アブシジン酸 という毒

 

https://tetetenoblog.com/540.html

発芽玄米を食べて眠くなる原因には、ご飯の消化吸収の際の農耕民族本来の自然な作用だけでなく、玄米の「 アブシジン酸 」 という毒が原因で眠くなるとのこと。

 

まじか!(゚O゚)

 

これは 妊娠中の方など要注意ですが、個人的には、こういった少量の毒をむしろ待望していた😎

 

別にドMではない。

 


サプリ の危険な使い方

 

そもそも 個人的な考えでは、サプリは使い方次第では、より深い毒である。

そのサプリを飲み続けなければ いけなくなる という体を作るのに適している。


いわゆる サプリ中毒者 を " 大量生産 "して、儲けている企業が多いという考えなので、

 

「 xxxx (サプリ) を毎日飲むと体にいいですよ 」

 

という宣伝をしている企業は、基本的に信用していない。

仮に毎日それを飲み続けていった結果、だんたん効かなくなっていきませんか?

消費量は増えていきませんか?

 

そういう体になることで、本当にあなたの心と体を大切にしてくれているのでしょうか。

 

 

大切なのは 自己防衛?

 

自分は 古来より伝わる哲学や、人間の原始時代での営み はどうだったのか ということに思いを巡らせて考えてみることを大切にしています。

 

自分にとっての究極的な" 自然体 "とは何か、いつも趣深いです。

そしてとても深く、すっきりと腑に落ちるものは、時に清々しいものです。

 

 

古来より伝わる哲学 と 少量の毒 と 漢方

 


逆に毒は、古来よりの仏法哲学の言葉を引用すると、 " 変毒為薬 " とある。
竜樹の『大智度論』にあるように、毒を変えて薬と為す 。と

 

そう考えると アオカビ から発見された ペニシリン って 面白いです。

 

また、漢方医学 ( 中医学 )では、少量の毒のある生薬をうまくつかって、慢性的な病を治癒していくものがあるように、1週間に1回くらいは、サプリよりも、少しくらいの毒を取り入れる形の方が、自分の漢方スタイルに合っているので、これで決めた。


自分が本来もっている免疫などの作用の方を正常に働かせて、少量の毒をあえて取り入れて、体内における薬の作用に変えていく

 

また逆に、体が従来もっている機能やはたらきを、甘やかしすぎない程度にバランス・タイミングに気をつけて、必要な時、ここぞという時に、サプリ を有効につかう。

 

これが私の基本とする からだ および 健康 作りです。

 


結論 はシンプル

 


これからは、早く寝たい日は 発芽玄米 を ご飯に混ぜて炊いて食べよう。

( 他の日は、普通のご飯でいい )

 

 

 

 

 

 

あ、ついでに GABA も入ってるやん(゚O゚) 

 

 

毎日 同じものばかりよりも、日々いろんなものをバランス良く食べて、健やかに快適なライフを(´ω`)  

piwik ( matomo )インストール

web解析ツール matomo を使おうと思ったので、その時の記録を。
これは、自分で制作したwebサイトに  matomo 用の javaScript を仕込んだりして、アクセス解析に使うように見受けられました。
 
また、matomo とは、もともと piwik という名前でした。
 
Matomoはオープンソースで開発されている高機能なリアルタイムアクセスログ解析プログラム。
MatomoはGoogle Analyticsの代わりとなるオープンなウェブ解析を目指し、100万以上のウェブサイトで利用されています。
 
 〜 https://matomo.jp より抜粋

 

それでは、今回は メモ程度ですが、インストールした時の ものを。

 

環境

Centos7
MariaDB を使う
 

 

MariaDB の準備

 

 
 
  # yum update -y
  # yum install -y vim wget
 
  # yum install centos-release-scl
  # yum install -y rh-php71-php rh-php71-php-mysqlnd \
    rh-php71-php-mbstring rh-php71-php-dom rh-php71-php-xml rh-php71-php-gd \
   sclo-php71-php-pecl-geoip rh-php71-php-devel \
   httpd24-httpd
 
  # yum install -y mariadb-server mariadb
 
  # systemctl enable httpd24-httpd mariadb
  # systemctl start mariadb
  # systemctl start httpd24-httpd
  # mysql_secure_installation

 

パスワードの設定は今回は、お試し用なので、しませんでした。 
 
  ○ Database のパスワードは設定しますか? [Y/n] n
  ○ root のパスワードを設定しますか? [Y/n] n
  ○ Remove anonymous users? [Y/n] y
  ○ Disallow root login remotely? [Y/n] n
 
今回は使わなそうなので 削除 
 
  ○ Remove test database and access to it? [Y/n] y
 
(権限テーブルを読み込む)
 
  ○ Reload privilege tables now? [Y/n] y
 
 
これでmariaDB の初期設定完了
 
 

matomo ( piwik )のインストール

 
matomo をインストールするディレクトリの作成から。
 
  # mkdir /opt/matomo-install
  # cd /opt/matomo-install
 
  # tar -xvf piwik.tar.gz
 

 

○ 解凍した piwik フォルダを 移動
 
# mv piwik /opt/rh/httpd24/root/var/www/html/

 

 
○ selinx を permissive に書き換える(詳細操作省略)
 
  # vim /etc/sysconfig/selinux
 
○ 再起動
# shutdown -r now

 

  # chown -R apache:apache /opt/rh/httpd24/root/var/www/html/piwik
  # sudo chmod -R 0755 /opt/rh/httpd24/root/var/www/html/piwik/tmp

 

 

MariaDB に matomo 用のデータベースの構築

  # mysql -p
 
  mysql> CREATE DATABASE matomo_db;
  mysql> CREATE USER 'matomo'@'localhost' IDENTIFIED BY '適切なパスワード';
  mysql> GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES ON matomo_db.* TO 'matomo'@'localhost';
 
 
○ ブラウザでアクセスできればOK!
http://インストール対象のIPアドレス/piwik/
 
 
参考: CentOS6 でのインストール
 
参考 : MySQL でのエラー対処
 
 
 できた!
 
セキュリティ をしっかりすべきところで行う場合は、
データベースのパスワードなど 適宜設定 する必要があります。
 

あとは、設定して使えます。たぶん。
ただしこれは、セキュリティが緩い状態なので注意です。
 
この画面からの設定方法は、設定したデータベースの情報、" matomo_db " や、" パスワード " など について気をつけながら、行うと良いと思います。
 

たてた Mattermost で 日本語全文検索 を可能にする

 

・( 前回の記事の続きになります )・ 

 

asuki-yt.hatenablog.jp

 

 

これで Mattermost が動いたのはいいものの、、

前回の記事では、インストールした Mattermost サーバーに投稿されたチャットデータ の日本語全文検索 機能がないので、一旦、後付けで対応させる。
 
 
 目次

 

環境のおさらい

CentOS7
mattermost 4.7.3 ( 前回の記事の内容で稼働中 )
MariaDB   10.3.2 
しかし、日本語全文検索が効かない。
 
-> そこで今回は、、
 
Mroonga groonga mecab の環境を準備して、対応する話、、
 
にしようと思ったところ、 詳細を調べてみたら、 MariaDB 10.3.2 に Mroonga が内蔵されているので、それを有効化、テーブルに適応することで解決しました*1
 
 

ストレージエンジン Mroonga の有効化

 
まず Mroonga が 無効状態であることを確認
 
# mysql mattermost -u root
 
MariaDB > SHOW ENGINES;
+--------------------+---------+----------------------------------------------------------------------------------+--------------+------+------------+
| Engine             | Support | Comment                                                                          | Transactions | XA   | Savepoints |
+--------------------+---------+----------------------------------------------------------------------------------+--------------+------+------------+
| CSV                | YES     | CSV storage engine                                                               | NO           | NO   | NO         |
| MRG_MyISAM         | YES     | Collection of identical MyISAM tables                                            | NO           | NO   | NO         |
| MEMORY             | YES     | Hash based, stored in memory, useful for temporary tables                        | NO           | NO   | NO         |
| Aria               | YES     | Crash-safe tables with MyISAM heritage                                           | NO           | NO   | NO         |
| MyISAM             | YES     | MyISAM storage engine                                                            | NO           | NO   | NO         |
| PERFORMANCE_SCHEMA | YES     | Performance Schema                                                               | NO           | NO   | NO         |
| InnoDB             | DEFAULT | Supports transactions, row-level locking, foreign keys and encryption for tables | YES          | YES  | YES        |
| SEQUENCE           | YES     | Generated tables filled with sequential values                                   | YES          | NO   | YES        |
+--------------------+---------+----------------------------------------------------------------------------------+--------------+------+------------+

 

以上、Mroonga 無いやん。 

 
MariaDB 10.0.x 以降では Mroonga のプラグインがバンドルされているらしいので、
これを有効化してみる。
 
MariaDB > INSTALL PLUGIN Mroonga SONAME 'ha_mroonga.so';
MariaDB > CREATE FUNCTION last_insert_grn_id RETURNS INTEGER SONAME 'ha_mroonga.so';
MariaDB > CREATE FUNCTION mroonga_snippet RETURNS STRING SONAME 'ha_mroonga.so';
MariaDB > CREATE FUNCTION mroonga_command RETURNS STRING SONAME 'ha_mroonga.so';
MariaDB > CREATE FUNCTION mroonga_escape RETURNS STRING SONAME 'ha_mroonga.so';
 

 

○ Mroonga 有効の確認
 
MariaDB > SHOW EGINES;

 

 
・・・ ( 以下 項目があれば OK )
 
| Mroonga            | YES     | CJK-ready fulltext search, column store 
 
・・・
 
  MariaDB > QUIT
 
 

MariaDB の 設定ファイルの更新 ( my.cnf ) 

  # vi /etc/my.cnf.d/server.cnf
 
以下 cnfファイルの設定内容  
 
    [server]
 
    [mysqld]
    # matterMostで扱う日本語の文字コード *2
    character-set-server=utf8mb4
 
    # MeCab Full-Text Parser Plugin Settings
#    loose-mecab-rc-file=/etc/mecabrc  今回のやり方では不要
 
    # InnoDBでの単語最小文字数
    innodb_ft_min_token_size=1
    # MyISAMでの単語最小文字数(必要に応じて)
    ft_min_word_len=1
 
    # 以下は、システム仕様に合わせてよしなに
    innodb_buffer_pool_size=1024M
    innodb_log_file_size=1G
 
    server-id=100
 
    max_connect_errors=10000
    max-connections=500

  

    *2 -> default-character-set だと、古い書き方 とのことで ERROR になった。
    *2 -> matterMost では、絵文字も使っているため、寿司ビール問題回避のためutf8mb4 の方がよい
 
 

設定の反映

 
○ クライアント ユーザー側のブラウザで開いている matterMostの画面を全て閉じる。
 
○ Mattermost を停止 
 
# systemctl stop mattermost
 
mariaDB を停止
   -> スタート (設定の変更が反映)
# systemctl stop mariadb
# systemctl start mariadb

 

 

インデックスの再構築

 
○ (  インデックス再構築の前に必要に応じて DBのスキームのバックアップをとっておく )
 

# mysqldump mattermost -u root > ./ddl.sql

 

○ いざ ALTER TABLE でインデックス再構築を。
 
# mysql mattermost -u root
 
o PostsテーブルのストレージエンジンをMroongaに変更
 
MariaDB > ALTER TABLE `Channels` ENGINE = Mroonga;
MariaDB > ALTER TABLE `Posts` ENGINE = Mroonga;

 

これはできないx  
mysql> ALTER TABLE `Users` ENGINE = Mroonga;
 
-> ERROR 1062 (23000): Duplicate entry 'NULL' for key 'AuthData'
 
 
 ところが、 Posts と Channels の方は、テーブルの再構築ができたので、チャットやチャンネル検索の機能としては問題なさそうだ。
 
ユーザー検索で 困る程度かと考えられる。
 
( インデックスの再構築で対応せず、前回記事の CREATE TABLE の段階から、Mroonga を反映させておく方が吉。もし、そのやり方を記事にされている方がいたら、積極的に リンクをこちらに貼ります!)
 

準備完了!サービス再起動

 
○ テーブルの再構築結果を反映してDB再開
# systemctl restart mariadb
 
○ マターモスト 再開
# systemctl start mattermost
 
 
以上のDB 適応で、 日本語検索ができるようになった!
 

f:id:asuki_y:20180402225918p:plain

 

 おまけ 

( CentOS7 の サービスの問題解析のお供に )
 
mariaDB をいじる時は、 別のターミナルで、
# journalctl -f
としておいて そこに流れるログを 見ながら行う と 解析がスムーズかと思います。
 
- - - 
 
参考: Mroonga プラグインの有効化
 
参考: goonga をインストール方法
 
参考 :  InnoDBMyISAM の違い
 
参考: polkitd の " Unregistered Authentication Agent for unix-process " は問題ないか?
 

*1:ただし、解決したのは、チャンネル名の検索と、チャット投稿データの日本語全文検索においてであり、ユーザー名の検索においては解決できていないので注意