Linux--3

一、用户管理

  现代操作系统一般属于多用户的操作系统,也就是说,同一台机器可以为多个用户建立账户,一般这些用户都是为普通用户,这些普通用户能同时登录这台计算机,计算机对这些用户分配一定的资源。

  普通用户在所分配到的资源内进行各自的操作,相互之间不受影响。但是这些普通用户的权限是有限制的,且用户太多的话,管理就不便,从而引入root用户。

  root用户是唯一的,且拥有系统的所有权限。root用户所在的组称为root组。“组”是具有相似权限的多个用户的集合。

1、root用户相关

  Linux系统的特性就是可以满足多给用户,同时工作,因此Linux系统必须具备很好的安全性。

  在安装RHEL7时设置的root管理员密码,这个root管理员就是所有UNIX系统中的超级用户,它拥有最高的系统所有权,能够管理系统的各项功能,如添加和删除用户,启动和关闭进程,开启和禁用硬件设备等。因此“能力越大,责任就越大”,root权限必须很好的掌握,否则一个错误的命令可能会摧毁整个形态。

  (1)在Linux系统中,用户有自己的UID身份账号,且账号唯一:

  - 系统管理员(即root用户)UID为0;
  - 系统用户UID为1~999,Linux安装的服务程序都会创建独有的用户负责运行;
  - 普通用户UID从1000开始,由管理员创建的用户;

  (2)GID(用户组号码):

  为了方便管理属于同一组的用户,Linux 系统中还引入了用户组的概念。通过使用用户组号码(GID,Group IDentification),我们可以把多个用户加入到同一个组中,从而方便为组中的用户统一规划权限或指定任务。

  假设有一个公司中有多个部门,每个部门中又有很多员工。如果只想让员工访问本部门内的资源,则可以针对部门而非具体的员工来设置权限。

  例如,可以通过对技术部门设置权限,使得只有技术部门的员工可以访问公司的数据库信息等。

  查看uid和gid,如下:

                                       

 

 

2、创建普通用户

1
2
useradd wll     添加新用户wll,/home目录下新增目录wll,且/etc/passwd新增该用户信息
passwd wll      为用户wll设置密码,若只写passwd,则表示修改当前用户的密码

  /etc/passwd 存放用户信息,/etc/group  存放用户组信息,如下:

  注意:root用户可以修改其他所有人的密码,且不需要验证,普通用户只有自己基本的权限,如下:

3、切换用户  

  su命令可以切换用户身份

1
su - 用户名

  注意:su命令中间的 - 很重要,意味着完全切换到新的用户,即环境变量信息也变更为新用户的信息。

4、修改linux的命令提示符(PS1变量)

  上述方法暂时生效,退出再登录则失效,可以通过在/etc/profile文件中加入全局变量PATH的值用于永久生效 。更多参数如下:

 参数

5、用户组添加

1
groupadd 用户组名

6、删除用户

1
userdel -rf wll   

  参数解释:

    -f   强制删除用户

    -r   同时删除用户以及家目录

7、sudo命令

  sudo命令用来以其他身份来执行命令,预设的身份为root。在/etc/sudoers中设置了可执行sudo指令的用户。若其未经授权的用户企图使用sudo,则会发出警告的邮件给管理员。用户使用sudo时,必须先输入密码,之后有5分钟的有效期限,超过期限则必须重新输入密码。

语法:sudo  [选项]  [参数]
参数:
  -b:在后台执行指令;                         
  -h:显示帮助;
  -H:将HOME环境变量设为新身份的HOME环境变量;
  -k:结束密码的有效期限,也就是下次再执行sudo时便需要输入密码;
  -l:列出目前用户可执行与无法执行的指令;
  -p:改变询问密码的提示符号;                 
  -s<shell>:执行指定的shell;
  -u<用户>:以指定的用户作为新的身份。若不加上此参数,则预设以root作为新的身份;
  -v:延长密码有效期限5分钟;                 
  -V :显示版本信息;

  这个sudo命令在什么时候使用呢?

  上图中是由于使用sudo命令前必须编辑/etc/sudoers文件,并且只有root才能修改,并我们可以通过visudo命令直接编辑sudoers文件,visudo命令还可以检查语法,比通过vim  /etc/sudoers直接编辑更安全。

