今日のブログはZramのzstd化と自作systemdデーモン。
標準設定はあまり良くないですが、
高圧縮のzstdと自動実行を入れます。
メモリ少ない機種で非常に役に立ちます。
●Zramとzstd
詳しくは以前のブログとプレゼン資料
まずはこちらをご参考に
How to enable the zRAM module for faster swapping on Linux
https://www.techrepublic.com/article/how-to-enable-the-zram-module-for-faster-swapping-on-linux/
Ubuntu改造日記 高速化&SSD延命 圧縮zRAMファイルを/tmpにマウント その90
http://kapper1224.sblo.jp/article/188315425.html
はじめてのSSD,MicroSD,USBメモリ延命方法 in Linux Beginner for Linux long-lifetime in USBmemory,SSD,MicroSD in 2021 from Netwalker lab kapper
メモリの節約として圧縮RAMスワップのアルゴリズムを
zstdに変更します。
●Zramの登録
端末から同じ様にzramを登録します。
sudo apt install zram-config
で設定ファイルを編集
sudo nano /etc/modules-load.d/zram.conf
zramを追加して保存
zram
設定ファイルを作成して保存
sudo nano /etc/modprobe.d/zram.conf
コピペして保存
options zram num_devices=1
udevファイルを編集。
sudo nano /etc/udev/rules.d/99-zram.rules
512Mの部分は好きな容量を。1G〜など自由に
KERNEL=="zram0", ATTR{disksize}="512M",TAG+="systemd"
保存したら再起動して動いているのを確認。
ここまではテンプレ通り。
ここからが本番。
バッチファイルを作成します。
sudo nano /opt/zram.sh
コピペして貼り付け。
容量の部分は各自自由に計算して設定して下さい。
#!/bin/bash
swapoff /dev/zram0
chmod 777 /sys/block/zram0/reset
echo 1 > /sys/block/zram0/reset
echo zstd > /sys/block/zram0/comp_algorithm
echo 2685354560 > /sys/block/zram0/disksize
sudo mkswap /dev/zram0
sudo swapon /dev/zram0
どうやら、zstdに切り替える前に/sys/block/zram0/resetを1にする必要があります。
保存したら実行形式に変換。
sudo chmod +x /opt/zram.sh
これを起動時に実行する事でアルゴリズムを変更します。
ルート権限が必要になりますので、systemdに登録必要です。
それで自作systemdを作成します。
sudo nano /etc/systemd/system/zram.service
で下記をコピペして保存
[Unit]
Description = zram daemon
[Service]
ExecStart = /opt/zram.sh
Restart = always
Type = simple
[Install]
WantedBy = multi-user.target
平たくいうと/opt/zram.shを実行するだけです。
でsystemdの自動実行に登録
sudo systemctl enable zram.service
シンボリックリンクを作成しましたって出たらOK
で再起動。
動いているかを端末から確認
zramctl
NAME ALGORITHM DISKSIZE DATA COMPR TOTAL STREAMS MOUNTPOINT
/dev/zram0 zstd 2.5G 528.9M 116.2M 147.8M 4 [SWAP]
こんな感じでzstdに切り替わっていたらOK
●まとめ
やってる事は、zramスワップをOFFにして再登録しているだけです。
しかし標準設定で切り替え出来ないので仕方がないです。
systemdに登録しておけば自動で実行してくれます。
メモリが少ない時は高圧縮してくれるので助かりますが、
やはり圧縮にも限界があるので日常でのメモリ節約は必要です。
必要がなければswapfileを外しておきましょう。
【Ubuntuの最新記事】
- Ubuntu改造日記 20.04〜 ラン..
- Ubuntu改造日記 節電設定 TLPの..
- Ubuntu改造日記 省メモリ Fire..
- Ubuntu改造日記 22.04〜 Gr..
- Ubuntu改造日記 メモリ+スワップ満..
- Ubuntu改造日記 Swap圧縮 zw..
- Ubuntu改造日記 wubi for ..
- Ubuntu改造日記 コマンドラインでS..
- Ubuntu改造日記 省メモリ キャッシ..
- Ubuntu改造日記 3,000円ジャン..
- Ubuntu改造日記 簡易ファイルサーバ..
- Ubuntu改造日記 16bit x86..
- Ubuntu改造日記 OpenMSX+M..
- Ubuntu改造日記 OpenMSX-c..
- Ubuntu改造日記 キーボード故障対策..
- Ubuntu改造日記 CF-SZ5でCU..
- Ubuntu改造日記 最近のSteam+..
- Ubuntu改造日記 USBメモリ、SS..
- Ubuntu改造日記 USBメモリ、SS..
- Ubuntu改造日記 オープンソース初代..
デフォルトで最速のlzo-rleがオススメですよ
https://i.imgur.com/tqecZNe.png
僕個人は少ないメモリ使用量を出来るだけ節約する方を優先したいので圧縮したいです。
後は、転送速度が極端に遅いUSB2.0のストレージの環境の場合もあったり無かったり。
ここでの標準設定はzram-configパッケージの設定内容の事を示しています。