前言
最近改用nixos,当然希望vps也能安装相同的系统。virmach家可通过netboot,xyz安装,比较方便。但手上有一台vps,商家只支持debian和centos,只能自己想办法安装。
内存安装最小化系统
此处使用的是menhera.sh方案,在使用前记得备份好网络等重要信息。
| |
根据提示即可安装成功,然后重启进入新系统。
准备环境
查看磁盘挂载情况,旧系统根目录挂载在/mnt/oldroot,删除磁盘原有文件。同时防止内存不足,将/nix挂载到硬盘,如果有交换区,可以开启。
| |
安装必要的工具。
| |
创建相关组和用户
| |
nixbld用户添加sudo权限,并添加nixUnstable配置,同时变更/nix所属
| |
切换至nixbld用户
| |
安装nix工具和新系统
此处使用nix-unstable-installer方案。
官方稳定版已经支持nix flake。
| |
更新channel
| |
安装nixos-install-tools
| |
创建配置文件,配置文件默认安装在/mnt/etc/nixos(可选,注意:此处UUID错误,需要修改)
| |
因为我已经提前准备好配置,所以不需要上一步,或者仅需要上一步产生的hardware-configuration.nix,修改好配置后进行安装。
| |
如果安装时报错,无需担心,重新切换到nixbld用户,再次安装即可成功。 重启即可进入新系统,重启前可以考虑把配置文件转移到新系统中,重启后记得删除/xxx文件夹。
| |

常见问题
ailed to create file via template ‘/tmp/tmp.XXXXXXXXXX’: No such file or directory 答:手动创建/tmp文件夹
chroot: failed to run command ‘systemd-tmpfiles’: No such file or directory 答:没找到解决方案,有时不影响,可以成功进入系统,有时却不可以
nixos-install 过程中直接killed 答:系统内存不足,不用官方ubuntu系统,改用debian、arch或nixos就能成功