1
[root@localhost ~]# visudo
  ## Allow root to run any commands anywhere
  root    ALL=(ALL)       ALL
  wll     ALL=(ALL)       ALL     # 允许用户wll在任何地方,执行任何命令

  再使用sudo命令执行查看root家目录,结果如下:

8、修改主机名

1
[root@localhost ~]# hostnamectl set-hostname myhost

  Xshell需要重新连接linux方可看见修改后的主机名。

9、其他命令和快捷键

logout              退出用户登录   
exit                退出用户登录
ctrl + l            清屏
ctrl + d            xshell快捷键,退出用户登录
ctrl + shift + r    xshell快捷键,快速连接

二、文件与目录权限

  Linux权限的目的是保护账户的资料。

Linux权限主要依据三种身份来决定:
  user/owner 文件使用者,文件属于哪个用户,即属主;
  group 文件属于哪个组,即属组;
  others 既不是user,也不再group,就是other,即其他人;

1、什么是权限

  在Linux中,每个文件都有所属的用户和所属组,并且规定了文件的所属者,所属组以及其他人对文件的,可读,可写,可执行等权限。

  对于目录的权限来说,可读是读取目录文件列表,可写是表示在目录内新增,修改,删除文件。可执行表示可以进入目录。

2、查看和解读权限

  使用一条命令查看权限,如下图:

解读上图:
  - 权限,第一个字母为文件类型,后续9个字母,每3个一组,是三种身份的权限
  - 文件链接数
  - 文件拥有者-属主
  - 文件拥有组-属组
  - 文件大小
  - 最后一次被修改的时间日期
  - 文件名 
文件类型有如下几种:
  -   普通文件
  d   文件夹
  l   软链接,快捷方式
  b   块设备,存储媒体文件为主
  c   代表键盘、鼠标等设备

  文件权限:

  r    read可读,可以用cat、vi、more、less、head、tail、tac等命令查看
  w    write可写入,可以编辑或者删除这个文件
  x    executable,二进制程序,可以运行的程序

  目录权限:

  r    可以对此目录执行ls列出所有文件
  w    可以在这个目录创建文件,注意:w的前提是有x权限
  x    可以cd进入这个目录,或者查看详细信息

  注意:权限测试不要用root,root太牛逼了,请用普通用户执行,测试文件、文件夹权限操作。

3、权限与数字转化

1
2
[root@localhost ~]# ls -l /etc/passwd
-rw-r--r-- 1 root root 1365 Dec 28 18:57 /etc/passwd

  这个就代表passwd文件属主是root,属组是root,只有root用户可以读取编写这个文件,其他人只能读此文件。

4、修改权限(rwx)

  我们已知三种身份权限(属主,属组,其他人),每种身份都有rwx的三种权限,系统还提供了数字计算权限。

  我们使用chmod命令修改文件权限,有如下两种方式:

  当前权限:-rw-rw-r-- 1 root root 1365 Dec 28 18:57 /tmp/test.txt

  方式一:

1
2
3
[root@localhost ~]# chmod u-w /tmp/test.txt            属主去掉w写权限
[root@localhost ~]# chmod g-w /tmp/test.txt            属组去掉w写权限
[root@localhost ~]# chmod o+w /tmp/test.txt            其他用户添加r读权限

  最后权限变为:-r--r--rw- 1 root root 1365 Dec 28 18:57 /tmp/test.txt

  方式二(常用):

1
[root@localhost ~]# chmod 752 /tmp/test.txt

  最后权限变为:-rwxr-x-w- 1 root root 1365 Dec 28 18:57 /tmp/test.txt

5、修改属主

  使用chown(change owner)命令修改属主,如下:

1
[root@localhost ~]# chown wll /tmp/test.txt     修改属主为wll用户

6、修改属组

  使用chgrp(change group)命令修改属组,如下:

1
[root@localhost ~]# chgrp wll /tmp/test.txt     修改属组为wll组

三、常用命令

1、软链接

  软链接也叫做符号链接,类似于windows的快捷方式。常用于安装软件的快捷方式配置,如python,nginx等。

  使用ln命令配置软链接。

语法:ln  -s  目标文件绝对路径  快捷方式的绝对路径

  示例:

