古いノートPCをプロット用に仕立て上げる

DHLからなんか届いたけど相変わらず箱がボコボコです。

中身は日尼から個人輸入したTOSHIBAのNAS用の8TB HDDが3つ。

茶箱できました。バルク品のようです。型番はMN06ACA800

以前購入したSynologyのエンクロージャーに入れる用のNAS用HDDが5台ほしかったのです。3個までしか注文できなかったのが残念。

あと2台、同じ型番のHDDを入手できるのでしょうか。(現在品切れ)

とりあえず殻割りしたWD ElementsとSeagateHDDのSATA-USB変換を使ってWindows10につなげます。SATA電源からDCジャック(5分岐)に変換するやつマジで便利です。普段だったらこのテストをするためにACアダプタ用のコンセント3口用意しなければならなかった。

とりあえずWindows10につなげて動作チェック。完全テストは時間かかるし簡易チェックで…

やはり最近のHDDはめちゃくちゃ早いですね!!!5台揃うまではプロット用キャッシュとして働いてもらおうか。

参考までにこちらが古い2TBのHDDになります。シーケンシャル速度段違いすぎる。プラッタ容量が桁違いだからだろうか。

古いPCを活用しよう

プロット用HDDが3つ来た。しかし既存のPCはもう余裕が殆ど無い。ということでホコリを被っていた古いノートPCを引っ張り出してきました。

一応Windows10が入っていたけど、Core i5 2430M、またサンディ世代か。

メモリに至っては4GBしかない。

HDDじゃなくてかろうじてSSDが搭載されていました。SATA SSDだけど2.5インチサイズではない。

一応中身は家族のデータが入っているので消したら怒らりる…これは触らず、昔ethOSが入っていた16GBのSSDにubuntuを入れようと思います。

ethOSで酷使してたはずなのに、寿命100%でしたわ。ChiaがSSDを酷使しし過ぎなんだよなぁ…

メモリはどうしようか迷ったんですが、ジャンクヤードを漁ったら壊れたNUCが出てきました。(写真は動いていた時のもの)2013年頃に9980円で売ってたやつ。

そこから拝借、DDR3-1600 4GBでした。既存のはDDR3-1333 4GBオンボードなので周波数が違うけど、BIOS上で8GBになってたからよしとする。正直起動すらしないNUCだったから、メモリ動いただけでも儲けものでした。もう1枚もノートPCに接続して稼働確認とれたので、メモリはこわれていなかった!(memtestしたわけじゃないから暫定だけど)
このメモリはSynology DS1817の増設に使えそうなので後日やろうかな。

古いノートPCは増設簡単でいいよね。

ジャンクヤードを漁っていたらIntel 660p 1TBが発掘されました。USB3.1gen2のケースにこっそり隠れていて気づかなかったなぁ。

こっちも寿命100%だった、いずれなにかに使おう。QLCだからプロット用には向かないし。

ubuntu server20.04.2をインストールする

公式で「ubuntu-20.04.2-live-server-amd64.iso」をダウンロードしてきます。ubuntu desktopでも良いけど、GUIは使わんし、desktopだとディスク容量25GB以上必要になってしまいます。入れるSSDは16GBしかないのでServerでいく。

適当なUSBメモリにisoを焼く。Rufasを利用します。

ノートPCにUSBメモリとインストール用のSSD(こっちもUSB)を接続し、BIOSでブート順位を変更してからインストールします。

言語は英語、キーボードレイアウトはJP、無線LANはOFFで有線LAN、IPはDHCP取得。SSHを有効に。あとはWindows10からTeraTermで接続します。

ノートPCのフタを閉じてもスリープしたくない

上記サイトを参考にconfファイルを開き、
sudo vi /etc/systemd/logind.conf
下記1行を追加
HandleLidSwitch=ignore
これでフタ閉じてもスリープしなくなりました。

Ubuntu ServerはDesktopとちがってviが変な動作しないから素敵!!!

まずはHDDをマウントするところから

