(第四篇)Linux命令初识之经常使用系统管理命令

1.hostname

【命令做用】用于显示和设置系统的主机名称(可是不会永久保存,重启后会恢复)linux

【命令语法】hostname(选项)(参数)shell

【经常使用选项】数据库

-a:显示主机别名(alias name)windows

-d:显示DNS域名centos

-i:显示主机的ip地址安全

【参数说明】须要指定查看,设置的主机名bash

【命令示例】架构

显示主机的ip地址工具

# hostname -i学习

2.uname

【命令做用】用于显示当前系统相关信息(内核版本号、硬件架构、主机名称和操做系统类型等)

【命令语法】uname(选项)

【经常使用选项】

-a:详细显示所有的信息

【参数说明】无

【命令示例】

显示当前系统详细相关信息(内核版本号、硬件架构、主机名称和操做系统类型等)

uname -a

3.date

【命令做用】显示或设置系统时间与日期

【命令语法】date(选项)(参数)

【经常使用选项】

【参数说明】

【命令示例】

 

4.clear

【命令做用】清除当前屏幕终端上的任何信息

【命令语法】clear

【经常使用选项】无

【参数说明】无

【命令示例】

清除当前屏幕终端上的任何信息

# clear

 

 

5.users

【命令做用】显示当前登陆系统的全部用户的用户列表

【命令语法】users(选项)

【经常使用选项】无

【参数说明】无

【命令示例】

显示当前登陆系统的全部用户

# users

 

6.groups

【命令做用】输出指定用户所在的组的组成员

【命令语法】groups(选项)(参数)

【经常使用选项】无

【参数说明】须要指定要打印所属工做组的用户名

【命令示例】

显示ruan用户所属的组

# groups ruan

 

7.sudo

【命令做用】以其余身份来执行命令,默认的身份为root

【命令语法】sudo(选项)(参数)

【经常使用选项】

-l:列出目前用户可执行与没法执行的指令;

-u<用户>:以指定的用户做为新的身份

【参数说明】须要运行的指令和对应的参数

【命令示例】

# sudo -u userb ls -l  --指定用户执行命令

# sudo -l  --列出目前的权限

 

8.exit

【命令做用】退出目前的shell,并返回给定值

【命令语法】exit(参数)

【经常使用选项】无

【参数说明】返回值:指定shell返回值

【命令示例】

# exit  --退出当前shell

 

9.reboot

【命令做用】从新启动正在运行的Linux操做系统

【命令语法】reboot(选项)

【经常使用选项】

-f 强制从新开机

-w:仅作测试,并不真正将系统从新开机,只会把重开机的数据写入/var/log目录下的wtmp记录文件

 

【参数说明】无

【命令示例】

从新开机

# reboot

 

强制开机

# reboot -f

 

10.poweroff

【命令做用】关闭计算机操做系统而且切断系统电源

【命令语法】poweroff(选项)

【经常使用选项】-f  --强制关闭操做系统

【参数说明】

【命令示例】

强制关闭计算机

# poweroff -f

 

11.halt

【命令做用】关闭正在运行的Linux操做系统

【命令语法】halt(选项)

【经常使用选项】无

【参数说明】无

【命令示例】

关闭正在运行的Linux操做系统

# halt

 

12.shutdownroot权限)

【命令做用】系统关机(必须在root下)

【命令语法】shutdown(选项)(参数)

【经常使用选项】-h 将系统关闭

【参数说明】

设置多久时间后执行shutdown指令

要传送给全部登入用户的信息

【命令示例】

如今关闭计算机

shutdown -h now

 

13.history

【命令做用】显示指定数目的指令命令

【命令语法】history(选项)(参数)

【经常使用选项】-c   --清空当前历史命令

【参数说明】显示最近的n条历史命令

【命令示例】

显示最近使用的20条历史命令信息

# history 20

 

启动模式

centos7的修改方法变了,记录以下,仅供后期参考:

一、查看/etc/inittab文件 

二、由文件说明能够看出,centos只有两种启动模式:

