Manabii について

無気力です。

ConoHa VPS でルートパーティションを拡張したメモ

注意:
このエントリには、VPS のパーティションを編集したりファイルシステムを操作する内容が含まれています。これらの結果、最悪データを失うこともあるかもしれません。実際に実行された結果についての責任は負いかねます。

ConoHa VPS というサービスがありますが、2020 年 1 月にプランがリニューアルされています。

例えば、CPU 2 コア / メモリ 1GB では、

  • 旧プランは SSD 50GB で 990円 (税込) / 月
  • 新プランは SSD 100GB で 968円 (税込) / 月

と、SSD 容量が倍になっているにもかかわらず、若干月額が安くなるという、嬉しいことになっています。

しかし、旧プランを利用している ConoHa ユーザがこのプランの恩恵を受けるためには、「新しい VPS を起動しそちらに移行する必要がある」という、結構面倒くさい事になっています。

まぁ、IP アドレスが変わることは仕方ないとして、なんとかディスクイメージだけでもそのまま移行して、容量の拡張も出来ないだろうかと試してみました。

なお、対象のサーバは以下のような構成です。

  • OS: Debian 11 (AMD64)
  • ディスク構成: /dev/vda1 -> ルートパーティション、/dev/vda5 -> Swap パーティション
    # fdisk -l
    Disk /dev/vda: 50 GiB, 53687091200 bytes, 104857600 sectors
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disklabel type: dos
    Disk identifier: 0x9273b094
    
    Device     Boot     Start       End   Sectors  Size Id Type
    /dev/vda1  *         2048 102762495 102760448   49G 83 Linux
    /dev/vda2       102764542 104855551   2091010 1021M  5 Extended
    /dev/vda5       102764544 104855551   2091008 1021M 82 Linux swap / Solaris
  1. あらかじめディスク拡張用のユーティリティをインストールしておきます。
    # apt-get install cloud-guest-utils gdisk fdisk

  2. 移行するサーバを停止して、ConoHa のコントロールパネルよりスナップショットをとります。
    スナップショットの取得にはそこそこ時間がかかります。

  3. スナップショットがとれたら、ConoHa のコントロールパネルのサーバ追加よりサーバを追加します。
    「イメージタイプ」で「保存イメージ」をクリックし、復元に使用する保存イメージを選択し、root パスワードを入力 (ただここで root のパスワードを入力しても特に起動したサーバで反映されたりしなかったですが) して、サーバ追加で OK です。
    すると、やはりそこそこ時間がかかった後、スナップショットを元にしてサーバが起動します。

  4. 新しく起動したサーバのコンソールに入り、root 権限で以下を実行していきます。

    1. /dev/vda5 に swap パーティションがあるので削除します。
      # swapoff /dev/vda5
      # fdisk /dev/vda

      # swapoff /dev/vda5
      # fdisk /dev/vda
      
      Welcome to fdisk (util-linux 2.36.1).
      Changes will remain in memory only, until you decide to write them.
      Be careful before using the write command.
      
      
      Command (m for help): p
      Disk /dev/vda: 100 GiB, 107374182400 bytes, 209715200 sectors
      Units: sectors of 1 * 512 = 512 bytes
      Sector size (logical/physical): 512 bytes / 512 bytes
      I/O size (minimum/optimal): 512 bytes / 512 bytes
      Disklabel type: dos
      Disk identifier: 0x9273b094
      
      Device     Boot     Start       End   Sectors  Size Id Type
      /dev/vda1  *         2048 102762495 102760448   49G 83 Linux
      /dev/vda2       102764542 104855551   2091010 1021M  5 Extended
      /dev/vda5       102764544 104855551   2091008 1021M 82 Linux swap / Solaris
      
      Command (m for help): d
      Partition number (1,2,5, default 5): 5
      
      Partition 5 has been deleted.
      
      Command (m for help): p
      Disk /dev/vda: 100 GiB, 107374182400 bytes, 209715200 sectors
      Units: sectors of 1 * 512 = 512 bytes
      Sector size (logical/physical): 512 bytes / 512 bytes
      I/O size (minimum/optimal): 512 bytes / 512 bytes
      Disklabel type: dos
      Disk identifier: 0x9273b094
      
      Device     Boot     Start       End   Sectors  Size Id Type
      /dev/vda1  *         2048 102762495 102760448   49G 83 Linux
      /dev/vda2       102764542 104855551   2091010 1021M  5 Extended
      
      Command (m for help): d
      Partition number (1,2, default 2): 2
      
      Partition 2 has been deleted.
      
      Command (m for help): p
      Disk /dev/vda: 100 GiB, 107374182400 bytes, 209715200 sectors
      Units: sectors of 1 * 512 = 512 bytes
      Sector size (logical/physical): 512 bytes / 512 bytes
      I/O size (minimum/optimal): 512 bytes / 512 bytes
      Disklabel type: dos
      Disk identifier: 0x9273b094
      
      Device     Boot Start       End   Sectors Size Id Type
      /dev/vda1  *     2048 102762495 102760448  49G 83 Linux
      
      Command (m for help): w
      The partition table has been altered.
      Calling ioctl() to re-read partition table.
      Syncing disks.
    2. /etc/fstab から Swap パーティションの指定を削除します。

    3. grub2 を再インストールします。
      # grub-install /dev/vda
      # update-grub

      # grub-install /dev/vda
      Installing for i386-pc platform.
      Installation finished. No error reported.
      # update-grub
      Generating grub configuration file ...
      Found linux image: /boot/vmlinuz-5.10.0-6-amd64
      Found initrd image: /boot/initrd.img-5.10.0-6-amd64
      Found linux image: /boot/vmlinuz-5.10.0-5-amd64
      Found initrd image: /boot/initrd.img-5.10.0-5-amd64
      done

      ※このプロセスは不要かもしれません。

    4. 一旦再起動し、起動後 /dev/vda1 のパーティションを拡張します。
      # growpart /dev/vda 1

      # growpart /dev/vda 1
      CHANGED: partition=1 start=2048 old: size=102760448 end=102762496 new: size=209713119 end=209715167
      # fdisk -l
      Disk /dev/vda: 100 GiB, 107374182400 bytes, 209715200 sectors
      Units: sectors of 1 * 512 = 512 bytes
      Sector size (logical/physical): 512 bytes / 512 bytes
      I/O size (minimum/optimal): 512 bytes / 512 bytes
      Disklabel type: dos
      Disk identifier: 0x9273b094
      
      Device     Boot Start       End   Sectors  Size Id Type
      /dev/vda1  *     2048 209715166 209713119  100G 83 Linux

      パーティションのサイズが 100GB に拡張された。

    5. 再度再起動し、起動後 /dev/vda1 のファイルシステムを拡張します。
      # resize2fs /dev/vda1

      # resize2fs /dev/vda1
      resize2fs 1.46.2 (28-Feb-2021)
      Filesystem at /dev/vda1 is mounted on /; on-line resizing required
      old_desc_blocks = 7, new_desc_blocks = 13
      The filesystem on /dev/vda1 is now 26214139 (4k) blocks long.
      
      # df -h
      Filesystem      Size  Used Avail Use% Mounted on
      udev            470M     0  470M   0% /dev
      tmpfs            98M  504K   98M   1% /run
      /dev/vda1        99G  6.6G   88G   7% /
      tmpfs           489M     0  489M   0% /dev/shm
      tmpfs           5.0M     0  5.0M   0% /run/lock
      tmpfs            98M     0   98M   0% /run/user/1000

      ファイルシステムもほぼ 100GB に拡張された。

