遅ればせながらのSMB2

社内サーバーの共有ストレージ用にSambaを利用しています。しばらくはSMB1での運用でしたが、MicrosoftがSMB1を取り除くとの方針が発表されました。

SMB1->SMB2の時にはセキュリティ証明書が必要になると思い込んでいたので、判ってはいたのですが全く行動に移さずにいましたが、どうもそうではない模様。

単純に/etc/samba/smb.confに”min protocol = SMB2″の一文を追加するだけのことでした。実際にやってみましたが全く問題は起きません。
こんなことならもっと早くやっておくんだったな…

リモートデスクトップ接続

Windowsには標準でリモートデスクトップ接続の機能があります。職場でのサーバー管理に便利に使っていたのですが、3月の末頃から妙なエラーが発生して接続できない状態となりました。

ちょっとした作業なら定番のTeraTermを使ってコンソールで済ませることができるのですが、「GUIに頼るなんてトーシロだな」なんて声が聞こえてきますが、ファイルを大量に加工するとか中のゴミを大掃除するなんて作業の場合はGUIで楽にやりたいものです。

接続拒絶のダイアログに表示されるメッセージには「セキュリティレベル」がどうのこうのと出ます。Linuxサイドには特に変更を加えたつもりはないので、戸惑うばかり。WindowsのProでもHomeでも同じ問題が出て接続できせん。また、このリモート接続でのセキュリティレベル云々の問題はネットを漁っても情報がありません。

散々探してようやく突き当たったのが、なんと接続時の色数の問題。Linux側はxrdpなのですが、/etc/xrdp.iniの設定で色数設定を32から24にすると良いとの情報が見つかりました。で、ここを変更してやったところ無事に接続できるようになりました。

#hidelogwindow=true
max_bpp=32 <- ここを24へ
new_cursors=true

こんな設定いじったことは無いはずなのですが、どうにも妙。各種ログを確認したところ3月末にyumでxrdpが自動更新されてました。そのときにiniファイルも更新されてしまったのでしょうね。迷惑だな…

それにしても32bppだと問題になるセキュリティって何なのでしょうね。なんか闇だな。

Windows側でRTCをUTCにする

LinuxとWindowsとを往復すると、RTCの取り扱いの問題で時間がずれます。
うっとうしいので、Linux側をいじったところ変な警告が出たという話は前回しました。なので今回はWindows側の対策の話。

まぁ難しいことは無くて、レジストリエディターで1項目追加するだけです。追加するのは次の項目

\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation

このレジストリエントリを追加してDWORDで1をセットします。あとは再起動するだけ。再起動すれば当然9時間ずれますので、時刻合わせを行っておきます。

それにしてもまだまだWindowsにもいろいろな機能が隠されていますね。みなさんどうやって見つけているんだろうか。Windows SDKあたりにヒントが隠されているのかな?

ちょっとした小技

LinuxからWindowsに戻すと時刻が-9時間となって鬱陶しいです。

[xxxxx@localhost ~]$ timedatectl
               Local time: 日 2022-03-13 12:15:19 JST
           Universal time: 日 2022-03-13 03:15:19 UTC
                 RTC time: 日 2022-03-13 03:15:20
                Time zone: Asia/Tokyo (JST, +0900)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: no 

それは上記のようにPCの内部時計(RTC)がUTCに同期してしまうからです。LinuxサイドではRTCのデーターから指定されたTimeZoneデータを元に現在時刻を出すので問題無いのですが、WindowsはRTCがローカルタイムであることが前提になっています。
これだとWindowsに戻ったときにいちいち時計合わせしなくてはならず、面倒なので、LinuxサイドのRTCをローカルタイムに合わせてみます。

[xxxxx@localhost ~]$ sudo timedatectl set-local-rtc 1
[xxxxx@localhost ~]$ timedatectl
               Local time: 日 2022-03-13 12:21:18 JST
           Universal time: 日 2022-03-13 03:21:18 UTC
                 RTC time: 日 2022-03-13 12:21:18
                Time zone: Asia/Tokyo (JST, +0900)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: yes

