需求#

最近我们在开发一个基于树莓派的小盒子,我们会采购一些树莓派,装好外盒,装好arm版本的【Ubuntu Server 20.04】システム,并且装上我们开发的配套软件,对接我们云端的服务,最终把小盒子卖给用户并提供一些收费的服务。我们在インストールシステム的时候使用了Ubuntu自带的磁盘暗号化功能,确保机器在不开机的情况下不能被轻易的取出TF卡读取数据。
另一方面,我们作成了一个低权限的Linux用户【user】,方便用户进行一些基本操作。
默认情况下【Ubuntu Server 20.04】システム开机后,会要求你输入账号和密码来登录,但我们希望用户开机后,システム自动以【user】身份登录,并且自动実行一些脚本。
实现#
在ネットワーク搜索了一下,资料很多,但是坑也很多,最终まとめ出一个最简单的办法。
先作成一个用户【user】
sudo adduser user
その後一路回车,这时候发现无法给この用户指定空密码,提示
No password supplied
不用担心,先胡乱设一个密码,一路回车,作成完毕后,削除该用户的密码
sudo passwd -d user
接下来つまり設定终端的自动登录
sudo vim /etc/systemd/system/getty.target.wants/[email protected]
変更【[email protected]】ファイル的【ExecStart】这一行内容,从
ExecStart=-/sbin/agetty -o ‘-p – \u’ –noclear %I $TERM
変更为
ExecStart=-/sbin/agetty -a user -o ‘-p – \u’ –noclear %I $TERM
其实是つまり加了-a
\[用户名\]最後に让systemd重新加载一下設定ファイル
sudo systemctl daemon-reload
その後重启システム
sudo reboot

便可实现Ubuntu Server的无密码开机自动登录

