linux下passwd命令设置修改用户密码的方法

1、passwd 简单说明;

我们已经学会如何添加用户了,所以我们还要学习设置或修改用户的密码;passwd命令的用法也很多,我们只选如下的几个参数加以说明;想了解更多,请参考man passwd或passwd --help ;

passwd [OPTION...]

passwd 作为普通用户和超级权限用户都可以运行,但作为普通用户只能更改自己的用户密码,但前提是没有被root用户锁定;如果root用户运行passwd ,可以设置或修改任何用户的密码;

passwd 命令后面不接任何参数或用户名,则表示修改当前用户的密码;请看下面的例子;

[root@localhost ~]# passwd   注:没有加任何用户,我是用root用户来执行的passwd 表示修改root用户的密码;下面也有提示;

Changing password for user root.

New UNIX password: 注:请输入新密码;

Retype new UNIX password: 注:验证新密码;

passwd: all authentication tokens updated successfully. 注:修改root密码成功;

如果是普通用户执行passwd 只能修改自己的密码;

如果新建用户后,要为新用户创建密码,则用 passwd 用户名 ,注意要以root用户的权限来创建;

[root@localhost ~]# passwd beinan 注:更改或创建beinan用户的密码;

Changing password for user beinan.

New UNIX password: 注:请输入新密码;

Retype new UNIX password: 注:再输入一次;

passwd: all authentication tokens updated successfully. 注:成功;

普通用户如果想更改自己的密码,直接运行passwd即可;比如当前操作的用户是beinan;

[beinan@localhost ~]$ passwd

Changing password for user beinan. 注:更改beinan用户的密码;

(current) UNIX password: 注:请输入当前密码;

New UNIX password: 注:请输入新密码;

Retype new UNIX password: 注:确认新密码;

passwd: all authentication tokens updated successfully. 注:更改成功;

2、passwd 几个比较重要的参数;

[root@localhost beinan]# passwd --help

Usage: passwd [OPTION...] <accountName>

-k, --keep-tokens       keep non-expired authentication tokens

注:保留即将过期的用户在期满后能仍能使用;

-d, --delete            delete the password for the named account (root only)

注:删除用户密码,仅能以root权限操作;

-l, --lock              lock the named account (root only)

注:锁住用户无权更改其密码,仅能通过root权限操作;

-u, --unlock            unlock the named account (root only)

注:解除锁定;

-f, --force             force operation

注:强制操作;仅root权限才能操作;

-x, --maximum=DAYS      maximum password lifetime (root only)

注:两次密码修正的最大天数,后面接数字;仅能root权限操作;

-n, --minimum=DAYS      minimum password lifetime (root only)

注:两次密码修改的最小天数,后面接数字,仅能root权限操作;

-w, --warning=DAYS      number of days warning users receives before

注:在距多少天提醒用户修改密码;仅能root权限操作;

password expiration (root only)

-i, --inactive=DAYS     number of days after password expiration when an

注:在密码过期后多少天,用户被禁掉,仅能以root操作;

account becomes disabled (root only)

-S, --status            report password status on the named account (root   注:查询用户的密码状态,仅能root用户操作;
only)

--stdin                 read new tokens from stdin (root only)

比如我们让某个用户不能修改密码,可以用-l 参数来锁定:

[root@localhost ~]# passwd -l beinan 注:锁定用户beinan不能更改密码;
Locking password for user beinan.
passwd: Success           注:锁定成功;
[beinan@localhost ~]# su beinan 注:通过su切换到beinan用户;
[beinan@localhost ~]$ passwd 注:beinan来更改密码;
Changing password for user beinan.
Changing password for beinan
(current) UNIX password: 注:输入beinan的当前密码;
passwd: Authentication token manipulation error 注:失败,不能更改密码;

再来一例:

[root@localhost ~]# passwd -d beinan 注:清除beinan用户密码;
Removing password for user beinan.
passwd: Success                        注:清除成功;
[root@localhost ~]# passwd -S beinan 注:查询beinan用户密码状态;
Empty password.                     注:空密码,也就是没有密码;

注意: 当我们清除一个用户的密码时,登录时就无需密码;这一点要加以注意;

3、chage 修改用户密码有效期限的命令;

chage 用语法格式:

chage [-l] [-m 最小天数] [-M 最大天数] [-W 警告] [-I 失效日] [-E 过期日] [-d 最后日] 用户

