转自:http://blog.csdn.net/sailor201211/article/details/52305591

方案二:修改与用户和组相关的配置文件

这种方法更加本质,直接修改与用户和组相关的几个配置文件。其实userdel、useradd、passwd等命令本质上也是修改这几个文件。Linux下没有直接更改用户名的命令工具,或者有这样的工具但我不知道,但即使有这样的工具,其本质也是修改这几个配置文件。

同方案一一样,首先还是查看一下,当前用户属于哪些用户组,并记下来。然后设置root用户密码。接着以root用户身份打开/etc/passwd文件,这个文件设置了当前系统的所有用户相关信息。

$ su -
# vim /etc/passwd
... ...
sailer:x:::sailer,,,:/home/sailer:/bin/bash

这个文件每行对应着一个用户,每行由冒号分割为7个字段,其含义分别为:

用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell

这里我们找到我们需要修改的用户,将该行的用户名更改一下即可,另外把用户的主目录最好也改一下,让主目录与用户名相同(这样符合强迫症患者的习惯)。而用户的uid和gid都无需改动。例如上面的passwd文件我们改成这个样子:

# vim /etc/passwd
... ...
sailor:x:::sailor,,,:/home/sailor:/bin/bash

修改一下用户的主目录的目录名:

# mv /home/sailer /home/sailor

用户的登陆密码其实并不存放在/etc/passwd文件中,而是在/etc/shadow文件中。打开它:

# vim /etc/shadow
... ...
sailer:$$tDOxH2en$Neyhp/0oRtJk7kjxX.L3OAkcVIiyxNt8P/rsoo5aeTMQbjG5rSNwsXs3BR15qJ6mNedU47h2YFepMAVG9uMyx0:::::::

这个文件存放了用户的密码(经过加密)还有密码的失效时间等一些信息。同passwd文件一样,每行对应一个用户,每行以冒号分割为若干字段,其中第一个字段为用户名。找到我们要修改的用户名,直接改之。经过前面两步,其实用户名已经改好了,而密码还是原来的密码,原来的用户的uid和gid也不变。最后我们还需要把这个用户加入到若干组中去。打开/etc/group文件:

# vim /etc/group
... ...
sudo:x::sailer
... ...
plugdev:x::sailer
... ...
sailer:x::

这个文件每行对应一个用户组,其格式为“组名:组密码占位符:组ID:组内用户列表”。另外Linux下有一个私有组概念,即每创建一个用户,系统会自动创建一个与用户同名的组,该组为该用户的主组(或称私有组)。用户除了属于与自己同名的主组外,还会属于其他组,这些组称为用户的附加组。

刚才我们修改了用户名,那么用户所属的私有组的组名也应该一并修改(当然不改也不会有任何问题,私有组和附加组并无实质区别,但我们是强迫症嘛,所以改之),找到要修改的组名sailer,改为sailor。原sailer用户属于若干个附加组中,如sudo组、plugdev组等,我们将这些组的组内成员列表的sailer改为sailor。改完后是如下效果:

# vim /etc/group
... ...
sudo:x::sailor
... ...
plugdev:x::sailor
... ...
sailor:x::

与passwd文件对应一个shadow文件用于存储用户登陆密码类似,group文件也对应一个gshadow文件用于存放用户组的密码。其实用户组密码对于我们这种桌面应用环境来说根本用不着,但作为强迫症患者还是要把系统修改完美。我们打开这个文件看一下:

# vim /etc/gshadow
saned:!::
davfs2:!::
sailer:!::

同样每行对应一个组,格式为:“组名:密码:组管理者:组内用户列表”,其中密码字段为”!”表示没有密码。这里我们只需要将组名sailer改为sailor就行了。

好了,到这里才算大功告成了!

