投稿

メールサーバの移行

イメージ
 自前のメールサーバを停止 これまで、自ドメインのメールサーバは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の反映で若干時間がかかったものの、問題なく送受信できるのを確認して、作業完了。  これでメンテナンスの手間が減るので、安いもんです。

良くできたSPAM

イメージ
 AppleIDへのアクセスが有ったと… ちょうど、Apple Silicon の M1 MacBook Proを入手した直後だったので、あれ?と思って良く読んでみたら…。 う〜ん、文面を見た限り、怪しそうに見えない日本語で書かれていました。 もちろん、送信先のアドレスは、hello@havenly.com なんてみえみえで笑えますが…。 メールアドレスを見れば、すぐ気づくレベルです…。 でもって、ログインのリンク先は、「https://links.m.havenly.com/ls/click?upn=...」ともうAppleとは全然関係ないし…。 なので、この手のメールに慣れている人は、欺けないですが、パッと見は騙されそうなレベル。いかにも怪しい日本語なら誰もが気づくでしょうが… 一応、メールヘッダを確認すると、 接続先は、コロラド州・USからのようで、上記のheavenly.comはデンバーが登録場所になってますねぇ。 すべてmulti-part MIMEでEncodeされているので、デコードした上でSPAM Filterを通すタイプでないとすり抜けそう…。 まぁ、Google君はちゃんと迷惑メールと判断してくれていますが… ということで文面以外は全然問題ないレベルですが、 疲れていたり、 慌てていたり、 ちょうど、apple IDへのアクセスが上手くいかないときなんかだと まんまとやられる危険性は高そうですね〜。 正月早々、記録として残しておこうと思います…

chromebookにruby3.0

イメージ
 chromebookをサブ開発マシンに と思っているので、clang,python3,juliaにvscodeから利用できるように設定してきた。 さて、12月末にruby3.0が正式リリースされたので、テストしたいなぁと思っていた。 ところが、aptを使って入れるとruby2.5と随分古め…。 探してみても、chromebook用のサードパーティリポジトリなんてないし…。まあ、他の作業しながらビルドしてみるかと思って構築してみた。 基本的には rbenvを使用することに。 https://github.com/rbenv/rbenv が、rbenvの配布元なので、ここのReadme.mdを参考に進める。 まずは、そのままクローンする。 $   git clone https://github.com/rbenv/rbenv.git ~/.rbenv あとは、ドキュメントに従ってPATHを通す。 $ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc $ ~/.rbenv/bin/rbenv init 初期化しろというので、実行しておく。 他のサイトでは、.bashrcに書いている場合もあったので、念の為入れておく。 $ echo 'eval "$(rbenv init -)"' >> ~/.bashrc この時点で、.bashrcを読み込み直しておく。 $ source ~/.bashrc ruby-buildというpluginが必要なので、入れる。 $ git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build $ echo 'export PATH="$HOME/.rbenv/plugins/ruby-build/bin:$PATH"' >> ~/.bashrc 再度、.bashrcを読み直す。 ここで、利用可能なバージョンをチェックすると $ rbenv install --list 2.5.8 2.6.6 2.7.2 3.0.0 jruby-9.2.14.0

JuliaLangを習得

イメージ
Julia言語って?  少し前から気になっていたので、少しずつマスターすることに。 MITで2010年少し前に発表されていて、2012年に公開。 まだ、若い言語ですね…。 で、どんな言語かと言うと動的型付け言語で、Pythonにすごく似ているので、知っていれば学習が楽。 JITで実行直前にコンパイルするため、初回はコンパイル分だけ遅めだけど、実行速度はC言語なみ。 しかも、Pythonのライブラリや、Cのライブラリを簡単に呼び出して使えるという変態ぶり。 MATLABやoctaveなんかと同様なベクトルや行列などが利用できるので、覚え直さなくていい。 数学処理や実験系の人は、楽なんじゃね?と思うわけです…。 高校の数学なんかも、こういったソフト使用すれば良いのになぁ。 本家は、 https://julialang.org 基本のインストールは、ダウンロード&展開して終了なので、超簡単。 PATHの通っているディレクトリにリンクを生成して完了。 $ ln -s /opt/julia-1.5.3/bin/julia ~/bin/ 基本的には、CUIで使用するけれど、Jupyter Notebookでも使える。 vscodeに拡張機能入れれば、vscode上でも実行できるというのが素敵。 起動すると、こんな派手なREPLという対話型環境が利用できるようになっている。 一応、本も探してみたけれ、知名度がまだ低いせいか、多くは出版されていない。 以下の本は、Pythonくらい知らないと、やや理解が難しいかもしれない。 網羅的に紹介されているけれど、詳細は本家サイトを参照というのが多め。 でも、はじめてJuliaを触る人には指針となるかな。 まあ、Julia自体、Helpも結構親切なので、なんとかなる。 例えば、パッケージPlotsを使おうとした例 julia> using Plots ERROR: ArgumentError: Package Plots not found in current path: - Run `import Pkg; Pkg.add("Plots")` to install the Plots package. などと表示してくれる。 そこで、 julia> import Pkg julia> Pkg.

