投稿

ラベル(GO)が付いた投稿を表示しています

メールサーバの移行

イメージ
 自前のメールサーバを停止 これまで、自ドメインのメールサーバはVPS上に構築していた。 ・Ubuntu Server ・Postfix ・Dovecot ・spamAssassinと、BlackListの利用 Spam対策を行ってきたし、サーバ上でメールをトリガーにして各種プログラムを動かしたりしてきた。 メールサーバのメンテナンスは結構面倒くさくて、  ・Disk容量のチェック  ・不正アクセスのチェック  ・各種セキュリティパッチの適用 など、手間がかかる。 そこで、外部のサーバを利用することに…。 結構安くて使い勝手の良さそうなのが、「さくらのメールボックス」 3年契約で、3070円とな…。  メールアドレスは自分のだけなので、20GBまで利用可能!  (Gmailより大きいねぇ) ということで、早速契約。 アカウント設定を行って、既存のDNSを書き換える。WHOISも書き換えて完了。 SMTPとIMAPが利用できればOK。 ちょうど、GoogleがSPF設定していないと受信しないし、DKIMおよびDMARCに対応していないメールを弾くようになったので、対応しているのを確認。 さくらサーバ自体は、これまでお客さんのサーバとして何件も利用しているので、利用方法も難しくはない。  Webメールにも対応しているので、いざという場合にもありがたい。 ということで、各メールソフトの設定を変更。  PC(常時使用する3台)とタブレット、スマートフォンと台数は多いがそれ程手間はかからない。 問題は、旧サーバで送受信したメールの履歴だけれど、これはThunderbrdを使ってローカルに保存することで回避。  本当は、サーバtoサーバでMailboxに残そうとも考えたんだけど、古いメールはそれ程必要ないし、ローカルにバックアップしてあれば凌げるので、良しとする。 移行時にDNSの反映で若干時間がかかったものの、問題なく送受信できるのを確認して、作業完了。  これでメンテナンスの手間が減るので、安いもんです。

csvqのbuild #2

 昨日のエントリーに情報 昨日書いた「 csvqのbuild 」に対して、作者さん(Yuki @qittu)から連絡を頂いた。 blogglerで記事を書くと、IFTTTでtwitterにエントリーを投稿するようになっているんだけど、それを見てくれたらしい。 https://twitter.com/qittu/status/1300758790812233728 丁寧に、build方法を連絡してくれました…。 ということで、念の為、確認作業を行なっておく。 インストール手順も、twitterで紹介された方法に修正されているので、その通りで問題なく完了。 $ env GO111MODULE=on go get github.com/mithrandie/csvq main.goだけを差し替えて、makeでのbuildも確認。 無事に完了しました。 で、出来上がったcsvqですが、バージョンは変わらず。 ただ、サイズは、14,517,230バイトと、350バイト程小さくなってるんだな…。(面白い!) ありがたや〜ありがたや〜。 ということで、実際の開発業務に戻ります…。

csvqのbuild

使おうと思ったら、無かった… 以前あまりに便利だったので、buildして使っていた「 csvq 」だけど、マシンを入れ替えた際に入れ忘れていたらしい…。 前にbuildした時は、さっくりと動作したので、最新バージョンを持ってきてbuildすればいいやぁと思って作業してみると、エラーを吐きまくる。 バイナリ持ってきてきても良いけど、時間がある今なので、頑張ってみることにした。 Installation Install executable binary Download an archive file from release page . Extract the downloaded archive and add a binary file in it to your path. Build from source Requirements Go 1.11 or later (ref. Getting Started - The Go Programming Language ) Build with one of the following ways Use go get $ go get github.com/mithrandie/csvq Build with strict dependencies $ go get -d github.com/mithrandie/csvq Change directory to $GOPATH/src/github.com/mithrandie/csvq $ env GO111MODULE=on go install githubに書かれているとおりに、 $ go get github.com/mithrandie/csvq すると、以下のようなエラーが大量に…。 $ go get github.com/mithrandie/csvq # github.com/mithrandie/csvq ../../go/src/github.com/mithrandie/csvq/main.go:35:17: cannot use cli.StringFlag literal (type cli.StringFlag) as type cli.Flag in slice literal: cli.StringFlag does

これは使える!テキストツール csvq

GO製 csvq いつも使えそうなツールをチェックしているのだけれど、久々に使えるものを入手した。 csvファイルをDBのように扱い、sqlで操作可能にする。 https://github.com/mithrandie/csvq インストールはBinaryをダウンロードしてPATHの通ったところに置いて完了。 ちなみに、他の人はどうしているのか分からないけれど、どこに置くのかというのはいつも悩ましい所。 /usr/bin /usr/local/bin あたりが、多いんでしょうか…。 まあ、マルチユーザの場合、パッケージなどで入れたものは、/usr/bin以下に入るだろうし、buildするタイプなどで作法の良いものなら/usr/local/binなどに入れるのが普通だろうなぁ。  自分の場合は、個人で使用する場合や自作のもので、一時的に使うモノは、~/bin というフォルダを作成していて、ここにポイッと入れて動作テストなどしている。 もちろん、PATHを通しておく必要が有る…。 さて、解凍してcsvqをbin以下に入れれば即実行できる。 こいつ強力すぎる! 実際に試してみると、こいつは便利だ。 試しに次のようなデータを作成してテストしてみた。(user.csvとscore.csv) データを一覧したければ、 $ csvq > select * from user; +----+--------+-----+-------------+ | id | name | age | tel | +----+--------+-----+-------------+ | 1 | user1 | 20 | 01011112222 | | 2 | user2 | 21 | 01011113333 | | 3 | user3 | 22 | 01011114444 | | 4 | user4 | 23 | 01011115555 | | 5 | user5 | 24 | 01011116666 | | 6 | user6 | 25 | 01011117777 | | 7 | user7 | 26 | 010