Raspberry Piで暮らせるか (3) SSDで解決

プチフリーズ的な問題は,SDカードをルートドライブにしているからに違いないと解っていたので,SSDに替えることにしました.

もともと32GBのSDカードで動かしていたので,128GBもあればいいのですが,今SSDが値崩れ状態のようで,960GBで,USB3.0エンクロージャーに入ったものが,1万円しないので,大きすぎな嫌いはありますが,先々の使い回しもできるので購入しました.

今日(2020年11月10日)届いたので,早速セットアップしました.すでにブートローダーがUSBドライブ起動に対応しているので,最初のmsdos(vfat)のパーティションにSDカードの最初のパーティションを,残る適当なパーティションをLinux(ext4)にして,残るSDカードのLinux部分をコピーということで大体作業は終わりです.

ターゲットマシンをSDカードでブートさせて,その上でコピーもできますが,/devなど,生きているときと死んでいるときで中身が違うのがありますから,別のLinuxマシンにSDカードとSSDをマウントして,rsyncなどでコピーするほうが楽です.

コピーした内容のうち,2つのファイルだけ変更しなければなりません./etc/fstabと,/boot/cmdline.txtです.今回どちらも,/dev/sdaなんとかでなく,UUIDを入れてみました.blkidで表示される長ったらしいやつです.

SSDをつなぎ,SDカードを差し込まないで,あとは,無事起動することを祈って電源を入れたらあっさり起動しました.

ほとんど問題なく使えます.プチフリーズ的なことは一切起きません.ただ,今どきのパソコンに比べれば,同等とまでは言えず,ほんの少し遅いノートパソコンくらいかなという感じです.しばらく様子を見てみたいと思います.

Slackware ARMが走るサーバー(左: Raspberry Pi 4 Model B RAM 4GB)と今回購入したRaspberry Pi OSの走るWS (同8GB).撮影のため無理やり寄せています😥

Slackware ARMでGoogle Driveを使う(成功!)

手順をまとめました.

四苦八苦していた,Slackware ARMへのGoogle Driveのマウントですが,成功しました.

まず,失敗のページのopamを使ったgoogle-drive-ocamlfuseまでのインストールは正しかったです.

にもかかわらず,認証のために引数なしでgoogle-drive-ocamlfuseを立ち上げてもエラーが出てします.

結論的にはこのエラーの原因は,このマシンのホームディレクトリーに,大昔のx86 32bit時代にいじった .gdfuse ディレクトリーが継承されていたことによります.

エラーが出たら,Google Driveを使いたい人のホームディレクトリーで,

rm -rv .gdfuse

として,古い設定ファイルを消します.

そして,以降の手順は,前のページでも参照した,

のほぼその通りです.ただし,もともとSlackware ARMにはFirefoxはないので,Firefoxのかわりに,www-browserという名前の以下の内容のファイルを実行可能にして,PATHの通るところに置きます.

#! /bin/sh
echo $* > /dev/stderr

上記Qiitaの例では,ホームディレクトリーに置いて,そこにパスを通していますが,筆者の場合はもともと$HOME/binにPATHを通しているのでそこに置きました.

.gdfuseのない状態で,google-drive-ocamlfuseを起動すると,長ったらしいURLが表示されますから,それを手元のブラウザにコピペして認証すればOKです.

Slackware ARMでGoogle Driveを使う(失敗)

手順をまとめました.

Raspberry Pi OSにGoogle Driveをインストールする方法は,あちこちに書かれていますね.例えば,

です.以前,Slackware64でうまくいったので,次にSlackwere ARM 14.2でなんとかならないか試みました.基本的なインストール手順は,

  1. ocamlをインストールする
  2. opamをインストールする
  3. google-drive-ocamlfuseをインストールする

ですが,sbopkgでocamlをインストールしようとしても,エラーが出て先に進めません.それを最初に確認したのは,もう3年近い昔なのですが,ほったらかしていました.

最近,Raspberry Pi 4 Model Bを追加購入して,Raspberry Pi OSにGoogle Driveをマウントできるようにしたら,もう一度Slackware ARMでやってみようと思ってネット検索してみました.すると,ocamlをSlackware ARMでbuildするための解決法がありました.

リンク切れも起こりえるので,要点を書きますと,ocaml.SlackBuildの,

--host $ARCH-slackware-linux

を,

--host $ARCH-slackware-linux-gnueabi

に書き換えれば(あるいは-gnueabiを追加すれば)良いのです

ocaml.SlackBuildや,ソース類は,SlackBuild.orgからダウンロードできます.

できた/tmpにあるバイナリーをinstallpkgしたら,次はopamです.

sbopkg -i opam

であっさりいきました.あとでbubblewrapとやらも必要となるので,

sbopkg -i bubblewrap

とします.

いよいよ,opamでの作業ですが,opamはroot権限非推奨とのことなので,Google Driveを使いたい一般ユーザーでログインして,冒頭のQiitaの記事を参考に以下のコマンドを実行します.

opam init
eval $(opam env)
opam update
opam install depext 
opam depext google-drive-ocamlfuse 
opam install google-drive-ocamlfuse

