目录
1、前言
群晖使用默认未启用admin用户,而在使用中难免会碰到需要使用admin做一些操作的情景,比如忘记密码、权限调整错误导致登录DSM提示“您没有权限使用本项服务。”等等。
对于白群就简单了,按照官方教程去捅reset按钮就行了。黑群就稍微麻烦点,没有地方可以捅,只能参考Linux系统的特点,最近遇到一例,参考网上教程时发现都介绍了原理,但实操时发现跟实际环境还是有区别,故记录下。
2、环境
类型 | 版本 | 引导 |
---|---|---|
ESXI | DS3622xs+ | DS3622_7.22-72806 |
物理机 | DS918+ | DS918_7.22-72806 |
3、适用范围
问题解决思路都是利用Linux系统的用户文件保存特性,直接修改/etc/shadow文件中admin用户的密码字段,该字段为加密存储,可使用已知密码的用户相应字符串替换,或从其他Linux系统中生成。
方法同时适用于ESXI及物理机环境,有多个硬盘时需要找到DSM系统所安装的硬盘。本测试案例中安装系统的硬盘会有一个2G的swap分区、一个8G的root分区。
root分区是在安装DSM系统时即创建的,而群晖存储系统创建是在DSM中进行,故root分区应与群晖所使用RAID版本无关。
本例在单硬盘情况测试了SHR、Basic、JBOD三种RAID类型,在PE系统中DiskGenius显示磁盘类型都为Linux RAID,无法查看磁盘文件。
看网上各种教程很多都是直接使用DiskGenius即可查看分区,不知是否是因为DSM版本或者DiskGenius软件版本问题。
4、操作过程
使用ubuntu镜像进入体验桌面,即引导时选择第一项:Try or Install Ubuntu,在配置过程选择:Try Ubuntu
lsblk查看磁盘,md开头的即为群晖磁盘,其中大小为8G的为root分区,挂载该分区可修改shadow文件。相关命令
# 查看磁盘
lsblk
# 挂载磁盘
sudo mount /dev/md125 /mnt
# 编辑文件
sudo vi /mnt/etc/shadow
# 强制保存退出
:wq!
使用已知密码的用户相应字符串替换admin用户密码串,同时删除末尾数字1,文件为只读,需强制保存。
重启正常进入DSM系统即可登录admin用户。
5、补充
测试了多硬盘、多存储池的情况下,swap、root会存在多个硬盘中,但md信息是一样的。