ラベル linux の投稿を表示しています。 すべての投稿を表示
ラベル linux の投稿を表示しています。 すべての投稿を表示

2025年8月1日金曜日

windows OSのサポート切れをPC新規購入の言い訳にするのは終了

私の職場で最も使われているOSはlinuxだ。半数以上のPCにはlinuxが導入されている。windows OS利用者は少なく、mac OSはもっと少ない。

windows OSを選ぶ意外な理由は、性能不足や故障などの理由がなくても新PCを購入できることだ。それはwindows OSがサポート切れを迎えたときだ。windows 10は秋にサポート切れになるので、それを理由にwindows 11を搭載したPCを購入したいと言えば、無条件に許可される。これは便利なのでwindows XPのサポートが切れたときも、windows 7のサポートが切れたときもそれを理由に新PCを手に入れたものだ。

これがlinuxを使っていると、いつでも新しいOSに無料でアップグレードできるので、OSのサポート切れは新PCを買う理由にならない。

秋になったら、サポート切れを理由にしてwindows 11搭載のPCを購入できるのだがそれを最後の機会にしようと思っている。もうほとんどwindowsを使う機会がなくなったからだ。社内でマイクロソフトオフィス文書の利用がほとんどなくなった。Libre Officeなどの互換オフィスソフトを使っている訳でもなく、文書が平テキストになったのだ。表計算ソフトはたまに使うのだが、それはブラウザ上で使えるタイプだ。つまりlinuxでもmac OSでもよい。こうなると不具合の多いwindows OSを使う理由はない。

プレゼン用にパワーポイントで細かい絵を描く人も減った。ジョブズのプレゼンのkeynoteの資料のように、1枚のスライドには大きな文字の文章を数行配置するだけ。それならテキストエディタがあればよい。そして、そのようなスライドの方がよほど内容が伝わる。

他社も同じような状況になったら、悪の帝国microsoftも終焉を迎えるかもしれない。使わないものに誰もお金は出さない。

2025年1月14日火曜日

mac用取引アプリがあるのはSBI証券と楽天証券

どの証券会社もwebブラウザーでの取引はできるから、その場合はOSの違いはそれほど問題にならない。しかし板を見ながらデイトレをするような場合は専用取引アプリの方が使いやすい。以前はmac用取引アプリを用意している証券会社はいくつかあったが、今は私の知る限りSBI証券と楽天証券だけだ。FX会社だとiPhone用やiPad用取引アプリを用意している会社はいくつもあり、それをapple silicon macから利用することができるので、もっと多い。

なぜSBI証券と楽天証券だけになったのかの理由は明確で、その二社だけがmac用を作る余裕すなわち資金力を有しているからだ。国内株の取引手数料を無料化したのは今のところこの二社だけなのも同じ理由からだろう。

私は他の証券会社も使っているので、本当はそれらの証券会社でもmac用アプリを作ってほしい。しかしそれは叶わない希望だから必然的に取引はSBI証券と楽天証券に収斂してしまう。

リーマンショックの前後はlinuxでFX取り引きをしていた。マネースクエアジャパンの取引システムではlinuxでも普通にチャートが表示できて取り引きができた。今でもそうだが、windowsはシステムが落ちやすいので、クリティカルな取引に使うのは怖い。以前、windowsがフリーズしてwindowsを採用していたアメリカの軍艦が動けなくなったなんて事件があって「命がかかっているシステムにwindowsを使うとは何事か」と各方面から叩かれた。金融取引は命はかかっていないが、お金がかかっているのでそれなりに重要なことだ。これにwindowsを使う連中の気がしれない。

macもmac OS9まではwindowsと同様に落ちやすく信頼性がなかった。なのでそのころはmacで金融取引をしようなんて夢にも思わなかった。mac OSはmac OS XになってからUNIXベースになって頑健性が飛躍的に向上した。それでも最初の5年くらいはまだ不安定だったが、今ではすっかり安定した。debianと同じくらい信頼できる。

2024年12月24日火曜日

linuxだから軽いのではなかった、terminalで作業しているから軽かったのだ

windows11にアップデートできないPCをlinuxで使いましょうみたいな記事がある。2018年以前のCPUはwindows11にできないことが多いからだ。linuxは軽いので古いCPUでもサクサク動くかもみたいな含みもある。ところが後者に関してはあまり期待できない。

