それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

npm で自作コマンドを自分のためだけに一瞬だけnpmjs公開することを通してnpm公開を学ぶ

経緯 パブリックな名前空間を自分専用に使うのは、本当は駄目なんだろうけど、npm みてると my own private なパッケージが結構あるので、ヤッたもん勝ちっぽいので試すことに。そりゃ本当は、 private つかえとか 自分のサーバーでnpm registry たてて使え…

bashのループと数字比較を組み合わせでVPNを接続開始して接続待ち、接続後に処理をする。

bash のサンプルプログラムを考えてた。 よくあるパターンとして、 〇〇を実行して〇〇が△△になるのをまってから、□□する を考えてみた。 VPN の接続を待機する 今回のサンプルはMacでVPNを接続し、接続待ちをし、VPN接続が完了したらルーティングを加える。…

git でclone 元のリモートレポジトリのURLを確認

git

git の clone 元 レポート作ったり、git のURL教えてと言われたときに git config --get remote.origin.url または git remote show origin clone したら origin に入るので、remote/originから確認する。

フレッツ網内折返しのv6 で拠点間を単純にIPIP/GREでトンネル接続してVPNする。

フレッツのv6網の網内同士で通信したい。 フレッツのv6オプションを申し込んだら、フレッツ網内(広域イーサネット)内部での通信ができるようになる。しかも追加料金無し! これはいいオモチャになりそうだとずっと思っていて、ようやく一通りをLinuxルータ…

ubuntu の暗号化インストールのディスクを拡張する

ubuntu を暗号化ディスクでインストールすると ubuntuを暗号化ディスク(dm-crypt) でインストールすると、LVM on LUCKSでインストールされていました。 ノートPCなど物理的に紛失しそうなデバイスは暗号化ドライブを使ったほうが無難ですし、SSD/HDDを物理…

UPnPでポートを開放を試し、ルータのUPnPの設定をテストする。

UPnPが正常に動いているか確認したい。 UPnPで、クライアントからルーターにポートをリクエストして、自分宛てにポート転送してもらう。 ルーターがIPv4で動いてるとポートフォワーディングを自動的にFirewallに書いてくれる。 Mac からUPnPをリクエストする…

動的にscript を追加したときに読み込みを待つ(body の最後とかheadに足したあと待つ)

動的に script タグを書き出したとき 関数が欲しくて、あとでチョコっとScriptを書き出すJSを書いたときに、そのスクリプトがロードされるのを待つ。 スクリプトがロードされないと使いたい関数がロードされないもんね。 onload でできた 意外にシンプルな解…

rclone でサーバー(gdrive/owncloudなど)のファイルをローカルにFUSEマウントする。

rclone に mount オプションを見つけたのです。 早速使用してレポートします。 rclone mount でリモートをFUSEとしてマウントする。 マウントした結果がこちら マウントコマンド(シンプルでいい) rclone mount remote locale-dir REMOTE は名前で識別する…

magick で写真のプライバシーのメタ情報(exif)やサムネイルを削除

写真を加工してもサムネイルが更新されない。 こういう場合は、写真(JPEG)に埋め込まれている。サムネイルが更新されない可能性がある。もしくはブラウザ(Finder)のキャッシュ。 私の場合、convert で色を反転させたけどサムネイルが更新されなかったので…

gitlab への git push やgit lfs の送信で413 エラーになった。

gitlab を使ってて謎だったエラー LFS: Client error: https://gitlab.example.com/takuya/sample.git/gitlab-lfs/objects/5f32fd160/10 from HTTP 413 なんか解決しなくて、しばらく放置してたけど、原因に気づいた、これgitlabじゃないnginx だ。 nginx 側…

bash の* ( アスタリスクのワイルドカード)でドットファイル(隠しファイル)を一時的にマッチさせる

TL;DR shopt -s dotglob shopt -u dotglob ドットファイルも含めたい時がある。 for i in $ (ls -a) はめんどくさいんだよなぁ ホームディレクトリで、*でワイルドカードマッチさせても一致しないのが不便。 ls -al しているときは気にならないのだけど、一…

ssh の秘密鍵から公開鍵を復元(再生成)する方法

ssh

ssh の公開鍵を再度作成する。 うっかり、公開鍵を消しちゃったときに、秘密鍵から公開鍵を作成する。 ssh-keygen -y -f ~/.ssh/id_rsa 普通はこういうことは起きないけど、今回は、.ssh のフォルダをちょっと触っててやらかした。 ファイルに上書きするとき…

今どきは、pipenv らしいので pipenv で環境構築に使ってみることにした

python のパッケージ周りの進化(?) setup.py pip pyenv virtualenv direnv requirements.txt pipenv ← now そういえば、古くは - egg / easy_install とかありましたね。 pipenv を一言でいうと 今どきな「パッケージ管理」に対応してるのが pipevn コマ…

秘密の質問ジェネレータを、pythonでぱぱっと

TL;DR ひらがな10文字の秘密の質問の回答を作る。 python -c 'import random; print("".join([ chr(0x3042+random.randint(0,82) ) for i in range(1,10)]))'; 秘密の質問って効果あるの? 秘密の質問はないよりはあったほうがマシとかいうレベルで無くて…

python で日本語のUnicode のコードポイントから平仮名を連番テーブルを作る