1
[root@localhost ~]# ln -s /opt/my.txt  /tmp/mytest.txt

  用途:

  将python3.6的解释器,添加快捷方式到 /usr/local/sbin/python,命令如下:

1
[root@localhost ~]# ln -s  /opt/python36/bin/python3.6  /usr/local/sbin/python

  因为路径/usr/local/sbin在环境变量PATH中,这样,当我们输入python的时候,就可以找到。

2、tar命令

  人们发明了各种各样的包,无论是双肩包,或者是装在口袋,都是为了让“文件”更方便携带。linux的文件打包工具最出名的是tar。

  tar 命令用来压缩和解压文件。tar本身不具有压缩功能。他是调用压缩功能实现的。

语法:tar 选项 参数
  参数:
    -c 压缩
    -x 解压
    -v 显示过程
    -f 指定文件,注意这个参数要写在最后
    -z 通过gzip指令处理备份文件?????
    -C <目录>:这个选项用在解压缩,若要在特定目录解压缩,可以使用这个选项

  示例:

1
[root@localhost ~]# tar -cvf allTmp.tar  /tmp/*     压缩/tmp目录下的所有文件到allTmp.tar包

  结果如下:

1
[root@localhost tmp]# tar -xvf  allTmp.tar          将allTmp.tar中内容解压缩到当前目录

3、netstat命令 

  netstat命令用来打印Linux中网络系统的状态信息,可让你得知整个Linux系统的网络情况。

复制代码
  语法:netstat [选项]
  选项参数:
    -t或--tcp:显示TCP传输协议的连线状况;
    -u或--udp:显示UDP传输协议的连线状况;
    -n或--numeric:直接使用ip地址,而不通过域名服务器;
    -l或--listening:显示监控中的服务器的Socket;
    -p或--programs:显示正在使用Socket的程序识别码和程序名称;
    -a或--all:显示所有连线中的Socket;
复制代码

  示例如下:

4、关于来自于同一台机器的三个ip

  0.0.0.0           127.0.0.1 加上 192.168.12.13 ,暴露应用又在对外的ip地址,又暴露在自己的回环地址
  127.0.0.1         本机回环地址,代表机器自己的ip,其他人访问不到,并且每个人都有自己的127.0.0.1
  192.168.12.13     本地对外可以提供访问的 ip地址 ,每个人都不一样

5、ps命令

  ps 命令用于查看系统中的进程状态,语法为:ps  [参数]。
  参数:
    -a     显示所有进程
    -u     用户以及其他详细信息
    -x     显示没有控制终端的进程

  示例:

1
[root@localhost ~]# ps  -ef

6、kill命令

  kill命令用来删除执行中的程序或工作。如果你kill一个进程,死活杀不死,就加上 -9,如下:

1
[root@localhost ~]# kill -9 36223          强制杀死pid为36223的进程

7、selinux

  SELinux(Security-Enhanced Linux) 是美国国家安全局(NSA)对于强制访问控制的实现,这个功能管理员又爱又恨,大多数生产环境也是关闭的做法,安全手段使用其他方法。

  大多数ssh连接不上虚拟机,都是因为防火墙和selinux阻挡了。

  1)永久关闭selinux的方式:

    - 修改配置文件之前 /etc/selinux/config 之前先备份,好习惯

1
[root@localhost ~]# cp /etc/selinux/config  /etc/selinux/config.bak

    - vim编辑/etc/selinux/config

1
2
3
4
5
6
7
[root@localhost ~]# vim /etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.            开启
#     permissive - SELinux prints warnings instead of enforcing. 临时关闭
#     disabled - No SELinux policy is loaded.                      永久关闭
SELINUX=enforcing             此行改为SELINUX=disabled

    - 使用selinux提供的getenforce命令检查是否修改成功

1
2
[root@localhost ~]# getenforce
disabled          出现disabled表示已经将selinux改为永久关闭,重启机器生效

  2)临时关闭selinux的方式(命令行修改,重启失效):

    使用setenforce命令修改selinux状态,如下:

1
[root@localhost ~]# setenforce 0            防火墙设为临时关闭

  解释:

    数字0      表示permissive

    数字1      表示enforcing

  注意:修改selinux配置文件后,想要生效需要重启系统,所以技巧就是(修改配置文件+命令行修改,达到立即生效)。

  因为生产环境的服务器是禁止随意重启的!!!!