手持ちのPCでは2023年の第14世代のcore i9マシンにubuntuを入れたらサクサク動いた。2018年のCoffee Lake世代のXEONマシンにubuntuを入れてもサクサク動いた。ところが2009年のHarpertown世代のXEONマシンにubuntuを入れたらサクサク動かなかった。メモリを32GB積んでいるのにXを起動するとレスポンスが悪い。

私は普段は486DX4 75MHzのHinoteやARM 1GHzのラズベリーパイZEROで作業をしている。OSはlinuxだ。作業中にレスポンスが悪いとは感じない。だからlinuxは軽いというイメージがなんとなくあったのだが、そうではなくterminalで作業をしているから軽いのだ。HinoteやラズベリーパイZEROでXを動かすとひどく重い。

普通の人のPCの使い方だとGUIで使うのが中心だから、linuxを入れたとしても古くて性能の低いPCを使うとレスポンスが悪くて使い勝手はよくないと思う。linuxが軽いというイメージはterminalで作業するときの話だ。私は2010年まではterminalで動くブラウザを使っていたのだが、最近のウエブページはterminalでは表示できないものばかりだ。ウエブページを閲覧するにはGUIが必須で、そうなるとlinuxでも新しめのPCが使いやすい。

2024年12月3日火曜日

ラズベリーパイを固定IPで運用する

debian9ベースのraspberry pi OSで運用していたラズベリーパイZERO Wと通信できなくなった。最初はハードウェア故障を疑ったが、ネットワーク設定が書き換わったのが理由だった。

/etc/dhcpcd.conf

がデフォルト値に戻っていた。そのため、設定した固定IPではなくDHCPで割り当てられたIPで動いてしまい、行方不明になっていたのだった。このファイルはテキストファイルであり、書き方はコメント文で例が示されているので、設定は簡単だ。DHCPでも固定IPでも簡単に設定できる。

不思議なのはなぜデフォルト値に戻ってしまったかだ。メンテ中にファイル情報を見たが、ファイルの更新日付は2017年だった。ファイルの持ち主はroot.netdevだった。謎である。

2024年9月15日日曜日

BindsNETが新しめのubuntuにうまく入らない

SNNのネットワークを動かせるBindsNETを使いたくてpipで入れようとしたらubuntu 22/24はソフトウエアの依存関係が解決できなくて入らなかった。古いubuntuなら入りそうだが、適当なPCがないのでまだ試していない。とりあえずSNNのコードを書くのはCarlSim6で足りているので、時間が余らないと(現実逃避するとき?)試すことはないだろう。

1970年代とか1980年代はOSのバージョンが古いから困ったという記憶がない。新しいから困ったこともない。1990年ころからはOSのバージョンが古いから困ったことはあったが、新しすぎるから困ったことはなかった。ところが2020年以降はOSが新しすぎるから困ることがかなり増えた。

古いOSは後からインストールすることもできるが、古いOS用のソフトウェアやライブラリをネットからapt等でインストールすることはレポジトリが対応をやめてしまうとできなくなる。そのためにOSが現役のときに環境を作っておいて、それをずっと維持するのが楽だ。たくさんの古いOSのバージョンを保存するのにいちいちPCを用意するのは大変なので、仮想マシンやdockerコンテナで保存することになる。

2024年8月17日土曜日

DEC Hinote Ultra CT475が壊れる

DEC Hinote Ultra CT475と通信できなくなった。予備のethernet PCMCIAカードを刺したが認識しない。液晶ディスプレイに表示されるカーネルメッセージには

CS: Socket 1 timed out to reset

が、カードを刺すたびに出力される。カードスロットはもうひとつあってそちらはSocket 0なのだが、こちらはずいぶん前から認識しなくなっている。PCMCIAカード部分がハード的に壊れたようだ。本体は壊れていないのでスタンドアロンのノートPCとしては動くのだが、外と通信できないと役立てようがない。どうやら引退のようだ。RS232Cポートとパラレルポートは生きているのでその上でSLIPやPPPを動かせば低速の通信はできるが、それでwebサーバーを動かすのは無理がある。そう、比例道のブログサーバーの古い日付のコンテンツはDEC Hinote Ultra上のApacheサーバーで動いていたのだ。今後見られないコンテンツがあったら、それはHinote上のコンテンツだったと思ってほしい。

