raid-zのHDD交換

f:id:nao550:20180513160503j:plain
自宅サーバから変な音がしていたので調べるとzfsのドライブが壊れていたのでHDDを買ってきて交換作業。

root@mercury:~ # zpool list 
NAME   SIZE  ALLOC   FREE  EXPANDSZ   FRAG    CAP  DEDUP  HEALTH  ALTROOT
tank  7.25T  3.36T  3.89T         -      -    46%  1.00x  DEGRADED  -
root@mercury:/var/log # zpool status
  pool: tank
 state: DEGRADED
---略---
            16269517396372478662                        UNAVAIL      1     6     0  was /dev/gptid/b1417f56-3666-11e0-9d07-001485f1161b ←これが壊れている
---略---


gpart list コマンドで壊れているドライブを確認

root@mercury:gpart list
---略---
Geom name: ada3
---略---
   rawuuid: b1417f56-3666-11e0-9d07-001485f1161b
---略---
Consumers:
1. Name: ada3
   Mediasize: 2000398934016 (1.8T)
---略---


壊れているのは ada3、次に ada3 のシリアル番号をチェック

root@mercury:/var/log # cat /var/run/dmesg.boot
---略---
ada3 at ahcich3 bus 0 scbus3 target 0 lun 0
ada3: <WDC WD20EARS-00S8B1 80.00A80> ATA8-ACS SATA 2.x device
ada3: Serial Number WD-WCAVY3005042
---略---

ということで、「WD20EARS-00S8B1」のHDDが壊れていることが確定


zfsから壊れているドライブを Offline にして

root@mercury:/var/log # zpool offline tank 16269517396372478662
root@mercury:/var/log # zpool status
---略---
            16269517396372478662                        OFFLINE      1     6     0  was /dev/gptid/b1417f56-3666-11e0-9d07-001485f1161b
---略---


shutdown して、HDDの交換して再起動

root@mercury:/var/log # cat /var/run/dmesg.boot
---略---
ada3: Serial Number WD-WCC4M4FU46C3
---略---

交換するときにHDDのシールに記載されているシリアル番号は確認しておいて、交換したHDDがどのデバイスとして認識されているか確認する。


追加されたドライブが ada3 になっている。 gpartでGPTパーティションを作成

root@mercury:~ # gpart create -s GPT ada3
ada3 created
root@mercury:~ # gpart show ada3
=>        34  3907029101  ada3  GPT  (1.8T)
          34  3907029101        - free -  (1.8T)

zpool replace コマンドで壊れたドライブを新しいドライブに入れ替えるように指示

root@mercury:~ # zpool replace tank 16269517396372478662 ada3
root@mercury:~ # zpool status -v
  pool: tank
 state: DEGRADED
status: One or more devices is currently being resilvered.  The pool will
        continue to function, possibly in a degraded state.
action: Wait for the resilver to complete.
  scan: resilver in progress since Sun May 13 16:30:18 2018
        12.3G scanned out of 3.36T at 89.0M/s, 10h57m to go
        3.06G resilvered, 0.36% done
config:

        NAME                                            STATE     READ WRITE CKSUM
        tank                                            DEGRADED     0     0     0
          raidz1-0                                      DEGRADED     0     0     0
            diskid/DISK-WD-WCAVY3131675p1               ONLINE       0     0     0  block size: 512B configured, 4096B native
            gptid/af791db4-3666-11e0-9d07-001485f1161b  ONLINE       0     0     0  block size: 512B configured, 4096B native
            gptid/b05ed30a-3666-11e0-9d07-001485f1161b  ONLINE       0     0     0  block size: 512B configured, 4096B native
            replacing-3                                 OFFLINE      0     0     0 ←リプレース作業中に表示される
              16269517396372478662                      OFFLINE      0     0     0  was /dev/gptid/b1417f56-3666-11e0-9d07-001485f1161b
              ada3                                      ONLINE       0     0     0  block size: 512B configured, 4096B native  (resilvering)

errors: No known data errors

zraidのパリティ計算などが終了したら、リプレース作業中に表示されていた replacing-3 の項目は消える。status 確認して消えていればリプレース作業は終了

root@mercury:/var/mail # zpool status
  pool: tank
 state: ONLINE
status: One or more devices are configured to use a non-native block size.
        Expect reduced performance.
