楼主: 一生有你llx

[笔记] Linux基础命令

[复制链接]
论坛徽章:
0
101#
 楼主| 发表于 2019-1-22 07:24 | 只看该作者
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




使用道具 举报

回复
论坛徽章:
0
102#
 楼主| 发表于 2019-1-23 07:19 | 只看该作者
passwd
      更改用户密码,超级用户可以修改所有用户密码,普通用户只能修改自己的密码。这个任务是通过调用LinuxPAM和LibuserAPI来完成的。本质上,它使用LinuxPAM将自己初始化为一个“passwd”服务,并利用配置的密码模块对用户的密码进行身份验证和更新。
      此命令的适用范围:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。
1、语法
      passwd [选项]  user
      passwd  [-k] [-l]  [-u  [-f]] [-d]  [-e]  [-n mindays]  [-x maxdays]  [-w warndays]  [-i inactivedays]  [-S]  [--stdin] [username]

2、选项列表
选项
说明
--help
显示帮助文档
--version
显示命令版本
-d
删除用户的密码,只有root用户才能使用
-e
使用户密码失效,强制用户下次登录改变密码,只有root用户才能使用
-n
设置密码的最短有效时间,只有root用户才能使用
-x
设置密码最大有效时间,只有root用户才能使用
-S
显示简短的密码信息,只有root用户才能使用
-l
锁定用户,只有root用户才能使用
-u
解锁用户,只有root用户才能使用
-k
选项-k用于指示更新只适用于过期的身份验证令牌(密码);用户希望像以前一样保留其未过期的令牌。
-i
这将设置此帐户的过期密码将被视为不活动的天数,如果用户帐户支持密码生存期,则应禁用该帐户。只对根用户可用。
-w
这将设置用户将开始收到警告,如果用户帐户支持密码生存期,其密码将过期的天数。只对根用户可用。
--stdin
此选项用于指示passwd应从标准输入中读取新密码,该输入可以是管道。

3、实例
1)锁定用户,锁定之后不能登录
[root@localhost david]# passwd -l david              //锁定用户
锁定用户 david 的密码。
passwd: 操作成功
[root@localhost david]# passwd -u david               //解锁用户
解锁用户 david 的密码。
passwd: 操作成功
2)删除用户密码
[root@localhost david]# passwd -d david               //清除用户david密码
清除用户的密码 david。
passwd: 操作成功
[root@localhost david]# su weijie                      //切换到普通胡勇weijie
[weijie@localhost david]$su david                     //从普通用户weijie切换到普通用户david,不需要密码
[david@localhost ~]$




使用道具 举报

回复
论坛徽章:
0
103#
 楼主| 发表于 2019-1-24 08:05 | 只看该作者
finger
      finger指令用来查找、显示指定用户的信息。查询远程主机信息是,可以用user@localhost来指定用户。
     此命令的适用范围:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。

1、语法
     finger [-lmsp] user

2、选项列表
选项
说明
-s
显示用户的用户名、真实姓名、登录终端、闲置时间、登录时间、地址、电话
-l
显示用户的用户名、真实姓名、用户家目录、登录后的shell、登录时间、电子邮件、计划文件
-p
和-l一样,但是不显示“.plan“、“.project”、“.pgpkey”文件
-m
不查找用户真实姓名

3、实例
查看用户root信息
[root@localhost david]# finger -l root
Login: root                   Name: root
Directory: /root                      Shell: /bin/bash
On since 五 9月  7 21:02 (CST) on tty1 from :0
    14 days 20 hours idle
On since 六 9月 22 07:36 (CST) on pts/0 from :0.0
   9 hours 5 minutes idle
On since 四 9月 13 08:55 (CST) on pts/1 from :0.0
New mail received 六 9月22 18:00 2018 (CST)
     Unread since 二 8月21 09:22 2018 (CST)
No Plan.



使用道具 举报

回复
论坛徽章:
0
104#
 楼主| 发表于 2019-1-24 09:45 | 只看该作者