chromebookの設定

 前回、 chromebook(Lenovo Ideapad s330)を入手 して遊び始めたと報告したのですが、その後快適に使用するために行なった作業で、気をつけるべき点をまとめておこうと…。 Chromebook のパフォーマンス設定 遅めのマシンなので、快適になる方法を試してみたところ、ハマった。 chromebookを利用している人たちのブログなどを確認すると、以下の設定でパフォーマンスが向上するという記事を幾つか見たので、試すことに。 Chromebook のパフォーマンス設定を変更する 一応、本家Googleの出している文書なので、安心感はあるけれども…。 設定自体は簡単。 Chromeブラウザのアドレス欄に「 chrome://flags#scheduler-configuration 」と入力し、設定画面を開く。 「Scheduler Configuration」欄を「Hyper-Threadingを使用する 」という設定に 再起動を求められるので、「Restart」を選択 これで、Hyper-Threadingが有効になるらしい。 デフォルトでは、無効になっているとのこと。 で、再起動後、動作を確認するものの、特段早くなった感じはしない。 もちろん、多数のアプリを動作させたり、タブをたくさん開くと少しは変わっているのかもしれないが…。 それよりも、動作しなくなった機能が発生。 仮想Linuxが起動しない。 Terminalを開こうとするが、起動中のアイコンに変わるものの、起動せずそのまま…。 他のLinux系のアプリも一切起動しない。 仕方なく、先程のHyper-ThreadingをOFFに戻し再起動。 ところが、Terminalは起動しないまま…。 この辺りがBetaたる所以でしょうか。 仕方なく、仮想イメージを削除し、再インストールし設定し直すことに。 本当はバックアップを取って、復元で戻るかもしれないのだけれど、バックアップを取っていなかったというミス。 terminalは起動しないので chrome上で、Ctrl+Alt+Tでcroshを起動する。 vmc list を実行すると、terminaが存在しているのが分かる。でもサイズがおかしい… vmc stop termina を叩くが、何も変わらず(勝手に再起動するらしい) vmc des

UbuntuでThunderbird78系に(snap版)

イメージ
 前回、「 UbuntuでThunderbird78系に変える 」ということで、本家よりtar.gz版を展開して差し替える作業で動作テストした。 Ubuntu(というかLinuxOS)では、様々なインストール方法があって、これまでUbuntuはaptを前提でパッケージが提供されてきた。 最近は、snapを使ったパッケージに移りつつある感じ。 管理方法が全く異なるので、早く統一して欲しい気がしますな…。 今回は、sanp版Thunderbirdを使って環境構築を行なってみました。 - 標準の「Ubuntuソフトウエア」(AndoridのPlay,iOSのAppStore,WindowsのStoreと言えば想像できるでしょうか…)から、Thunderbirdを検索してインストールするだけで完了。 ちなみに、aptでインストールしたThunderbirdとはインストール先も管理方法も異なるため、同時に入れることが可能です。動作確認後、apt版を削除すればOKなので、安心して試せます。 ~$ df -h Filesystem      Size  Used Avail Use% Mounted on udev            7.7G     0  7.7G   0% /dev tmpfs           1.6G  2.2M  1.6G   1% /run /dev/nvme0n1p2  468G  166G  279G  38% / tmpfs           7.7G  211M  7.5G   3% /dev/shm tmpfs           5.0M  4.0K  5.0M   1% /run/lock tmpfs           7.7G     0  7.7G   0% /sys/fs/cgroup /dev/nvme0n1p1  511M  6.2M  505M   2% /boot/efi /dev/loop2       56M   56M     0 100% /snap/core18/1885 /dev/loop4       67M   67M     0 100% /snap/thunderbird/92 /dev/loop3      141M  141M     0 100% /snap/gnome-3-26-1604