HDDは2台、WD Elementsのガワを取り付けてVAIOにつなげています。こいつUSB3.0ポート1個しかないもんで…もちろんHDDには風をあてます。

さて、まずはアプデ。昔はapt-getコマンドだったと思うけど、今はget省略できるんだね。

sudo apt update
sudo apt -y upgrade

接続したHDDを探します。

sudo fdisk -l

(前略)
Disk /dev/sdc: 7.28 TiB, 8001529315328 bytes, 15627986944 sectors
Disk model: Elements 25A3
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: 12E47887-8B97-4D23-9D1F-67D8A4C10EB1

Device     Start         End     Sectors  Size Type
/dev/sdc1     34       32767       32734   16M Microsoft reserved
/dev/sdc2  32768 15627982847 15627950080  7.3T Microsoft basic data

Partition 1 does not start on physical sector boundary.


Disk /dev/sdd: 7.28 TiB, 8001529315328 bytes, 15627986944 sectors
Disk model: Elements 25A3
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: B714E1DD-B396-4D9D-8336-FEC9F7314ACA

Device     Start         End     Sectors  Size Type
/dev/sdd1     34       32767       32734   16M Microsoft reserved
/dev/sdd2  32768 15627982847 15627950080  7.3T Microsoft basic data

Partition 1 does not start on physical sector boundary.
hyperbanana@ubuntuvaio:~$

どうやらsdcとsddがそうらしい。Windows10につなげて遊んでたから変なパーティションできちゃってますので消します。

fdisk対話モード起動
sudo fdisk /dev/sdc

mでメニュー一覧を見れます。

Command (m for help): m

Help:

  GPT
   M   enter protective/hybrid MBR

  Generic
   d   delete a partition
   F   list free unpartitioned space
   l   list known partition types
   n   add a new partition
   p   print the partition table
   t   change a partition type
   v   verify the partition table
   i   print information about a partition

  Misc
   m   print this menu
   x   extra functionality (experts only)

  Script
   I   load disk layout from sfdisk script file
   O   dump disk layout to sfdisk script file

  Save & Exit
   w   write table to disk and exit
   q   quit without saving changes

  Create a new label
   g   create a new empty GPT partition table
   G   create a new empty SGI (IRIX) partition table
   o   create a new empty DOS partition table
   s   create a new empty Sun partition table

pでパーティション確認

Command (m for help): p

Disk /dev/sdc: 7.28 TiB, 8001529315328 bytes, 15627986944 sectors
Disk model: Elements 25A3   
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: 12E47887-8B97-4D23-9D1F-67D8A4C10EB1

Device     Start         End     Sectors  Size Type
/dev/sdc1     34       32767       32734   16M Microsoft reserved
/dev/sdc2  32768 15627982847 15627950080  7.3T Microsoft basic data

Partition 1 does not start on physical sector boundary.

dで削除

Command (m for help): d
Partition number (1,2, default 2): 2

Partition 2 has been deleted.

Command (m for help): p
Disk /dev/sdc: 7.28 TiB, 8001529315328 bytes, 15627986944 sectors
Disk model: Elements 25A3   
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: 12E47887-8B97-4D23-9D1F-67D8A4C10EB1

Device     Start   End Sectors Size Type
/dev/sdc1     34 32767   32734  16M Microsoft reserved

Partition 1 does not start on physical sector boundary.

Command (m for help): d

Selected partition 1
Partition 1 has been deleted.

Command (m for help): p
Disk /dev/sdc: 7.28 TiB, 8001529315328 bytes, 15627986944 sectors
Disk model: Elements 25A3   
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: 12E47887-8B97-4D23-9D1F-67D8A4C10EB1

Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.

nで新しいパーティションを作る。

Command (m for help): n
Partition number (1-128, default 1): 1
First sector (34-15627986910, default 2048): 
Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-15627986910, default 15627986910): 

Created a new partition 1 of type 'Linux filesystem' and of size 7.3 TiB.