1995年に買ったHinoteだが、2024年に引退だ。30周年を達成できなかったのは残念だ。スタンドアローンでは動くので完全に壊れた訳ではないが、もう実用には使えない。HDDは取り出して別のPCにつなげて中身を吸い出そう。

29年間ありがとう。裏の銘板を改めて見たがMade in Japanとある。長持ちするはずだ。

[その後ジタバタ]
  1. 数年前libretto20が壊れたとき、バラして組み直しただけで直ったことがあった。そこでバラしてみた。基盤間をつなぐフラットケーブルを抜き刺しした。しかしこれでは直らなかった。
  2. pcmciaのモジュールとかcard managerのモジュールの実行ファイルが破損したのかもしれない。そこでカーネルコンパイルをしてモジュールをmakeしてみることにした。今makeしているがこれは半日〜1日かかる。終わったがダメだった。ハードウェアの故障のようだ。
[付録 old linux kernel build command]
make config
make dep
make clean
make bzImage
make modules
make modules_install (rootで実行すること)
make install (同上。これでliloも実行される)
cd pcmcia-xx
make config
make all
make install (rootで実行すること)

2024年8月14日水曜日

Apache httpdの脆弱性(CVE-2024-27316)

Apacheは十分枯れたからもう新たな脆弱性など出てこないだろうとたかを括っていた。しかし、そうではなかった。2024年4月に簡単な攻撃方法が報告されていた。この攻撃はPC1台あればできるコストパフォーマンスの高いDoS攻撃だ。対応パッチはgithubで公開されていて、読めばすぐ分かるコードで対策できている。

私もパッチを当てようと思ってApacheのソースディレクトリへ行った。しかしその必要はなかった。そもそも私のApacheサーバーは脆弱性のターゲットであるHTTP/2には...もごもご...

2024年8月3日土曜日

DEC Hinote Ultra 475CTが壊れたかと思うも

比例道のブログサーバーの一部コンテンツは1995年発売のDEC Hinote Ultra 475CTがさばいている。一時期動的コンテンツを使いたくて高性能のHinote Ultra IIのCTS120にアップグレードしたのだが、ほぼ同じ筐体にPentium 120MHzを入れたPCだからか熱でマザーボード上のコンデンサが劣化して壊れてしまった。その後486DX4 75MHzの475CTに戻して今に至る。

今日ログインしようとしたら反応がない。とうとう壊れたか、2025年まで動けば30周年だったのに残念だと思って、マシンの置いてある場所に行くと画面にeth0のエラーメッセージが延々出ている。3comのPCMCIAカードが壊れたかなと思ってチェックしたらethernetケーブルが半分抜けかかっていた。それだけ。ケーブルを挿し直して、念の為リブートしたらfsckも走らずあっさり復活した。この分だと30周年は行くと思う。下手をすると40周年50周年もありうる。ブログサーバーとして365日24時間動き続けているのにこれだけ長持ちするのは発熱の少ないcpuだからだ。486DX4は75MHz駆動だと消費電力は5W以下だ。

同じ理由で2018年頃から各種サーバーとして動かしている10台余りのラズベリーパイ達も20年30年と動き続けるだろう。最近のラズベリーパイ5は消費電力がそこそこ大きいが、ラズベリーパイZEROなら2W以下だ。

2024年7月26日金曜日

"windows? なにそれおいしいの?"と言っている私も昔はwindowsを使っていた

windows updateでまた屍累々の記事を読んだ。こういう目に10回くらい会うと自然と「microsoftの製品を使うのは時間の無駄ではないのか」という疑問が生じそうなものだが、世界中学習しない連中ばかりでビルゲイツも大喜びだろう。

私も以前はwindowsをよく使っていた。2000年ころのアナログ波TV放送録画ブームのときにSONY VAIOを9台ほど購入してGiga Pocketという録画ソフトで何TBもの録画を行った。Giga Pocketはwindows用しかないので必然的にwindowsを使った。そしてwindows updateを行った結果PCがおかしくなるという現象に何十回も遭遇した。中には回復作業に数日かかったという重症な不具合もあり、それで私も学習した。「windows updateをしてはいけない」「そもそもwindowsは使うべきではない」と。幸いアナログ波放送が絶滅した結果、PCでTV放送を録画する利便性が著しく減ったのでTV放送録画は2010年くらいにやめてしまった。そうなるとwindowsを使う機会は年賀状の印刷と株式の取引のときだけになってしまった。今はwindows PCを使う時間はPCを使う総時間の1/100以下でしかない。windows updateも自分からは絶対にしない。おかげでPCを操作していて不具合が発生しトラブルシューティングに時間を取られるということがなくなった。時給的に何百万円も得しているし、ストレスから解放された分はお金には代え難い利点だ。なぜみんなそうしない?

