首先这是个有危险的动作,刚刚试过修改用户名,发现网上搜索到的方法大部分是有错误的,所以觉得有必要分享出来。

下面讲的是不添加用户的情况下直接修改当前用户的用户名(大部分用户的ubuntu系统只有一个管理员账户,下面讲的就是如何修改这一个用户的名字)。更改用户名之前,需要了解/etc/passwd 、 /etc/shadow 、/etc/group 三个文件,我们要修改这三个文件。

/etc/passwd 文件是一个纯文本文件,每行采用了相同的格式:

name:password:uid:gid:comment:home:shell

name,用户登录名,我们需要修改的是这个

password,用户口令。此域中的口令是加密的。当用户登录系统时,系统对输入的口令采取相同的算法,与此域中的内容进行比较。如果此域为空,表明该用户登录时不需要口令。

uid,指定用户的 UID。用户登录进系统后,系统通过该值,而不是用户名来识别用户。

gid,GID。如果系统要对相同的一群人赋予相同的权利,则使用该值。

comment,用来保存用户的真实姓名和个人细节。

home指定用户的主目录的绝对路径。

shell如果用户登录成功,则要执行的命令的绝对路径放在这一区域中。它可以是任何命令。

/etc/group 文件文件的格式和 /etc/passwd 文件格式类似,它也是一个纯文本文件,定义了每个组中的用户。每行的格式是:

group_name:passwd:GID:user_list

它们的含义如下:

group_name组名

password组口令。此域中的口令是加密的。如果此域为空,表明该组不需要口令。

gid指定 GID。

user_list该组的所有用户,用户名之间用逗号隔开。

与上面两个不同,Linux /etc/shadow文件是只有系统管理员才有权利进行查看和修改的文件。

Linux /etc/shadow文件中的记录行与/etc/passwd中的一一对应,它由pwconv命令根据/etc/passwd中的数据自动产生。它的文件格式与/etc/passwd类似,由若干个字段组成,字段之间用“:”隔开。这些字段是:

登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志

1)“登录名”是与/etc/passwd文件中的登录名相一致的用户账号

2)“口令”字段存放的是加密后的用户口令字,长度为13个字符。如果为空,则对应用户没有口令,登录时不需要口    令;如果含有不属于集合{./0-9A-Za-z}中的字符,则对应的用户不能登录。

3)“最后一次修改时间”表示的是从某个时刻起,到用户最后一次修改口令时的天数。时间起点对不同的系统可能不一样。例如在SCOLinux中,这个时间起点是1970年1月1日。

4)“最小时间间隔”指的是两次修改口令之间所需的最小天数。

5)“最大时间间隔”指的是口令保持有效的最大天数。

6)“警告时间”字段表示的是从系统开始警告用户到用户密码正式失效之间的天数。

7)“不活动时间”表示的是用户没有登录活动但账号仍能保持有效的最大天数。

8)“失效时间”字段给出的是一个绝对的天数,如果使用了这个字段,那么就给出相应账号的生存期。期满后,该账号就不再是一个合法的账号,也就不能再用来登录了。

下面是修改办法:

注意:用户名不能使用不合法的字符,具体怎样才能合法还没查清楚,目前知道全小写字母肯定可以,首字母不能是大写!

1)打开一个终端,输入 sudo su转为root用户。

注意,必须先转为root用户!!!

2)gedit /etc/passwd ,找到代表你的那一行,修改用户名为新的用户名。

注意:只修改用户名!后面的全名、目录等不要动!

3)gedit /etc/shadow,找到代表你的那一行,修改用户名为新用户名

4)gedit /etc/group,你应该发现你的用户名在很多个组中,全部修改!

完毕,修改的时候要格外小心,不要打错一个字母。修改完,保存,重启。

修改用户目录名的方法请查询usermod命令的使用方法

