do_su_0805's blog

dairyquestions は typo です。

Ubuntu Server 18.04 が CLI インストールで lvm に インストールしたら、起動に失敗する(してた)話

これは何

備忘録的な何かです。

状況について

自宅サーバ(もどき) に、Ubuntu Server 18.04 LTS をインストールしたところ、再起動すると

Begin: Mounting root file system ... Begin: Running /scripts/local-top ... WARNING: Failed to connect to lvmetad.

と出てきて、initramfs shell に飛ばされてしまう、というお話。

今回書くこと

  1. どうやってインストールしたらそうなったか
  2. その状況から起動させるにはどうするか
  3. (是正策レベルですが) 「2.」で触れるような対策をせずに再起動してもすんなり起動するようにするにはどうするか

もうちょっと詳しく

構成について

  • i7-3700k / DDR3 8GB *4 なサーバ
  • HDD は下記の構成
    • メイン: 160GB 7200rpm HDD (こっちにOSを突っ込む)
    • サブ: 320GB 5400rpm HDD *2

インストール方法

  • USB に iso 焼いて、USB から起動してインストール
  • Download Ubuntu Server | Download | Ubuntu から持ってきた。
  • インストール時に、下記のような領域割り当てを行った

領域について

  • メインHDD (160GB)
    • /boot 1GB (975MiB)
    • swap 8GB ちょい?
    • lvm PV (これしか pv 割り当ててないので実質 VG )に割り当て (140GiB ちょい)
      • lvm-/ 20.04GiB (下三つ割り当てたあまり)
      • lvm-/usr 30GiB
      • lvm-/home 60GiB
      • lvm-/var 30GiB
  • サブHDD (320 GB * 2)
    • とりあえず md0 として RAID 1 を組ませて放置

起動後状況

  • 起動時は問題なし
  • 再起動すると、下記エラーメッセージとともに、initramfs に落とされる
    (下記文面はコピーできず、手で転写したため多少の誤りがあるかもしれません)
Begin: Running /scripts/init-premount ... done
Begin: Mounting root file system ... Begin: Running /scripts/local-top ... WARNING: Failed to connect to lvmetad. Falling back to device scanning.
done.
Begin: Running /scripts/local-premount ... [    3.599890] Btrfs loaded, crc32c=crc32c-intel
Scanning for Btrfs filesystems
done.
Warning: fsck not present, so skipping root file system
[    3.954848] EXT4-fs (dm-0): mounted filesystem with ordered data mode. Opts: (null)
done.
Begin: Mounting /usr file system ... Begin: Waiting for /usr file system ... Begin: /scripts/local-block ... done.
done.
Gave up waiting for /usr file system device.  Common problems:
 - Boot args ( cat /proc/cmdline)
   - Check rootdelay= (did the system wait long enough?)
 - Missing modules (cat /proc/modules; ls /dev)