windowsもwindows 3.1まではそこまでひどくなかったし、当時はmacintoshの方がフリーズする機会が多かった。microsoft製品がダメになったのは1995年のwindows 95からだ。

勤めた会社がよかったせいで1980年代はUNIXで仕事ができたのでコンピューターの不具合で仕事が止まることはなかった。頻繁にフリーズするmacintoshを使わなくてもX10/X11でグラフィカルな表示はできた。UNIXを祖とするlinuxは1997年から使い始めてお財布にやさしくなった。macは21世紀になってUNIXベースになってからはひどい不具合は随分減った。今はmacとlinuxで幸せに暮らせている。結局UNIXの系譜がよいというヒネリのない結果に落ち着いたのだ。

2024年7月20日土曜日

debian9からdebian12に上げたらTimeCapsuleにNFS接続できなくなった

これまでdebian9を入れていたラズベリーパイの外部ディスクにapple TimeCapsule(縦型)を使っていた。以下のようにmountコマンドを使っていた。

mount -t cifs //192.168.xx.yy/TimeCapsule -o sec=ntlm,username=hoge,password=hoge,vers=1.0,uid=dareka,gid=adm -w /mnt/dokoka

しかし、Raspberry Pi OSを最新のdebian12ベースに変えたら、認証エラーでTimeCapsuleに接続できなくなった。オプションのntlmが使えなくなってntlmv2しか指定できないが、TimeCapsuleはその認証に対応していない。vers=1.0もvers=2.1に変えないといけないが、TimeCapsuleはその認証に対応していない。仕方ないので外部ディスクをbuffalo社のLS510Dに変えたらこれはまあまあ新しいので、新しい認証プロトコルに対応していて以下のコマンドでNFSでmountできた。

mount -t cifs //192.168.xx.yy/ls501d -o sec=ntlmv2,username=hoge,password=hoge,vers=2.1,uid=dareka,gid=adm -w /mnt/dokoka

もっと新しいbuffalo社のLS710Dも持っているのだが、LS510Dより新しい機種はNFSの対応を止めてしまったので使えなかった。新しい機種はAFSにも対応しておらず、SMBでしか使えない。ユーザー層を考えると仕方がない。下手に機能を付与してもメンテやサポートの手間が増えるだけだから。いまどきの一般ユーザーがNFSやAFSを使うとは思えない。

2024年7月19日金曜日

CrowdStrikeの障害が起こるもインストールを忌避していたので被害を免れる

私物のPCには絶対にアンチウィルスソフトの類は入れないようにしているので問題はない。会社のPCはセキュリティーソフト必須でしかもCrowdStrike指定だ。今回の事件でとんでもないことになったかもしれないのだが、大丈夫だった。なぜなら私は入れてなかったからだ。私物のPCに入れないのと同じ理由だ。ウィザード級のコンピューター使いにとってはアンチウィルスソフトを入れた方が入れないときに比べて害が大きいからだ。アンチウィルスソフトを入れずにウィルスにひっかかって会社に損害を与えたら私は大目玉を食らうことになるが、あと1000年経ってもそんなことにはならない。妙なソフトをインストールすることはないし、通信に使うポートは全て把握していて厳格に管理しているからだ。

ちなみにCrowdStrikeはlinux用もあって、会社ではlinuxマシンにも入れろと指示があった。どのような挙動をするのか知りたかったので、たくさんあるlinuxマシンのうちどうなってもよい1台だけにはCrowdStrikeを入れてあった。しかし今回の事件の影響は受けなかった。ありがちなことだがwindowsだけの問題のようだ。1990年代から「クリティカルな業務にマイクロソフトの製品使うとか頭大丈夫か?」と散々言われていたのに学習しない人もいる。