ubuntu 修改默认用户名_Ubuntu更改用户名的方法相关推荐

  1. oracle中更改用户名,Oracle 更改用户名

    直接更改系统user$表中的用户名. 查询要更改的用户名 SQL> select user#,name,password from user$ where name ='TICKETS'; US ...

  2. vscode设置默认新建html,VScode修改默认生成的HTML模板的方法

    在VScode中,新建HTML页面时可以输入!+tab键,快速生成HTML代码模板,默认生成的代码模板如下: Document 由于生成的代码模板中有一些不需要,所以每次生成后都需要删除,很麻烦.其实 ...

  3. ubuntu 修改默认用户名_Ubuntu默认的用户名和密码是什么?

    满意答案 llw0601 2013.03.10 采纳率:49%    等级:12 已帮助:10408人 用这个办法试试 以下方法并非我当时解决的方法,因为当时尝试了很多,也走了不少弯路,有点乱,没能完 ...

  4. ubuntu 修改默认用户名_Tars框架在Ubuntu上的部署小结

    这几天倒腾了腾讯的开源RPC框架Tars,踩了不少坑,好不容易搭建好了,赶紧趁热记录下来! 一开始我图方便就想着用Docker来部署Tars,官方文档也建议这么做,可是最终死活运行不起来,后来便采用源 ...

  5. 计算机修改users用户名,笔记本电脑更改用户名_笔记本电脑更改user

    2016-12-17 11:44:29 您好如果该用户名的类型是系统管理员的话,在系统中无法更改,只能重装系统时更改或使用光盘启动,在系统偏好设定里改.但是可以新建用户名,方法:点击下方苹果工具条上的 ...

  6. linux创建中文用户名,linux更改用户名

    有时候,由于某些原因,我们可能会需要重命名用户名.我们可以很容易地修改用户名以及对应的家目录和 UID. 修改用户名 我们使用 usermod 来修改用户名.其语法为,$ usermod -l new ...

  7. Ubuntu修改默认源为国内

    修改默认源,官方源由于网络原因太慢,修改为国内源 #以阿里为例 vim /etc/apt/sources.listdeb http://mirrors.aliyun.com/ubuntu/ focal ...

  8. ubuntu修改默认python为python3

    1 ubuntu默认python ubuntu 大多镜像版本都会携带python解释器: ubuntu16.04 python指令进入python2.7,默认python3.5 如果没有python我 ...

  9. Ubuntu修改默认sh为bash

    现在的Ubuntu版本默认sh都是使用的dash,用起来实在是别扭,所以找了一下,发现可以通过设置,修改为原来的bash. 首先查看系统的/bin/sh $ ls -al /bin/sh /bin/s ...

最新文章

  1. 转载sunboy_2050 - Android APK反编译详解(附图)
  2. html读取字典endfor,Flask和HTML,从python字典迭代到HTML表
  3. fstab自动挂载_玩客云刷机系统之armbian挂载U盘增加空间
  4. 很多用户反映w7开机时候不是非常的理想 其实和它的内存量没有太大关系
  5. 华师大数据科学考研_21考研择校 | 华东师范大学软件工程怎么样?
  6. 第三讲 关系映射反演原则
  7. 计算机杀毒记录表格,11科室计算机杀毒登记表
  8. linux学习笔记:vim编辑器的各种用法操作命令
  9. Android学习(十三) BroadcastReceiver组件(广播)
  10. JavaScript中JSON的处理心得
  11. 由一段JS代码引发的思考
  12. 计算机配件投标书范本,2021年计算机投标书格式范本.doc
  13. c语言词法分析例子,实验一词法分析器实验报告示例
  14. 图片查看器-Python-tkinter
  15. c语言else if函数的使用方法,excel if函数怎么用?excel中if函数的使用方法图文详解...
  16. Redis设置过期时间
  17. 信号的平均功率与均方值
  18. 中国式的父慈子孝:爸妈用子女旧手机
  19. JS字符串转Byte[]
  20. 深度学习-第二章 卷积神经网络面试题(大厂必问,历经半年整理)

热门文章

  1. php 有哪些 SAPI
  2. 什么是云计算?什么是边缘计算?为什么需要云边协同?
  3. 分享一款将中文网站源代码直接生成英文网站的工具
  4. Vultr VPS开放HTTP端口
  5. 手机怎样压缩图片大小?手机照片内存怎么缩小?
  6. 利用Matlab设计滤波器(FDAT) .
  7. 仿SDWebImage
  8. 浅谈对ActiveMQ的理解
  9. PAT A1103 Integer Factorization整数分解 (经典DFS优化)
  10. 构造器(也称构造方法)