Nexus5 をルート化してUbuntuを動かす

昔使ってたNexus5が出てきた。今は簡単にRoot化できるっぽいので遊んでみる。

Nexus5をルート化

下記のページ通りにやったら、簡単にできた。
Nexus5で遊ぶ その3: ルート化の準備 | メモ置場のブログ

もし失敗した場合は下記を参照して復旧。
【Nexus5】Nexus Root Toolkitを使ったプレ文鎮からの復旧方法-Gintoki Note

Linuxマシン化

1.必要のアプリをインストール

Linux Deplay で Ubuntuを入れる

下記サイトを参考にイントール。インストールされるUbuntuのヴァージョンは「18.04」。
Linux Deploy を使用して Android フォンに Ubuntu をインストールする方法 – Moyens I/O
LinuxDeployを使用してAndroidにLinuxをインストールする| Linux中毒者

Ubuntu の設定

Shellをzshに変更

下記サイトを参考にシェルをshからzshに変更
Ubuntuのシェルをzshに変更する – Qiita

必須ツールを設定

「nano」と「curl」をインストール

$sudo apt-get install nano

$sudo apt-get install curl

日本語化

下記サイトを参考にUbuntuで日本語を使える様にする。
Ubuntu 18.04 LTSを日本語化する(日本語環境にする) | 突撃なんでもチートシート

Sambaのインストール

下記サイトを参考にSambaをインストール。面倒くさいのでユーザーディレクトリを共有させる。
Sambaサーバーの設定手順(Ubuntu20.04)とWindowsからのアクセス方法 – 水瓶座列車

再起動コマンドはsudoでやらないと失敗する。

$ sudo service smbd restart
$ sudo service nmbd restart

Node.jsの設定

下記サイトを参考にNode.js環境を作成。管理ツールは「n」を利用。
Ubuntu18.04で任意のバージョンのNode.jsをインストールする方法 | トライフィールズ
Ubuntu18.04に最新のNode.jsをインストールする(アップデート方法も) – Pythonと!