8、iptables防火墙

  在学习阶段,关闭防火墙可以更方便的学习,在企业环境中,一般只有配置外网ip的linux服务器才会开启防火墙,但是对于高并发流量的业务服务器仍然是不能开启的,会有很大性能损失,因此需要更nb的硬件防火墙。

1
2
[root@localhost ~]# iptables -F        清空防火墙规则
[root@localhost ~]# iptables -L        查看防火墙规则,结果如下3条,表示没有规则了

1
2
3
4
systemctl status firewalld           查看防火墙状态
systemctl start firewalld            开启防火墙
systemctl stop firewalld             关闭防火墙
systemctl disable firewalld          关闭防火墙开机启动

9、Linux中文显示设置(防止中文乱码)

  Linux下常用字符集有:

    - GBK    实际企业应用较少

    - UTF-8  广泛支持,MYSQL也使用UTF-8,企业广泛使用

1
2
3
4
[root@localhost ~]# echo $LANG             查看系统当前字符集
修改配置文件/etc/locale.conf 为如下内容:
LANG="zh_CN.UTF-8"
[root@localhost ~]# source  /etc/locale.conf      读取命令,使得配置文件在系统中生效

10、df命令

  df命令用于显示磁盘分区上的可使用的磁盘空间。默认显示单位为KB。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。

1
[root@localhost ~]# df -h              使用-h选项以KB以上的单位来显示,可读性高

11、tree命令

1
[root@localhost ~]# tree               目录结构以树状图显示文件

  注意:若没有此命令可通过如下命令安装

1
[root@localhost ~]# yum install tree -y

12、DNS

  DNS(Domain Name System,域名系统),万维网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。

  通过域名,最终得到该域名对应的IP地址的过程叫做域名解析(或主机名解析)。

  常见的互联网dns服务器:
    8.8.8.8                 谷歌的dns服务器
    114.114.114.114         114dns服务器地址
    223.5.5.5 和 223.6.6.6   阿里巴巴的dns服务器地址
    119.29.29.29            腾讯的dns服务器地址

  Linux的dns配置文件是/etc/resolv.conf,查看如下图:

  可以编辑/etc/resolv.conf文件,增加一个dns服务器,如下:

  本地强制dns解析文件/etc/hosts,查看结果如下:

 

  注意:dns的解析顺序是

    /etc/hosts

    /etc/resolv.conf

13、nslookup命令

  nslookup命令是常用域名查询工具,就是查DNS信息用的命令。

  nslookup有两种工作模式,即“交互模式”和“非交互模式”。在“交互模式”下,用户可以向域名服务器查询各类主机、域名的信息,或者输出域名中的主机列表。而在“非交互模式”下,用户可以针对一个主机或域名仅仅获取特定的名称或所需信息。

  进入交互模式,直接输入nslookup命令,不加任何参数,则直接进入交互模式,此时nslookup会连接到默认的域名服务器(即/etc/resolv.conf的第一个dns地址)。或者输入nslookup -nameserver/ip。 进入非交互模式,输入nslookup 域名就可以了,如下:

1
[root@localhost ~]# nslookup www.baidu.com

14、crond服务

  crond服务相关的软件包:

1
2
3
4
[root@MiWiFi-R3-srv ~]# rpm -qa |grep cron
cronie-anacron-1.4.11-14.el7.x86_64
crontabs-1.11-6.20121102git.el7.noarch
cronie-1.4.11-14.el7.x86_64

  这些包在最小化安装系统时就已经安装了,并且会开机自启动crond服务,并为我们提供好编写计划任务的crontab命令。

  crontab命令被用来提交和管理用户的需要周期性执行的任务,与windows下的计划任务类似。

  什么是计划任务?

  后台运行,到了预定的时间就会自动执行的任务,前提是:事先手动将计划任务设定好。这就用到了crond服务。

语法:crontab  (选项)  (参数)
  参数:
    -e:编辑该用户的计时器设置;
    -l:列出该用户的计时器设置;
    -r:删除该用户的计时器设置;
    -u<用户名称>:指定要设定计时器的用户名称;

  示例:

1
2
[root@localhost ~]# crontab -l              查看任务
[root@localhost ~]# crontab -e              编辑任务
crontab配置文件/etc/crontab,是系统任务调度的配置文件,内容如下:
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root

# For details see man 4 crontabs

# Example of job definition:
# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |
# *  *  *  *  * user-name  command to be executed

  crontab任务配置基本格式:

*           *          *         *         *                  command
  分钟(0-59) 小时(0-23) 日期(1-31) 月份(1-12) 星期(0-6,0代表星期天)    命令

  第1列表示分钟1~59 每分钟用*或者 */1表示
  第2列表示小时1~23(0表示0点)
  第3列表示日期1~31
  第4列表示月份1~12
  第5列标识号星期0~6(0表示星期天)
  第6列要运行的命令

  星号(*):代表所有可能的值,例如month字段如果是星号,则表示在满足其它字段的制约条件后每月都执行该命令操作,例如,30 08 * * *  每天8.30去上班  
  逗号(,):可以用逗号隔开的值指定一个列表范围,例如“1,2,5,7,8,9”
  中杠(-):可以用整数之间的中杠表示一个整数范围,例如“2-6”表示“2,3,4,5,6”
  正斜线(/):可以用正斜线指定时间的间隔频率,例如“0-23/2”表示每两小时执行一次。同时正斜线可以和星号一起使用,例如*/10,如果用在minute字段,表示每十分钟执行一次
  注意:所有命令一定要用绝对路径来写!

  

  示例:

每分钟执行一次命令
* * * * * 命令
每小时的3,15分组执行命令
3,15 * * * * 命令
在上午8-11点的第3和第15分钟执行
3,15 8-11 * * * 命令
每晚21:30执行命令
21 * * * 命令
每周六、日的1:30执行命令
1 * * 6,0 命令
每周一到周五的凌晨1点,清空/tmp目录的所有文件
1 * * 1-5 /usr/bin/rm -rf /tmp/*
每晚的21:30重启nginx
21 * * * /opt/nginx/sbin/nginx -s reload
每月的1,10,22日的4:45重启nginx
4 1,1,10,22 * * /opt/nginx/sbin/nginx -s reload
每个星期一的上午8点到11点的第3和15分钟执行命令
3,15 8-11 * * 1 command
每隔三分钟执行下时间同步
*/3  *  *  *  *  /usr/sbin/ntpdate  ntp1.aliyun.com

四、Linux软件包管理

1、linux软件包介绍

  我们都知道windows系统的软件包有如下几种:

    .exe可安装格式

    .msi 可执行安装文件

    .zip  压缩格式

    .rar 压缩包格式

    ......

  软件包顾名思义就是将应用程序、配置文件和数据打包的产物,所有的linux发行版都采用了某种形式的软件包系统,这使得linux软件管理和在windows下一样方便,suse、red hat、fedora等发行版都是用rpm包,Debian和Ubuntu则使用.deb格式的软件包。

 

  程序(或软件)组成部分:
    二进制程序   可执行命令
    库           .so文件
    配置文件     .conf
    帮助文件     readme    /usr/share/man

  Linux软件格式和安装有如下三种方式:

  1)源码包格式

    - 下载源码包,如安装python3就要下载python3的源码包

    - 解压缩源码包,切换目录

    - 编译且安装

    - 配置环境变量

    - 使用python3

  2)rpm二进制包格式(这种安装方式,需要手动解决依赖关系,有可能装一个mysql,装个俩小时)

    - 下载软件的rpm格式包

    - rpm -ivh lrzsz.rpm

    - 使用lrzsz工具

    补充:

    lrzsz这是软件包的名字

    提供了命令是

    rz 接收文件

    sz  发送文件

    注意:如果直接安装mysql5.6.rpm,依赖了很多其他的软件包,我就得一个一个解决依赖,所以rpm安装方式,需要手动解决依赖关系,很麻烦,不建议使用。

  3)yum安装方式

    yum工具,自动的搜索下载rpm包,且安装,且解决依赖关系,自动处理下载其他的依赖rpm包

