一般ユーザでのpm2での自動起動

Ubuntu20.04で新しく構築していて、pm2の自動起動がうまく動かなかったのでちょっと試行錯誤したのでメモ。
以下、ユーザ名:userxで実行とする。

$ pm2 startup
[PM2] Init System found: systemd
[PM2] To setup the Startup Script, copy/paste the following command:
sudo env PATH=$PATH:/usr/local/bin /usr/local/lib/node_modules/pm2/bin/pm2 startup systemd -u userx --hp /home/uesrx
$ sudo env PATH=$PATH:/usr/local/bin /usr/local/lib/node_modules/pm2/bin/pm2 startup systemd -u userx --hp /home/userx
[PM2] Init System found: systemd
Platform systemd
Template
[Unit]
Description=PM2 process manager
Documentation=https://pm2.keymetrics.io/
After=network.target

[Service]
Type=forking
User=userx
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
Environment=PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/local/bin:/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin
Environment=PM2_HOME=/home/userx/.pm2
PIDFile=/home/userx/.pm2/pm2.pid
Restart=on-failure

ExecStart=/usr/local/lib/node_modules/pm2/bin/pm2 resurrect
ExecReload=/usr/local/lib/node_modules/pm2/bin/pm2 reload all
ExecStop=/usr/local/lib/node_modules/pm2/bin/pm2 kill

[Install]
WantedBy=multi-user.target

Target path
/etc/systemd/system/pm2-userx.service
Command list
[ 'systemctl enable pm2-userx' ]
[PM2] Writing init configuration in /etc/systemd/system/pm2-userx.service
[PM2] Making script booting at startup...
[PM2] [-] Executing: systemctl enable pm2-userx...
Created symlink /etc/systemd/system/multi-user.target.wants/pm2-userx.service → /etc/systemd/system/pm2-userx.service.
[PM2] [v] Command successfully executed.
+---------------------------------------+
[PM2] Freeze a process list on reboot via:
$ pm2 save

[PM2] Remove init script via:
$ pm2 unstartup systemd

I got a Beelink U59

I received a new PC from AliExpress today.
Beelink U59(Celeron N5095 with 8GB RAM).

Box Front
Box Back
The machine apper
With 3.5 inch HDD for size comparison
With accessories
AC/DC adapter (US)

And Power ON!

BIOS – Main
BIOS – Boot

Crystal disk mark
Windows 11 ready.
I did clean install windows 11 after this.
One DDR memory (There are two slots) and M.2. Type SSD(SATA) inside the machine.
You can add a 2.5 inch drive to the top plate.
With VESA mount adapter
mounted it.
(Due to the structure of the plate, it was fixed with a single screw.)’

Seagate のドライブでLoad_Cycle_Countが異常に増えてたので対応した

※Seagateの謹製ツールを使ったやり方に更新予定

ArchlinuxのWikiを見ていたら気になったので調べた所、
WDじゃなくて、Seagateであるが、
ST4000DM000 というモデルの Load Cycle Count が多かったので対処した。

# smartctl /dev/sdf -a | grep -i LOAD
193 Load_Cycle_Count        0x0032   066   066   000    Old_age   Always       -       69147

# hdparm -I /dev/sdf | grep 'Advanced power management'
	Advanced power management level: 128

# hdparm -Z /dev/sdf

/dev/sdf:
 disabling Seagate auto powersaving mode
 HDIO_DRIVE_CMD(seagatepwrsave) failed: Input/output error

-Z オプションは使えず

# hdparm -B255 /dev/sdf

/dev/sdf:
 setting Advanced Power Management level to disabled
 APM_level	= off

# hdparm -I /dev/sdf | grep 'Advanced power management'
	Advanced power management level: disabled

Android TV の解像度を変えた

32S5200Aは物理解像度はフルHDなのに、Androidが720pで動いていたので、
フルHD化してみた。

まずは、TV側でスマホと同じ要領でUSBデバッグをon
そのまま何もせずネットワーク越しにつながるという噂だったのでそのままやったらつながった。
そして、保存用にデフォルを設定を確認

$ adb connect 192.168.0.17
connected to 192.168.0.17:5555
$ adb shell wm size
Physical size: 1280x720
$ adb shell wm density
Physical density: 213

で、テキトーに変える。

$ adb shell wm size 1920x1080
$ adb shell wm density 320

解像度だけを変えたらホームが小さくなったのでピクセル密度も調整。
大体こんなもんだと思う。

寝室用にAndroid TVを買ったら更なる欲が出た

寝室用に TCL 32S5200A[Amazon] を購入して1週間程度使いました。
Android TVは初めてだったんですが、使い勝手に少々ストレスが、、

  • 文字入力が弱い(キーボードがないと話にならない)
  • 音声入力でできることが少ない
  • アプリの管理とかUX設計がめちゃくちゃ
  • Castは便利だが安定性に欠け、Castできないものもある
  • デフォでブラウザが用意されてない(多分)
  • Fire TVの方が操作性がいいと感じてしまう

また、この端末特有の話ですが、DTCP-IPに対応していないので、
別テレビの録画コンテンツを参照できません。

個人的には、大量の動画データの中から検索して参照することが多く、
つまり文字入力は必須です。
で、この端末はキーボードをつなぐことはでき、文字入力も一応できるのですが、
結局全体の操作性がいまいちです。

ということで、小型PCをつないで無線キーボードで操作するのがよいのではないかと
思ったりしてしまっている次第。
中華の小型PC安いんだよなー(Windowsのライセンス買うより安い)