action: Replace affected devices with devices that support the
        configured block size, or migrate data to a properly configured
        pool.
  scan: resilvered 860G in 9h33m with 0 errors on Mon May 14 02:04:16 2018
config:

        NAME                                            STATE     READ WRITE CKSUM
        tank                                            ONLINE       0     0     0
          raidz1-0                                      ONLINE       0     0     0
            diskid/DISK-WD-WCAVY3131675p1               ONLINE       0     0     0  block size: 512B configured, 4096B native
            gptid/af791db4-3666-11e0-9d07-001485f1161b  ONLINE       0     0     0  block size: 512B configured, 4096B native
            gptid/b05ed30a-3666-11e0-9d07-001485f1161b  ONLINE       0     0     0  block size: 512B configured, 4096B native
            ada3                                        ONLINE       0     0     0

errors: No known data errors

このraidz、8年前の「サーバの更新で zfs にしてみるとか - 日々雑文」で作ったやつで、一度トラブルでデータをロストしかけてる。その時の名残がこのへんな状態になっているドライブIDだったりする。

gpartもなれてきたし、一度整理するかな。

視点、もしくは発想の立脚点について

様々な認識をもたらす視点、もしくは発想点について考えてみた。

第1の視点

これは主体としての本人からの視点。
普通の人が考えたり、常識だと思うことの出発点、ベースとなっている視点。

第2の視点

本人以外からの視点、本人にはどのようなものなのか完全に把握することはできないが、他社とコミュニケーションすることにより、他社が持っている視点を類推することにより得ることができる。
この場合の他者は他の人間である場合もあるし、誰かが書いた本やブログ、観測機器や理論など本人以外から送られてくる情報など全てを含む

第3の視点

第1の視点と第2の視点の複合としてうまくれてくる視点。
多くの場合会議やブレインストーミングなど、第1の視点と第2の視点が何度も重合することにより生まれてくる。 本人と観測機器からのデータから新しい理論が生まれてくるなども含む。

第4の視点

第1から第3までの視点の結果生じたものが本人に戻り、さらに内発的に生じる視点
ひらめきとか睡眠時に見る夢とか、前後の脈絡なく唐突に生じてくる視点

第5の視点

今までの視点すべて無視して外部からもたらされる視点
預言とか、託宣、憑依など


Twitterみていて、某プロの人がその業界の常識を世界の常識と思っていたようで、えらく驚いていたというのがあって、他者からの視点は大事だよなとおもったところからこんなことをつらつらと考えてみた。

常識的なことではあるけど、こういうふうに分類してるのあんまり見たことないな。

Let's Encrypt で SSL 化

https://letsencrypt.jp/:日本語のマニュアルサイトがあるので簡単だった。

それぞれのOSのパッケージがあるとおもうので、そこからインストールする

# python2 --version
Python 2.7.13
# pkg search certbot
py27-certbot-0.21.0,1          Let's Encrypt client
py36-certbot-0.21.0,1          Let's Encrypt client'
# pkg install py27-certbot
----
(中略)
----
This port installs the "standalone" client only, which does not use and
is not the certbot-auto bootstrap/wrapper script.

The simplest form of usage to obtain certificates is:

 # sudo certbot certonly --standalone -d <domain>, [domain2, ... domainN]>

ということで、パッケージからインストールしたときには、certbot-auto スクリプトは使用せず、standalone モードで使用する。

certbot-auto なら、ウェブサーバの設定もしてくれるのでそっちのほうが楽だったぞ…

standalone モードでは port 80, 443 が開いていないと

Problem binding to port 80: Could not bind to IPv4 or IPv6.

と怒られるので、apache などが動いているのなら、一旦停止させる。

# certbot certonly --standalone -d example.net
Enter email address (used for urgent renewal and security notices) (Enter 'c' to cancel): hoge@example.net ← 初回のみメールアドレスを入力
(A)gree/(C)ancel: a  ← 使用許諾への同意
(Y)es/(N)o: n ← Electronic Frontier Foundation のMLへ参加するかどうか

証明書が /usr/local/etc/letsencrypt/live/example.net/cert.pem に
プライベートキーが /usr/local/etc/letsencrypt/live/kyo-to.net/privkey.pem に
保存される。

すでにhttpで公開していたのなら、mod_rewrite で http へのアクセスを https へ転送するために、ホストディレクティブに転送設定を追加して、