Command (m for help): p
Disk /dev/sdc: 7.28 TiB, 8001529315328 bytes, 15627986944 sectors
Disk model: Elements 25A3   
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: 12E47887-8B97-4D23-9D1F-67D8A4C10EB1

Device     Start         End     Sectors  Size Type
/dev/sdc1   2048 15627986910 15627984863  7.3T Linux filesystem

wで保存。

Command (m for help): w

The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.

XFSパッケージのインストール
sudo apt install xfsprogs

XFSでフォーマット
sudo mkfs.xfs -f /dev/sdc1

マウントポイントの作成
sudo mkdir /mnt/TOSHIBA8TB_1

マウント
sudo mount -t xfs /dev/sdc1 /mnt/TOSHIBA8TB_1

権限変更
sudo chown hyperbanana:hyperbanana /mnt/TOSHIBA8TB_1

これでHDD1台を無事にマウント出来ました。同じことを/dev/sddでもやります。

さて、ちゃんとマウントできてるか確認します。
df -Th

Filesystem                        Type      Size  Used Avail Use% Mounted on
udev                              devtmpfs  3.9G     0  3.9G   0% /dev
tmpfs                             tmpfs     788M  1.6M  787M   1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv ext4       14G  5.3G  7.8G  41% /
tmpfs                             tmpfs     3.9G     0  3.9G   0% /dev/shm
tmpfs                             tmpfs     5.0M     0  5.0M   0% /run/lock
tmpfs                             tmpfs     3.9G     0  3.9G   0% /sys/fs/cgroup
/dev/loop0                        squashfs   56M   56M     0 100% /snap/core18/1944
/dev/sda2                         ext4      976M  105M  804M  12% /boot
/dev/loop2                        squashfs   32M   32M     0 100% /snap/snapd/10707
/dev/loop1                        squashfs   70M   70M     0 100% /snap/lxd/19188
/dev/loop3                        squashfs   56M   56M     0 100% /snap/core18/2066
/dev/loop4                        squashfs   33M   33M     0 100% /snap/snapd/12057
/dev/loop5                        squashfs   68M   68M     0 100% /snap/lxd/20326
tmpfs                             tmpfs     788M     0  788M   0% /run/user/1000
/dev/sdc1                         xfs       7.3T   52G  7.3T   1% /mnt/TOSHIBA8TB_1
/dev/sdd1                         xfs       7.3T   52G  7.3T   1% /mnt/TOSHIBA8TB_2

オッケーみたいですね。ついでにNASもマウントしておきましょう。

マウントポイントを作成
sudo mkdir /mnt/nas

権限変更
sudo chown hyperbanana:hyperbanana /mnt/nas

cifsをインストール
sudo apt install cifs-utils

Qnapをマウント…qnap.localの名前解決できなかったのでIPでやっちゃいました。
sudo mount -t cifs //192.168.1.171/home/ -o username=hyperbanana,uid=hyperbanana,gid=hyperbanana,rw /mnt/nas

NASも無事マウントされました。

Swar Chia Plot Managerのインストール

ホームディレクトリに移動してダウンロードしましょう。
git clone https://github.com/swar/Swar-Chia-Plot-Manager

venvコマンドが通らなかったので指示どおりパッケージをインストールします。
apt-get install python3-venv

仮想環境を作成
python3 -m venv venvapt-get install python3-venv

仮想環境をアクティベート
. ./venv/bin/activate

以降は前と一緒です。諸々インストール
pip install -r requirements.txt

コンフィグの作成
cp config.yaml.default config.yaml

コンフィグの修正
vi config.yaml

ここまでやってChia本体をインストールしてなかったことに気づきましたがとりあえず書いちゃいます。以下変えたところだけ抜粋。

chia_location: /home/hyperbanana/chia-blockchain/venv/bin/chia

log:
  folder_path: /home/hyperbanana/ChiaLogs

global:
  max_concurrent: 2
  max_for_phase_1: 1
  minimum_minutes_between_jobs: 0


