day15-软件安装、搭建

1、软件安装

(1)yum安装(多)

yum install -y 包名 中间一路yes
yum remove -y 包名
可以只下载安装包,不安装
yum install -y --downloadonly --downloaddir=./ wget
下载就是.rpm的包。

(2)rpm安装

不论你用的是yum还是用的rpm安装,其实安装的都是rpm包。在linux里面,安装软件的时候,不仅仅是安装这么一个软件,与之对应的要按照很多的依赖软件
a ==》 b===》c==》d
如果使用rpm安装,你要知道软件依赖关系才能安装,但是使用yum的话,不用知道依赖关系,yum自动为你解决
比如 yum install -y --downloadonly --downloaddir=./ vim
包含vim的包以及vim依赖的包,全部下载下来之后,估计10个包,这10个都是rpm,请问先装哪个后装哪个。
yum install -y vim 依赖关系自动解决
-ivh :安装 rpm -ivh 包.rpm
-e :卸载 rpm -e wget
-ql : 列出包安装路径 rpm -ql wget
-qi : 列出指定包的详细信息 rpm -qi wget

(3)编译安装(多)

相对来说,编译安装是需要编译源码的,安装的软件更加适合你的电脑,你的软硬件环境,更加的稳定,相比较yum来说稳定
编译安装3个步骤:

  • 配置
    ./configure --prefix=你安装路径 --以及其它参数
  • 编译
    linux里面的软件都是使用c、c++写的,所以你得有编译器
    gcc gcc-c++
    yum install -y gcc gcc-c++
    make
  • 安装
    make install
    走完一步之后,可以执行一个指令 echo $? ,如果返回0,代表上面指令执行成功,如果返回其它,说明执行失败
    指令可以连写: make && make install
    安装ntfs-3g
    安装python

2、服务和进程相关指令

linux的启动等级,打开这个文件 vi /etc/inittab
0 : 关机等级
1 : 单用户模式
2 : 多用户的无网络模式
3 : 多用户模式,有网络
4 : 保留模式
5 : 界面模式
6 : 重启模式

切换等级 init 0 init 1 init 6
查看当前等级 runlevel who -r
whoami : 我是谁,查看当前用户

查看随开机启动的服务
chkconfig --list

随开机启动的服务,我们给他们起了一个非常好听的名字,守护进程(daemon)
sshd httpd mysqld 其实就是一个随机开机启动的服务

开启、关闭服务
要有控制开启、关闭服务的脚本,比如iptables(防火墙)
/etc/init.d/iptables start | stop | restart
/etc/init.d/network start | stop | restart
经常找脚本,太不方便了,将服务脚本放到 /etc/init.d ,如果支持服务模式,那么就可以使用如下指令开启和关闭
service iptables start | stop | restart
service network start | stop | restart

一般情况,安装服务的时候,控制服务的脚本在安装包就有,但是有的没有,比如nginx没有
自己按照的服务,你就可以将脚本放到 /etc/init.d 里面,然后通过service控制它的开启和关闭 service nginx start

自己按照的服务随开机启动
chkconfig nginx on 默认设置的等级为2345
chkconfig nginx off
还得给脚本权限,权限一般设置为755
通过chkconfig --list 查看有没有配置成功

进程相关指令
top : 实时查看系统的运行情况
w :查看系统的当前用户的链接情况
free : -h 内存的使用情况
ps : 查看进程相关信息
ps -ef | grep ssh
ps aux | grep ssh
kill : 杀死一个进程
kill -9 进程id
netstat -lnp : 查看网络和端口使用情况
netstat -lnp | grep 80

3、shell简介(了解一下)

shell编程 wget url 包.tar.gz
python break : 终止循环
continue : 结束当次循环,进入下一次循环

4、ftp服务搭建

ftp是什么?文件传输协议,用在将本地文件上传到服务器

1、ftp搭建
    关闭防火墙和selinux
    setenforce 0
    依赖  gcc和openssl-devel和perl
    0、yum install -y gcc openssl-devel perl
    1、去pureftp官网    
        download==》releases==》pure-ftpd-1.0.41.tar.gz
    2、下载
        wget https://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.41.tar.gz
    3、解压
        tar -zxvf 文件名
    4、配置
        ./configure                    #进行配置  -h 查看配置参数
        --prefix=/usr/local/pureftpd   #安装目录
        --without-inetd                #不使用ineted 超级服务器管理
        --with-altlog                  #采用alt日志
        --with-puredb                  #采用puredb来存储ftp虚拟用户信息
        --with-throttling              #开启带宽控制
         --with-tls                    #开启ftps支持
         
         ./configure --prefix=/usr/local/pureftpd --without-inetd --with-altlog --with-puredb --with-throttling --with-tls

         echo $?  如果是0说明上一步成功,其它为错误
         
         make && make install
         
         
    5、修改配置文件
        cd configuration-file/
        mkdir /usr/local/pureftpd/etc   创建目录
        cp pure-ftpd.conf  /usr/local/pureftpd/etc/
        修改:vi /usr/local/pureftpd/etc/pure-ftpd.conf 如下
            在文件最后添加如下两行
            PureDB      /usr/local/pureftpd/etc/pureftpd.pdb
            PIDFile     /var/run/pure-ftpd.pid
    6、拷贝控制文件
        cp pure-config.pl /usr/local/pureftpd/sbin/
        chmod 755 /usr/local/pureftpd/sbin/pure-config.pl
    7、启动服务
        cd /usr/local/pureftpd
        ./sbin/pure-config.pl  ./etc/pure-ftpd.conf
        检查:ps -ef | grep ftp
        
    8、添加管理用户
        useradd  test
        mkdir -p /var/www/html/
        chown -R test:test /var/www/html/
        ./bin/pure-pw useradd ftp_user1 -u test -d /var/www/html
        ftp_user1:ftp登录用户名
        -u:指定系统中存在的用户
        -d:指定访问的目录
    9、创建虚拟的用户数据库
        ./bin/pure-pw mkdb
        
        /usr/local/pureftpd/bin/pure-pw list            #查看用户列表
        /usr/local/pureftpd/bin/pure-pw userdel  用户名    #删除用户
    10、通过ftp链接工具(FileZilla)测试

