min117の日記

初期desireもち。趣味Mac,メインFedora,仕事xp。

RaspberryPi3 Google翻訳をコマンドラインで使う

Google翻訳って便利だけどわざわざGoogle開くのがダルい。コマンドラインGoogle翻訳できたらなぁ…って思って探したら、あった。

この記事そのまま。てかこのブログすごい。

orebibou.com

インストールする。

$ git clone https://github.com/soimort/translate-shell

$ cd translate-shell/

$ make && sudo make install

f:id:min117:20180531234420p:plain

 

 

 

使ってみる。

$ trans :ja 'Hello World'

f:id:min117:20180531234744p:plain

背景が黒なのでわかりにくい。マウスで色を反転してみる。

f:id:min117:20180531234752p:plain

何コレすごい。

もしかして前回記事でインストールした占いコマンド fortune の結果も翻訳できるのではないか?

min117.hatenablog.com

やってみる。

$ fortune | trans :ja 

↑ 末尾に半角スペースあるので注意。

f:id:min117:20180531235207p:plain

すご。パイプで渡ってきた文字列も問題なく翻訳できる。超便利。

 

英語日本語の表記を並べるためにfor文に食わせてみる。

$ for i in "`fortune`"; do echo "$i"; trans :ja "$i"; done

f:id:min117:20180531235518p:plain

すごい。

 

さらにこれを前回記事でインストールした cowsayコマンドウシに喋らせてみる

$ for i in "`fortune`"; do echo "$i"; trans :ja "$i" | cowsay; done

f:id:min117:20180531235657p:plain

最高すぎる。

 

min117.hatenablog.com

RaspberryPi3 sshログイン時に「今日の運勢」をウシさんに占ってもらう fortune | cowsay

前回記事で、sshログイン時のメッセージをネルフ本部のロゴに変えた。

min117.hatenablog.com

今回は sshログイン時(~/.bashrcが読まれるとき)に ウシに「今日の占い」をしゃべらせてみる。RaspberryPi3 で試す

こんな感じになる。

f:id:min117:20180531222600p:plain

 debianだと /usr/game/cowsay というコマンドがあるらしく、手軽にウシに喋らせることができる(fedoraに無いのは残念)。このへんも参照。

www.linux.com

oded.blog

 

 

 

① まずは cowsay をインストールする。

$ sudo apt-get -y install cowsay

f:id:min117:20180531223108p:plain

echoした文字列を cowsay にパイプすれば、ウシがしゃべってくれる。

$ echo 'I love you' | cowsay

f:id:min117:20180531223320p:plain

改行もできる。echo コマンドに -e をつけると、ダブルクオーテーションで囲った文字列 \\n 改行として認識してくれる。

echoコマンドで改行やタブを扱うには@Linux (Debian Etch) | Mazn.net

$ echo -e "I love you \\n Good night" | cowsay

f:id:min117:20180531223733p:plain

 

 

 

 

② 次に、Linux今日の占いを吐き出させるフォーチュンコマンド fortune をインストールる。

$ sudo apt-get -y install fortune

f:id:min117:20180531223931p:plain

こんな感じで今日の運勢というか、金言名句を話してくれる。

$ fortune

f:id:min117:20180531224241p:plain

 

あとは、fortune の出力結果を cowsay に食わせればいいだけ。

$ fortune | cowsay

f:id:min117:20180531224503p:plain

素晴らしい。

 

for文で回し「2秒に1回、占いを喋る」ようにしてみる。

for i in `seq 1 100`; do clear; echo "$i"回目の占い; fortune | cowsay; sleep 2; done 

f:id:min117:20180531224700p:plain

こりゃいい。

f:id:min117:20180531224903p:plain

f:id:min117:20180531224906p:plain

 

ついでに、文字を柵状に囲う figlet というコマンドも見つけた。

$ sudo apt-get -y install figlet

f:id:min117:20180531230052p:plain

 

こんな感じに使う。

$ figlet -f digital Wont you marry me?

f:id:min117:20180531230133p:plain

 

シングルクオートを入れるにはちょっと工夫がいる。

$ figlet -f digital 'Won'\''t you marry me?'

f:id:min117:20180531230428p:plain

 

ウシに喋らせる。

