Ubuntu中彻底修改用户名及密码
转自: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中彻底修改用户名及密码的更多相关文章
- oracle中如何修改用户名和密码
1.以Windows操作系统为例,打开命令提示符,输入命令sqlplus /nolog ,进入oracle控制台,并输入 conn /as sysdba;以DBA角色进入. 2.连接成功后,输入“se ...
- Eclipse SVN修改用户名和密码
问题描述: Eclipse的SVN插件Subclipse做得很好,在svn操作方面提供了很强大丰富的功能.但到目前为止,该插件对svn用户的概念极为淡薄,不但不能方便地切换用户,而且一旦用户的 ...
- linux修改用户名和密码
linux修改用户名和密码 修改root密码:sudo passwd root 修改用户密码(如hadoop) sudo passwd hadoop 修改主机名:sudo vi /etc/hostna ...
- centos 7 安装mqtt 修改用户名和密码
我先新买个Centos 的系统 咱登录呢就用这个软件,主要是方便,可以少安装一些东西 根据自己的系统选择,上面的是32位的. 输入 root 回车 输入密码然后回车 输入的时候什么也不显示 输入 c ...
- Myeclipse SVN 修改用户名和密码
转自:http://blog.csdn.net/chow__zh/article/details/7731497 解决方案: 在Eclipse使用SVN的过程中大多数人往往习惯把访问SVN的用户名密码 ...
- mysql 数据库修改用户名和密码
因为经常修改数据库密码,也找到了几种修改数据库密码的方式,在这里给大家介绍下供大家参考通过navicat 管理数据库客户端来修改数据库密码: 选择数据库 --- 点击导航条的用户 --- 编辑用户 ...
- mysql修改用户名和密码
修改用户名 mysql> use mysql; 选择数据库Database changedmysql> update user set user="dns" wher ...
- Ubuntu下添加Samba用户名与密码
参考: ubuntu下的Samba配置:使每个用户可以用自己的用户名和密码登录自己的home目录 增加samba用户提示Failed to add entry for user Ubuntu可以直接在 ...
- git 查看/修改用户名、密码
用户名和邮箱地址的作用 用户名和邮箱地址是本地git客户端的一个变量,不随git库而改变. 每次commit都会用用户名和邮箱纪录. github的contributions统计就是按邮箱来统计的. ...
随机推荐
- P3200 [HNOI2009]有趣的数列
题目描述 我们称一个长度为2n的数列是有趣的,当且仅当该数列满足以下三个条件: (1)它是从1到2n共2n个整数的一个排列{ai}: (2)所有的奇数项满足a1<a3<...<a2n ...
- JAVA判断一个字符串里面有没有汉字
private static boolean checkIfExistChineseCharacter(String s) { return !(s.length() == s.getBytes(). ...
- REST Web 服务(一)----REST 介绍
1. 什么是REST? REST 定义了一组体系架构原则,您可以根据这些原则设计以系统资源为中心的 Web 服务,包括使用不同语言编写的客户端如何通过 HTTP 处理和传输资源状态. 2. REST的 ...
- [ARC068F] Solitaire [DP]
题面 传送门 思路 单调性 首先,显然可以发现这些数在放进双端队列之后肯定是一个$V$形的排布:1在最中间,两边的数都是单调递增 那么我们拿出来的数,显然也可以划分成2个单调递减的子序列(因为我们也是 ...
- 51NOD 1554 欧姆诺姆和项链 巧妙利用KMP
请戳这里! #include<cstdio> #define N 1000100 char s[N]; int n,k,nxt[N],ans[N]; int main() { scanf( ...
- POJ 2406 Power Strings 暴力
emmmm 显然的是a串长度是s串长度的因数 我们可以暴力枚举因数然后暴力check #include<cstdio> #include<algorithm> #include ...
- [codevs_1237]餐巾计划问题
题目描述 一个餐厅在相继的N 天里,每天需用的餐巾数不尽相同.假设第i天需要ri块餐巾(i=1,2,…,N).餐厅可以购买新的餐巾,每块餐巾的费用为p分:或者把旧餐巾送到快洗部,洗一块需m天,其费用为 ...
- OpenCV实践之路——人脸检测(C++/Python) 【转】
转自:http://blog.csdn.net/xingchenbingbuyu/article/details/51105159 版权声明:本文为博主原创文章,转载请联系作者取得授权. 本文由@星沉 ...
- java基础练习 20
import java.util.Scanner; public class Twentieth { /*某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都 ...
- python--traceback模块
#!/usr/bin/env python # -*- coding:utf-8 -*- # author:love_cat # 异常处理在python中已经屡见不鲜了,我们不仅可以处理异常,也可以将 ...