由于在添加sudo用户时不小心多加了点东西或者是误删了点东西,导致sudoers文件失效,通过问一些工程师和老师,给出一些解决办法:
1、通过root修复,但是root密码已忘
2、通过单用户模式下修复root密码,但由于tegra无法进入单用户模式
3、通过uboot修复,具体步骤是:
问题出在怎么进入uboot。
一般是在ubuntu上安装minicom,把PC与开发版连接起来(一般用USB转TTL的转接线),但是问题出在怎么也连不过去,后来有位工程师告我用USB转USB的转接头连接PC与开发版 用ptkterm 后来也没用。
最后还是想试着用软修复的方式试试,于是找到了这篇文章:
阿舍想试一个跟 sudo 有关的功能,所以,就直接去硬改了 /etc/sudoers 这个档案 (其实,这是不对的作法,不过,那又是另一个故事了哩 !),结果,就每次要执行 sudo 指令时,就会出现错误,就无法执行 sudo,然后,就没有办法去把 /etc/sudoers 档案回复正常,然后,就继续无法使用 sudo,就开始无限循环了哩 ...
阿舍因为没改好这个 /etc/sudoers 档,所以,每次执行 sudo 时,就会出现下面的讯臮,因此,根本就执行不了 sudo,而偏偏这个 /etc/sudoers 档案就是要有 sudo 权限才能修改哩 !
>>> /etc/sudoers: syntax error near line 24 <<<
sudo: parse error in /etc/sudoers near line 24
sudo: no valid sudoers sources found, quitting
sudo: unable to initialize policy plugin
好加在 ! 阿舍有找到这个叫做 pkexec 的指令可以用来解决这个问题哩 ! 这个 pkexec 可以用指定的使用者来执行程式,而未指定使用者时,就会以 root 这个使用者来执行,所以,阿舍就可以用 pkexec 以下面的指令来执行 visudo 修正问题哩 !
pkexec visudo
执行后,会出现要选择使用者的清单,请选一位使用者后输入密码,接著就可以进入 visudo 来修改了,阿舍就把自己有改到的地方回复后存档并离开,之后,sudo 指令就回复正常了哩 !