前面已经说的好多了,这个只是一笔带过吧,知道有这个命令就行,自己实践实践再说,大体和psswd有些参数的用法差不多;

密 码时效命令-----chage

格式为:chage [<选项>] <用户名>

下面列出了chage命令的选项说明:

-m days: 密码可更改的最小天数。为零时代表任何时候都可以更改密码。

-M days: 指定口令有效的最多天数。当该选项指定的天数加上-d选项指定的天数小于当前的日期时,用户在使用该帐号前就必须改变口令。

-d days: 指定从1970年1月1日起,口令被改变的天数。

-I days: 指定口令过期后,帐号被锁前不活跃的天数。如果值为0,帐号在口令过期后就不会被锁。

-E date: 指定帐号被锁的日期。日期格式YYYY-MM-DD。若不用日期,也可以使用自1970年1月1日后经过的天数。

-W days: 指定口令过期前要警告用户的天数。

-l: 列出指定用户当前的口令时效信息,以确定帐号何时过期。

例如下面的命令要求用户user1两天内不能更改口令,并且口令最长的存活期为30天,并且口令过期前5天通知用户

chage -m 2 -M 30 -W 5 user1

可以使用如下命令查看用户user1当前的口令时效信息:chage -l user1

提示:

1)可以使用chage <用户名>进入交互模式修改用户的口令时效。

2)修改口令实质上就是修改影子口令文件/etc/shadow中与口令时效相关的字段值。