質問にはいずれもデフォルト(リターンのみ)で回答してます.最後の本体のインストールは時間がかかります.

エラーもなく,google-drive-ocamlfuseがインストールできましたが,認証のため,GUI (KDE)のKonsoleからgoogle-drive-ocamlfuseを引数なしで起動したところ,

Fatal error: exception Invalid_argument("index out of bounds")

というエラーが出てしまい,頓挫です.またしばらく棚上げします😓

追記

成功しました → Slackware ARMでGoogle Driveを使う(成功!)

-gnueabihfかも知れませんが,調べる予定はありません😓

選択を誤ったMac mini

ときどき当BLOGにも書いてますが,2006年頃PowerPCのMac miniを購入したのが初めで,その後6台のMac miniを買ってきたと思います(都合7台であることを,Apple Storeのメールで確認しました😓).

その中で一番選択を誤ったと思うのが,昨年暮れまで使っていたMac mini Late 2014のCore i5 dual-coreのものです.Apple Storeからのメールで確認すると,2015年12月に購入したので,4年間使いましたから,まあ,使用期間的にはそれほどの問題はないです.しかし,その間,パフォーマンスの悪さにずっとストレスを抱えていました.

たいていのことは問題がないのですが,仮想マシン(VMWare Fusion)下でのWindowsが遅すぎました.スペクトルのウォーターフォールを満足に描けません.

その他もストレスになるほどではないにしても遅さを感じることはしばしばありました.

その前までは,2012年11月に買ったCore i7 quad-core (8 thread)のものを使用していました.これは,自分用のWSとしては3年しかもたなかったんですが,今も家族用として使用しています.その前に使用していた家族用(それもたぶんお下がり😓)が壊れたので,3年でCore i5のものを追加購入したという形です.

Core i7のパフォーマンスの良さに慣れていたのですが,2015年の購入の際は,i5にしてもメモリーを十分積めば大丈夫だろうと,メモリーを16GBにしました.しかし,CPUのパフォーマンスも重要ということを思い知らされました.古いCore i7にできることが,新しいCore i5にはできない.

本日久しぶりに,電源を入れてみましたが,起動音はしますが,画面表示が一切出ません.当分は部品取り用に残しておきます.

2015年12月購入のMac mini Core i5 dual-core.

Raspberry Piで暮らせるか (2) Browserも厳しい

いきなりつまづきました.WSを日常的に使うにあたって,Web browserが十分に使えれば,9割がたの仕事はRaspberry Piで済ますことができそうです.しかし,かなり厳しいです.

SNSやBLOGに写真を貼り込むのが案外面倒です.写真はiPhoneで撮ります.Macintoshではその写真をどう貼り込んでいたかというと,iPhone側で写真を選んで「コピー」して,Macionshで「ペースト」すれば完了です.これに慣れてしまったのが敗因かもしれません.すべてこれでうまく行くわけではありませんが,MeWeとFacebookはOKです.

これが使えない,WordPressのBLOGの場合,Firefoxで記事の作成・編集中に,いったん「写真」アプリにて,貼り付けたい写真をデスクトップにドラッグします.

そして,FirefoxのBLOG編集画面に戻り,デスクトップに置いた写真を一つずつはめ込みたいところにドロップしていきます.

MeWeやFacebookでは,できた各種のおかずの乗った大皿から直接弁当箱に菜箸で入れるのに対して,WordPressでは,一旦別の皿に置いてから弁当箱に入れるような感じでしょうか.

それでは,同様のことをRaspberry Piでするにはどうすればいいか.気の遠くなるような手順が必要そうです.それはおおげさにしても,最短で,

  1. Chromiumの新しいタブにGoogle Photosを開く(Google Photosへの自動uploadをiPhoneでONにしています)
  2. 差し込みたい写真を選んで,ダウンロードの機能を実行(drag & dropはできない
  3. 複数の写真だとzip化されるので,ダウンロードフォルダーから適当なところに移して展開
  4. 差し込みたいSNS, BLOGにドロップ

で,たぶん行きそうです.

わが家の庭に実った大きな渋柿

やってみれば,まあ,それほど手間ではありませんでしたが,手軽さは「iPhoneでコピーしてMacのブラウザにペースト」には遠くおよびません.中間的な置き場所にもファイルは残りませんので,あとで整理(廃棄)する必要もないですし.

また,browserの責任ではありませんが,日本語変換のMozcがあんまり良くありません.一番けしからんのは,全角文字を入力している途中で,偶発的に日本語入力が解除されてしまうときがあり,そのとき,入力途中の文字が全部消えてしまうのです.偶発なので,どういう操作がそれを招いているかわかりません.まあ,がっかりします.未変換の文字がある場合は,制御を渡さないくらい堅牢な設計にして欲しいです.

それと,Chromiumも固まりますね.昨夜はBLOGかSNSに入力中に固まり,外のマシンからsshで入って, “halt”をかけて就寝しました😥 GUIは固まりましたが,システムは生きていたのでまだ良かったです.

Work Station.まあ,サーバーでないパソコンですね.
Googleの責任ではあります😥