您的位置:首页 > 其它

Ubuntu中一次更改用户名带来的连锁反应

2013-08-17 15:46 239 查看
我是一个ubuntu新手,接触ubuntu半年不到,装系统的时候输入了一个用户名,但是最近突然想更名了,这是悲剧的开始!

google:ubuntu change username等相关的关键字,最终采用了如下的解决方案:

使用sudo命令,修改下面几个文件,比如我现在的用户名是:csdn,想修改为cnblogs,我们需要修改文件中csdn为cnblogs:

sudo vi /etc/passwd
sudo vi /etc/shadow


修改之后保存退出!

悲剧发生在重启之后,重启之后用户名果然已经变成了cnblogs,好开心有木有,熟练输入之前的密码,进入系统:

发现了个新问题,当前目录是/home/csdn/,这不是坑呢嘛,重新打开/etc/passwd,发现之前修改的时候疏忽了,需要重新修改一下,把之前的/home/csdn/修改为/home/cnblogs/(PS:这个可以不修改,但是我是强迫症),这个不是小case嘛,come on,baby,在terminal中输入如下:

sudo vi /etc/passwd


然后悲剧了,问题出来了,如下图所示:



好,看看我现在的状况,我之前只有这么一个admin帐号,现在被我修改了,没法使用root权限,我尝试这去切换到root,几次尝试,失败,密码不对,后来google之后得知,ubuntu的root默认是没有设置的,并不是空的意思,而是密码会是随机的,除非你之前有过设置root密码,可惜我没有!

好吧,root的路到此断了,change思路!

突然想到每次boot到ubuntu的时候会有个选项是Booting into recovery model,这个瞬间触发了我,好吧,进入恢复模式看看吧,死马当作活马医咯!

进入恢复模式,如下图所示:



图片的上面有个诺大的read-only,是的,我们要做点小手脚,我们选择root选项,,然后直接可以在下面输入代码了,代码上图已经贴出来:

mount -o rw,remount /


好了,现在可以自由修改咯,是不是很带感,小伙伴们疯狂吧,嚎叫吧!

不同的情况需要采取不同的方式了,请大家留神哈:

ubuntu12.04及其以上,采用如下方式,给你的user增加sudo权限:

adduser cnblogs sudo


  (PS:注意此处的cnblogs更改为你最新修改之后的用户名!)

ubuntu11.04,11.10按照如下方式修改:

adduser cnblogs admin


好了,sudo权限已经有了,为了防止有什么问题,我们进行如下验证,备份当前的/etc/sudoers文件,并打开观察它:

sudo cp /etc/sudoers /etc/sudoers.backup
sudo vi /etc/sudoers


打开之后,检查是否如下所示:

1 #
2 # This file MUST be edited with the 'visudo' command as root.
3 #
4 # Please consider adding local content in /etc/sudoers.d/ instead of
5 # directly modifying this file.
6 #
7 # See the man page for details on how to write a sudoers file.
8 #
9 Defaults    env_reset
10 Defaults    secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/    sbin:/bin"
11
12 # Host alias specification
13
14 # User alias specification
15
16 # Cmnd alias specification
17
18 # User privilege specification
19 root    ALL=(ALL:ALL) ALL
20
21 # Members of the admin group may gain root privileges
22 %admin ALL=(ALL) ALL
23
24 # Allow members of group sudo to execute any command
25 %sudo   ALL=(ALL:ALL) ALL
26
27 # See sudoers(5) for more information on "#include" directives:
28
29 #includedir /etc/sudoers.d


是不是觉得大功告成了,还差那么一小步骤,还记得我之前修改home目录的事情不?

继续修改吧,首先修改/etc/passwd中的路径,然后重命名之前的路径:

mv /home/csdn/ /home/cnblogs/


好了,终于全部结束了,输入exit,退出恢复模式,从正常模式进入系统,一切搞定!

感谢大家的阅读,希望能够给大家带来帮助!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: