Password - 增加登录密码
ADB权限功能
该功能主要用于权限管理,只有经过公私钥认证后才能进行adb通信。
1.配置ADB
使用前需要make menuconfig选中对应功能:
Allwinner --->
USB --->
<*> adb................................................... adb for Tina Linux
<*> adbd_auth_service........................ adb auth service for Tina Linux
默认开机就会使能该功能,执行adb命令时会进行公私钥校验。
2.公钥的安装
默认允许安装所有公钥,可以通过修改
platform/allwinner/usb/adbd/auth/aw_adb_auth_service.c
取消下面注释
/*aw_adbd_install_pubkey_detector(publickey_detector); */
然后在publickey_detector函数中判断是否安装公钥,返回false则不安装
公钥的安装路径:/mnt/UDISK/adb_keys
如果/mnt/UDISK/adb_keys下面没有对应的公钥,并且不允许安装新公钥,这时候adb功能就不能使用。
3.注意事项
(1)Windows下面公私钥的路径:
%USERPROFILE%\.android\adbkey // 私钥
%USERPROFILE%\.android\adbkey.pub // 公钥
(2)Ubuntu下面公私钥的路径:
用户目录/.android/adbkey // 私钥
用户目录/.android/adbkey.pub // 公钥
串口登录设置密码
配置busybox启用密码登录功能
make menuconfig选择
Base system —>
<*> busybox ……
[*] Customize busybox option
Login/Password Management Utilities —>
[*] login
生成密码文件
make menuconfig选择
Base system —>
<*> busybox ……
[*] Customize busybox option
Login/Password Management Utilities —>
[*] passwd
passwd软件包仅仅为了生成密码文件,生成完毕后就可以取消勾选这个软件。
启动系统,使用passwd命令配置密码,例如这里配置密码为 tina
此时会生成两个文件
- /etc/shadow
- /etc/passwd
将密码文件拷贝到SDK 内,放置到对应板级的 openwrt/target/v821/v821-xxx/busybox-init-base-files/etc 文件夹内,例如 perf2 板级放置在 openwrt/target/v821/v821-perf2/busybox-init-base-files/etc 文件夹下。
3.修改启动脚本
到 openwrt/package/allwinner/system/busybox-init-base-files/files/etc/inittab 下找到 inittab 源文件
复制到对应板级目录下的 busybox-init-base-files/etc 内,这里以perf2板级为例,复制到 openwrt/target/v821/v821-perf2/busybox-init-base-files/etc/inittab
4.编辑 inittab 文件,将
/dev/console::respawn:-/bin/sh
修改为
/dev/console::respawn:-/bin/login
5.测试功能
编译上电后,默认会进入输入密码的界面,此时需要输入用户名 root 密码 tina 进入控制台