見出し画像

ラズパイ 3A+ で apt upgrade ができない件

問題発生

余っていた Raspberry Pi3 Model A+ に、Raspberry OS (Bulleye 32bit) を新規インストールし、apt upgrade するも進捗が69%で止まったまま一向に進まない・・・。再度やっても状況は同じ。

原因は?

SD カードの不具合かと思い、別のカードに交換しても改善せず。

Raspberry Pi3 Model B で試したところ、こちらは問題は発生しない。モデル間の主な違いはメインメモリの容量で、A は 512MB、B は1GB。なのでメモリ不足が原因かも?

ラズパイはメインメモリは増やせませんが、SDカードをスワップメモリとして利用することはできます。現状のスワップを free コマンドで確認したところ、デフォルトで 99Mi 確保されているスワップは 100% 使われている状態でした。 

試しにスワップサイズを増やしてみたところ、無事に upgrade できました! 

スワップの設定方法

 /etc/dphys-swapfile の CONF_SWAPSIZE を変更します。単位は MB でデフォルトは100。今回はメインメモリと同じ 512 にしました。

# /etc/dphys-swapfile - user settings for dphys-swapfile package
# author Neil Franklin, last modification 2010.05.05
# copyright ETH Zuerich Physics Departement
#   use under either modified/non-advertising BSD or GPL license

# this file is sourced with . so full normal sh syntax applies

# the default settings are added as commented out CONF_*=* lines


# where we want the swapfile to be, this is the default
#CONF_SWAPFILE=/var/swap

# set size to absolute value, leaving empty (default) then uses computed value
#   you most likely don't want this, unless you have an special disk situation
CONF_SWAPSIZE=512

# set size to computed value, this times RAM size, dynamically adapts,
#   guarantees that there is enough swap without wasting disk space on excess
#CONF_SWAPFACTOR=2

# restrict size (computed and absolute!) to maximally this limit
#   can be set to empty for no limit, but beware of filled partitions!
#   this is/was a (outdated?) 32bit kernel limit (in MBytes), do not overrun it
#   but is also sensible on 64bit to prevent filling /var or even / partition
#CONF_MAXSWAP=2048

修正後、再起動すれば完了です。

free コマンドでちゃんと変更されているか確認。

ryo@v2:~ $ free -h
               total        used        free      shared  buff/cache   available
Mem:           426Mi       142Mi       198Mi       4.0Mi        86Mi       225Mi
Swap:          511Mi          0B       511Mi

ラズパイ 3A+

Model B に比べ、小さく安いんのがメリット。デスクトップとして使うなら B 一択ですが、それ以外の IoT 用途等では A で必要十分。
パワー的に Zero 2 W で足りるならそちらを。

Raspbeery Pi 3 Model B (手前) と Model A+


この記事が気に入ったらサポートをしてみませんか?