Proxmoxでサーバ構築

イメージ
これまでテスト用にi5第8世代の廃棄PCを使用してきた。 とはいえ今の所何も問題は起きていないが、入れ替えも視野に入れ予備サーバを用意することに。 - メモリ:16GB - SSD:500GB - DDNS+Let's Encrypt - Ubuntu24.04 この環境なので、すぐに構築し直すことは可能だが、とりあえずこのまま置いておいて別のサーバを立てることにする。 最初はRaspberryPiで構築しようと思ったけれど、本体電源+外付けHDD電源+ディスプレイ電源と考えると、邪魔なので廃案。 そこで廃棄しようと思っていた「Lavie NS300/N」が手元にあったので、これを利用することに。 一応バッテリーは正常に動作するので、UPS代わりにそのまま。 - Core™ i3-8145U(やや非力) - メモリ:8GB(少ないが…) - HDD:1TB なので、これまで使用しているものより、若干スペックダウン。 ただ用途は、非常勤で教えに行っている専門学校生用の練習マシンとする予定なので、まぁ問題なさそう。 Proxmox導入 直接、Linuxを導入してもよいのだけれど、今回は Proxmox を導入し、その上でUbuntu Serverを動作させる計画。 USBにProxmoxのイメージを焼いて、インストールすれば問題なく完了。 ただ、現在のバージョンはdebian - trixieがベースになっているので、若干参考になるサイトが少なめ。とはいえ旧版のは参考になるので調べつつ… HDDなだけあって、最初の起動は少し遅いものの、立ち上がってしまえば問題ない。 さぁ、VMにするかCTにするか…。 GUI使うのであれば、VMかなぁ。サーバだしCTでいいかぁ。 という程度の選定で、CT(コンテナ)で進めることに。 - メモリ:4GB - CPU:2 - HDD:20GB(root disk) - HDD:400GB(home用) - Ubuntu24.04 という構成で進めることにした。 テンプレートを用意して、初期設定を行い起動。 まぁすんなりと入った。 液晶を閉じたら、Suspendになってしまったので、若干設定変更。 $ sudo nano /etc/systemd/logind.conf HandleLidSwitch=ignore $ sudo sy...

MacのExcel 2011でCSVを吐く

久々にハマったので…

開発中のシステムのDBを修正するのに、CSVでダウンロード→CSVでアップロードという流れになりました。

そこで、実際にテストを行ってみたものの、どうもおかしい。
なぜかアップロード時に、うまくデータが読めていないようなのだ。

その旨、連絡した所、他の環境では発生しないという。

そこで、こちらがダウンロードしたデータと、EXCELで開いて保存したデータをメールで送る。
 ダウンロードしたデータは、システムに喰わせても問題ない。一旦開いて保存したものはエラーになる。

 ところが、メールを受け取った仲間の環境では、問題が置きないという。?????

こちらの環境の問題か?と思い、先ほどのEXCELで保存したcsvを仮想マシンのWindows上からシステムに喰わせるが、相変わらずエラーになる。
 念のため、ブラウザを変更し、chrome/Firefoxなどでも試す。全滅。
Andoroid上のから、試すも同じようなエラーが出る。

ということは、システムの問題か?と疑うが、誰もエラーにならないという。

そこで、向こうで同じ条件でデータを吐き出し、更新可能なデータを送ってもらう。
パッと見は同じ。

diffでチェック

とりあえず、こちらから送ったデータと、向こうから来たデータをdiffで確認。
全く同一だ。

バイナリエディタで確認

次は、
$ od -h a.csv > a.txt
$ od -h b.csv > b.txt
 とコードに置き直して、これでdiffってみる。
 明らかに途中から違う。

 念のため、od -c a.csv なんかで確認すると・・・。¥r ¥n と書いてある。はっ!

気付けば簡単

もうここまでくれば、明らか。
改行コードが違うのだ。

php側では、¥rのみを改行と認識していないため、次行を継続して読み込む。
当然フォーマットが合わないので、アウト。

なぜ、他の環境でエラーにならないのかを検証。
OSOfficecsv改行コード
Windows7Excel 2013CR+LF
Mac OS X YosemiteExcel 2011CR

そう、Mac 上のExcelはLegacyな改行コードを吐いてくれるということが分かった。
読み込みは、どちらの改行コードでもOKなのに…。

お仲間は、Windows上のExcelで作業しているに違いない。

僕もWindows上のExcelでCSVを吐いていれば、こんなトラブルにも見舞われずに済んだのに。

しかし、Shell上では、UTF-8+LFが今は標準なはず。なのに、ExcelはShift-JIS+CRって、いつの時代で止まってんだよ。

もっと早く気づくべきなのに、疲れているせいでしょうか…。

コメント

このブログの人気の投稿

Ubuntu24.04 でGUIが死んだ

VirtualBoxが異常

MEGAにも弱点があった?