$ figlet -f digital 'Won'\''t you marry me?' | cowsay

f:id:min117:20180531230624p:plain

完璧。

 

ちなみに figlet には日本語もあるみたい。

d.hatena.ne.jp

f:id:min117:20180531231038p:plain

 

参考サイト)

仕事の役には立たない、Linuxにおけるジョークプログラムの話

jp.linux.com

フォーチュンつながり

www.youtube.com

fedora sshログインしたときにネルフ本部のロゴを出す /etc/motd

Linuxsshログインしたときにネルフ本部(NERV)のロゴを出したい。

こんな感じ。

f:id:min117:20180531215738p:plain

 

sshログイン直後に表示されるメッセージは、fedoraだと /etc/motd に書くだけ。

$ cat /etc/motd

                                           ˍ▂▃▄▄

                                       ◢████████◤

                                      ██████████▆▄

                              ◥◣     ███████████████◣

                                ◥◣◢███████████████████◤

                                   ◥████████████████◤

                            █◣  ▌██████████████◣

                            ███◣▌█▄▄ ◥███████████◣

                            █ ◥█▌█     ◥██████████

                              ◥▌████    ◥████████◣

                                 ▇▇◣  ██   ◥███████

                                   █ ██   ◢███████▌

                                 ███◤ ██ ◢◤   ◥█████◣

                                 █ ◥◣ ██◤       ◥████

                      GOD'S IN HIS HEAVEN,        ◥██

                        ALL'S RIGHT WITH THE WORLD. ◥

 

ちなみに motd は「Message of the Day」の略。

 

こんなクールな記事もある。

orebibou.com

 

orebibou.com

 

 

 

超かっこいい。いろいろ試してみる。

f:id:min117:20180531220049p:plain

f:id:min117:20180531220101p:plain

f:id:min117:20180531220117p:plain

f:id:min117:20180531220125p:plain

 

www.youtube.com

fedora SLコマンドをインストールしてD51をコンソールに走らせる

以前banner コマンドをインストールした。コンソールで遊ぶって結構大事と思う。UIそのものだから。

min117.hatenablog.com

 

 

 

SLコマンドというジョークコマンドがあるらしい。ジョークとはいえ、かなりすごい出来栄え。さっそくインストールする。

$ sudo yum -y install sl

f:id:min117:20180528233554p:plain

走らせてみる。

$ sl

f:id:min117:20180528234140p:plain

f:id:min117:20180528233856p:plain

 

f:id:min117:20180528233904p:plain

f:id:min117:20180528233910p:plain

f:id:min117:20180528233921p:plain

f:id:min117:20180528233938p:plain

f:id:min117:20180528234315p:plain

f:id:min117:20180528233932p:plain

f:id:min117:20180528234346p:plain

素晴らしい。

 

fedora ルート( / )の容量を圧迫しているファイルを調べる

fedoraルート( / )を圧迫しているファイルを調べる。

特定のディスク(テラバイト級のNASとしてマウントしているディスク。例えば /mnt や /media )だけは除いて、それ以外の場所で圧迫している原因を調べる。

 

sudo -s して作業する

f:id:min117:20180526101510p:plain

 

# cd /

# ls

f:id:min117:20180526101616p:plain

 media というフォルダには大量の録画ファイル(ギガバイト、テラバイトサイズ)があるのでこのフォルダだけは除いて容量の大きいファイルを探索する。

 

for i in `ls / | grep -v media`; do echo "$i"; find "$i" -type f -size +100M -print0 | xargs -0 ls -shal | tee -a /media/100MB_over.txt; done

f:id:min117:20180526102436p:plain

 

探索結果は tee -a コマンドで 100MB_over.txt というファイルに落とした。開いて見てみる。

# cat /media/100MB_over.txt

f:id:min117:20180526102451p:plain

/var/lib/docker.backup/  配下に巨大な(2GBもの)ファイルがあるようだ。
前にもあったなこれ。

min117.hatenablog.com

これだから docker 嫌い。一時ファイルならどっか別の場所に作れば良いのに。

 

 

 

もうdocker使ってないし。削除する。

# cd /var/lib/docker.backup/devicemapper/devicemapper/

f:id:min117:20180526102859p:plain

# rm -rf metadata

 

削除前