CrowdStrikeは各自のPCに導入したかどうかを管理者が知ることができるのに、なぜ私は管理者に叱られないかって?管理者を欺くのは簡単で、本物のマシンと同じMAC番号の仮想マシンを作ってそれにOSを入れてCrowdStrikeを入れる。半日ほど仮想マシンを動かして、管理者側のマシンへログ情報を送ったであろう後は仮想マシンを止める。その後は本物のマシンを使う。定期的にログ情報を送らないのでいずれバレるはずだが、管理者は忙しいのでたくさんあるPCを1台1台チェックしたりはしない。もしバレても「しばらくPCに電源を入れてませんでした」と回答して本物のマシンを止めて仮想マシンをしばらく動かせば大丈夫。

2024年7月12日金曜日

アナログRGBディスプレイとPS/2キーボードを使ってラズベリーパイOSをインストールする

これまでラズベリーパイのOSをインストールするときはUSBキーボードとHDMI入力ディスプレイを使っていた。それでないとインストールできないと勘違いしていたからだ。しかし私は普段はPShareを使う関係でPS/2キーボードとアナログRGB入力ディスプレイを常用している。USBキーボードとHDMI入力ディスプレイは倉庫にしまっている。いちいち倉庫から運んでくるのが面倒になって、今回初チャレンジしてみた。

結論から言うと、何の問題もなくインストールできた。これまでの苦労はなんだったのか。使ったのはラズベリーパイ3B+だ。PS/2キーボードを刺すためにアマゾンで数百円で売られているPS/2-USBアダプターを使った。アナログRGBディスプレイケーブルを刺すためには、サンワサプライのアナログRGBディスプレイ-HDMIアダプターを使った。これは高くて2000円くらいした。後はインストール用のマイクロSDメモリーカードを刺して起動すれば何の問題もなくインストールが進んだ。

これまではdebian9(stretch)ベースの32bitラズベリーパイOSを入れていたが、今回はdebian12(bookworm)ベースの64bitラズベリーパイOSを入れてみた。64bit化のおかげではないと思うが、これまで重くてろくに使えなかったブラウザがサクサク動いたし、タブを何枚も開いてもフリーズしなくなった。新しいOSを入れてよかった。

と、思ったら軽かったのはchromiumブラウザだけだった。firefoxを使ったらタブを3枚開いたところでフリーズした。とほほ。

2024年6月27日木曜日

サポートされなくなったソフトウェアこそ安全

以前からwindows updateを行うことによる不利益と利益を比べたら不利益の方が1万倍くらい大きいからwindows updateは行うべきではないと言い続けてきた。そのためにwindows updateが行われなくなった古いwindows 2000の方がよほどよいと。

古いものほど良いのはwindowsの設計思想が腐っているからでwindows特有の性質かと思っていたが、最近そうでもない事例に気づいた。私のブログが頻繁に攻撃を受けているのは何度も本ブログで述べた。ログから攻撃手法を調べると的外れな攻撃しかできていない。私のマシンのソフトウェアは全部オープンソースなのだから、ソースコードを調べたら的外れな攻撃ではなく的確な攻撃ができるのになぜしない。クラッカーがバカでソースコードを読めないのだろうと思っていた。

ところが、よくよく考えるとソースコードが読めないのは当然だとわかった。もう正規のルートではソースコードを入手できないのだ。作った人が引退した、スポンサーが撤退した等の理由でメンテする人がいなくなって公開サイトが閉鎖されてしまっている。探せばどこかの個人サイトにアーカイブがあるかもしれないが、それを探し出してまでクラックするほどの経済的価値は私のブログにはない。金目のものは何も置いてないからだ。

つまりオープンソースのソフトウェアでも古い方がよい事例があるのだ。要するに「古すぎてクラッカーの相手にされない」ということだ。

同じことはどこにも公開してない自作のプログラムにも言える。みんなに公開した方がセキュリティが強くなるのはオープンソースの重要な特徴だが、それとは正反対に誰もソースコードにアクセスできなくするのもセキュリティを強化する方法となる。ちゃんとセキュリティを理解した人がプログラムを書いていればの条件付きだが。

2024年6月10日月曜日

Deepinは14年前のThinkCentreM55でも動くもののブラウザが重かった

Deepinが美しいとの評判は知っていたが、バグがあるとか変なソフトのインストールを促されるとかの悪い評判もあったのでインストールしなかった。最近のレビュー記事で悪い評判の方は改善されたと知ったので追加のウィンドウマネージャーとして入れてみた。