multi-user.target: analogous to runlevel 3  #命令行模式

graphical.target: analogous to runlevel 5   #图形模式

三、经过systemctl get-default 命令获取当前模式:

四、经过systemctl set-default multi-user.target 命令,修改启动模式:

 

Linux系统用户帐号的管理(windows多用户、Android学生模式)

用户帐号的管理工做主要涉及到用户帐号的添加、修改和删除。

添加用户帐号就是在系统中建立一个新帐号,而后为新帐号分配用户号、用户组、主目录和登陆Shell等资源。刚添加的帐号是被锁定的,没法使用。

CentOS 7 和其余版本的Linux同样,都具备相应用户的配置文件及目录

 

/etc/passwd         //用户帐户信息,能够看出用户名称

/etc/shadow          //用户帐户加密后信息,包括但不限于/etc/passwd中的信息

/etc/group           //组帐户信息,能够看出组名称

/etc/gshadow       //组帐户安全信息,包括但不限于/etc/group中的信息

/etc/default/useradd //帐户建立时默认值

/etc/skel/           //包含默认文件的目录,具体做用尚不清楚

/etc/login.defs      //安全性的默认配置,与上面/etc/default/useradd有区别

 

咱们看一下比较重要的配置文件/etc/default/useradd,内容以下:

 

# useradd defaults file

GROUP=100                        //起始GID值

HOME=/home                       //家目录位置

INACTIVE=-1             //有效时间,负值为永久,正数表明天数

EXPIRE=

SHELL=/bin/bash                   //shell路径

SKEL=/etc/skel                    //默认配置文件路径

CREATE_MAIL_SPOOL=yes             //是否建立邮件池,具体做用待之后学习

 

一、添加新的用户帐号使用useradd命令,其语法以下:

useradd 选项 用户名

参数说明:

选项:

 -b, --base-dir BASE_DIR       新帐户的主目录的基目录

  -c, --comment COMMENT         新帐户的 GECOS 字段

  -d, --home-dir HOME_DIR       新帐户的主目录

  -D, --defaults                显示或更改默认的 useradd 配置

 -e, --expiredate EXPIRE_DATE  新帐户的过时日期

  -f, --inactive INACTIVE       新帐户的密码不活动期

  -g, --gid GROUP               新帐户主组的名称或 ID

  -G, --groups GROUPS   新帐户的附加组列表

  -h, --help                    显示此帮助信息并推出

  -k, --skel SKEL_DIR   使用此目录做为骨架目录

  -K, --key KEY=VALUE           不使用 /etc/login.defs 中的默认值

  -l, --no-log-init     不要将此用户添加到最近登陆和登陆失败数据库

  -m, --create-home     建立用户的主目录

  -M, --no-create-home          不建立用户的主目录

  -N, --no-user-group   不建立同名的组

  -o, --non-unique              容许使用重复的 UID 建立用户

  -p, --password PASSWORD               加密后的新帐户密码

  -r, --system                  建立一个系统帐户

  -R, --root CHROOT_DIR         chroot 到的目录

  -s, --shell SHELL             新帐户的登陆 shell

  -u, --uid UID                 新帐户的用户 ID

  -U, --user-group              建立与用户同名的组

  -Z, --selinux-user SEUSER             为 SELinux 用户映射使用指定 SEUSER

 

 

 

指定新帐号的登陆名。

 

最简单的建立用户

 

执行以下命令:

useradd test

passwd test                #添加密码

这样一个用户名为test的用户已经建立好了。咱们看一下属性。

执行命令:id test   //查看用户信息

咱们发现test的uid=1000,gid=1000,位于test用户组,说明缺参数的新建用户,会默认新建一个与用户名同名的用户组并加入其中,咱们也注意到UID、GID的值与默认的配置文件中保持一致,可见配置文件是生效的,一样也能够再新建一个用户,看一下UID、GID的值,会看到是1001.能够尝试一下。咱们能够切到/home目录下,会看到用户目录,与配置文件设定一致。

 