2、yum命令

  yum命令是在Fedora和RedHat以及SUSE中基于rpm的软件包管理器,它可以使系统管理人员交互和自动化地更细与管理RPM软件包,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。

  尽管 RPM 能够帮助用户查询软件相关的依赖关系,但问题还是要运维人员自己来解决, 而有些大型软件可能与数十个程序都有依赖关系,在这种情况下安装软件会是非常痛苦的。Yum 软件仓库便是为了进一步降低软件安装难度和复杂度而设计的技术。Yum 软件仓库可以根据用户的要求分析出所需软件包及其相关的依赖关系,然后自动从服务器下载软件包并安装到系统。

  Yum 软件仓库中的RPM 软件包可以是由红帽官方发布的,也可以是第三方发布的,当然也可以是自己编写的。

  yum提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。 

语法:yum (选项) (参数)
  参数:
    -h:显示帮助信息;
    -y:对所有的提问都回答“yes”;
    -c:指定配置文件;
    -q:安静模式;
    -v:详细模式;
    -d:设置调试等级(0-10);
    -e:设置错误等级(0-10);
    -R:设置yum处理一个命令的最大等待时间;
    -C:完全从缓存中运行,而不去下载或者更新任何头文件;

3、yum源

  Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。

  说到yum源就必须说到linux系统中特有的依赖关系问题,yum就是为了解决依赖关系而存在的。yum源就相当是一个目录项,当我们使用yum机制安装软件时,若需要安装依赖软件,则yum机制就会根据在yum源中定义好的路径查找依赖软件,并将依赖软件安装好。

  YUM是“Yellow dog Updater, Modified”的缩写,是一个软件包管理器,YUM从指定的地方(相关网站的rpm包地址或本地的rpm路径)自动下载RPM包并且安装,能够很好的解决依赖关系问题。

  yum源的仓库路径是/etc/yum.repos.d/,在这个目录底下,只有以 .repo结尾的文件,才会被识别为yum仓库。

1
2
[root@localhost ~]# cd /etc/yum.repos.d/                进入yum源目录
[root@localhost yum.repos.d]# ls -l                      查看yum源文件

  

1
[root@localhost yum.repos.d]# cat CentOS-Base.repo     查看CentOS-Base.repo中的镜像

  

4、配置国内的yum源

  我们自己没有yum仓库,我们就去拿阿里巴巴的yum仓库,阿里巴巴的镜像站网址如下:

  https://opsx.alibaba.com/mirror

  接下来我们在/etc/yum.repos.d/目录底下,定制我们自己的repo仓库文件。

  1)备份原来的仓库文件

  2)下载阿里巴巴的yum仓库文件

1
wget -/etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

    上面命令表示wget下载阿里的仓库文件,放到/etc/yum.repos.d/目录,且改名为CentOS-Base.repo

  3)清除yum缓存

1
[root@localhost yum.repos.d]# yum clean all

  4)生成新的阿里云的yum软件缓存

1
[root@localhost yum.repos.d]# yum makecache

    注意:此时你使用yum install xxx就可以安装xxx软件了,但是,你发现有些软件是不能安装的,比如yum install nginx,如下:

    这是因为阿里并没有把所有软件都安装在一个仓库中,上述过程安装的仓库只有写基础软件,所以我们需要再配置epel额外的仓库源,这个仓库里就存放了很多第三方软件,例如redis、mysql、nginx。

  5)配置epel仓库

1
wget -/etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

  6)最好再生成yum缓存

1
[root@localhost yum.repos.d]# yum makecache

  此时,便可以随心所欲的使用yum工具了。

5、yum使用示例

1
2
3
yum install nginx  -y                        yum安装nginx web服务器软件
nginx                                       启动nginx服务器          
vim /usr/share/nginx/html/index.html        根据需要修改index首页文件

  打开浏览器,输入服务器的ip地址即可看到首页内容。

6、系统服务管理命令

  只有通过yum安装的软件,默认才能使用这个命令管理。

语法:systemctl  start/stop/restart  服务名

  示例:

1
2
3
systemctl  start/stop/restart    mariadb
systemctl  start/stop/restart    redis
systemctl  start/stop/restart    nginx

  注意:但是在centos7系统使用systemctl命令来管理系统服务,而centos6中使用service命令。

  设置开机启动相关:

 

 

 

 

 

 

 

 

 

 

  

posted @ 2018-12-27 21:13  卍风衍  阅读(221)  评论(0编辑  收藏  举报