jobs:
  - name: TOSHIBA8TB_1
    max_plots: 999
    farmer_public_key: b6dd7578d10905d(中略)a5ee370e4698b0e6582bf
    pool_public_key: 852d2d1c7524fbb24(中略)d615a59b09249972e8b29
    temporary_directory: /mnt/TOSHIBA8TB_1
    temporary2_directory:
    destination_directory: /mnt/nas/home/ChiaPlotsUbuntu
    size: 32
    bitfield: true
    threads: 4
    buckets: 128
    memory_buffer: 3400
    max_concurrent: 1
    max_concurrent_with_start_early: 1
    initial_delay_minutes: 0
    stagger_minutes: 0
    max_for_phase_1: 1
    concurrency_start_early_phase: 4
    concurrency_start_early_phase_delay: 0
    temporary2_destination_sync: false
    exclude_final_directory: false
    skip_full_destinations: true
    unix_process_priority: 10
    enable_cpu_affinity: false

  - name: TOSHIBA8TB_2
    max_plots: 999
    farmer_public_key: b6dd7578d10905d(中略)a5ee370e4698b0e6582bf
    pool_public_key: 852d2d1c7524fbb24(中略)d615a59b09249972e8b29
    temporary_directory: /mnt/TOSHIBA8TB_2
    temporary2_directory:
    destination_directory: /mnt/nas/home/ChiaPlotsUbuntu
    size: 32
    bitfield: true
    threads: 4
    buckets: 128
    memory_buffer: 3400
    max_concurrent: 1
    max_concurrent_with_start_early: 1
    initial_delay_minutes: 0
    stagger_minutes: 0
    max_for_phase_1: 1
    concurrency_start_early_phase: 4
    concurrency_start_early_phase_delay: 0
    temporary2_destination_sync: false
    exclude_final_directory: false
    skip_full_destinations: true
    unix_process_priority: 10
    enable_cpu_affinity: false

とりあえずHDD2並列で。古いCPUなのでフェーズ1はかぶらないように。色々なPCに秘密鍵入れるの良くないとおもうのでファーマー公開鍵とプール公開鍵は明示的に記入しました。

Chiaのインストール

公式を参考に必要なところだけ以下抜粋。

Swarの方で仮想環境をアクティベートしている場合は一旦抜けておきましょう
deactivate

ホームへ移動。
cd ~/

ダウンロード
git clone https://github.com/Chia-Network/chia-blockchain.git -b latest --recurse-submodules

カレントディレクトリ移動
cd chia-blockchain

インストール
sh install.sh

仮想環境をアクティベート
. ./activate

GUIはインストールしないのでこれで終わりかな?と思いきやSwarさんエラーで動いてくれません。
ログを見るとchia initしろと書いてある。
chia initするには秘密鍵を作る必要が有りました。
chia keys generate

イニシャライズ
chia init

ここまでやってようやくSwar動くようになりました。

Plot作成開始

Chiaの方で仮想環境に入ってたら抜けとこ
deactivate

Swarディレクトリに移動
cd ~/Swar-Chia-Plot-Manager

仮想環境をアクティベート
. ./venv/bin/activate

あとはいつもどおり
python manager.py start
python manager.py view
でOK

さてどれくらいかかるかな。

TOSHIBAのNAS用はコンシュマー用とくらべてとても静か(な気がする)、しかしながらノートPCがうるせえw

自室に置いとくのが苦痛だな…明日移動しよう。

今日のチア農場

いつもの。とはいえいつもよりちょっと遅めの時間のスクショになってしまった。なんとかincome0.05維持できてる模様。
plot1114→1178(+64)
0.82594704 XCH (+0.05188617 XCH)
$618

+64plotってのはちょっとおかしいですね。昨日HPOOLのOnlinePlotカウントが止まってた影響かなあ。実際のSwarのPlots Completed Yesterdayの値を合計すると46程度。

チャートが少し落ちてる部分はhpool minerがハングアップして立ち上げ直したから。

Chia CalculatorとExplorerはいつもより6時間ほどスクショ時間が遅いです…

Chiaだいぶ落ちてんなぁ