做了一个Linux学习的平台,目前出来一个雏形,各位可以参考使用
链接:https://pan.baidu.com/s/1GOLVU2CbpBNGtunztVpaCQ  密码:n7bk

使用道具 举报

回复
论坛徽章:
0
105#
 楼主| 发表于 2019-1-25 08:11 | 只看该作者
logname
       显示当前登录的用户名称。此命令的适用范围:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。
1、语法
       logname

2、选项列表
选项
说明
--help
显示帮助文档
--version
显示命令版本

3、实例
       查看当前登录用户
[root@localhost david]# logname               //查看登录用户
root
[root@localhost david]# su david             //切换用户
[david@localhost ~]$ logname                 //查看登录用户,依然是root
root




使用道具 举报

回复
论坛徽章:
0
106#
 楼主| 发表于 2019-1-26 11:08 | 只看该作者
grpck
      grpck指令可以验证组文件“/etc/group”和“/etc/gshadow”的完整性。检查的内容包括:正确的字段数、唯一有效的组名称、有效的组标识符、成员和管理员的有效列表、“/etc/gshadow”文件中的相应条目。检查正确的字段数和唯一的组名是致命的。如果条目有错误的字段数,则会提示用户删除整行。如果用户没有肯定地回答,所有进一步的检查都会被绕过。提示删除具有重复组名的条目,但仍将进行其余检查。所有其他错误都是警告,并鼓励用户运行groupmod命令来更正错误。
     对“/etc/group“和“/etc/gshadow“文件进行操作的命令不能更改损坏或重复的条目。在这种情况下,应该使用grpck来删除违规条目。
     此命令的适用范围:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。

1、语法
     grpck [选项]  group

2、选项列表
选项
说明
--help
显示帮助文档
--version
显示命令版本
-r
以只读模式运行
-s
使用gid对group和gshadow进行排序

3、配置
     下面“/etc/login.defs”中的配置变量更改了该工具的行为:
     MAX_MEMBERS_PER_GROUP(number),每个组条目的最大成员数。达到最大值时,在“/etc/group”中启动一个新的组条目(行)(具有相同的名称、相同的密码和相同的GID)。默认值为0,这意味着组中的成员数没有限制。此功能(拆分组)允许限制组文件中的行长度。这对于确保NIS组的行不大于1024个字符非常有用。如果你需要执行这样的限制,你可以使用25。注意:拆分组可能不支持所有的工具(即使在阴影工具集中)。除非您真的需要这个变量,否则不应该使用它。

4、文件
     /etc/group,组账户信息。
     /etc/gshadow,安全组账户信息。
     /etc/passwd,用户账户信息。

5、实例
1)检查组信息
[root@localhost david]#grpck                 //检查组信息,返回0,没有任何错误
[root@localhost david]# echo $?
0
2)对/etc/group排序
[root@localhost david]# tail –n 2 /etc/group            //查看组信息
smmsp:x:51:
webalizer:x:67:
user01:x:502:
group02:x:999:
[root@localhost david]# grpck -s /etc/group            //按照gid排序
[root@localhost david]# tail –n 2 /etc/group           //查看信息,已经排序
user01:x:502:
group02:x:999:
nfsnobody:x:65534:




使用道具 举报

回复
论坛徽章:
0
107#
 楼主| 发表于 2019-1-27 08:13 | 只看该作者
本帖最后由 一生有你llx 于 2019-3-13 15:12 编辑

groupmod
修改组的基本信息,包括组名称、组ID等信息。此命令的适用范围:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。
1、语法
     groupmod  [选项]  group
2、选项列表
选项
说明
--help
显示帮助文档
--version
显示命令版本
-g gid
指定组id
-n name
指定组名
3、实例
     修改组id合名字
[root@localhost david]# tail -n 2 /etc/group                            //查看组信息
user01:x:502:
group01:x:503:
[root@localhost david]# groupmod -g 999 -n group02 group01           //修改组id999,组名字:group02
[root@localhost david]# tail -n 2 /etc/group                            //查看组信息,已经修改
user01:x:502:
group02:x:999:




做了一个Linux学习的平台,目前出来一个雏形,各位可以参考使用
链接:https://pan.baidu.com/s/1GOLVU2CbpBNGtunztVpaCQ  密码:n7bk


使用道具 举报

回复
论坛徽章:
0
108#
 楼主| 发表于 2019-1-28 08:18 | 只看该作者
gpasswd
      gpasswd指令用来管理组文件“/etc/group”和“/etc/gshadow”,每个组可以设置管理员、组员、密码。系统管理员可以使用-A选项定义组管理员,使用-M选项定义成员。他们拥有组管理员和成员的所有权利。由具有组名的组管理员调用的gpasswd只提示输入组的新密码。如果设置了密码,则成员仍然可以在没有密码的情况下使用newgrp(1),而非成员必须提供密码。
组密码是一个固有的安全问题,因为允许多个人知道密码。然而,群组是允许不同用户之间合作的有用工具。
     警告,此工具仅对“/etc/group”和“/etc/gshadow”文件进行操作。因此,您不能更改任何NIS或LDAP组。这必须在相应的服务器上执行。
     此命令的适用范围:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。

1、语法
     gpasswd [选项]  group

2、选项列表
选项
说明
--help
显示帮助文档
--version
显示命令版本
-a | --add user
向组中添加用户
-d | --delete user
删除成员
-r | --remove-password
删除组密码
-R | --restrict
限制对命名组的访问。只允许组成员使用newgrp加入命名组。
-M |  --members user,...
向组添加多个成员
-A | --administrators user,..
设置组管理员

3、配置
     下面“/etc/login.defs”中的配置变量更改了该工具的行为:
     ENCRYPT_METHOD(string),这定义了用于加密密码的系统默认加密算法(如果命令行上没有指定算法)。可用的算法有:DES(默认)、MD5、SHA256、SHA512。注意:此参数重写MD5_CRYPT_ENAB变量。
     MAX_MEMBERS_PER_GROUP(number),每个组条目的最大成员数。达到最大值时,在/etc/group中启动一个新的组条目(行)(具有相同的名称、相同的密码和相同的GID)。默认值为0,这意味着组中的成员数没有限制。此功能(拆分组)允许限制组文件中的行长度。这对于确保NIS组的行不大于1024个字符非常有用。如果你需要执行这样的限制,你可以使用25。注意:拆分组可能不支持所有的工具(即使在阴影工具集中)。除非你真的需要这个变量,否则你不应该使用它。
MD5_CRYPT_ENAB(boolean),指示是否必须使用基于MD5的算法加密密码。如果设置为“是”,新密码将使用基于MD5的算法进行加密,该算法与FreeBSD最新版本使用的算法兼容。它支持无限长度的密码和更长的盐字符串。如果您需要将加密密码复制到其他不了解新算法的系统,则设置为“否”。默认为否。该变量由ENCRYPT_METHOD变量或用于配置加密算法的任何命令行选项取代。不推荐这个变量。您应该使用ENCRYPT_METHOD。
     SHA_CRYPT_MIN_ROUNDS(number)、SHA_CRYPT_MAX_ROUNDS(number),当Encrypt_Method设置为SHA 256或SHA 512时,默认情况下这将定义加密算法使用的SHA轮数(当命令行上未指定轮数时)。有很多回合,这是比较困难的暴力强制密码。但是还要注意的是,需要更多的CPU资源来对用户进行身份验证。如果没有指定,libc将选择默认的回合数(5000)。数值必须在1000-999999999范围内。如果只设置了SHA_CRYPT_MIN_ROUNDS或SHA_CRYPT_MAX_ROUNDS中的一个,则将使用此值。如果SHA_CRYPT_MIN_ROUNDS>SHA_CRYPT_MAX_ROUNDS,则将使用最高值。

4、文件
     /etc/group,组账户信息。
     /etc/gshadow,安全组账户信息。