以上でディスクの拡張は完了します。あとは、IP アドレスを変更したり、ネームサーバ側のゾーンファイルを修正したりします。

■参考

boinc クライアントが駆動していなかった

Rosetta@home に参加しているのだけれど、なんだかマシンの負荷がほとんど無いなと思ったら、以下のようなメッセージが syslog に出ていた。

You are attached to this project twice. Please remove projects named Rosetta@home, then add https://boinc.bakerlab.org/rosetta/

今年の 3 月下旬頃からクライアント側の負荷が低い状態なので、もしかしたら 1 ヶ月ぐらい Rosetta@home の計算はしていなかったっぽい。

# systemctl stop boinc-client.service
# systemctl start boinc-client.service
# boinccmd --project https://boinc.bakerlab.org/rosetta/ detach
# boinccmd --project_attach https://boinc.bakerlab.org/rosetta/ [Account Key]

上記のようにしたら計算を再開しだした。すっかり、プロジェクトからのデタッチやアタッチの方法を忘れていた。

・追記

Rosetta needs 3814.70 MB RAM but only 3415.80 MB is available for use.

上記のようにログに出ていたので、Raspberry Pi 4 4GB ではもはや無理だな。

本サーバの OS を Debian 11 にアップグレード

去年の 11 月ぐらいにも別のサーバでテスト的に Debian 10 から Debian 11 にアップグレードしているけれど、Hard Freeze しているみたいなので、このサイトがホストされているサーバも Debian 10 から Debian 11 にアップグレードしました。

続きを読む

mrtg で「WARNING: Can not determine ifNumber」

mrtg が「WARNING: Can not determine ifNumber」と言うようになった。

この場合、/var/lig/mrtg/_etc_mrtg.cfg ファイルを削除してから mrtg を実行すれば良い。

ところで、/var/lig/mrtg/_etc_mrtg.cfg のファイル、パーミッションが 644 とかで作られるので、chown root:root と chmod 600 しておきましょう。さらに /var/lib/mrtg を root:root 700 とかにしておくと安心。

突発性難聴になった

その病名どおり、突然に突発性難聴を発症しました。

幸いなことに、今の段階では生活に不自由のないレベルで聴力が戻っています。

実際にこの病気に罹ってみて、色々な人の記録に助けられた部分もあったので、私の場合もどのような経過をたどったか、記載しておこうと思います。

続きを読む