Ubuntu中彻底修改用户名及密码的更多相关文章

  1. oracle中如何修改用户名和密码

    1.以Windows操作系统为例,打开命令提示符,输入命令sqlplus /nolog ,进入oracle控制台,并输入 conn /as sysdba;以DBA角色进入. 2.连接成功后,输入“se ...

  2. Eclipse SVN修改用户名和密码

    问题描述:     Eclipse的SVN插件Subclipse做得很好,在svn操作方面提供了很强大丰富的功能.但到目前为止,该插件对svn用户的概念极为淡薄,不但不能方便地切换用户,而且一旦用户的 ...

  3. linux修改用户名和密码

    linux修改用户名和密码 修改root密码:sudo passwd root 修改用户密码(如hadoop) sudo passwd hadoop 修改主机名:sudo vi /etc/hostna ...

  4. centos 7 安装mqtt 修改用户名和密码

    我先新买个Centos 的系统 咱登录呢就用这个软件,主要是方便,可以少安装一些东西 根据自己的系统选择,上面的是32位的. 输入 root 回车 输入密码然后回车  输入的时候什么也不显示 输入 c ...

  5. Myeclipse SVN 修改用户名和密码

    转自:http://blog.csdn.net/chow__zh/article/details/7731497 解决方案: 在Eclipse使用SVN的过程中大多数人往往习惯把访问SVN的用户名密码 ...

  6. mysql 数据库修改用户名和密码

    因为经常修改数据库密码,也找到了几种修改数据库密码的方式,在这里给大家介绍下供大家参考通过navicat 管理数据库客户端来修改数据库密码: 选择数据库 --- 点击导航条的用户  --- 编辑用户 ...

  7. mysql修改用户名和密码

    修改用户名 mysql> use mysql;  选择数据库Database changedmysql> update user set user="dns" wher ...

  8. Ubuntu下添加Samba用户名与密码

    参考: ubuntu下的Samba配置:使每个用户可以用自己的用户名和密码登录自己的home目录 增加samba用户提示Failed to add entry for user Ubuntu可以直接在 ...

  9. git 查看/修改用户名、密码

    用户名和邮箱地址的作用 用户名和邮箱地址是本地git客户端的一个变量,不随git库而改变. 每次commit都会用用户名和邮箱纪录. github的contributions统计就是按邮箱来统计的. ...

随机推荐

  1. 【bzoj3809/bzoj3236】Gty的二逼妹子序列/[Ahoi2013]作业 莫队算法+分块

    原文地址:http://www.cnblogs.com/GXZlegend/p/6805252.html bzoj3809 题目描述 Autumn和Bakser又在研究Gty的妹子序列了!但他们遇到了 ...

  2. GCC 中 -L、-rpath和-rpath-link的区别

    GCC 中 -L.-rpath和-rpath-link的区别 来源 http://blog.csdn.net/q1302182594/article/details/42102961 关于这3个参数的 ...

  3. [codeforces] 97B Superset || 平面分治

    原题 给出一个平面的一些点,让你添加点,使得所有点对满足以下三个要求中的一个: 1.在一个水平面上 2.在一个竖直线上 3.以这两个点为对角的矩形内包含有其他点 输出一种可行解 因为只需要可行解,且只 ...

  4. hdu 3717 二分+队列维护

    思路:已知当前的总长度和为len,当前的伤害为sum,伤害次数为 num.那么对下一个点的伤害值sum=sum+2*len+num: 这个是通过(x+1)^2展开化简就能得到. #include< ...

  5. 【POJ 2752 Seek the Name, Seek the Fame】

    Time Limit: 2000MSMemory Limit: 65536K Description The little cat is so famous, that many couples tr ...

  6. POJ3680:Intervals(离散化+最大流最小费用)

    Intervals Time Limit: 5000MS   Memory Limit: 65536K Total Submissions: 9320   Accepted: 4014 题目链接:ht ...

  7. Linux下hdparm硬盘测速

    在Linux下可以使用hdparm对硬盘进行测试或者查看硬盘的相关信息.这样你就知道了硬盘读写速度. Hdparm功能说明:显示与设定硬盘的参数. 语 法:hdparm [-CfghiIqtTvyYZ ...

  8. 快速激活最新JetBrains公司系列产品包括最新的phpstorm10

    快速激活最新JetBrains公司系列产品包括最新的phpstorm10 IntelliJ IDEA开源社区 提供了如下通用激活方法: 注册时选择License server 然后输入框填写:http ...

  9. CodeForces Round #403 (Div.2) A-F

    精神不佳,选择了在场外同步划水 没想到实际做起来手感还好,早知道就报名了…… 该打 未完待续233 A. Andryusha and Socks 模拟,模拟大法好.注意每次是先判断完能不能收进柜子,再 ...

  10. YYH的营救计划(NOIP模拟赛Round 6)

    题目描述 “咚咚咚……”“查水表!”原来是查水表来了,现在哪里找这么热心上门的查表员啊!YYH感动的热泪盈眶,开起了门…… YYH的父亲下班回家,街坊邻居说YYH被一群陌生人强行押上了警车!YYH的父 ...