pwck

检查用户密码文件“/etc/passwd”和“/etc/shadow”的完整性,将验证结果送到标砖输出。提示用户删除格式不正确或有其他不可更正错误的条目。检查以验证每个条目是否具有:正确的字段数、唯一有效的用户名、有效的用户和组标识符、有效的主组、有效的家目录、有效的登录shell。

当指定了第二个文件参数或系统上存在“/etc/shadow”时,就启用了shadow检查。它会检查一下信息:每个passwd条目都有一个匹配的阴影条目,每个影子条目都有一个匹配的passwd条目,在shadow文件中指定了密码,阴影条目有正确的字段数,阴影条目在shadow中是唯一的,最近的密码更改不会在将来发生。

检查正确的字段数和唯一用户名是致命的。如果条目有错误的字段数,则会提示用户删除整行。如果用户没有肯定地回答,所有进一步的检查都会被绕过。提示删除具有重复用户名的条目,但仍将进行其余检查。所有其他错误都是警告,并鼓励用户运行usermod命令来更正错误。

此命令的适用范围:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。

1、语法

       pwck [选项]  

 

2、选项列表

选项

说明

--help

显示帮助文档

--version

显示命令版本

-q

仅显示报错信息

-r

以只读模式执行

-s

使用UID作为文件的排序依据

 

3、配置

下面“/etc/login.defs“中的配置变量更改了该工具的行为:

       PASS_MAX_DAYS,可以使用密码的最大天数。如果密码早于此,则将强制进行密码更改。如果没有指定,将假定-1(这将禁用限制)。

       PASS_MIN_DAYS,密码更改之间允许的最短天数。任何密码更改尝试比这更早将被拒绝。如果未指定,则假定为-1(这将禁用限制)

       PASS_WARN_AGE,在密码过期前发出警告的天数。零表示警告只在到期之日发出,负值表示没有发出警告。如未指定,则不会提供警告。

4、文件

       /etc/group,组账户信息。

       /etc/passwd,用户账户信息。

       /etc/shadow,安全用户帐户信息。

 

5、返回值

pwck命令会返回下列结果

返回值

说明

0

成功

1

无效的命令

2

1个或多个密码出错

3

无法打开密码文件

4

不能锁定密码文件

5

不能更新密码文件

6

无法排序密码文件

 

6、实例

1)普通用户调用pwck

[david@localhost ~]$ pwck                                  //查看密码文件

pwck: cannot lock /etc/passwd; try again later.

[david@localhost ~]$ echo $?                              //打印返回值,这个返回值在shell变量“#?”中

4

2)root调用pwck

[root@localhost david]# pwck

user 'adm': directory '/var/adm' does not exist

user 'uucp': directory '/var/spool/uucp' does not exist

user 'gopher': directory '/var/gopher' does not exist

user 'avahi-autoipd': directory '/var/lib/avahi-autoipd' does not exist

user 'pulse': directory '/var/run/pulse' does not exist

user 'saslauth': directory '/var/empty/saslauth' does not exist

user 'vboxadd': directory '/var/run/vboxadd' does not exist

user 'mailnull': directory '/var/spool/mqueue' does not exist

user 'smmsp': directory '/var/spool/mqueue' does not exist 