5、nfs搭建

nfs是什么?可以实现linux之间的文件共享
nfs客户端还有服务端

nfs搭建教程
服务器上操作
    关闭防火墙   service iptables stop
    关闭selinux  setenforce 0
    1、yum install -y nfs-utils
    2、编辑配置文件
        vi /etc/exports
        /nfstest         10.0.144.0/24(rw,sync)
        要共享的目录     网段
    3、创建目录
        mkdir /nfstest
        vi /nfstest/lala.txt
    4、启动服务
        nfs是基于rpc协议的,所以首先启动rpc
        service rpcbind start
        service nfs start
客户端上操作
    1、yum install -y nfs-utils
    2、查看对应ip地址上面共享的目录
        showmount -e 10.0.144.156
    3、挂载nfs
        mount -t nfs 10.0.144.156:/nfstest /mnt/usb
        mount -t nfs 10.7.181.94:/nfstest /mnt/usb
    4、配置开机挂载
        vi /etc/fstab
        10.0.142.34:/test/   /root/nfs   nfs   defaults  0   0

6、nginx服务搭建

nginx是什么? web服务器 apache打交道
nginx服务器的根目录(www)在 /usr/local/nginx/html
ip:端口 域名(jd.com baidu.com taobao.com mi.com) sb.com
DNS服务商,阿里云、腾讯云都有

nginx安装
1、关闭防火墙和selinux
2、安装依赖软件
    yum install -y gcc gcc-c++ autoconf automake zlib zlib-devel openssl openssl-devel pcre pcre-devel
3、tar -zxvf nginx-1.11.5.tar.gz
4、创建www用户,不允许以www用户登录系统
    useradd www -s /sbin/nologin
5、./configure --prefix=/usr/local/nginx --without-http_memcached_module --user=www --group=www   --with-http_stub_status_module --with-http_ssl_module
6、make && make install
7、cp nginx /etc/init.d/
8、开启服务
    service nginx start
9、设置开机启动
    chkconfig nginx on
    chkconfig --list      查看是否开机启动
10、查看网络和端口使用情况
    netstat -lnp | grep nginx
    nginx默认监听的端口为80端口





一个服务器是否能放多个网站?可以的,配置虚拟主机

虚拟主机配置步骤
(1)修改nginx配置文件
    vi /usr/local/nginx/conf/nginx.conf
    在第116行加一行代码
    include vhost/*.conf;
(2)新建一个vhost文件夹
    mkdir /usr/local/nginx/conf/vhost
(3)来到vhost下,新建一个虚拟主机配置文件
    vi /usr/local/nginx/conf/vhost/www.lala.com.conf
    server
    {
        server_name www.lala.com;
        root html/lala;
        index index.html;
    }

    [说明]:
    server_name : 域名
    root : 网站的根目录
    index : 网站的默认首页
(4)新建虚拟主机根目录
    mkdir /usr/local/nginx/html/lala
    vi /usr/local/nginx/html/lala/index.html

    service nginx restart   重启服务
(5)编辑本机的hosts文件
    C:\Windows\System32\drivers\etc\hosts
    10.9.151.154  www.lala.com

7、各系统指令区别总结

centos6.8
centos7.0
ubuntu16.04

CentOS和Ubuntu的区别
  1. centos中新建的非root用户是没有sudo的权限的,如果需要使用sudo权限必须在/etc/sudoers 中加入账户和权限,所以切换到root账号的时候只需要输入:su,加入root账号的密码即可。 在Ubuntu中,一般使用sudo+命令,如果是第一次使用会提示输入当前用户的密码(而不是root的密码)
  2. 在线安装软件中,centos使用的是yum命令,而ubuntu中使用的是apt-get命令。除此之外yum中还有一个从软件源中搜索摸个软件的方法:yum search + 软件名


    ubuntu和centos不同.png
CentOS7.0系列新指令:

centos7.0 没有netstat 和 ifconfig命令问题
yum -y install wget
yum -y install net-tools
centos7.0服务管理相关指令

补充:需要执行的下载指令有

yum install -y gcc gcc-c++
yum install -y zlib*
yum install -y nfs-utils
yum install -y gcc openssl-devel perl
yum install -y gcc gcc-c++ autoconf automake zlib zlib-devel openssl openssl-devel pcre pcre-devel

你可能感兴趣的:(day15-软件安装、搭建)