ALERT! UUID=XXXXXXXX-YYYY-ZZZZ-AAAA-BBBBBBBBBBBB does not exist.  Dropping to a shell!
(ここでの UUID=XXXXXXXX-YYYY-ZZZZ-AAAA-BBBBBBBBBBBB は、fstab での /usr の UUID
  • この状況で、 lvm コマンドで lvm プロンプトに入って、 lvdisplay を打つと、 / に割り当てた LV 以外が全部 LV Status NOT available となっている。
    • / に割り当てた LV のみ、 LV Status available となっている。
  • ちょっとググってみて、 下記ブログに行き当たった。
  • 参考に、 vgchange -ayLV Status available となった。
  • この状況が無限に引き起こされるので、再起動のたびに、 vgchange -ay する必要があった。

この問題について

とりあえずの対処法

  • エラーメッセージなどをもとに、 lvmetad につなげられないことで困っているような雰囲気を感じた。
    • 公式の bug にも上がってそうだし、今はまだ lvm に慣れてないことから、根本解決に向かうのはあきらめた。
  • initramfs 周りについて軽く調べてみて、上記のメッセージがどうやら、/usr/share/initramfs-tools/script/local-top あたりにありそうなことがわかってきた。
  • そのあたりを読んでみると、 /usr/share/initramfs-tools/scripts/local-top/lvm2 にそれっぽい関数が出てきた。
lvchange_activate() {
        lvm lvchange -aay -y --sysinit --ignoreskippedcluster "$@"
}
  • 今回はとりあえず動けば、と思っているので、下記のようにしてみた
lvchange_activate() {
        # lvm lvchange -aay -y --sysinit --ignoreskippedcluster "$@"
        vgchange -ay
}
  • この後、起動時はこのスクリプトまでたどり着けない( /usr がマウントできない ) し、そもそもそういうために initramfs があるはずなので、 initramfs を生成しなおす。
$ sudo update-initramfs -u
update-initramfs: Generating /boot/initrd.img-4.15.0-34-generic
I: The initramfs will attempt to resume from /dev/sda3
I: (UUID=df17b70a-b6bf-11e8-a9e2-60a44c37bf6a)
I: Set the RESUME variable to override this.
  • これで再起動すると、問題なく起動する
    • んですが、相変わらず、 WARNING: Failed to connect to lvmetad. の文面自体は見えるので、今後も動向は追っていこうと思います…

読了記事: 「そうか、君は課長になったのか」

これは何

  • 初めての試みですが、本を読んだ感想とかを短く書けたらと思ってやって見ました。
  • ついでに amazon アソシエイトを登録してみました。

読んだ本についての紹介

  • そうか、君は課長になったのか
    • 佐々木常夫 さんの本です。 公式プロフィール
    • 39 歳で初めて課長に就任された当人の経験から、様々な視点での課長として/ビジネスマンとしてのノウハウ・経験則などが書かれています。

読んだきっかけ

  • マネジメントされる側として色々考えることが多くなったので、上司に軽い気持ちで「何か入門みたいに読めるマネジメントの本ないですか?」と聞いて紹介された一冊。

感想みたいな

はじめに

  • 本の感想とかって、著作権とかにも関わりそうなのであまり深くは突っ込まないです。
  • ちなみに 3h - 4h くらいで一周できました。(ページ合計は 207 ページでした)
  • あまり本を読まない人間なのですが、読んでて楽しかったし、気軽に見返せる構成になっているのでオススメです。

感想

  • 色々ハッとさせたれたり、「あるある」「わかる」「それな」って感じのことが多く、面白く読めました。
  • こういうことを期待してたんかなぁとか、ほんとはこうなるといいなぁとか、色々当てはめつつ読んでて面白かったです。

一つだけピックアップ

  • 37. 自分の頭で考える人間になる という話がありました。
    • 多読でもなんでも、本を読んでそれをそのまま即実行するんじゃなくて、まずは自分の知っている現実に当てはめて見て、どうかと可能な限り想像してみる。
    • これをしないとただ読んだだけ、読んだことただ実行するだけになって成長もしないし、却って毒だ。という話
  • ほんまこれ って思って、改めて文章としてみることでハッとさせられました。
    • 自分の心の中ではなんとなくわかっていたことを文章化されてとても気持ちがよかったです。
  • というか感想にも書いたけど僕結構これやっとんやなぁ・・・

時計を修理に出しました。 & 時計を買いました。

これは何

  • 特に技術ネタでもないです。単に購入報告です。
  • 文章を書こうという努力です。

時計を修理に出しました。

  • 高専時代に「TOEIC受けているときに見るような時計がない!」ということで親に折半してもらって買った時計です。
  • スーツでも私服でも使えるので結構重宝していたのですが、下記の理由で修理 & オーバーホール に出すことにしました。
    • 竜頭下のボタン(ストップウォッチのリセットボタン) の内部が破損したのか、ボタンが戻らない
    • 結構汚れてきた。
  • 修理見積が 10,000 円程度で、超えるようならご連絡をいただけるということでお願いしました。

時計を買いました。

  • ということで手元に時計が(後述の安物しか)ない状態になるため、思い切って腕時計を買いました。
    • そろそろ新しいのが欲しいとも思っていた。
    • 上述の修理に出した SEIKO の時計がクロノグラフなので、シンプルなのが欲しかった。

一つ目

二つ目

  • CASIO の MQ-24-9ELJF という時計を買いました。
  • 購入ポイントとして、下記二点で決めました。
    • 前々から一本、気軽に使える時計が欲しかった。(後述のめったに使わないやつはあるけど…)
    • 明るめの盤面が良かった。

(さんざん後述に回した) 昔から持っている三つ目

  • CITIZEN の VW86-850 という時計です。
  • 何が現状問題なのか

    • えらい塗装浮きみたいな状態になる。
      • 汚れみたいにぶつぶつしているけど、塗装自体が持ち上がっている。
      • これがどうにかなるなら使いたい
  • ちなみに、親戚の結婚式のカタログギフトでまた falcon の時計を申請中です…

目覚まし時計を買いました。

終わりに

  • 書いてて何が書きたいかわからなくなりましたが、こんなことしたよーみたいなこともたまには書けたらと思います。

印鑑の種類について

はじめに

いっそいで調べて書いてるので、もしかしたら誤りがあるかもしれません。

この記事は、
#kosen10s Advent Calendar 2017 - Adventar
の 18 日目の記事です。

昨日の記事は、 unasuke さんの 高専DJ部 #16 でした | うなすけとあれこれ でした。
明日の記事は、 puhitaku さんの 「何らかの話題について話します。ちなみに19は素数です。」です。
…が、12/17 21:38(JST) に #kosen10s slack の #blog チャンネルにこんな投稿がありました。 f:id:do_su_0805:20171217230513p:plain
とのことですので、みんな広い心で待ちましょう。

何を書くの

タイトルの通り、「印鑑の種類」について、軽く調べてみます。
と言って、「象牙の印鑑が…」みたいな話ではなく、日常生活でどういう場面で印鑑が利用され、
どういう意味を持つのか、という記事です。

なんでこのテーマ?

正直、勢いで 2枠取ったんですが、何も考えてなかったんですよね。
で、15 日目の JavaScript の NaN について - Allajah's Reservoir を読んでいて、

2つとった枠のうち1つは技術系の記事を書こうと思ってたのですが、

とあり、では同じように僕は技術ネタじゃないものを書こうかなと思います。
技術ネタは 5日目に投稿しました。

do-su-dairyquestions.hatenablog.com

(ちなみに、 CDDB API を叩く、という変わった記事を書こうかなと思って昨日ちょっと触ってました。
Web API | Gracenote Developer Music + Auto APIs
面白かったんですが、 シェルでたたく関係で XML がだいぶつらいのと、検索結果の上位100件しか詳細レコード取得できなくて積みました。)

で、テーマを考えて思いつかず、去年の #kosen10s Advent Calendar 2016 - Adventar を見たんですよ。
そしたら僕、こんな記事書いてて

do-su-dairyquestions.hatenablog.com

この記事みたあとに、いつぞや #kosen10s slack で話題になったあることを思い出したんですね。

f:id:do_su_0805:20171217231117p:plain

去年同様、社会人になるにあたって知っていたほうがいい感じのテーマで書こう、と決心しました。
(この時点での時間は 2017/12/17 23:12)

続きを読む

5min でできる、 apache httpd モジュール入門

はじめに

この記事は、 #kosen10s Advent Calendar 2017 - Adventar の 5日目の記事です。

昨日の記事は、 WaitaTachibana - Adventar さんの 自分Slackのススメ #kosen10s - なぜにぽえむ でした。

  • 確かにお話ししたことないです。

今回は何でしょう。

  • LT#10 で話した LT をやっと作りました。

    • あと、ついでに httpd を 自動インストールするスクリプト群を作りました。
続きを読む

macOS の ifconfig -C がおかしい件について

はじめに

  • 珍しく技術記事です。
  • 前回の記事にあった「ブログ書かないと」の件を進めているうちにわかったことを軽くまとめておきます。

なんの話?

  • macOS High Sierra でしかわかってないのですが、 ifconfig -C の表示結果が何かおかしかったのでまとめてます。
続きを読む

Razer Ornata を買いました。

お久しぶりです。

会社の人が「キーボードほしい」ということで一緒に見にいったんですが、 自宅のキーボードが調子悪くなってきたということもあり、ついでに新しいキーボードを買ってしまいました。

  • Razer Ornata というのを買いました。

  • (お前たくさんキーボード持ってるだろ)

    • 違うんです、フルキーボードは今使ってるのしかなかったんです。
  • 今何もってるの

    • PD-KB02 (会社用サブ)
    • PD-KB300 (会社用サブ)
    • PD-KB400WS (会社用メイン)
    • POKER X KBC PFCN6000 (自宅でコードとかやる気になった時用)
    • Razer lycosa mirror (自宅メイン。こいつが不調に)

以下紹介記事です。

  • お前先に書かないといけない記事あるだろ
    • お願いですもう少し待ってください・・。内容の調整とかが…
続きを読む