以上这篇linux下passwd命令设置修改用户密码的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • 找回Redhat Linux 7.2的超级用户密码

    笔者的机器上装有Redhat Linux7.2操作系统,安装了KDE和GNOME桌面,因在安装时只设了超级用户root,但超级用户的权限太大了,只适用于系统维护及安装软件时使用,平常使用应该用普通用户来登录.所以需要新建一个普通用户.这倒也简单,打开"菜单→系统→账号管理器",添加一个用户不就得了!可麻烦事就来了:退出以后再用root登录,输入密码,啊!密码错误,进不了系统了.我知道Redhat7.2下用户密码是保存在/etc/shadow里,应从这里寻找突破口. 1.把系统安装光盘插

  • Linux下交互式与非交互式修改用户密码的例子

    最近管理的一批机器,有个需求是要统一修改一个帐号的用户名密码,比如将qa帐号的密码改为1234,后来还为了脚本化,很方便的执行,还使用了非交互式地修改用户的密码.简单记录一下吧. 1. 交互式配置本地用户的密码:passwd 命令 复制代码 代码如下: [root@host_221-81 ~]# passwd qa Changing password for user qa. New password: BAD PASSWORD: it is too short BAD PASSWORD: is

  • linux下/etc/passwd文件的选项说明

    /etc/passwd 文件是一个纯文本文件,每行采用了相同的格式: name:password:uid:gid:comment:home:shell 它们的含义如下: 域 说明 name 用户登录名 password 用户口令.此域中的口令是加密的.当用户登录系统时,系统对输入的口令采取相同的算法,与此域中的内容进行比较.如果此域为空,表明该用户登录时不需要口令. uid 指定用户的 UID.用户登录进系统后,系统通过该值,而不是用户名来识别用户. gid GID.如果系统要对相同的一群人赋予

  • linux下passwd命令设置修改用户密码的方法

    1.passwd 简单说明: 我们已经学会如何添加用户了,所以我们还要学习设置或修改用户的密码:passwd命令的用法也很多,我们只选如下的几个参数加以说明:想了解更多,请参考man passwd或passwd --help : passwd [OPTION...] passwd 作为普通用户和超级权限用户都可以运行,但作为普通用户只能更改自己的用户密码,但前提是没有被root用户锁定:如果root用户运行passwd ,可以设置或修改任何用户的密码: passwd 命令后面不接任何参数或用户名

  • 在Linux下通过命令行打包Android应用的方法

    本文介绍了在Linux下通过命令行打包Android应用的方法,分享给大家,具体如下: Requirements Ubuntu 16.04 sdk tools for linux Java 8 准备环境 安装Shell工具 sudo apt install -y wget unzip git 安装JDK sudo apt install -y openjdk-8-jdk # 查看结果 java -version 初始化目录与环境变量 BUILD_BASE=`echo ~` export ANDR

  • Windows下用命令行修改IP地址的方法详解(附批处理文件)

    由于我所处的地方要经常在不同的网络之间切换,比如局域网.系统内部网和外网(光是外网我要常常在3个ADSL网之间切换).我之前一直用的方法是在本机上设置多个不同网段的IP,然后切换路由(Route),这样不同的网段通过不同的网关出去,就可以达到同时访问多个网络的目的.但是这样我发现经常可能出现一些问题,所以我决定用最原始的方法来解决,那就是在要使用某一个网段的时候就只用这个网段的IP,这样就需要不停的更换IP地址.当然,在Windows的"网络连接"属性中这样的更改是很麻烦的,不过还好的

  • 虚拟机Linux系统忘记密码修改root或其他用户密码的方法

    使用场景 linux管理员忘记root密码,需要进行找回操作. 注意事项:本文基于centos7环境进行操作,由于centos的版本是有差异的,继续之前请确定好版本. 步骤 一.重启系统,在开机过程中,快速按下键盘上的方向键↑和↓.目的是告知引导程序,我们需要在引导页面选择不同的操作,以便让引导程序暂停. 以下是暂停后的界面,可以查看下方的英文可知↑和↓的作用. 二.使用↑和↓将选择行设置为第一行(背景高亮即为选中),按下键盘上的e,进入编辑模式 三.将光标一直移动到 LANG=en_US.UT

  • Linux下date命令,格式化输出,时间设置方法

    date命令的帮助信息 [root@localhost source]# date --help 用法:date [选项]... [+格式] 或:date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]] 以给定的格式显示当前时间,或是设置系统日期. -d,--date=字符串 显示指定字符串所描述的时间,而非当前时间 -f,--file=日期文件 类似--date,从日期文件中按行读入时间描述 -r, --reference=文件 显示文件指定文件的

  • linux下mysql创建新的用户的方法

    1.以root身份登录到MySQL服务器中. $ mysql -u root -p 当验证提示出现的时候,输入MySQL的root帐号的密码. 2.创建一个MySQL用户 使用如下命令创建一个用户名和密码分 为"username"和"userpassword"的用户. mysql> CREATE USER 'username'@'localhost' IDENTIFIED BY 'userpassword'; 一旦用户被创建后,包括加密的密码.权限和资源限制在

  • Linux fedora 24 忘记密码图形化界面修改root密码的方法

    方法及其简单,只需要两步即可: 1.第一步: 打开终端,输入sudo su命令. –此处的密码为普通用户的密码,也就是开机时输入的密码. 2.第二步: 直接sudo passwd root就重置了roor密码了. 此时输入新的密码即可,个人建议密码最好字母加数字相结合. PS:下面看下fedora23忘记root密码怎么修改? 第一步:在开机进入grub菜单的时候选择正确的启动项,按e 第二步:找到开头是linux16这一行,在末尾加上rd.break,注意空格,按ctrl+x 第三步:此时进入

  • Linux下tcpdump命令解析及使用详解

    简介 用简单的话来定义tcpdump,就是:dump the traffic on a network,根据使用者的定义对网络上的数据包进行截获的包分析工具.tcpdump可以将网络中传送的数据包的"头"完全截获下来提供分析.它支持针对网络层.协议.主机.网络或端口的过滤,并提供and.or.not等逻辑语句来帮助你去掉无用的信息. 实用命令实例 默认启动 tcpdump 普通情况下,直接启动tcpdump将监视第一个网络接口上所有流过的数据包. 监视指定网络接口的数据包 tcpdum

  • linux下umask命令用途原理和计算方式详解

    目录 umask umask用途 原理 1. umask值 2. 文件目录权限最大值 3. 常规计算 4. 严谨计算 umask值修改 1. 临时生效(当前会话) 2. 永久生效 总结 umask umask用途 umask令新建文件和目录拥有默认权限. 可以看到root创建的目录是755,文件是644 [root@zaishu zaishu]# touch test.txt [root@zaishu zaishu]# mkdir test [root@zaishu zaishu]# ls -l

  • Linux下MYSQL 5.7 找回root密码的问题(亲测可用)

    目录 一.通过 --skip-grant-tables 找回 1.1 修改my.conf,新增免密登陆启动项 1.2 免密模式下进入mysql控制台,重置密码 1.3注释或删除免密登陆配置项,重启mysqld服务并进行登陆验证 一.通过 --skip-grant-tables 找回 (注意:该操作必须考虑安全因素,因为在设置免密登陆期间期数据库处于无密码保护状态) 1.1 修改my.conf,新增免密登陆启动项 vi /etc/my.cnf 在 [mysqld] 区域 新增 skip-grant

随机推荐