RewriteEngine on
RewriteCond %{SERVER_NAME} =example.jp
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [L,NE,R=permanent]

ssl.conf に証明書の設定をする

SSLCertificateFile /usr/local/etc/letsencrypt/live/example.net/cert.pem
SSLCertificateKeyFile /usr/local/etc/letsencrypt/live/example.net/privkey.pem
SSLCertificateChainFile /usr/local/etc/letsencrypt/live/example.net/chain.pem

証明書の更新

Let's Encrypt の証明書は3ヶ月なので、期限が来るまでに更新が必要。

更新は

# certbot renew

とするだけ、cron で1月更新くらいに設定しておくといい

コマンドラインによるFreeBSD起動パーティションの作成など

fdisk, disklabel, はもう古いので、知識のアップデートを兼ねて。

MBR時代は fdisk コマンドでスライス切って、disklabel でパーティション分けていたが、GPTが主流になり、パーティションが128個つくれるようになったので、gpartで必要な数のパーティションにわけるのが主流になっているようだ。

新規のドライブなら必要ないが、以前に使用していたのを再利用するなら、以前に使用していたのを再利用するなら、残っているパーティション情報などを削除するために destroy する。 

本来であれば、残っているパーティションを1個ずつ delete コマンドで削除して、最後に destroy しないと消すことができないが、destroy に -F オプションで強制削除もできる。

# gpart show ada1
# gpart delete -i 1 ada1

# gpart destroy -F ada1

パーティションを削除したら、新しくGPTでパーティションを作成してく。

# gpart create -s GTP ada1

ブートコードの書き込み

# gpart add -t freebsd-boot -b 40 -s 512 ada1
-t パーティションタイプ
-b スタートブロック
-s サイズ

# gpart bootcode -b /boot/pmbr -p /boot/gptboot -i 1 ada1
-b ディスクのブートコード
-p パーティションのブートコード
-i パーティション番号

自分は gmirror にするので、gptboot をインストールしたが、zfsにしたければ、gptzfsboot をインストールする。 以前は freebsd-boot の領域は64kでもまにあっていたのだが、11-RELEASE になってから、gptzfsboot のファイルサイズが増えたりしているので、多めにしておくのがいいらしいが、最大サイズは 545Kまでという制限もある。

EFIブートコードのインストール

# gpart add -t efi -b 1m -s 100m ada1
# dd if=/boot/boot1.efifat of=/dev/ada1p2

EFI用のパーティションを作成して、EFI Application をインストールする。これをしておかないとEFIを使用して起動できない。

EFI Application の本体は /boot/boot1.efi で、EFI パーティションはFAT32にしておけば直接コピーすることも可能

# gpart add -t efi -b 1m -s 100m ada1
# newfs_msdos /dev/ada1p2
# mount -t msdosfs /dev/ada1p2 /mnt
# mkdir -p /mnt/EFI/BOOT
# copy /boot/boot1.efi /mnt/EFI/BOOT/BOOTx64.EFI

SWAP、UFSパーティションの作成

ここまでできれば後は普通にswapパーティションや、ufsパーティションを作成していく

# gpart add -t freebsd-swap -s 16G ada1
# gpart add -t freebsd-ufs ada1
  • s で良を指定しなければ、取れる最大の領域で作成してくれる。

エンデの遺言「根源からお金を問うこと」

エンデの遺言 ―根源からお金を問うこと (講談社+α文庫)

エンデの遺言 ―根源からお金を問うこと (講談社+α文庫)

1994年のエンデ晩年のインタビューを元にして1999年にNHKで放送された「エンデの遺言」という番組が放送がある。
この本はエンデのインタビューと、番組をもとにより深くエンデの思索のもとや理論背景などをまとめている。

タイトルとして「エンデの遺言」となっているが、エンデの遺言をとっかかりにして、シルビオ・ゲゼルの自由貨幣論、減価する貨幣、そして地域通過へと話がすすんでいく。 お金の話が大半で、エンデの思想については周辺資料から推測するだけになっているのが残念ではあるが、日常的につかっているお金、そして投資という形で関わっている経済について、役割や性質などより深く考えるとっかかりになる部分がおおく、そういう意味で得るものがあった。

