2022年8月21日日曜日

ChromeOS Flexのキーボードショートカット

 Chromebookのリファレンス、販売されているもの用の記載しかないんですね。DIY版の場合、ショートカットキーはどのキーを使えばいいのか全然わかんなかったりするので備忘録です。

『ウインドウを表示』キーは「F5」

ウィンドウを表示って、何?という感じだが、AndroidやiOS/iPad OSで(スワイプとかホームボタンとかで)アプリの一覧を表示する動作のこと。それはそれとして、このキーを使うとウィンドウ関連のショートカットが使える。ウィンドウ関連なら何と言ってもスクリーンショットです。

スクリーンショット関連のショートカット

  • 画面全体:[Ctrl]+[F5]
  • 画面の一部:[Ctrl]+[Shift]+[F5]
  • アクティブなウィンドウ:[Ctrl]+[Alt]+[F5]

ディスプレイ・デスクトップ関連のショートカット

あまり縁がなさそうだけど、マルチディスプレイを使っている場合や仮想デスクトップを使っている場合はWindows(田)キー。
  • 画面をロック:[田]+[L]
  • スリープする:[田]+[Shift]+[L]
  • ウィンドウを他のディスプレイに切り替え(マルチディスプレイ):[田]+[Alt]+[M]

上2つはわりと使えそう。電池保ちはかなりいいですからね。

Windowsっぽい挙動のためのショートカット

田キーは普通にアプリランチャー呼び出しが使えます。これはちょっとWindowsっぽいです。他にも使えるのは以下でしょうか。

  • ファイルエクスプローラー(「ファイル」アプリ):[Shift]+[Alt]+[M]
  • アクティブウインドウを閉じる:[Ctrl]+[W] ※[Alt]+[F4]は不可
  • タスクマネージャ:[田]+[Esc] ※Windowsとは違うが、なかなか面白い

他にもたくさんあって書ききれないし、忘れてしまったら

  • ショートカット一覧の表示:[Ctrl]+[Alt]+[/]

これだけモニタの端っこに貼っておくのもアリかな。