python でA-Zみたいに 「ひらがな」をコードポイントで扱う。 tl;dr >>> [ chr( i+ 0x3042) for i in range(0,85)] ['あ', 'ぃ', 'い', 'ぅ', 'う', 'ぇ', 'え', 'ぉ', 'お', 'か', 'が', 'き', 'ぎ', 'く', 'ぐ', 'け', 'げ', 'こ', 'ご', 'さ', 'ざ', 'し'…

$(pyenv init -) が遅いので遅延ロードにした

ターミナルの起動が遅い。 最近、妙にターミナルの起動が遅くて苦痛だなと思って調べたら pyenv 関連だった。 rbenv もそうだったし、pyenv もやはり遅い。 rbenv に関してはrbenv init では諦めて、symlink を使って解決しているが pyenv は別の方法を模索…

Certbot を自動的に更新するタイマーを設定する。

certbot に apache/nginx を殺される。 通常のCertbotだと、DNSのAレコードとHTTP(s)を使って、ドメインの確認を行う。 しかし、web サーバーを不用意にシャットダウンされるのは面倒でした。あとポート転送とかやってたりするとめんどくさいんだよなぁ。 DN…

プロジェクト単位のnode_module の実行コマンドの格納場所 .bin

プロジェクトでインストールした node_module の実行コマンドはどこ? npm -g i とかでいちいちグローバルなんて使ってられないし、プロジェクトの実行環境内で完結させたい。DockerとかデプロイCIとか絡んでくると特にその思いが顕著になる。 ./node_module…

ubuntu 16/debian のLTSにphp7.1 php7.2 などを導入する

Ubuntu 16 LTSのPHPが古い WindowsのWSLでインストールされる Ubuntu 16 LTS のパッケージがLTSらしく、どれもちょっと古くて困るので、php7.1 php7.2 をapt インストールして使いたい。 LTS だとphpが古い php5.6 のサポートは終わりました。 php7.0 のサポ…

DebianのBackportsを使う

debian のバックポートを使う。 パッケージがしっかりメンテされているので安心できる stable だけど、どうしても新しいものが欲しい時がある。 そういうときは、deiban のbackports よりも各ソフトウェアの公式のレポジトリを使えばいい。( node とか vival…

SpeedTest(スピードテスト)をコマンドからやりたい

皆さんも、おなじみスピードテスト コマンドからやりたい ssh 経由でリモートの接続の速度を知りたいですよね。うん。 コマンドインタフェースがあるんです。 https://www.howtoforge.com/tutorial/check-internet-speed-with-speedtest-cli-on-ubuntu/ イン…

MacのWiFiやルーティング設定をターミナルのコマンド networksetup でやる

MacOS のWiFi設定をnetworksetup コマンドで行う。 過去にも何度もエントリにしたり、まとめてるんだけど、全然覚えられないし、逆引きとして自分のブログがヒットしないし、ブログ内検索でもマッチしないので、書き直します。 networksetup コマンドはわか…

ip コマンドは -o オプションを使うと便利すぎてやばい

ip コマンド は -o オプションをつけるとメッチャ見やすい ip コマンドの ip a の結果はごちゃって見辛くないですか?私は非常に辛い。 とくにIPv6 が混じってきて、1つのインターフェースに複数のIPが入ってくると辛い オプション -o をつけると便利 1行…

Certbotの証明書をドメインごとではなく、ドメインを追加し複数ドメインを1枚証明書にまとめる。

certbot の証明書が増えすぎたので辛い certbot で証明書をバンバン作ってたら管理がめんどくさくなってきた。 証明書の管理を楽にしたい。 LetsEncryptの証明書は、ワイルドカードに対応しているので、ワイルドカードな証明書を作ることもできるし また、ワ…

certbot でステージング(テスト環境)用に証明書を作る

certbot で同一ドメインの証明書を複数作る ステージングや、certbot のコマンドであれこれ実験していると、証明書の発行上限に達してしまいます。 そこで、 ステージング用の証明書を使うと良さそうなので試してみた。ステージングやテスト用にドメインを作…

Certbot で証明書を削除する。

Certbot で証明書を消す 選択した証明書を消すには、対話式CLIを使うのが楽 sudo certbot delete 証明書の名前(ドメイン)がわかっているとき。 証明書の名前を指定して、オプションで明示することで削除ができる。 sudo certbot delete --cert-name exampl…

mac のnetworksetup コマンドでVLAN作成

Mac のVLAN作成をCLIでコマンドからやる。 コマンドライン(CLI)で、VLANネットワークの設定をやる networksetup コマンドでVLANインターフェースを作る。 コマンドとしてVLANを扱うのは次の通り。 networksetup -createVLAN <VLAN name> <parent device name> <tag> networksetup -deleteVLAN <VLAN name> <parent device name> <tag> </tag></parent></vlan></tag></parent></vlan>…

Mac でVLANのタグを読めるインターフェイスを作成する

mac でもVLANを使いたい。 MacOS のLANインターフェースでVLANを扱う必要があった。ぱぱっと設定したときにどうやったかメモを残しておきます。 VLAN は環境設定から。 環境設定のネットワークをひらく。 左下の歯車のアイコンを押す。(ここがポイント) 仮…

ip コマンドでルーティングテーブルの逆引き(?)どのルートを通るか調べる

ip route show してもすっとわからない。 このIPはどのルーティグで転送されるの?? ip route show してもわからない、僕ら素人のためのコマンド ip route get 宛先IPアドレスを指定すると。そのIPアドレスはどのルーティングテーブルにマッチするのかを調…

curl-config 現在のcurl のコンパイル設定を知るコマンド

brew 整理してたら curl-config コマンドを見つけた curl-config コマンドってなんだろう。 調べてみると。インストール(ビルド)されているcurl のビルド状況を把握するシェルスクリプトらしい 実行してみた takuya@Desktop$ curl-config --libs -L/usr/lo…