chromebookの使い方を検証

イメージ
プライムセールでついつい… 毎年、この時期は急に欲しいものが増えてくる…www ということで、色々と探っていたら、ちょっとお値打ちに購入できることが分かった。 ハイスペックの物にはもちろん興味が有ったが、低いスペックのマシンでどこまでできて問題点がどこに有るのか?を知りたいと思っていた。 Lenovo Chromebook このマシンが、通常24k〜25k円くらいなのだが…。 ・キーボードはUSキー(ノートはスペースが小さいキーが押しにくいのでUSが好み) ・ストレージは、32GB ・メモリは4GB ・CPUはMediaTek MT8173C 若干重めだけれど、バッテリーは10時間程度持つ。 実際に使ってみた 設定は、Googleアカウントを設定して完了。 Webブラウザの起動は、電源を入れて、体感的には本当に即起動する感じ。 実際にはログイン等含めて10秒かかっていない程度の待ち時間。 通常PC上のChromeで出来ることはほぼできる 拡張機能も引き継ぐので、PCとほぼ同一の環境になる。 Microsoft OfficeはPCではないので、当然インストールできないのだけれど、OfficeOnlineを使用することで、通常のExcelやWord、PowerPointなどのファイルは閲覧も作成も出来る。 凝ったことをしなければ、特に問題はなさそう。 マクロは使用できないので、その点は注意が必要。 Andoridのアプリが使用できる IntelのCPUだと、高性能だがAndorid系のアプリの動作はイマイチらしい。 以前、Asus Zenfone2(Intelチップ搭載)を使用したことが有るが、Snapdragon等に比べるとおかしな動作や、性能が出ないことが多々有った…。 そう考えると、MediaTek搭載なのは、タブレットなどでの実績が多い分、Androidのアプリを使用するには安心感が有る。 Linuxが動作する 仮想Linuxが動作する。 今の所ベータ扱いになっているが、まともだった。 起動にやや時間がかかる(30秒程度)が、起動してしまえば、通常のLinuxだ。 aptコマンドが使用できるので、必要なものはインストールすれば良い。 ここでの問題は、Intelではないため、arm系でbuildしてないと動作しないことだ。 Linux上で、vscode(ar

壊れたSDカードからのデータ取り出し

イメージ
 SDカードは壊れます USBメモリも壊れます…。 ということを皆さんは知らないのか、自分のは壊れないと思っているのか…。 忘れているのか…。 お客さんから急な連絡がありました。 カメラのSDカードが使えなくなったと…。 ELECOM製の32GBだというので、ELECOMに聞いてみると良いですよと、最初は返答。 すると2日ほどして、「3万円以上かかると言われたので躊躇している。一度チェックしてくれないか?」 いや、オイラがやったって、出来るかどうかわからんし…。 手間暇かけると、それくらいの費用になりますよと返答したけど、無理矢理メディアを渡され…。 仕方なく、持ち帰ってチェック。 確かに認識はしないが、fdiskで見ると、パーティションは認識している。 $ sudo fdisk -l ディスク /dev/sdb: 29.45 GiB, 31609323520 バイト, 61736960 セクタ Disk model: SD Card Reader   単位: セクタ (1 * 512 = 512 バイト) セクタサイズ (論理 / 物理): 512 バイト / 512 バイト I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト ディスクラベルのタイプ: dos ディスク識別子: 0x00000000 デバイス   起動 開始位置 最後から   セクタ サイズ Id タイプ /dev/sdb1           8192 61736959 61728768  29.4G  c W95 FAT32 (LBA) ということは、論理的に壊れたのか? $ lsblk NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT sdb      8:16   1  29.4G  1 disk  └─sdb1   8:17   1  29.4G  1 part  OKっぽい感じ…。 これなら修復可能かも…。 Photorecを思い出すのに苦労した… Linux用の修復ツールがなかなか思い出せず、なんだっけ?と思いつつ検索して分かった。 昔、HDDが壊れたときに使えないか試した記憶が…。 http://baker-street.jugem.jp/?eid=181 ここに綺麗にまとめてありました。ありがたや。 早速、インストール。