5、实例
1)将用户user01 添加到组weijie
[root@localhost david]# gpasswd -a user01 weijie         //向组添加用户
Adding user user01 to group weijie
[root@localhost david]# cat /etc/group                    //查看组信息,已经成功添加
weijie:x:501:user01
2)设置组管理员
[root@localhost david]# gpasswd -A weijie weijie          //设置管理员
[root@localhost david]# cat /etc/gshadow                  //查看组信息,管理员已经设置
weijie:!:weijie:




使用道具 举报

回复
论坛徽章:
0
109#
 楼主| 发表于 2019-1-29 06:34 | 只看该作者

做了一个Linux学习的平台,目前出来一个雏形,各位可以参考使用 链接:https://pan....

本帖最后由 一生有你llx 于 2019-2-20 09:20 编辑

groupadd
       指定群组名称来建立新的群组账号,需要时可以从系统中取得新的群组值。
       此命令的适用范围:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。

1、语法
       groupadd [选项]  group

2、选项列表
选项
说明
--help
显示帮助文档
--version
显示命令版本
-g gid
指定组id
-r
创建系统组
-f
新增一个已经存在的群组帐号,系统会出现错误讯息然后结束groupadd。如果是这样的情况,不会新增这个群组(如果是这个情况下,系统不会再新增一次)也可同时加上-g选项当你加上一个gid,此时gid就不用是唯一值,可不加-o参数,建好群组后会显结果

3、文件
       /etc/group,群组信息。
       /etc/gshadow,群组加密信息。

4、实例
        创建组,指定组的id
[root@localhost david]#groupadd group01 -g 999           //创建组,指定id
[root@localhost david]# tail -n 2 /etc/group               //查看组信息
user01:x:502:
group01:x:999:



groupdel
       删除组,如果租内有用户,那么必须先删除用户。
       此命令的适用范围:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。

1、语法
       groupdel group

2、选项列表
选项
说明
--help
显示帮助文档
--version
显示命令版本

3、实例
       删除组
[root@localhost david]# groupdel group01              //删除组
[root@localhost david]# tail -n 2 /etc/group         //查看组信息,已经删除
webalizer:x:67:
user01:x:502:




做了一个Linux学习的平台,目前出来一个雏形,各位可以参考使用
链接:https://pan.baidu.com/s/1GOLVU2CbpBNGtunztVpaCQ  密码:n7bk

使用道具 举报

回复
论坛徽章:
0
110#
 楼主| 发表于 2019-1-30 07:31 | 只看该作者
init
      init是所有进程的父进程,它由内核执行,可以启动其他所有的进程。init指令在启动时会参考/etc/inittab文件的配置,完成其他进程的启动。init通常不会由用户进程执行,并且期望进程id为1。如果不是这样,它将实际执行telinit(8)并将所有参数传递给它。
      init管理的进程称为作业,并由/etc/init目录中的文件定义。init(8)是一个基于事件的init守护进程。这意味着作业将通过系统状态发生的更改自动启动和停止,包括作业的启动和停止。这与基于依赖项的init守护进程不同,后者启动一组指定的目标作业,并通过迭代它们的依赖项来解决它们应该启动的顺序和其他作业所需的顺序。主要事件是startup (7)事件,在守护进程加载完其配置后发出。其他有用的事件是以作业更改状态发出的starting (7)、started (7)、stopping (7)和stopped (7)事件。
      init有7种运行等级
运行等级
说明
0
关机
1
单用户模式
2
多用户模式,不启动nfs
3
多用户模式,有网络功能
4
保留
5
图形界面
6
重启
      Upstart init(8)守护进程不跟踪运行级别本身,而是完全由用户空间工具实现。为表示运行级的更改而发出的事件是runlevel(7)事件。
      此命令的适用范围:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。

1、语法
      init [选项]  [参数]

2、选项列表
选项
说明
--help
显示帮助文档
--version
显示命令版本
--verbose
将有关作业状态更改和事件释放的详细消息输出到系统控制台或日志,这对于调试引导非常有用。


使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表