Warning: The system is configured to read the RTC time in the local time zone.
         This mode cannot be fully supported. It will create various problems
         with time zone changes and daylight saving time adjustments. The RTC
         time is never updated, it relies on external facilities to maintain it.
         If at all possible, use RTC in UTC by calling
         'timedatectl set-local-rtc 0'.

しかし、「いろいろと不都合が出るかもよ」と”脅されます”。ならばともう一度調べたところWindows側のRTCをUTCに合わせる方法もあるとのこと。普段はLinuxなので、Windowsの方を合わせることにしましょう。

KiCAD V6その4

どうにか時間が取れたので、本体のbuild開始。30分くらいで終わった気がします。

今回、VSでProjectを開くのにドキュメントと違う方法試したところドはまり。cmakesettings.jsonにswig.exeとpython.exeのありかを書いておけば、特に何も追加指定せずに実行できるはずと、あれこれやりましたがエラーが取れなくて一旦中止。cmakesettings.jsonの書式を勉強しないとだめですね…

今度はドキュメント通りにprojectを開き、ドキュメントにある通りにswig.exeとpython.exeの在処を書き込んでビルド開始。ビルドオプションは生成するオブジェクト毎に分かれています。x86-debug,x86-release,x64-debug,x64-release,MSYS2-x64-debugとあるのですが、x86とMSYS2は使用しないのでx86の2つにだけ追加。

出来上がったのはよいのだけど、何このバージョン表記。またnightlyからソースを引っ張ってきてしまったようだ… 進歩無いな。もう一度6.01のソースをとってくるところからやり直さなきゃ。

KiCAD V6その3

いろいろ情報を漁っていたところ、文字コードをUTF8にするオプションが有ることを発見。コントールパネルの「時計と地域」→「地域」→(管理タブ)と辿っていくとUnicode対応というチェックがあります。ベータと書いてあるのが気になりますが、デフォルトで用意されているのだからと、チェックを入れて再起動。再度vcpkgの作成に挑戦します。

文字コード変更

その結果は大成功で、止まることなく進行していきます。嬉しいことにネイティブ環境なので、当たり前ですがVM環境下より早い。途中でlibiconvだったかがエラーになっていたのだけど、全体として停止せずに進んでいるので必要無いってことなんだろうか? これは後でどう影響するか気になります。まぁ実行する前にもう一度構築してみますかね。

さてVM環境下ではかなりの時間を要したvcpkgの構築、どの程度で終わるのか楽しみだ。

16:55追記

外出から戻ってきたら終わってました。所要時間は2.8hとのことですから2時間50分ほど。VMの時は7時間以上だったので大幅短縮です。buildもこの調子だと嬉しいな。

2月13日追記

vcpkgが更新されていたので、gitで取り直して更新。途中sqlite3の処理でエラーになったけど、再度実行したら止まることなく実行中。なんだったかな?

KiCAD V6その2

メインフィールドであるFedoraにRawideではありますが、正式に6.0が来たのでソースをチェック。いつもの所にお馴染みのnewstroke_font.cppを発見。ならばと早速ファイルを入れ替えてrebuild。結果は予想通りで、全部の文字を確認したわけではありませんが、ざっと見た範囲では幅の問題が解決しています。

と言うことは、Windows側でもまだRebuildはやる価値ありということで、再びがさごそ。
しかしMsys利用のWinbuilderは対応が5.12で止まっています。PKGBUILDの中身をいじれば良いのでしょうが、正規に提供していないということは何か問題があるんだろうと思わせます。

ならば丁度よいと思い英語環境のユーザーを追加してVisual Studio利用での作成に挑戦。
しかし、vcpkgの処理中にwxPythonの文字コード問題が発生してエラー停止。CP1251でも結果は一緒です。
普通に日本語環境で試した時と同じ結果で、使用言語を英語にしただけではベースの文字コードが変わらないので問題は解決しない模様なんだけど、全体の文字コードベースをUTF8にする方法が有るらしいので、いったんそちらを試してみますか。

それにしてもこのsh●tなパッケージを使い続けている理由が分からないなぁ。ベースのpythonでもV2からV3への移行で大問題が発生しているので個人的には関わりたくない言語です。とは言え人気が有り、高校の情報の授業でのプログラミングの題材として利用されていのをよく見かけますので、とっつきやすいんでしょうかね。

