Linux自有服务(1)

先解释一下,什么是自有服务?

自有服务:即不需要用户独立去安装的软件的服务,而是当系统安装好之后就可以直接使用的服务(内置服务)。

一, 运行模式

    也称为:运行级别

在linux中存在一个进程:init(initialize,初始化),进程id是1。

查看进程:#ps -ef|grep init

该进程存在一个对应的配置文件:inittab(系统运行级别配置文件,位置/etc/inittab

文件的主要内容:

根据上述的描述,可以得知:Centos6.5中存在7种运行级别/模式。

  1. 表示关机级别(不要将默认的运行级别设置为这个值);
  2. 单用户模式;
  3. 多用户模式,不带NFS的时候(Network File System),没有网等同于3;
  4. 多用户模式,完全的多用户模式(不带桌面的,纯命令模式);
  5. 没有被使用的模式(被保留模式);
  6. X11,完整的图形化界面模式
  7. 表示重启级别(不要将默认的运行级别设置为这个值)

与该级别相关的几个命令:

          #init 0 表示关机

          #init 3 表示切换到纯命令模式

          #init5 切换到图形界面

          init 6 重启电脑

---注意:initial指令,需要超级管理员权限执行。

这些命令其实都是调用init进程,将数字(运行级别),传递给进程,进程去读配置文件,执行对应的操作。

具体语法如下:

①切换到纯命令行模式下:

#init 3  ---临时的,重启后失效

PS:输入密码时,不显示值,只管输入就行

②回到图形桌面模式

#init 5

 

如何设置模式为永久?

答:将/etc/inittab文件中的initdefault值设置成想要的值(具体见上面讲解,比如:3),然后重启操作系统。

** 特别添加 **:

centos7之前要设置开机默认不启动图形界面是通过vi /etc/inittab来将id:3:initdefault:

但是,在centos7之后就不是这样子的。

例如我的centos版本是CentOS-7-x86_64-DVD-1804,现在我vi /etc/inittab,结果:

multi-user.target相当于之前的更改运行级别为3,意思就是命令行。

graphical.target相当于之前的更改运行级别为5,意思就是图形界面(graphical中文意思是图形)。

此时,方法一:

步骤1:查看当前的开机默认运行方式:systemctl get-default

步骤2:设置开机纯命令界面:systemctl set-default multi-user.target

            设置开机启动图形界面:systemctl set-default graphical.target

方法二(我个人采用第二种方法,直接复制粘贴实现)

centos7的运行级别都定义在 /lib/systemd/system下. 不再是之前的/etc/inittab文件.

设置命令行级别方法:(默认进入命令行界面模式)

ln -sf /lib/systemd/system/runlevel3.target /etc/systemd/system/default.target

ln -sf /lib/systemd/system/multi-user.target /etc/systemd/system/default.target

systemctl set-default multi-user.target

 

设置窗口级别方法:(默认进入图形界面模式)

ln -sf /lib/systemd/system/runlevel5.target /etc/systemd/system/default.target

ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target

systemctl set-default graphical.target

 

 

 

二, 用户与用户组管理 (重点)

Linux系统一个多用户多任务的操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。

用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问,另一方面也可以帮助用户组织文件,并为用户提高安全性保护。

美国账户都有一个唯一的用户名和各自的密码。

用户在登录时键入正确的用户名和密码后,就能够进入系统和自己的主目录。

 

要想实现用户账号的管理,要完成的工作主要有如下几个方面:

用户账号的添加,删除,修改以及用户密码的管理。

用户组的管理。

 

注意三个文件:

         /etc/passwd 表示存储用户的关键信息

         /etc/group    表示存储用户组的关键信息

         /etc/shadow 表示存储用户的密码信息

 

  1. 用户管理

①添加用户

语法:#useradd 选项 用户名

常用选项:

        -g: 表示指定用户的用户主组,选项的值可以是用户组的id,也可以是组名;

        -G: 表示指定用户的用户附加组,选项的值可以是用户组的id,也可以是组名;

        -u: uid,用户的id(用户的标识符,比如qq号。)系统默认会从500之后按顺序分配uid,也可以通过该选项自定义(腾讯QQ的自选靓号情况)

        -c: 表示添加注释,comment。

 

案例:创建用户zhangsan,不带任何选项

再验证是否成功,

方法一:cat /etc/passwd,看最后一行是否有自己创建的用户信息;

方法二:验证是否存在家目录;

 

扩展:认识pwsswd文件

选项含义:

用户名:密码:用户id:用户组id:注释:家目录:解释器shell

用户名:创建新用户名称;

密码:此密码位置一般情况都是“x”,表示密码的占位;

用户id:用户的识别符;

用户组id:该用户所属的主组id;

注释:解释该用户是做什么用的;

家目录:不想解释~;

解释器shell:等待用户进入系统之后,用户输入指令之后,该解释器会手机用户输入的指令,传递给内核处理;

 

PS:

在不添加选项的时候,在执行useradd之后,会执行一系统的操作:

  1. 创建同名的家目录;
  2. 创建同名的用户组。

案例二:添加选项,创建用户lisi,让lisi属于1001的主组,附加组是1000,自选靓号666.

PS:查看用户的主组,可以查看passwd文件,查看附加组可以查看group文件。如下:

②修改用户

语法:#usermod 选项 用户名

常用选项:

-g: 表示指定用户的用户主组,选项的值可以是用户组的id,也可以是组名;

-G: 表示指定用户的用户附加组,选项的值可以是用户组的id,也可以是组名;

-u: uid,用户的id(用户的标识符,比如qq号。)系统默认会从500之后按顺序分配uid,也可以通过该选项自定义(腾讯QQ的自选靓号情况)

-l: 表示修改用户名

 

案例1:修改zhangsan用户的主组1001变成1000,附加组改为1000

#usermod -g 1000 -G 1000 zhangsan

 

案例2:修改zhangsan的用户用户名 ,改外wangerma

# usermod -l 新用户名,旧的用户名

# usermod -l wangerma zhangsan

注意:

新用户名在前面!

一定要注意用户名和用户组名的区别!前面的是组名,后面的是用户名,类似于QQ创建一个同事组,里面是同事名。

 

③设置密码

Linux不允许没有密码的用户登陆,因此前面创建的用户目前都是锁定状态,需要设置密码之后,才能登陆计算机。

 

语法:#passwd 用户名

案例:设置wangerma用户的密码

设置密码的时候,不会显示输入的值,只管输入!(不建议输入弱强度的密码)

 

验证:/etc/shadow文件下,密码是加密的,不用怕,此时lisi是没有密码的,也可以尝试设置lisi密码,#passwd lisi

设置好密码后,登陆账号,比如wangerma,

语法:#su 【用户名】 (单词速记:switch user)

如果不写用户名,默认切换到root超级管理员用户----此而且时要输入密码!

 

切换用户注意事项:

  1. 从root切换到普通用户不需要密码,反之需要root密码;
  2. 切换用户之后,前后的工作路径不变!;
  3. 普通用户无权限访问root用户家目录,反之可以!

 

④删除用户

语法:#userdel 选项 用户名

常用选项:

-r: 表示删除用户的同时,还删除其家目录

 

案例:删除wangerma用户

注意:此时已经登陆的wangerma用户,不允许删除,但是没有登陆的lisi用户可以删除。

 

如何删除已经登陆的用户?

解决办法:

简单粗暴,在家目录下面,kill 对应用户的全部进程--注意要回到家目录

ps -ef|grep wangerma

kill 第二个数字

 

友情提示:

所有跟用户操作的命令(除passwd外),只有超级管理员root有用户管理权限,其他用户无权限--除非其他用户改自己密码。

 

2. 用户组管理

每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理。不同linux系统对用户组的规定有所不同,如Linux下的用户属于与它同名的用户组,这个用户组在创建用户时同时创建

用户组的管理设计用户组的添加,删除,修改。其实就是对/etc/group文件的更新

选项含义:

用户组的名字:密码:用户组ID:组内用户名

密码: x只是表示占位符,虽然用户组可以设置密码,但是大部分情况不设置;

组内用户名:表示附加组是该组的用户名称。

 

①用户组添加

语法(类似用户):#groupadd 选项 用户组名

常用选项:

-g: 类似用户添加里的“-u”,表示自己设置一个自定义的用户组ID数字,如果不指定,默认从500后递增;

 

案例:使用groupadd指令创建一个新的用户组,命名为Administrators

②用户组的编辑

语法:#groupmod 选项 用户组名

常用选项:

-g: 类似用户添加里的“-u”,表示自己设置一个自定义的用户组ID数字;

-n: 类似于用户修改里的-l,表示设置新的用户组名称

 

案例:修改Administors用户组,将组id从502改成520,将从名称改为admins

 

③用户组的删除

语法:#groupdel  用户组名

注意:当如果需要删除一个主组时,不允许直接删,需要先从组内移除所有用户

如何从组内移除所有用户?

usermod  -g 0 linux123

  1. 这是修改用户,所以用usermod;
  2. 移到哪里?暂时可以移到root(0);
  3. 最后加上用户名

最后,删除这个难缠的“主组”!

 

三, 网络设置

首先要知道网卡配置文件的位置:/etc/sysconfig/network-scripts

在目录中网卡的配置文件命名格式:ifcfg-网卡名称

必须记住:

  ONBOOT: 是否开机启动

  BOOTPROTO: ip地址分配方式,DHCP表示动态主机分配协议

  HWADDR: 硬件地址,MAC地址

 

如果后续需要重启网卡,How?

方法一:

service network restart

方法二(通用方法):/etc/init.d,这个目录中放在很多对服务的快捷方式。

此处重启网卡命令:

#/etc/init.d/network restart

 

扩展:如果修改网卡的配置文件,但是其目录层次很深,此时可以在浅的目录中创建一个快捷方式(软链接),方便以后去查找

# ln -s 原始路径  想要设置的路径

 

#ln   -s    /etc/sysconfig/network-scripts/ifcfg-eth0   ~/ifcfg-eth0

通过ls -l 可以列出如下的效果:

其中,文件类型位置的首字母“l”表示其类型为link(连接类型),后面的“->”指向的是原始文件路径。

 

扩展2:如何只重启单个网卡?

步骤1:停止某个网卡:#ifdown 网卡名

步骤2:开启某个网卡:#ifup 网卡名

案例:需要重启(停止-启动)eth0网卡,则可以输入:

#ifdown eth0

#ifup eth0

---通过脚本,可以把这两个命令写在一起。

 

提示:在实际工作的时候,不要随意禁网卡,和之前说的类似:不要随意shutdown

————————————————————————————————————————————————————

今天注意是用户和用户组的相关操作,增加,修改,删除,对应的指令分别是*add,*mod,*del.

再具体到每个指令有2-3个选项比如:-g,-G,-u,-l,-n等,就这么多而已。自己列一个树状图就很清晰了。

发布了78 篇原创文章 · 获赞 19 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/kxindouhao5491/article/details/104295507