例题:新建一个UID=501,GID=600,30天有效期,家目录为/home/test5的用户test4.

命令 :

groupadd -g 600  test3                //建立GID=600的用户组test3            

useradd -u 501 -g 600 -f 30 -m   -d /home/test5 test4                 

当咱们再次打开用户文件/etc/passwd或者id test4会看到咱们本身的配置。

 

实例1

# useradd –d /usr/sam -m sam

此命令建立了一个用户sam,其中-d和-m选项用来为登陆名sam产生一个主目录/usr/sam(/usr为默认的用户主目录所在的父目录)。

 

实例2

# useradd -s /bin/sh -g group –G adm,root gem

此命令新建了一个用户gem,该用户的登陆Shell是 /bin/sh,它属于group用户组,同时又属于adm和root用户组,其中group用户组是其主组。

 

这里可能新建组:#groupadd group及groupadd adm

 

增长用户帐号就是在/etc/passwd文件中为新用户增长一条记录,同时更新其余系统文件如/etc/shadow, /etc/group等。

 

Linux提供了集成的系统管理工具userconf,它能够用来对用户帐号进行统一管理。

 

二、删除账号

若是一个用户的帐号再也不使用,能够从系统中删除。删除用户帐号就是要将/etc/passwd等系统文件中的该用户记录删除,必要时还删除用户的主目录。

 

当咱们建立用户/组有错误时,可能会删除用户/组,而后再从新建立。咱们使用userdel命令来删除用户。

 

执行命令:

 

[root@localhost home]# userdel test

[root@localhost home]# useradd test

useradd:警告:此主目录已经存在。

不从 skel 目录里向其中复制任何文件。

正在建立信箱文件: 文件已存在

出现这个问题是由于咱们删除用户时,系统为了安全起见并无删除相关的文件以及目录。

咱们查看一下userdel参数:

-f, --force                   force some actions that would fail otherwise

                                e.g. removal of user still logged in

                                or files, even if not owned by the user

  -h, --help                    显示此帮助信息并推出

  -r, --remove                  删除主目录和邮件池

  -R, --root CHROOT_DIR         chroot 到的目录

  -Z, --selinux-user            为用户删除全部的 SELinux 用户映射

删除一个已有的用户帐号使用userdel命令,其格式以下:

 

3、修改账号

修改用户帐号就是根据实际状况更改用户的有关属性,如用户号、主目录、用户组、登陆Shell等。

修改已有用户的信息使用usermod命令,其格式以下:

usermod 选项 用户名

经常使用的选项包括-c, -d, -m, -g, -G, -s, -u以及-o等,这些选项的意义与useradd命令中的选项同样,能够为用户指定新的资源值。

另外,有些系统可使用选项:-l 新用户名

 

禁止登陆:

usermod -s /sbin/nologin test //-s 指定shell

 

修改用户名:

 usermod -l test88 test //-l 新的用户名

这个选项指定一个新的帐号,即将原来的用户名改成新的用户名。

 

例如:

# usermod -s /bin/ksh -d /home/z –g developer sam

此命令将用户sam的登陆Shell修改成ksh,主目录改成/home/z,用户组改成developer。

 

四、用户口令的管理

用户管理的一项重要内容是用户口令的管理。用户帐号刚建立时没有口令,可是被系统锁定,没法使用,必须为其指定口令后才可使用,即便是指定空口令。

 

指定和修改用户口令的Shell命令是passwd。超级用户能够为本身和其余用户指定口令,普通用户只能用它修改本身的口令。命令的格式为:

 

passwd 选项 用户名

可以使用的选项:

 

-l 锁定口令,即禁用帐号。

-u 口令解锁。

-d 使帐号无口令。

-f 强迫用户下次登陆时修改口令。

若是默认用户名,则修改当前用户的口令。

 

例如,假设当前用户是sam,则下面的命令修改该用户本身的口令:

$ passwd

Old password:******

New password:*******

Re-enter new password:*******

若是是超级用户,能够用下列形式指定任何用户的口令:

 

# passwd sam