どうにかなってもよい(既存環境が壊れてもよい)マシンを選んだので 、2007年発売のThinkCentreM55を使った。Core2Duo 1.86GHz/3GBメモリなのは大丈夫だろうが、GPUがチップセット内蔵のQ965なのが心配だった。が、エラーなくインストールできてちゃんと動いた。評判通りの美しいデスクトップなので常用したいと思った。

ターミナルを操作するのは問題なかったが(ターミナルなら486マシンでも大丈夫だろというツッコミはおいといて)、firefoxを使うと鬼のように重くて耐えられなかった。このブログも最初の一段落はThinkCentreM55のfirefoxで書いたのだが、2段落め以降はmac miniのchromeで書いた。ラズベリーパイ3やZEROもブラウザを使うと重くてやってられないので、ブラウザを使うにはそれなりのスペックのPCが必要なのは仕方がないのだろう

自分では入れてないのにbraveブラウザやchromiumブラウザが使えた。それらのブラウザのインストールディレクトリを見るとsnapの下に入っていた。ありゃりゃ、勝手に入れたな。まあいいけど。

2024年5月8日水曜日

Error allocating inode bitmap (2) : Memory allocating failed

24時間通電の1995年製のHinote Ultraを再起動したらfsckにエラーが出て止まった。エラーメッセージは
Error allocating inode bitmap (2): Memory allocating failed
だ。これは初めて見るメッセージだ。
「fsckに使うinodeのテーブルをメモリに置こうとしたら足りなかった」と言っているように見える。ネットで調べるとメモリモジュールが一部不良になってメモリ容量が減るとこのエラーが起きるとある。そうだとしても今さらHinote Ultraのメモリを交換するなんてできない。今手動でfsckをかけているが、linuxquestion.orgで見つけた以下の記述も参考になりそうだ。通常のfsckでダメだったら試してみよう。

1) I booted off the Slackware CD.
2) I ran fsck.ext3 -f (forced mode) and it failed.
3) I tried running fsck.ext3 -p (preen mode) and it failed.
4) So, out of desperation, I ran it in -c ('read-only but check for bad blocks' mode) and it ran all night and completed successfully with no errors.

After the sucessful fsck.ext3 -c run, it caused two nice things:
1) It reset the mount count and doesn't force fsck on start-up any more.
2) The 3ware raid will now actually do a raid verification without barfing!

結論から言うと普通のfsckで回復してしまった。やれやれだ。エラーが出たときは単に機械の調子が悪かっただけだろう。デジタル機器なのに調子が悪いとは此れ如何になんだが、デジタル機器と言っても電源のコンデンサとかメモリ配線のインダクタンスとかアナログ的な部分があるので、温度の違い等で動作が違ってくることはままある。

2024年3月13日水曜日

特殊キーのキーコード問題は根深い(github copilot)

PC watchの連載記事Ubuntu日和は2022年から続いていて内容が濃く面白い。私が注目したのは「特殊キーが特別だからmacは使わない」と著者が書いていたことだ。それはとてもよくわかる。appleファンの私は「macは使わない」ところは賛同できないが「特殊キーが特別」に関しては大いに共感した。

デスクトップPCにキーボードがつなげてあるとか、キーボードが作り付けのノートPCなら特殊キーが特別なことは問題にならない。何らかのユーティリティーでキーコードは自由に変えられるし、その状態を常に維持できるからだ。

ところが、キーコードをなんらかのプロトコルに乗せて通信する手段を経由してPCを操作している場合は、特殊キーの扱いが通信手段によって異なるので面倒になる。通信がシリアルに重なっていると面倒さが増大する。日本語配列キーボードを設定しているPCが英語配列キーボードのキーコードを中継するときにも困ったことが起こりがちだ。

私の仕事環境の場合はキーコード変換が4段生じている。

  1. KVMのPShare経由でHHKBをmacに接続
  2. 職場への接続は証明書を持つ専用windows PCでないと許可されないので、mac OS上のアプリMicrosoft Remote Desktopで専用windows PCに接続
  3. RDPしか通さない職場のVPN接続なためリモートデスクトップ接続で職場の受信専用windows PCに接続
  4. 受信専用windows PC上でターミナルソフトrlogin.exeを動かして職場のlinux PCに接続してneovimを操作