この本で重に紹介されているのが、シルビオ・ゲゼルの時間とともに価値が減る自由貨幣の理論で、毎週水曜日になると一定金額のスタンプ(切手のようなもの)を貼らないと使用することのできない貨幣というのが中心になっており、毎週一定の税金が掛るために溜め込むことできず、流通することを促し、経済を発展させるというものになっている。 この理論の周辺に生産されたものは消費されて価値がなくなるのに、貨幣には価値がなくならないため、溜め込んでおけるということや、溜め込んだ財に利子が付きそれにより不均衡が生じることなどいろいろと理屈はあるのだけれど、お金は人間が作ったものであるから創りなおすこともできるはずだというあたり、いろいろと示唆的で面白かった。

4章ゲゼルの自由貨幣論などお金の作りなおしへの挑戦で、各地で生れた地域通貨について、アメリカで行なわれていたイサカアワーという地域通貨について紹介されている。 ここで紹介されているイサカアワーは新しい経済、コミュニティの創造と発展を予想させるようなものになっているが、残念ながら2015年時点ではイサカアワーは殆ど使用されることなく、衰退しつつあるらしい。 https://greenz.jp/2015/05/23/wataden_ithaca/

日本でも2000年ごろに多くの地域で地域通貨が発行されたが、流通量の少なさ、地域通貨によって入手できる財・サービスの不均衡の問題などからほとんどが衰退してしまったようだ。

ゲゼルの自由通貨理論の減価する貨幣というものは、面白い理論であるし、特にデフレで苦しみつづけている日本経済などには有効な手段になるのではないかと思う。


P37,エンデの説明では、社会全体を精神と法と経済の三つの機能に分けます。そのうえで精神生活では自由が、法生活では平等が、経済では助けあいの力が基本理念であると考えるべきだというものです。


P55、エンデはラストインタビューで、「需要なポイントは、例えばパン屋でパンを買う購入代金としてのお金と、株式取引所で扱われる資本としてのお金は二つの異った種類のお金であるという認識です」と語っています。


P250,1,交換の媒体、2、価値の尺度、3、価値の保存、4、投機的利益の道具、5、支配の道具

凛として―近代日本女子教育の先駆者下田歌子

凛として―近代日本女子教育の先駆者下田歌子

凛として―近代日本女子教育の先駆者下田歌子

日本の近代女性教育を創り出してきた人に下田歌子という人がいるが、下田歌子に興味をもってどんな人だったのかを知るために読んだ。

下田歌子の業績などを知るために読もうと思ったのがなんでこの本だったのかは忘れてしまったが、これは期待していた客観的な人物像を描く本ではなく、下田歌子とその周辺の資料をもとにした小説だった。

下田歌子にたいするおおまかな経歴、業績などについてはおそらく虚構ではないと思うので、自分の期待していたものはおおまかには得ることができたかなと思うが、小説なので下田歌子とその味方についてはとても好意的な描写をしているが、その敵対者につてはものすごく悪辣な表現をしている。

小説なのでそれでいいのだけれど、人物像についてはかなりの虚構が入り込んでいるのではないかという気がする。

特に下田歌子を誹謗中傷した人物として、社会主義者の幸徳秋水が登場しており、幸徳秋水の主催する日刊平民新聞にて下田歌子を批判する記事を明治40年から連載したとある。

平民新聞については元々ゴシップ記事をメインにした新聞だったようなので、本ではこの平民新聞で連載された下田歌子のスキャンダル記事を完全に嘘としている。 明治という時代背景では虚実入り乱れた記事であったのだろうとは思うが、火のないところに煙は立たずともいうわけで一概に嘘とも言い切れないのではないかと思ってしまう。

同じように業績などについても読みやすさ優先で細部がかなり簡略化されていて、もっと詳細を知りたいのなら参考文献にあたってみるしかない。

とはいえ、男尊女卑が強かった明治の時代に自らの才覚でもって政治や社会とわたりあい、大きな業績を残した女傑という面からはなかなか面白い小説ではあった。

Windows10でのセーフモード起動方法

Windows10でのセーフモード起動方法は

  • msconfig のブートタブで「セーフブート」を選択して再起動、その後はセーフブートのチェックを外すまでセーフモードで起動する
  • shutdown /o /r /t 1 で詳細ブートオプションを表示してから再起動する
  • Windowsの設定から「更新とセキュリティ」→「回復」から「PCの起動をカスタマイズ」するで起動方法を選択して再起動する

Windows10ではセーフモードではPINではなくパスワード認証になるのでパスワードを確認しておかないと詰む