(参考:https://4thsight.xyz/41777 )

しかしBloggerはリアルタイムで解釈するからか、重たいなぁ。 

2022年8月7日日曜日

Chrome OS Flexの導入

 遂に、念願のChrome OS Flexを導入しました。

ちょっと検索すればやり方は出てきます。何しろGoogle公式が解説してくれていますから。しかし、古いPCを復活させる救世主伝説!あたぁ!と謳われてはいるものの、色々と謎…というか罠が多く、その辺を備忘録として記しておきます。誰かの役に立てばなお幸い。

あまりに古いマシンは無理ぽ

まずはハードウェア要件を確認します。以下、公式より引用。

Chrome OS Flex をインストールする Windows、Mac、Linux デバイス - 対象デバイス

認定モデルでのみ、Chrome OS Flex 機能の正常な動作を保証しています。

認定モデルの類似品では予期しない問題が発生する可能性があります。

認定を受けていないデバイスでも Chrome OS Flex を使用できる場合がありますが、パフォーマンス、機能、安定性は保証されません。

デバイスの最小要件:

アーキテクチャ: Intel または AMD x86 の 64 ビット互換デバイス

RAM: 4 GB

内部ストレージ: 16 GB

USB ドライブからの起動をサポート

BIOS: すべての管理者権限 - 問題が発生した場合、管理者は Chrome OS Flex USB インストーラから起動して BIOS で設定する必要があります。

プロセッサとグラフィック: 2010 年より前に製造されたコンポーネントは、動作が不安定になる可能性があります。

注: Intel GMA 500、600、3600、3650 のグラフィック ハードウェアは、Chrome OS Flex のパフォーマンス基準を満たしていません。

(https://support.google.com/chromeosflex/answer/11552529?hl=ja)

とのことです。基本的には64bit対応プロセッサでないとダメ。ちなみに、認定モデルリストというのもあり、こちらに含まれているハードウェアなら公式で導入実績がある/導入できます、というお墨付きです。はじめにチャレンジしたDELLの『Inspiron mini 10』は、OSロゴから進まずダメでした。さすがに13年前のしかもネットブック(死語)では無理でしたか。幸いもうひとつ手持ちであるAcerの「Aspire R3-131T」はリストに含まれていました。Windows10入れてはいるけど、イマイチもっさりしているし実際Chromeとエクスプローラーくらいしか使ってないから、この際やっちゃおうということになりました。

…が、うまく導入できなかったのです。

ふたつの罠

以下、導入の進捗を書いていきます。つまづいた点は2つありました。

ポートの罠

まず、USBブートができない。

公式の指示どおり、Chromeの拡張機能に『Chromebook リカバリ ユーティリティ』を追加し、そこからUSBリカバリディスクを作成します。

そしてWindowsをShiftキー押しながら再起動かけると、ブートオプションを選択できます。そこで「USBドライブ」を選択するのですが、起動したときに「No Bootable Disk」と言われてしまうのです。これが結構な罠で、BIOSを一生懸命いじってBoot PriorityをUSB FDD/HDD優先にするんだけど、起動画面(この場合Acerロゴ表示)でF12押してもブートオプションに「USB Flash Drive」の項目がないのです。

結論としては、ノートPC(特に、安いもの)の場合はUSBブートできるポートは決まっているということのようです。今回の場合は「手前側」のポートに挿すとブートオプションに表示され、起動できました。あと、もしかしたら再起動ではなくシャットダウンしてからでないとダメかも知れません。たしかに、公式にはそう書いてあるからねぇ。

でも、これに気づいても一旦はChrome OSロゴで止まってしまった。次の罠があったのです。

USBメモリの罠

これはひどいなあと思ったのですが、あちこち検索かけると「ダメなときはHDDを変えてみましょう」と書いている記事がありました。でもさ、HDDでしょ?これはフラッシュドライブだから関係ね…あ、続きがあった…「SanDiskの製品だと起動しないことがあります」だと?たしかにAmazonレビューでケチョンケチョンに書かれているメーカーだな…俺が使ってるこれはたしかにSanDiskではないけど、庶民の味方 E L E C O M だ 。

手持ちにBuffaloのメモリがあったので、ギリギリ8GBだったけどこれでリカバリディスクを再作成してみました。そしたら最初の32GBメモリよりもなんだか時間がかかっている…ってことは前回やっぱり正しく作れていなかったってことなのか?恐る恐る再度挿して電源を入れると…インストーラが起動しました!


あとはGoogleにログインし直せばもうChromeをスマホやデスクトップPCなどと同様に使えるってわけです。あーもうこれでいいじゃん。わざわざWindows導入する必要ないわ。Irfanview使えないのはちょっと残念だけど、逆にGoogleフォトをデフォルトで使えるので、ほぼなんの問題もないわけです。

NASへのアクセスも「ファイル」アプリでできますし。とりあえず動作は軽く、常識的な利用の範囲ではかなり快適っぽいです。

万人におすすめできるわけではないけれど

という事で、Chrome OS Flex。まだまだ導入にそれなりのハードルはありました。ただ、他のLinuxディストリビューションのようなtar zxvfしてとかsudoしてaptで…みたいな何日も、下手したら何週間も掛かってしまいそうな高いハードルではありませんでした。自分でPCを組めるくらいのレベルの方なら全然導入できそうですし、それこそノートPCと言わず古いマザボやCPUで家族用の情報端末を作ろう!とかめちゃめちゃアリなのではと思います。

Microsoft Officeのソフトも使えるようですし、家庭用PCは今後Windowsにとって代わられるのではないかなと思います。コロナ禍やロシアのウクライナ侵略等で続く世界的な半導体不足や、SDGsとかそういった面でもPCのリユースは注目されていますし。

個人的には、これは今後使っていくべきものかな、という印象です。今後導入を目論んでいる方に、この記事が一助となれば幸いです。

2022年1月28日金曜日

VBAでOneDriveのパスを取得する

 世の中リモートワークの機会が増え、クラウドストレージを使う企業も増えてきたことと思います。自分の会社は準エッセンシャルワーカーな職種なためリモートワークとかないんですが、それでも会議はじめオンラインの利用機会が増えたこともあり、OneDriveを使ってね!と言われるようになりました。特に別店舗で同じカテゴリのファイルを上長が見るよ、みたいなケースで。そんな中でマクロ集計とかもするわけですが、継続的に出したいデータ作成なんかでGetOpenFileNameを使いたいときに、ルートディレクトリがOneDriveだとパスを出すのが面倒です。

具体的には”Thisworkbook.Path”とかやってもhttp://から始まるURLが戻ってくるので、操作できねーじゃん、という感じです。ただエクスプローラーからはCドライブに接続されているように見える(だって自動でバックアップされてるわけだし)ので、何かしら方法があるはずです。

「OneDrive」環境変数

ということで多少ググると、マイクロソフトのサポートページに解説がありました(今はリンク見失ってしまって貼れてないんですが)。以下の環境変数があるようです。

  1. OneDriveCommercial:企業アカウントでログインしている場合。
  2. OneDriveConsumer:個人アカウントでログインしている場合。
  3. OneDrive:原則1と同じ。なんで二つあるの?
なので、VBAからはEnviron()を使えば取得できます。例えばChDir()カレントディレクトリを変える場合のコーディングは、

ChDir(Environ(“OneDrive”))

等と書けば良い訳です。はい解決。

と言いたいところですが、実際にはもう少し問題があります。OneDrive直下ファイルだけで済めば世話がないですが、大抵はそんな訳なく、必要なファイルはサブフォルダに分かれて配置されていますよね。先に”Thisworkbook.Path”というネタを出していますが、それを取得できる方法が欲しい。

しかも現実的に、自分の職場は店舗で使っているMicrosoftアカウントが別だという。どうやって接続したのかはよくわかんないけど…。そんな事情もあり、色々考えた末に以下の方法を考えました。

文字列置換Functionを考えてみた

本当はReplace関数あたり使えると便利なんだけど、Thisworkbookから取得できるURLからInStrでディレクトリ名を探してString操作で置換することにしました。

Function OneDrivePath ( tgFile As Workbook, tgFolderName As String ) As String
 Dim fPath As String, uDir As String
  fPath = tgFile.Path
  uDir = Environ ( “OneDrive” )
 OneDrivePath = uDir & Right ( fPath, Len ( tgFile ) - InStr ( 1, fPath, _
 	tgFolderName, vbTextCompare ) - Len ( tgFolderName ) + 1 )
End Function

こんなFunctionをこしらえて、Subプロシージャから

 Dim myPath As String
 myPath = OnedrivePath ( ThisWorkbook.Path, “Documents” )

とかで呼び出すことでパスを作成できます。ちなみにFunctionのRightで文字数指定する際に+1してるのは”/“の分です。

実際に使う

これでパスを作成できたら、あとはChDirして、Application.GetOpenFileNameを呼び出せば狙ったディレクトリからファイルを選択させることができます。一般の方は割とディレクトリの概念自体を理解していないことも多いので、こういう配慮は必要です。もちろんディレクトリ固定なら直接読みに行ってもいいと思います。Open #してLine Inputして…とか。

今後はOneDriveで共有する機会もさらに増えると思われるので、覚えておくと良いかもしれません。

2021年10月13日水曜日

ラズパイのファンを制御する

 前回のラズパイNAS、ひと月ほど使ったところでファンがうるさくなってきてしまいました。古くなった冷蔵庫がたまに唸りを上げますがそれより耳障りな高い音のジーっと言うような音。色々調べたらどうもファンの取り付け方向が逆だったようです…。


(こういうことらしい)

そこで付けなおしてみたんですけど、特にそれで静かになりません。気になり始めるとより気になるのが人の常、下手したら電気ビーバーよりうるさい。おまけに安物ケースだからか取り付け時に締めすぎたのか、ネジ止めの支柱?みたいのがねじ切れてしまいました。

また安物ファンでも本体についている電源GPIOピンを使えばSoC温度が低いときにはファンを止めておけるかも、という情報を得て挑戦しましたがこれも動作せず。でもさらに調べるうちに公式が温度で制御可能なファンを販売しているらしい…そもそもファン制御の機能はわざわざ追加されたものらしいので。

ということなので、公式(スイッチサイエンス)でケースと合わせて購入しました。なんてったって、ケース・ファン・送料全部コミで3000円以下ですから。

Raspberry Pi 4 用ケースファン

上記リンク先見ていただけば分かりますが、組付けはここに書いてある通りです。

公式ケース。

ファンの箱。マニュアルはこれと

これだけ。

ファンの取り付け方だけちょっと分かりにくかったんですが、上記商品ページの動画を見ればおそらく大丈夫。私はわかりました。

GPIOヘッダーの5Vピン(4番)に赤、GND(6番)に黒、GPIO14(8番)に青を挿します。
(ピン番号とGPIOナンバーとの対照表。わかりにくい)


前のスターターキットから本体基盤を取り外します。以下の写真ではまだヒートシンクがついていますが、全て外してファン付属の大きなヒートシンクをSoCにだけ、貼り付けて公式ケースに組み込みました。

途中経過をもっとこまめに撮っておけばよかった…

あとは電源を入れて、設定をします。商品ページにある説明はGUI前提で書かれていますが、当方CUI(Rapsbian Lite)なので、TeraTerm等でRaspberry.localにアクセスし、以下で呼び出します。

$ sudo raspi-config

Configを呼び出したら2以降は書いてある通り。私は設定温度だけ60℃にしました。今のところ全然動作していませんが、60℃を超えるとファンが回り始めるのは確認しました。これで安心です。動作していなければ言うまでもなく静かです。冷蔵庫の方がうるさいです(笑)

ファンが回っていないと、55~56℃くらいで推移しているみたいですね。まあこのくらいの温度なら大丈夫じゃないでしょうか。

一安心したので、ついでにファイアウォールの設定をしました。「ufw」をインストールして、(詳しくは省きますが)家庭内ネットワークのみ許可していったん終了。ユーザー管理だとかポートをどうしようとかありますが、今後VPNサーバーとしての運用も考えているので、それ調べるときにでも設定をするつもりです。


今回の教訓は、「まず公式から買え」ということかな。結果的に余計な出費となってしまった感は否めませんでした。安きゃいいってもんではない、とは思っていたけど、やはりAmazonに頼りすぎだったかも…。


2021年9月4日土曜日

Raspberry PiでNASを自作する

 メインのデスクトップマシンのDドライブ交換、中古で入手した2in1ノートのCドライブSSD換装で余ったHDDが、3.5インチ/2.5インチ各1個ずつありまして。これまでブログ書いたりするときに、画像を使いたい場合はGoogleフォト、書いたテキストを見返したりする場合はGoogleドライブを使用していたんですが、容量が統合になり、そして上限が設けられ、先の見通しを考えるとすべてGoogleサービス依存はリスクが。

 しかもGoogleフォトについてはいったんダウンロードしないといけない(Androidなら問題ないんですけどねえ)というのも不便でして。しかも手間もさることながら、同じデータを自宅のPC2台のストレージに持ってるのはなんだか釈然としないので、2.5HDDを玄人志向のケースに入れて2台のPCでやりとりする運用を始めました。でも割と不便なんですよね、2台のストレージ構成は違っているので、表示されるボリューム記号が違って、その都度頭の切り替えが必要になってしまいます。

 で思いついたのが、この2台のHDDをファイルサーバーに使うということ。メモリを限界まで増強したネットブックがあるので、これにUSBハブを介してHDDを繋げたらどうかな?と。しかしハブはバスパワーだし、10年も前の格安マシンですから、スペック的にさすがに心もとない。しかもスペースもそこそこ取るし、24時間365日稼働ってわけにもいかず、毎日一旦シャットダウンしないと電気代だってバカにならないし、ディスプレイがダメになる可能性も高いわけで。でもそのためにまたデスクトップ1台組むと結局場所も取るしカネかかるでしょ?

 と、これまで興味がありながらも用途を思いつかずスルーしてきたRaspberry Pi(以下ラズパイ)を思いつきました。ちょっとググったらもう4GBメモリモデルもあるし、NAS自作できるって書いてある!windows経由でアクセスすればモニタもキーボードも必要ないし、もうやるしかないぞと。

 早速スターターキットを注文し、設定を開始しました。

尼レビューでは箱が傷だらけとか、まあ動きゃいいので気にしてません

尼レビューには「組み込みがわからなくて不親切」みたいなことが書いてありますが、日本語マニュアルも付いていますし、それ見てやればできるでしょう。プラモデルを作った経験があればおそらく…

マザボ組み込みしたことある方なら余裕でしょう

 一応補足するとしたら、CPUファン(ちっちゃくてかわいい!)はラベル内側が正しい取付位置のようです。

 ハードウェアの組み込みが終われば、実際問題ググればいくらでも構築方法については学べます。一応、参考にした記事どもをリンクで紹介しておきますが。

ラズパイで自宅ファイルサーバを作る ~自作NAS「openmediavault」編~(ITmedia News)

Raspberry pi 4 でNAS(openmediavault)を構築する方法 (Qiita)

【初心者向け】ラズパイの初期設定をするよ【win/mac対応】 (sukiburo)

 少し前の記事のため既に公式のラズパイソフトウェアに「Raspbian」が無くてCUI版なら「Raspberry Pi OS Lite」にしなくちゃいけないとか、コマンドプロンプトでpingしたときにIPv6を有効にしてると面倒で、とかいろいろあったんですけど、基本上記3サイトの内容を組み合わせれば設定できます(※ping等IPアドレスに関しては「raspberrypi.local」を使えば概ね解決します)。ぜひリンク先をご確認ください。

SDカードに書き込んでるところ

HDD2台つないだところ

NASのフォルダ2つ共有完了したところです

 こうなると、とにかく便利ですね。ちなみにスマホからでもアクセス可能です。iOS/iPadOSは通常機能でできるし、AndroidでもSMB対応アプリがあれば余裕です。

 残念ながら、HDDレコーダーは標準機能でNAS接続できないので、録画データを移すとかは無理ですが、その辺は著作権保護の規格とかまた勉強しないといけない点でもありますので、おいおいやっていきたいところです。

 さて次はVPNで出先でもアクセスできるようにすることかな…

2021年7月23日金曜日

Dドライブの物理的交換手順をここに示す

 HDDの交換をしようしようとずっと思っていたんです。

だって、Dドライブが500GBでして、iTunesライブラリとエロ動画だけで200GBくらいありますので。元々バックアップ用に2TBのHDDを積んでいたんですが、万が一のため(クリスタの元ファイルとか保存しておく用)に2TBの外付けHDDをずいぶん前に増設しており、もう内蔵HDDは2つもいらなかったんですね。

しかし、です。いざデータ移行しようと思いググってもCドライブの移行、つまりシステムディスクのクローン(しかもSSD移行)手順の記事ばかり出てきて、データディスクの移動についてはどこも「コピペしろ(要約)」しか書いていないのです。

だってさあ、フォーマットとかするじゃん?そのときに訊かれるボリューム文字割り当てとかどうすんのよ、と思いません?なんでそういった記事がないのか。デスクトップPC使ってる奴なんて今や少数だよそうですかすいません、て引き下がれないですよ?ゲームがしたくて新規に組んだけど普通にシステムドライブとデータドライブを分けてます(物理)、と言う新参者もきっといますよ?誰でも最初は初心者なんで!!

ということで手順を記録しておきます。本当はデュプリケーター買ってクローンしちゃえば早いかもと思ってたんですけど、①案外実作業に時間かかりそう②オリンピック関係で運送業者さんが大変そう③連休に入って自宅に一人残されて暇、以上3つの理由により自力で実施いたしました。必要な方に届けば幸いです。

手順

  1. Dドライブにインストールされているアプリケーションがあったらアンインストール(もしくはCドライブとかに移動:Steamのローカルファイルとか)しておく
  2. Dドライブのファイルを全て外付けドライブ等に移動(コピー)しておく(バックアップと言う意味もある:iTunesのファイル置き場をDドライブに指定しているなら、ライブラリは"統合"して別にバックアップしておいた方がいいかも)
  3. ケースを開けて、現Dドライブさんを取り外しておき、同じ場所に新HDDを取り付ける(もちろんSATAや電源ケーブルをつないでおくこと)
  4. PCを起動し、Dドライブが認識されていること確認する
  5. Dドライブを選択すると「フォーマットしますか?」と訊かれるので、気合を入れてフォーマットする(ディスクの中身は全部消えます)
  6. 外付けドライブにバックアップしたファイルを、きれいになったDドライブにぶち込む

以上です。

実は自分やってしまったんですが、ドライブを入れ替える前にUSB接続ケーブルとかそういうやつでPCに繋ぎ、フォーマットしてデータ移動を済ませておくと、無駄骨になります。多分フォーマットする際に「ボリューム文字の割り当てをしますか?」と言われるので思わずやってしまうと、結局その時にそれ用のデータが書き込まれてしまうのでしょう。入れ替え後に起動した際もフォーマットを促され、しかもその容量が小さいのでおかしいな?とPC右クリック>管理でディスクの管理を見れば、そこにはでっかい未割り当て領域が。結局ボリュームの拡張>フォーマットという手順を踏むことになりますので、ここはひとつ、外付けドライブをひとつ調達しておきましょう。今日日、電器屋でケース入り外付けSSDなんかゴロゴロ売ってますので、これの500GBくらいあればだいたい足りるんじゃないでしょうか(まだ1TBでも結構値が張りますが、データ量の多い方は背に腹は代えられないでしょうし、あると何かと便利です)。

Dドラに置いておいたバイナリファイルでも、レジストリいじってなければショートカットのプロパティから実行ファイルのディレクトリは余裕で開けますので、再設定でもなんでもすればよろしい。iTunesも、参照ディレクトリが合ってればバックアップも不要になります。全てが元通りなことが確認できたなら、外付けドライブのバックアップファイルは消してしまってよいでしょう。それなりにディスクを圧迫しているはずですので(私の場合は移動する際に吟味して削りまくって220GBくらいでした)。

終わりに

と言うわけで、地道なケース開け閉め作業を厭わない方向けのDドライブ交換作業手順でした。でも結局かかる時間はそんなに変わらなそうなので、デュプリケーター買っといたほうがいいと思います。デスクトップってことはおそらく今後の拡張性や継続性を考えてますよね、そしたらシステムディスクの更新だってするだろうし、それ考えたら怪しいクローンソフトに1万も2万も払うよりそれ以下で入手できるハードウェアの方が信頼できるってもんです。私もそのうち買っとこうと思ってます。

2021年5月3日月曜日

ふるつわものWindows10をUEFIブートにする

メインで使用しているデスクトップマシンですが、Windows7からアップグレードした10は、起動方式がMBRでした。これは旧マザボがBIOS起動だったのを引き継いでいるからに他ならないわけですが、マザボを交換をしたので、ソフトウェアがUEFIになりました。で最初ブートせずに弱ったりしたんですが、今後は2TB以上のディスクを使う機会も増えるだろうし、って事で変換を行いました。

作業が終わった状態。3分クッキングか

Windows PowerShellというアプリケーションを使えばそんな難しいものでもないんだけど(画像に表示されてる黄色いコマンドを実行するだけ)、なにせ起動ドライブをいじるのでそれなりに気を使います。

更に、Windows7からアップグレードしたとき+Windowsの再インストールを実行したこともあったためか、回復パーティションが2つも存在し、パーティション数がMBRの持てる最大量である4つになっていました。これではMBR2GPTコマンドが実行できないため、コマンドプロンプトからpartdiskで回復パーティション1つを削除。これも正直ドッキドキでしたが無事済んで、変換まで完了しました。…まあ普段使う領域ではないからそんなに恐れることもないですが。

ただ削除したパーティション分の未割当領域が残ってしまった(画像の状態)ため、これについては『MiniTool Partition Wizard Free』を使いました。インストールして、Cドライブを拡張して、アンインストールするだけ。詳しくはソフト名でググってください、簡単です。その後再起動~F2叩いてUEFI 起動してOSブート方式を変更、無事Windowsをブートできました。

UEFIにして何が変わったか、あまりよくわからなかったんですが、システム音声が変わりましたね(笑) 「ピロン↑」てのが「♪テロ↑レン→」になりました。「あ、これ職場のPCと一緒だ!」みたいな。あと起動するときの画面もBIOSのCUIから「お待ちください…」って輪っかがクルクルするやつになりました。内部的には変わってるんでしょうけどSSD起動なので正直違いがよくわからない。

でもこれ考えてたら、各ディスク内容を整理してOSクリーンインストールした方がいいのではないかなどと考えてしまい…いや、とりあえずやめた。だってiTunesはじめとした音楽データだけで80GB以上あるんだもんよ~!!絵のデータもえらいことになってますしね…まあそのうち整理しよう…。