neovimでgithub copilotを使うためにAlt+[を叩いてもAltを認識せずに動かない。github copilotの設定を変えてControl+,とかにキーバインドを変えてもControl+,を認識しない。試しにローカルPCでgithub copilotのキーバインドを変更するとうまく動くので、通信しているゆえの問題だ。

せめて通信を1段減らそうと思い、受信専用windows PCを止めて職場のlinux PC上でxrdpを動かして専用windows PCから職場のlinux PCへ直接RDPで接続してみたが、これでも状況は改善しない。

PShareの特殊キー処理か、VPN接続の特殊キー処理か、アプリMicrosoft Remote Desktopの内部処理か、アプリリモートデスクトップ接続の内部処理かで特殊キーを正しく処理できていないと思われるが、それぞれの設定を思いつく限りいじっても改善しなかった。

エディタをneovimからVisual Studio Codeに変えてみたが、Alt+[を認識できないことには変わりなかった。

macのユーティリティーkarabinerでキーコードスキャンをしてHHKBからmacへは正しいキーコードを送っていることは確認できてはいるが、それ以降の通信の途中でおかしくなっている。

こういうのはControlとかAltとかの特殊キーを使っているゆえの問題なので、Controlを使わず英字キーだけで操作する設計思想のviはすごい存在なのだと改めて気づいた。emacsはControlキーがないと動かないし、wordstarなどのワープロエディタもControlキーを当てにしている。

2024年3月3日日曜日

nvidiaのドライバーとライブラリーの齟齬がapt upgradeだけで解消する時代になった

ubuntu 22.04LTSでcudaを利用するプログラムを動かしたら、ドライバーとライブラリーのバージョンが合わないと表示されて動かなかった。私が不用意にどちらかをアップデートしてしまったらしい。手動で直すことはできるのだが面倒だなあと思いつつ、もしかしたらと思ってapt upgradeをかけてみた。そしたらあっさり直った。最近は至れりつくせりだなあ。よい時代になったものだ。堕落かもしれないが。

2024年3月1日金曜日

vmwareのディスクイメージはvirtualboxで読み込める

昨日windows updateで固まったwindows PCは起動しなくなった。OSを再インストールしてバックアップからリストアすれば元に戻るが、面倒なのでやらない。そもそもwindowsのインストールディスクなんて持ってない。問題はwindows updateを許したことであり、マシンのスペックや構成ではないのは承知しているが、ここはひとつwindows PCを仮想化して新しく仕立ててみようと思った。仮想化したからって問題が解決することはなく、大事なのはwindows updateを許さないことなので、マシンができたらwindows updateを禁止する(今はできるのか?)設定をしなくてはならない。

無償のvmware playerはvmwareがbroadcomに買収されてから無くなったみたいなので、今回はoracleのvirtualboxを使用した。驚いたことにapt install virtualboxだけでインストールが完了した。これにwindowsをインストールするのだが、私はwindowsのインストールディスクを持ってないし、ライセンスも持っていない。しかし、当てはある。CentOS5時代に使っていたvmware playerで動かしていたwindowsのディスクイメージがあるのだ。これをvirtualboxで動かせば大丈夫なはずだ。実際大丈夫だった。ライセンス認証もオンラインで1クリックで完了した。

virtualboxの情報を読むとvmwareのvmdkイメージをそのまま読み込めるとある。イメージに含まれるvmware toolsは予めアンインストールした方がよいとあったが、面倒なのでサボった。が、問題はなかった。気になったのは私のvmwareのvmdkイメージは2GBずつの分割イメージであることだ。これはおそらく読めなくて、普通の1ファイルのイメージでないとまずいと思う。そこで

vmware-vdiskmanager -r oldWindows.vmdk -t 0 newWindows.vmdk

で1ファイルのイメージにまとめる。vmware playerにはvmware-vdiskmanagerは付属していないので、vmwareの無償体験版をダウンロードしてインストールする。/usr/binの下にvmware-vdiskmanagerが配置される。この実行ファイルを他のマシンに持っていってもOSが新しめなら使える。私はUbuntu 22.04LTSにインストールしたものをUbuntu 23.04にコピーしたがそのまま使えた。元のイメージはvmware player version 4のもので古いがエラーなく処理できた。

あとはvirtualboxで新規マシンを作ってディスクイメージにこのvmdkイメージを指定すればさくっと動いた。ディスクインターフェース(SCSIとかIDEとか)を元の設定に合わせなくてはならないので、新規マシンを作るときに合わせておく。

virtualboxで感心したのはGUIをデタッチできる、つまりデスクトップなしで運用できる点だ。vmware player時代に困ったのはvmware player上で仮想マシンを動かすためにはデスクトップが必要だった点だ。私はコンピューターを遠隔テキストターミナルから操作するので普段はX windowは起動させない。しかし、vmware playerをずっと動かすためにしかたなくvncserverを起動してXのデスクトップを作り、そのデスクトップでvmware playerを動かしていた。間違ってvncserverを停止させるとvmware playerのプロセスが終了し、その上の仮想マシンも停止してしまう。これはかなり問題だった。それに比べてvirtualboxはデスクトップなしで起動できるのでvncserverを起動し続ける必要がない。古いwindowsのように最初にGUI画面でログインしないとネットワーク通信が有効にならない場合は、デタッチモードで起動して最初はGUIでログインし、ログイン後にトップメニューからGUIをデタッチするとデスクトップを閉じても仮想マシンは動き続ける。これはとても便利だ。

2024年2月24日土曜日

macの日本語ディレクトリ名がターミナルでは英字になる心づかい

macのfinderでホームディレクトリをひらくと書類、ピクチャ、ミュージックといった最初から存在するディレクトリは日本語で表示される。finder上でマウスを使って操作するときなら表示が日本語でもかまわない。ところがターミナルを開いてCLIで操作しようとするとディレクトリ名やファイル名が日本語だと不便だ。入力するときに漢字変換が必要になって素早い操作ができないからだ。それなのにmacの操作で不便に感じたことはない。なぜならmacのターミナル上では書類はDocuments、ピクチャはPictures、ミュージックはMusicと英字で表示されるからだ。lsでディレクトリ一覧を表示させると全て英字だ。なんと使いやすいことか。ジョブズは米国人だから日本語ディレクトリ名が不便とは気づかなかったはずだが、もしこれがジョブズのおかげならすばらしい気づきと気配りだ。

linuxでもホームディレクトリの既存ディレクトリが日本語表示のディストリビューションが存在する。それらはターミナル上でも日本語で表示されて不便だ。しかたないので英字のシンボリックリンクを作って解決している。日本語表示で文句を言うなら最初からOSを英語でインストールすればよいのだが、私はシステムメニューは日本語表示の方が見やすい日本人なのでそこまでストイックにはなれない。

2024年2月23日金曜日

ASUS Webstorageのlinux版はubuntu 23.04では動くのにubuntu 22.04LTSでは動かない

クラウドサービスはプライベートではgoogle workspaceを使っている。有料だが機能が多いし、通信速度は速いし、そしてなにより私のファイルを抱えたまま倒産する心配がない。しかし職場ではクラウドサービスは使用を禁止されている。社外秘ファイルをクラウドサービスにアップされて、それが社外にもれたら大変だからだ。google drive/Dropbox/BOX/ONE driveなどの主要なクラウドサービスはファイアウォールで通信を遮断されている。PCにインストールしても使うことはできない。

そうは言っても複数のマシンでファイルを同期させたい。このような用途に便利なのがASUSが提供しているWebstorageだ。Webstorageは職場のファイアウォールを通過して通信できる。これはASUS Webstorageがセキュリティ的に優れているから許可されているのではない。マイナーなソフトウェアなので相手にされていないだけだ。システム管理者がASUS Webstorageのことを知らないのだ。似たような例としてproxytunnelソフトがある。これを使うと社内のマシンと社外のマシンをssh接続できる。これもシステム管理者が知らないのでファイアウォールを超えて使えている。有名なsoftetherは有名ゆえにファイアウォールでブロックされている。

ASUS Webstorageはmac用とlinux用とwindows用がある。windows用はwindows11にも対応している。mac用はmacOS Catalinaまで対応とうたっているが、apple silicon搭載機種のmacOS Sonomaで動く。linux用はCentOS 8とUbuntu 18.04LTSまで対応とうたっていて、事実Ubuntu 22.04LTSでは動かない。linuxではWebstorageを使えないのかと諦めていた。あるとき思いついてUbuntu 23.04のマシンに入れてみたら動くではないか。Ubuntu 23.04の方がUbuntu 22.04LTSより新しいのだが、なぜ動くのだろう。不思議だが、動くのはありがたい。