Linux基础命令---检查密码文件pwck的更多相关文章

  1. 『学了就忘』Linux基础命令 — 25、文件基本权限的管理

    目录 1.文件和目录的默认权限 2.umask默认权限 (1)查看系统的umask权限 (2)用八进制数值显示umask权限 (3)umask权限的计算方法 (4)注意:umask默认权限的计算绝不是 ...

  2. Linux基础命令---验证组文件grpck

    grpck grpck指令可以验证组文件“/etc/group”和“/etc/gshadow”的完整性.检查的内容包括:正确的字段数.唯一有效的组名称.有效的组标识符.成员和管理员的有效列表.“/et ...

  3. 『学了就忘』Linux基础命令 — 24、文件基本权限的相关命令

    目录 1.chmod命令 2.权限模式 (1)用户身份. (2)赋予方式. (3)权限. 3.数字权限 4.文件常用权限 5.chown命令 6.chgrp命令 7.总结 常用基本权限操作命令: ch ...

  4. 『学了就忘』Linux基础命令 — 20、文件操作的相关命令

    目录 1.touch 命令 2.stat命令 3.cat命令 4.more命令 5.less命令 6.head命令 7.tail命令 1.touch 命令 touch命令用于创建空文件或修改文件时间, ...

  5. 『学了就忘』Linux基础命令 — 23、文件基本权限的介绍和作用

    目录 1.基本权限的介绍 (1)权限位的含义 (2)权限的优先级 2.权限的基本作用 (1)权限含义的解释 (2)目录权限说明 1.基本权限的介绍 (1)权限位的含义 前面讲解ls命令时,我们已经知道 ...

  6. Linux基础命令---lp打印文件

    lp lp指令用来打印文件,也可以修改存在的打印任务.使用该指令可以指定打印的页码.副本等. 此命令的适用范围:RedHat.RHEL.Ubuntu.CentOS.Fedora.openSUSE.SU ...

  7. Linux基础命令---lpr打印文件

    lpr lpr指令用来打印文件,如果没有指定文件名,那么从标准输入读取内容.CUPS提供了许多设置默认目标的方法.首先查询“LPDEST”和“PRINTER”环境变量.如果没有设置,则使用lpopti ...

  8. Linux基础命令和文件权限

    Linux命令与文件权限 Linux基础命令   reboot  重启   cd         切换目录   cd ..     回到上一级目录   cd ~      回到主目录   cd /  ...

  9. Linux基础命令-文件与目录

    Linux基础命令-文件与目录 参考:<鸟哥linux私房菜>五-七章,17/12/5复习,18/01/15复习 文件权限 rwx421:用户,用户组,其他 umask查看默认权限:000 ...

随机推荐

  1. kvo观察实例变量

    // 手动设定KVO - (void)setAge:(NSString *)age { [self willChangeValueForKey:@"age"]; _age = ag ...

  2. SSM(Spring+SpringMVC+Mybatis)框架环境搭建(整合步骤)(一)

    1. 前言 最近在写毕设过程中,重新梳理了一遍SSM框架,特此记录一下. 附上源码:https://gitee.com/niceyoo/jeenotes-ssm 2. 概述 在写代码之前我们先了解一下 ...

  3. 关于XML文档的xmlns、xmlns:xsi和xsi:schemaLocation

    https://yq.aliyun.com/articles/40353 ************************************* 摘要: 相信很多人和我一样,在编写Spring或者 ...

  4. CentOS 系列安装 Docker

    CentOS6对于 CentOS6,可以使用 EPEL 库安装 Docker,命令如下$ sudo yum install http://mirrors.yun-idc.com/epel/6/i386 ...

  5. 并发编程---线程---开启方式---进程线程的区别----Thread的其他属性

    线程 进程只是用来把资源集中到一起(进程只是一个资源单位,或者说资源集合)而线程才是cpu上的执行单位 1.同一个进程内的多个线程共享该进程内的地址资源 2.创建线程的开销远小于创建进程的开销(创建一 ...

  6. Win7各版本功能对比

  7. Redis入门到高可用(五)—— 单线程

    一.单线程为何这么快 1)绝大部分请求是纯粹的内存操作(非常快速) 2)采用单线程,避免了不必要的上下文切换和竞争条件 3)非阻塞IO 内部实现采用epoll,采用了epoll+自己实现的简单的事件框 ...

  8. sqlite基本操作

    sqlite准备步骤; .下载:https://www.sqlite.org/download.html: sqlite-dll-win64-3250200.zip 和 sqlite-tools-wi ...

  9. cmd项目目录结构以及配置文件的升级编写

    一.项目的目录结构: bin:执行文件夹 config:自定义配置文件 lib:公共的模块或者类文件 src:核心业务逻辑代码 二.配置文件的编写 1)config代码如下 from lib.conf ...

  10. synchronized的简单用法

    synchronized 锁定要操作的对象: emp: synchronized(要锁定的对象){ //要做的动作 }