f:id:min117:20180526103250p:plain

 

削除後

f:id:min117:20180526103353p:plain

 

サーバ運用していると容量不足というのは本当にタチが悪い。いろいろなところに影響を及ぼす。ファイル共有ができなくなったり、Webサーバが遅くなったり。

 

最近は docker が原因なことがしょっちゅう。自宅サーバだから好きに rm できるけど、これが本番サーバだったら怖すぎる。まだまだ docker は現実的じゃないな。

格安SIM 月額900円の IIJ mio で、悪名高い「通信の最適化」がされているかを確認する

前記事では月額500MBまで無料の0SIM通信の最適化がされてしまっていることを確認した。

min117.hatenablog.com

 

今回は格安SIMの老舗 IIJ mio で通信の最適化がされてしまっていないかを確認する。

 

 

 

 <結論>

IIJ mioでは通信の最適化はされていない素晴らしい

通信の最低^H^H最適化の確認

f:id:min117:20180520223422j:plain

 

<試した回線>

IIJ mio の格安SIM(月額900円、3GBまで)

f:id:min117:20180520224416p:plain

2016年1月に契約してから2年4ヶ月。家族のスマホに挿して毎月便利に使っている。

min117.hatenablog.com

 

IIJ min では月額400円プラスで2枚目のSIMを持てるので、そちらも契約済み。

min117.hatenablog.com

 

<試した環境>

上記2回線のうち①のほうのSIMを、docomo製の中古iPhone 6 に挿して試した。

まずはWi-Fiをオフにする。キャリアに NTT DOCOMOと表示されるが、挿さっているのはIIJ mioのSIMカードだ。

f:id:min117:20180520224209j:plain f:id:min117:20180520224711j:plain

 

「通信の最適化確認」でググる

f:id:min117:20180520224851j:plain

 

テスト実行。「OK 最適化されていません」と出た。

f:id:min117:20180520224919j:plain

 

念のため別のサイトでもテスト実行。こちらも「最適化されていません」と出る。IIJ mio最高。

f:id:min117:20180520225040j:plain

 

通信の最適化は通信会社にとっての最適化でしかない。名前こそ「最適」だが、実際は利用者の通信の中身を勝手に書き換えて(画像を劣化させて)通信させる最悪の処理

smhn.info

ツイッターでも話題になっている。 

通信会社的には(通信料が減るから)利益なのだろうが、利用者からすればとんでもない。そんな、法的にも大問題(憲法で禁止されている検閲にあたる)な最適化だが、 IIJ mio ではされていなかった。さすが老舗。素晴らしい。

 

今後、LINE Mobile か 楽天Mobile を契約したらまた試してみる。

 

RaspberryPi3 SSHでの不正ログイン試行されていないか確かめる(sudo lastb 10 && netstat -a | grep ssh)

家では常に RaspberryPiが動いている状態。当然ssh環境も作ってある。不正ログインされていないかを定期的にモニタリングさせておく。

 

 

 

 sshログイン試行状況を確認する。lastbコマンドを使う。

$ sudo lastb -10

f:id:min117:20180520211225p:plain

大丈夫。不正なログイン試行は無さそうだ。手元のiMac(192.168.3.160)からの接続しかない。

 

しかし、これが 母艦fedoraになると様相が変わる。

$ sudo lastb -10

f:id:min117:20180520211417p:plain

いくつかアクセス試行がある。1時間に1回程度のようだ。

nslookupで少し情報集めてみる。

$ nslookup サーバ名

f:id:min117:20180520211904p:plain

DNSにはいずれ時間あるときに本格的に取り組んで解析する。 

 

sshセッション確立状況を確認する(ラズパイ3)。

$ netstat -a | grep ssh

f:id:min117:20180520212310p:plain

ん? /tmpにある agent が初見で気になるけど…これもいずれ調べる。

 

lastb と netstat をまとめて20秒ごとに実行し、sshのセッション試行と確立状況をモニタリングする。

$ for i in `seq 1 1000000`; do echo "$i回目"; sudo lastb -10; netstat -a | grep ssh; sleep 20; clear; done

f:id:min117:20180520213430p:plain

しばらく流しておいて、不正ログインが大量に試行されるようなら対処を考える。

 

参考

qiita.com