「`GLIBC_2.28′ not found」となる場合は「17.9.1」以前のNode.jsを入れる。
nodeのv18を使ったらエラーになった(CentOS7) – ITのプロへ

Pythonの設定

Pythonは2と3が入ってるので、とりあえず、そのまま使ってみる。

synology NAS Web Stationのhtml内でphpを実行する。

完全に自分めも

1.sshでNASにログインする

2. /var/packages/Webstation/target/misc/VirtualHost-apache24.mustache を編集
<FileMatch “\.(php[345]? | phtml|html)$”>

htmlを追加

3.php72_fpm_mustache を編集
security.limit_extension = .php .php3 .php4 .php5 .phtml .html

.htmlを追加

4. 管理画面のパッケージセンターでApacheとphpを再起動

Apache PHPともに複数バージョン入れている場合はすべて対応が必要。
新しいパッケージを追加して処置を忘れていると access denied.のエラーになる。
DSMのバージョンアップした際も同じく処理が必要。

ターミナルに画像を表示する

ラズパイのカメラで撮影した画像を楽に確認する方法を探してたら、ターミナルに画像を表示するって素敵な方法がありました!MacでiTerm2を使ってる人限定だけど、コマンド2行書くだけで、導入も超簡単!
こりゃ便利だわー!

>> Mac の iTerm2 で画像をコンソールに表示する

ffmpegの作業色々

雑多な動画処理でよく使うffmpegのメモ

■SNSやyoutubeに動画をアップする際、余計な生活音がはいっているので削除したい。

ffmpeg -i hoge.mp4 -vcodec copy -map 0:0 out.mp4

■容量の大きすぎる動画を適当にサイズ指定して圧縮する。

ffmpeg -i hoge.mp4 -bufsize 20000k -maxrate 25000k -acodec copy -aspect 16:9 -s 1280x720 out.mp4

■他の作業に与えない程度にCPUの使用割合を下げてエンコードする。
※別途「cpulimit」をインストールしておく。

cpulimit -l 400 -- ffmpeg -i hoge.mp4 out.mp4

Core i7クアッドコアの場合はフルで使って800なので、上記は約半分の値となる。

RM Mini 3(黒豆)をGogole home miniで使う。

RM Mini 3(黒豆)を設定しようと「e-control」ってアプリ入れて普通に使おうとすると「正規品ではないため日本国内で利用できません」って出てきて、どうにもできない。

  1. スマホの言語設定を日本語にしてやる。
  2. ヴァージョン3.7.8以前のe-controlアプリを入れる。

ネットで調べると、上記の2種類の方法があり、どちらでも黒豆の設定や制御は可能だった。
だが、せっかく対応した筈のGoole Home miniが認識してくれない。

どうも、ユーザー登録データがLinkJapan側に行っちゃう様で、Google homeのデバイス登録時に、IDとPWがちゃんと認証されないっぽい。

….という訳で、e-conrolの利用は諦めてIntelligent Home Center(IHC)ってアプリを入れてみたら、すべての問題がすんなり解決した。以下、その手順。

  1. BroadLinkオフィシャルサイトからIHCのapkをダウンロード
    日本のGoogle Playからはダウンロードできない。
  2. すでに黒豆をあれこれ設定してたら、リセットボタンを押して一旦初期化。
  3. IHCを起動して、Wifiの設定とユーザー登録を行う。
  4. 照明やエアコンなどのリモコンを、どんどん登録していく。
  5. Goole Homeアプリから > メニュー > スマートホーム > デバイス追加(プラスボタン) > BroadLink Smart Homeを選択
  6. 上記2で登録したユーザーIDとPWを入力
  7. 上記4で設定したデバイスが表示されたら、成功!

これで、Google homeから黒豆を操作する事ができた!
なお、Goole Homeはなぜかエアコンと照明だけしか認識してくれないので、テレビとかのリモコンも照明として設定しないと行けないので、ご注意を!

WordPressのデータベースのバックアップ

WordPressのアップグレードや、テーマの大幅な更新を行う前にバックアップを行うことが大事です。

プラグインで行う

BackWPupをインストールして「新規ジョブを追加」。
バックアップするテーブルを全部選択されていることを確認しておきます。
バックアップしたデータはローカルフォルダ他クラウドにも保存出来ますが、とりあえずイレギュラーで容量も少ないので、今回は「メールでバックアップを送信」にしておきます。

コマンドラインで行う

複数案件を管理しているとプラグインでいちいち設定するのも面倒なので通常はコマンドラインで行います。

指定のデータベースをバックアップ

$ mysqldump -u root -p DB名 > dump_YYMMDD_DB名.sql

戻す場合は

$ mysql -u root DB名 < dump_YYMMDD_DB名.sql

WordPressのアップグレードやプラグインのインストールを管理画面から行う

WordPressに深刻な脆弱性が報告されましたため、注意喚起情報が回っています。
「改ざん被害情報が多数寄せられております。」との事なので、改めてアップグレードの方法を見直しておきます。

wp-config.phpに追記

define('FS_METHOD', 'direct’);

※ ABSPATHの記述よりも上の行に追加すること。

wordpressフォルダのグループをapache実行ユーザーへ(オーナは変えなくて良い)

パーミッションを775へ

以上で管理面からの更新、プラグイン・テーマのインストール・更新を行えます。

OSX El Capitan へアップグレードで XtraFinder が動かない

OSX El Capitan はOSをよりセキュアに利用出来るようになる事と引き換えに、システムに深く関わるツールは動作に制限が出るようです。
XtraFinderもその一つのようで、アップグレードしただけでは起動すらできません。

オフィシャルサポートページを参考にシステムの設定を変更すると起動は可能(制限有り)

https://www.trankynam.com/xtrafinder/sip.html

1. Boot to Recovery OS by restarting your machine and holding down the Command and R keys at startup.
Command+R キーを押しながらMacを起動して、リカバリーモードにする。

2. Launch Terminal from the Utilities menu.
「ユーティリティー」メニューから「ターミナル」を起動する。

3. Enter the following command: csrutil enable –without debug
Reboot your computer.
セキュリティの一部を変更(若干不安)し、再起動。

# csrutil enable --without debug
Successfully disabled System Integrity Protection. Please restart the machine for the changes to take effect.

これで XtraFinderが動作します。
この状態で、タブ切り替えのショートカットやウインドウの背景を暗くする等の機能は使えますが、カラム表示でフォルダを先頭に並び替える機能が設定画面に出てきません。
仕方がないので Finder の「表示オプション」で表示順序を種類に変更します。

OSX El Capitanへアップグレード時のローカル環境問題解決

色々とピンポイントで動かないアプリも出てきたので、作業環境のOSX Yosemiteをアップグレードしました。
macOS Sierra は、リリースされてまだ不具合も多そうなので、一つ前の OSX El Capitanへしたのですが、ローカルのサーバー周りで、マイナーな個人的なトラブルがありました。

VirtualHostが効いていない

httpd.confファイルが初期化されて設定が読み込まれていない事が原因。

$ sudo vi /etc/apache2/httpd.conf

#Include /private/etc/apache2/extra/httpd-vhosts.conf

コメントを外す

同様にいくつか別件で必要なモジュールもロードする

LoadModule alias_module libexec/apache2/mod_alias.so
LoadModule rewrite_module libexec/apache2/mod_rewrite.so
LoadModule php5_module libexec/apache2/libphp5.so

apacheを再起動

$ sudo apachectl restart

VirtualHostの問題は解決するも、作業中のWordpressサイトでデーターベース接続エラー

ターミナル上ではデータベースのアクセスに問題無いが、Wordpressからのみエラーになる。
原因がわからず一旦 MySQLを再インストール

$ brew uninstall mysql
$ brew install mysql

それでも解決しないので wp-config.php を変更

#define('DB_HOST', 'localhost');
define('DB_HOST', '127.0.0.1');

これで、一旦データーベースに繋がるようになりました。

若干気になるのでもう少し調べてみると、 php.ini がありませんでした。
php.ini.default をコピーして編集します

$ sudo cp -p /etc/php.ini.default /etc/php.ini
$ sudo chmod+w /etc/php.ini
$ sudo vi /etc/php.ini

short_open_tag = On
post_max_size = 20M
upload_max_filesize = 20M
extension=php_mysql.dll
date.timezone = "Asia/Tokyo"
pdo_mysql.default_socketi = /tmp/mysql.sock
mysql.default_socket = /tmp/mysql.sock
mysqli.default_socket = /tmp/mysql.sock

$ sudo chmod-w /etc/php.ini

wp-config.php をもとに戻して接続出来るようになりました。

define('DB_HOST', 'localhost');
#define('DB_HOST', '127.0.0.1');

El Capitan は Yosemite に比べて動作がキビキビしています。
XtraFinderが動かなくなる(条件付きで動く)事もありますが、結果、アップデートを行って良かったです。