と言うわけで、またMSから英語版Windows11の開発環境イメージを落としてきてそちらの環境で試してみましょう。

Kicad 5.1.12再挑戦その4

折角の英語環境があるので、Msysでの構成にも挑戦してみましたが、豪快にMsys2の環境生成で失敗。なんとかのバージョンがとか、シグネチャがとか多数文句が出ます。

これは言語環境では無く、そもそも引っ張ってくるMsys2のバージョン違いが問題なんでしょうけど、別世界から引っ張ってるのでしょうかね。とても謎。いつも言っているように、元の開発者グループがどうやってパッケージを生成しているのか本当にわかりません。

5.1.12についてはこれで一段落かな。次はLinux側で作業しますか。それ以前にLinux環境を再構築しなくてはならないので、少し面倒だな。

Windows再インストール

自宅に持ち帰ったPCの調子が良くありません。謎のプチフリーズが多発するし、他にもなにか不安定。まぁ、HDD-SSD(A社)-HDD-SSD(B社)とイメージコピーで来ているので、構成的に無理が発生しているのかも。

なので思い切って再インストールすることにします。まぁいまだとPCの中身もだいぶ減っているのでバックアップも楽だしね。

11/18 追記
クリーンインストール自体はさほど時間もかからずに終了。しかしライセンス認証のためにMSのアカウントと紐づけした時にDesktopやMyDocumnetなどがOneDirve上のフォルダー設定にされてしまい、解除できない。(移動できないフォルダーがあるとかなんとか)
旧のデーターはまだ残したままなので、今晩にでも再インストールしなくちゃ。
それにしても、どこでそんな設定になったのやら。お節介で迷惑な仕様だ。

PC更新

自宅PCが壊れてから、うだうだとしていうるうちに4か月が経とうとしています。

もちろん情報収集をしてどうするか検討はしていましたが、どうも今一つ。ところが半導体不足は未だに解決しないし、さらにシリコン単結晶の不足とか、基板製造に不可欠な銅箔の値上がりなど不穏な話ばかり。さらには急激に円安が進んでしまい、ほとんどが輸入品であるPCの価格にも影響することは必至です。
これ以上待っていても良いことは起きそうにないので、見切りをつけて新規に1台注文しました。いわゆるゲーミングPCって奴ですが、まともなチップセットを使用したMBを使って構成しているのがゲーミングPCだけってご時世なので仕方が有りません。安いビジネス用を謳うPCだとH510か良くてB560で、せっかくi7を導入する意味が半減します。今回はH570使用。X299だのZ590だとかなり高価になるので、このあたりが良い線と思われます。
ゲーミングPCと言っても、まぁ巷によくあるような「色とりどりの照明がきらめく」なんてことは無いので言わなければゲーミングPCとは気づかれないでしょう。

当初はAMDのCPUと思っていましたが、どうもゲーム以外での成績がパッとしません。またCPU自体のTDPが105Wと冷却が大変なことが判明したので没。結局はi7-11700に決定。内蔵ビデオ機能無だと若干安くなるのですが、ビデオカードが壊れた時の保険として「内蔵ビデオ機能付き」を選択。またCPUクーラーも標準で良いかと思いましたが、PCの置かれる環境が過酷(汗)なので、ヒートパイプ式の高性能品をおごります。
その他としてはメモリーを32Gbに、ビデオカードは最安のNvidiaのGTX1650としてメモリー代を捻出。タイミングよくキャンペーンをしていたので、SSDを+1k円で倍容量にできました。システム用にM2で1TB、ストレージ用にSATAで今までの2TBをつけてやれます。

ビデオカード以外はほぼ最新かつ上級でまとめられました。今どきのビデオカードは高級品だと単品で200k円を超えてくるので、とても手が出せるものではありません。ゲームするわけでもないので、普及価格帯で十分。これだってたぶん現在使用中のAMD RX550よりはかなり性能が上がっていると思われますし。

キーボードも更新したので、なんだかんだで予算を30%ほど超過してしまいました。しばらく節約生活しなくては…
来週末は職場PCでの引っ越し大会になりそう。今から準備しておかないと。