New password:*******

Re-enter new password:*******

普通用户修改本身的口令时,passwd命令会先询问原口令,验证后再要求用户输入两遍新口令,若是两次输入的口令一致,则将这个口令指定给用户;而超级用户为用户指定口令时,就不须要知道原口令。

 

为了系统安全起见,用户应该选择比较复杂的口令,例如最好使用8位长的口令,口令中包含有大写、小写字母和数字,而且应该与姓名、生日等不相同。

为用户指定空口令时,执行下列形式的命令:

 

# passwd -d sam

此命令将用户sam的口令删除,这样用户sam下一次登陆时,系统就再也不询问口令。

 

passwd命令还能够用-l(lock)选项锁定某一用户,使其不能登陆,例如:

# passwd -l sam

 

Linux系统用户组的管理

每一个用户都有一个用户组,系统能够对一个用户组中的全部用户进行集中管理。不一样Linux 系统对用户组的规定有所不一样,如Linux下的用户属于与它同名的用户组,这个用户组在建立用户时同时建立。

用户组的管理涉及用户组的添加、删除和修改。组的增长、删除和修改实际上就是对/etc/group文件的更新。

 

一、增长一个新的用户组使用groupadd命令。其格式以下:

groupadd 选项 用户组

可使用的选项有:

 

-g GID 指定新用户组的组标识号(GID)。

-o 通常与-g选项同时使用,表示新用户组的GID能够与系统已有用户组的GID相同。

实例1:

# groupadd group1

此命令向系统中增长了一个新组group1,新组的组标识号是在当前已有的最大组标识号的基础上加1。

 

实例2:

# groupadd -g 101 group2

此命令向系统中增长了一个新组group2,同时指定新组的组标识号是101。

 

二、若是要删除一个已有的用户组,使用groupdel命令,其格式以下:

groupdel 用户组

例如:

# groupdel group1

此命令从系统中删除组group1。

 

三、修改用户组的属性使用groupmod命令。其语法以下:

groupmod 选项 用户组

经常使用的选项有:

 

-g GID 为用户组指定新的组标识号。

-o 与-g选项同时使用,用户组的新GID能够与系统已有用户组的GID相同。

-n新用户组 将用户组的名字改成新名字

实例1:

# groupmod -g 102 group2

此命令将组group2的组标识号修改成102。

 

实例2:

# groupmod –g 10000 -n group3 group2

此命令将组group2的标识号改成10000,组名修改成group3。

 

 

4.身份切换 

su命令让用户切换用户(switch user)ID

 

[yxkong@localhost ~]$ su –help

 

su命令经过经常使用字符串调用,例如:su-,指明用户应该做为新用户有效登陆。

例如: 

su 用户名 只是临时使用对应的用户的Shell,用完后直接 su 当前登陆名能够退回来

[yxkong@localhost ~]$ su root  

密码:

[root@localhost yxkong]# #新Shell称为用户root的Shell,在这个shell上启动的任何进程都属于root,这个Shell称为非登陆Shell。root并无彻底登陆,

 

su – 用户名 该用户做为新用户彻底登陆,和原来的用户没有任何关系了

 

五、若是一个用户同时属于多个用户组,那么用户能够在用户组之间切换,以便具备其余用户组的权限。

用户能够在登陆后,使用命令newgrp切换到其余用户组,这个命令的参数就是目的用户组。例如:

 

$ newgrp root

这条命令将当前用户切换到root用户组,前提条件是root用户组确实是该用户的主组或附加组。相似于用户帐号的管理,用户组的管理也能够经过集成的系统管理工具来完成。

6.newgrp命令,也称做sg,让用户切换主要组(switch primary group)ID

用法:

[yxkong@localhost ~]$ sg --help

用法:sg 组 [[-c] 命令]

[yxkong@localhost ~]$ id

uid=1000(yxkong) gid=1000(yxkong) 组=1000(yxkong),0(root),10(wheel) 环境=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023

[yxkong@localhost ~]$ sg root

相关文章
相关标签/搜索