投稿

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

メールサーバの移行

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

LinuxでC#

イメージ
Ubuntu上でC#を使う Windows7/10にVisual Studio Communityを入れれば、すんなりと環境は構築できる。 でも、メインマシンがUbuntuなので、VMのWindowsを起動して、その上で動かすのが時間もかかって面倒なのですよ…。  しかも、めったにWindowsを使わないため、起動するたびに更新の罠にはまって、使い始めるのに時間がかかりすぎるという状況。 そこで、Ubuntu上で、普通にコードがかければ楽じゃね?と思い探してみる。 コンソールアプリならOK 結果的には、コンソールならWindowsと何ら変りなく利用できることが分かった。 マイクロソフトのサイト https://www.microsoft.com/net/learn/get-started/linux/ubuntu16-04 へ行けば、以下の手順が乗っている。 curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg sudo mv microsoft.gpg /etc/apt/trusted.gpg.d/microsoft.gpg sudo sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/microsoft-ubuntu-xenial-prod xenial main" > /etc/apt/sources.list.d/dotnetdev.list' まずは、上記のリポジトリを追加 そして、以下のコマンドで.NET関係のインストール。 sudo apt-get install apt-transport-https sudo apt-get update sudo apt-get install dotnet-sdk-2.1.105 あとは、いつも使っているVisual studio codeで、マイクロソフト製の拡張機能を入れれば良い。 拡張機能も、ページの下の方に書かれている。 https://marketpl

VS codeで表示がおかしい

イメージ
Visual Studio CodeとVirtualBox VirtualBox上でubuntu16.04を動かしていて、Visual Studio codeをインストールしたら、動作がおかしい。 起動はするものの、白い矩形が表示されて、移動できない。 消えない。ウインドウサイズを変えると、新たに現れたり…。 まあ、こんな感じになってしまう。 ちなみに、ホストマシンはWindows10 / MacOS Sierra のどちらでも再現する。 vscodeを終了すると消えることから、vscode自体に問題がある。 調べてみると、gpuとの相性が悪いらしい。 【解決方法】 Virtualboxの3DアクセラレーションをOFFにする。 起動時にオプションを付ける 起動スクリプトにオプションを付ける これぐらいしか無い。 ただし、3Dアクセラレーションをオフにすると、 vmのフォーマンスが劇的に悪くなる。Ubuntuの場合Dashboardの表示がのっそりになったりして、ストレスが大きいのお勧めしない。 そこで、起動時オプションを付加する方法が確認するには簡単。 $ code --disable-gpu これだけで、GPUを使わずに動作する。 すると、白い矩形や窓は表示されなくなり、まともに動作するようなる。 ところが、この方法は、 端末(terminal)からの起動しか効かないので、GUIの人には不便だし、毎回オプションを書くのは面倒。 そこで、最後の方法で、起動時のスクリプトにオプションを付加しておく。 CUI用 $ which code /usr/bin/code と返してくるので、こいつをエディタで開く。 ディストリビューションが異なる場合は、パスが違うかもしれないので、上記で確認のこと。 #!/usr/bin/env bash # # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. # If root, en

久々にC++でコーディングして

仕事の関係で ライブラリの動作確認をするために、テストプログラムを書いていたんだけど、ライブラリがC++で書かれているので、自分もC++で書く必要が当然あるわけで…。 ところが、スクリプト系が主に多いのと、Cで書くことも多いのだけれど、C++はもう何年も書いていないことに、今更ながら気がついた…。トホホ。 まあ、ライブラリをよく読めば、そんなにたいそうなことはしていないし、計算がメインのものなので、使い方は別に難しくないはずで、と思いながらも、ついついコーディングミスをしている。 だいたい、using namespace std; すら書き忘れていて…。情けない限り。 よく考えたら… ほぼLinuxかMac上で作業しているので、今回もubuntu上でg++でコンパイル&実行までは完了した。ところがWindowsでコーディングすることが無いからVisual Studioも入っていないことに気づいた。というか気づいていたのだけれど、Linux上で動けば大丈夫だろうと…。 でも、念のため確認しておこうちうことで、expressを取り敢えず入れることに。 Microsoftも、こういったものを無料で提供してくれるようになって、有り難い限りです。昔Visual C++ 1.0を入手した時のマニュアルの重さというか、パッケージのでかさに驚いた記憶があるし、マニュアルは全部英語のものしかなくて、読むのに時間がかかった記憶が蘇ってきた。つい先日まで置いてあったんだけどあまりに重くて邪魔だったので廃棄したばかり。 CDで何枚もあったものが、今じゃ無料でネットでサクッと落として入れられるんだから、今時プログラミングを学習する人は、コストも手間もかからなくていいわねぇ…。とオヤジのボヤキですな…完全に…。 四元数・行列・ベクトルのライブラリで、とりあえずベクトルの回転を四元数で行うサンプルを試し、問題なく動くのと、手計算での答えがどれも一致することを確認してOKとした。 本当は、もっと沢山テストしないといけないんだけど、理論を説明する上で必要な最低限の部分のみでよしとする。 ところで… 他のサンプルもテストしていてハマったので、書いておこうと思う。 今回使用したのは、英語の邦訳本なんだけれども、サンプルプログラムやライブラ