Pandora Pocket

IT系と日常系の備忘録。三日坊主。

秘密鍵、どうやって管理してますか?

適当に.sshディレクトリに入れたまま?USBメモリーなどに格納?はたまたクラウドストレージに保管?

私はこれまで.sshディレクトリに突っ込むだけだったのですが、万が一ファイルが漏洩したり、ストレージが吹っ飛んだ時に困るので、もう少し安全な管理方法がないか考えたうえで、Dropbox上でCryptomatorを利用して暗号化することにしました。

続きを読む

Windows XPのHotfixが公開されるたびにSP+メーカーで統合イメージを作成したうえで、nLiteをつかって不必要なファイルやサービスを消して少しでも軽量化した状態のXPをインストールすることが趣味(?)だったひつじです。

さすがに今はそんなことをすることはないんですが、Windows 10の大型アップデートがあるたび、クリーンインストールをするようにしています。ただのアップデートだとごみがたまって気持ちが悪いのと、たまに環境の棚卸をしないと、いざ環境がぶっ壊れてしまったときに復旧が大変なので・・・。

最近のPCはUSBメモリーでブートしてOSをインストールすることができますが、イメージファイルとして公開されてる場合はRufusなどのソフトを使う必要があって面倒。

そんなわけで、CD/DVDに焼いたり、USBメモリーに書き込む以外の選択肢を取ることにしました。

続きを読む

特に情報もなかったので今後発生した時の対応用に備忘録。

私の環境ではOperaを起動すると、いくつか固定しているタブと、スピードダイアルのタブが表示されるように設定をしています。

なぜ発生するようになったかはわからないのですが、突然Operaを起動して、固定タブ(6件ほど)が読み込み終わった直後くらいにフリーズし、うんともすんとも動かなくなる事象が発生。

旅行に行く直前だったのでそのままほったらかしで置いておいたのですが、7日後帰宅してもそのままだったので、処理が完全にストップしている模様。

一度プロファイルをすべて吹っ飛ばしてから起動してみると、問題なく起動します。
なお、プロファイルは下記のフォルダのファイルです。

C:\Users\ユーザー名\AppData\Roaming\Opera Software\Opera Stable

仕方がないのでざっくりいくつかのファイル、フォルダを改めて生成されたプロファイルに張り付けていって、どのファイルがおかしいのかを確認したところ、「Preferences」を戻したタイミングで再度フリーズ発生。
「Preferences」ファイルはOperaの設定ファイルになります。
中身はJSONなので、いったん整形したうえで、こちらもざっくりと改めて生成されたファイルと比較しながら検証してみたところ、"sync"の項目をもとに戻したタイミングでフリーズ発生。
よくわかりませんが、Operaの同期機能が悪さをしているようです。

というわけで、フリーズが発生していたプロファイルに戻したうえで、「Preferences」ファイルの"sync"の項目のみ改めて生成されたファイルの表記(下記の通り)に戻してから起動してみたところ、フリーズが解決しました。

    "sync": {  
        "keep_everything_synced": false  
    },  

当然同期ができなくなっているので、再度同期設定を行いましたが、それ以降は発生しておりません。
同期用のキーか何かが有効期限切れになったにもかかわらず破棄されなかったとかそんな感じなのかなと思いつつ、内部的な挙動がわからないので断定はできず。

つまりはサクラ大戦です。

東京赤坂、草月ホールにて、サクラ大戦歌謡ショウより~『夢見る男たち~地獄変~』 と題して、サクラ大戦のショウが行われたので見てきました。

続きを読む

クエリ文字列(クエリストリング、URLパラメータとも)は

http://www.〇〇〇.com/search.php?△△=〇×

の?以降のこと。サーバーに情報を送るための文字列になります。

StringBuilderで strBuilder.Append("△△=〇×"); とか、Dictionary使ってよく生成してたんですが、特殊記号や全角文字列のエスケープ処理を別途行う必要があるので面倒くさい。

System.Web.HttpUtility.ParseQueryString

を使えばエスケープ処理を自動的にやってくれる。

using System.Web;  
中略  
var queryString = HttpUtility.ParseQueryString("");  
queryString.Add("△△", "〇×");  

としてやれば、

queryString.ToString();  

でクエリ文字列が生成される。

下記のようにUriBuilderに渡してやれば、スマートにURLが生成可能。

var uriBuilder = new System.UriBuilder("www.〇〇〇.com") {Query = queryString.ToString() };  

ちょくちょく忘れるのでメモメモ。

デブな現状を改善するべく、毎日体重を測っています。

以前作った、タニタの体重計のデータを取得してDiscordに投稿するAzure Functionsについて、私の実装が悪かったのか単に設定がおかしかったのかわかりませんが、Azureの課金額が結構な額になってしまい、現在GCEに.NET Coreなコンソールアプリを配置して、定期実行させるようにしています。

ダイエット仲間と進捗状況をDiscordで共有すべく、HealthPlanetからデータを取得してD...
[はてなブックマークで表示]

現時点でのソースはこちら。

TANITA HealthPlanetのデータをDiscordに投稿するコンソールプログラム. Contribute to Ovis/PostDietProgress_Console development by creating an account on GitHub.
[はてなブックマークで表示]

続きを読む

この時期になるとサクラ大戦の曲をいつの間にか口ずさんでいるひつじです(年がら年中の間違い)

桜が大変きれいに咲き誇る時期になりまして、ちょうど統一地方選の投票もあったので、ついでにちょっと足を延ばして桜並木の写真を撮ってきました。

続きを読む

前職ではSVNばかり戯れていたので(もとはVSSだったのでこれでも進歩したほうだった)Git初心者なひつじです。
絶対まとめておかないとまた後で調べなおすことになるのでメモメモ。

Gitだと以前コミットした場所まで

git reset

を使えば戻すことができます。

で、今回このコマンドで戻した際、うっかり二回実行してしまって戻したくないところまでワーキングツリーを戻してしまいました。

続きを読む