软件包格式:

  • RPM:源码封装后的格式,类似于exe文件

  • 源码:软件源代码,可以修改,优化

1. RPM软件包管理

rpm是一个很有用的包管理器,可以用于生成、安装、查询、核实、更新以及卸载单个软件包

适用于redhat redflag centos suse

  • rpm命令:rpm -ivh

i 安装
v 显示安装过程
h hash [Use with -v|--verbose for a nicer display.]
q 查找 查询
-qf 查看某个文件时属于哪个软件包
-qi 查看软件包的信息【出厂信息】
-qa 查找已安装所有匹配XXX关键字的软件包
-e 卸载rpm软件包
-ql 查看软件包包含哪些文件
-U 升级软件包
—nodeps 忽略依赖
软包安装不完整 重新安装 —replacepkgs —force 
  • 问题
1.非官方提供的rpm格式的包是由别人基于源码打包的,安全无法保证

2.rpm格式的包一般都比较旧,除非官方提供

3.rpm包的依赖问题比较致命 
  • yum安装

YUM C/S架构

YUM源服务器    [共享所有软件包]  通过文件服务器  【http ftp file】
存储大量RPM软件包,通过FTP|HTTP|HTTPS|FILE方式共享软件包
YUM客户端:从yum仓库下载软件包并安装
优点:
自动解决依赖
自动下包
自动安装
  • YUM 客户端配置文件: /etc/yum.repos.d/

配置文件名字两部分组成 *.repo 前半部分可以随便写 后半部分必须是repo

[baism]
name=www.ayitula.com
baseurl=ftp://192.168.10.253/pub
enabled=1
gpgcheck=0
  • 配置第三方yum源
[root@localhost ~]# wget http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
[root@localhost ~]# rpm -ivh epel-release-latest-7.noarch.rpm
[root@localhost ~]# yum repolist ##检查是否已添加至源列表
[root@localhost ~]# yum -y install epel-release
  • 相关命令
yum clean all  清除缓存目录下的软件包及旧的headers
yum update 清除缓存目录下的软件包及旧的headers
yum install 软件包名字 -y 安装
yum remove 软件包名字 -y 删除
yum update 软件包名字 -y 升级
yum search 软件包名字 查找软件包
yum list 软件包名字 列出所有可安裝的软件清单
yum localinstall 软件包名字 -y 安装本地软件包
yum groupinstall 组名
yum groupupdate 组名
yum grouplist 组名
yum groupremove 组名
  • 协议配置

ftp协议安装

[zhangyafei@centos ~]$ rpm -qa|grep vsftpd
[zhangyafei@centos ~]$ yum install -y vsftpd
[root@centos /]# systemctl start vsftpd # systemctl restart vsftpd systemctl stop vsftpd
# 创建FTP使用的用户
useradd -s /sbin/nologin -d /var/www/html ftpuser
passwd ftpuser

2. 源码包安装

适用于所有linux发行版本

解压
配置【configure】
指定软件功能及安装路径
编译 【make】
将源码进行编译生成安装文件
安装 【make install】
将安装文件安装到目标路径
启动
注意:多看install readme 官网 有安装教程

3. 压缩与解压缩

压缩文件的好处有如下几点:

1、文件更小,便于网络传输,效率高;

2、避免杂乱,可以减少文件个数,多个文件一起压缩;

3、有些文件不能直接传输,比如安装程序,压缩后就可以传输了

常见的压缩格式:tar tar.gz tar.bz2 zip gz bz2 rar xz

  • tar 压缩或解压
tar 压缩或解压时根据其后面所跟的名令选项决定
命令语法
tar 压缩或者解压
gz、bz2、xz格式包tar [OPTION...] [FILE]...
命令选项
c 建立压缩包
v 显示过程
x 解压压缩包
f 必选项 归档文件名
t 查看压缩包内容
j 二次压缩使用bz2格式
z 二次压缩使用gz格式
J 二次压缩使用xz格式
  •  zip格式
安装压缩与解压命令
yum -y install zip unzip
zip- package and compress (archive) files 压缩文件或文件夹
压缩
-r 选项指定你想递归地(recursively)包括所有包括在 filesdir 目录中的文件
zip -r etc.zip /etc
解压
unzip - list, test and extract compressed files in a ZIP archive 显示、测试、解压ZIP包
-v 显示压缩目录内容,但是不解压 unzip -v etc.zip
-t 检查压缩文件是否正确、完整,但是不解压 unzip -t etc.zip
-l 列出压缩文件内容,但是不解压 unzip -l etc.zip
  •   压缩文件
相关命令
[root@www ~]# rpm -qf which bzip2bzip2-1.0.6-13.el7.x86_64
[root@www ~]# rpm -qf which bunzip2bzip2-1.0.6-13.el7.x86_64
[root@www ~]# rpm -qf `which gunzip`gzip-1.5-10.el7.x86_64
[root@www ~]# rpm -qf `which gzip`gzip-1.5-10.el7.x86_64
  •   源码包的解压与压缩总结
压缩                                                        解压
压缩文件夹
tar -cvzf etc.tar.gz /etc tar xvzf etc.tar.gz
tar -cjvf etc.tar.bz2 /etc tar -jvxf etc.tar.bz2tar -cvJf etc.tar.xz /etc tar -Jvxf etc.tar.xz
tar -cvf etc.tar /etc tar xvf etc.tar
zip -r tmp.zip /tmp unzip tmp.zip压缩文件基于块排序压缩bzip2 anaconda-ks.cfg bunzip2 install.log.bz2 bzcat install.log.bz2 查看压缩文件内容
gzip anaconda-ks.cfg gunzip install.log.gz zcat install.log.gz 查看压缩文件内容
zip install.log.zip install.log unzip install.log.zip
  • nginx的安装
yum install -y pcre pcre-devel
yum install -y zlib zlib-devel
yum install gcc-c++
yum install -y openssl openssl-devel
wget -c https://nginx.org/download/nginx-1.14.0.tar.gz
tar -zxvf nginx-1.14.0.tar.gz
cd nginx-1.14.0
./configure --prefix=/usr/local/nginx \
make
make install
whereis nginx
进入sbin目录,可以看到有一个可执行文件nginx,直接./执行就OK了。
运行起来之后访问服务器ip,可以看到nginx的欢迎页面
[root@centos /]# /usr/sbin/nginx
浏览器输入:http://182.254.179.186/
nginx服务的停止:
nginx -s stop 或者
[root@centos shell_learn]# ps -ef|grep nginx
root 1939 1 0 21:53 ? 00:00:00 nginx: master process nginx
nginx 1940 1939 0 21:53 ? 00:00:00 nginx: worker process
root 1945 12666 0 21:53 pts/0 00:00:00 grep --color=auto nginx
[root@centos shell_learn]# kill 1939
[root@centos shell_learn]# ps -ef|grep nginx
root 1979 12666 0 21:53 pts/0 00:00:00 grep --color=auto nginx
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_flv_module --with-http_stub_status_module --with-http_gzip_static_module --with-pcre=../pcre-8.39 --with-zlib=../zlib-1.2.8 --with-openssl=../openssl-master

相关文件:默认

配置文件:/etc/nginx
可执行文件:/usr/sbin/nginx
html文件:/usr/share/nginx/html
日志文件
/var/log/nginx/error.log
/var/log/nginx/access.log

  

 

Linux上天之路(十一)之软件管理的更多相关文章

  1. Linux上天之路系列目录

    Linux上天之路系列目录 Linux上天之路(一)之Linux前世今生 Linux上天之路(二)之Linux安装 Linux上天之路(三)之Linux系统目录 Linux上天之路(四)之Linux界 ...

  2. Linux上天之路(十二)之服务管理

    主要内容 服务介绍 独立服务 非独立服务 1. 服务介绍 服务:常驻在内存中的程序,且可以提供一些系统或网络功能,那就是服务. 计算机中的系统服务有很多,比如: apache提供web服务 ftp提供 ...

  3. Linux上天之路(十)之Linux磁盘管理

    主要内容 磁盘介绍 磁盘管理 磁盘限额 逻辑卷管理 磁盘阵列 1. 磁盘介绍 硬盘最基本的组成部分是由坚硬金属材料制成的涂以磁性介质的盘片,不同容量硬盘的盘片数不等.每个盘片有两面,都可记录信息.盘片 ...

  4. Linux上天之路(十三)之系统进程管理

    主要内容 进程介绍 进程管理 进程优先级 1. 进程介绍 Linux系统中的几乎任何行动都会以进程的形式进行.如果你用网络浏览器查看网页,浏览器就作为进程运行.如果键入bash shell的命令行,这 ...

  5. Linux上天之路(一)之Linux前世今生

    0. Linux的前世今生 linux是什么 linux是一个计算机的操作系统,与windows类似,是一款系统软件 操作系统 说到操作系统其实我们首先要思考三个问题: 1)操作系统是什么? 2)操作 ...

  6. linux学习之路第八天(组管理和权限管理)

    组管理和权限管理 1.Linux 组基本介绍 在linux中的每个用户必须属于一个组,不能独立于组外.在linux中每个文件有所有者,所在组,其他组的概念 1)所有者 2)所在组 3)其它组 4)改变 ...

  7. Linux上天之路(二)之Linux安装

    1. vmware workstation使用 VMware是全球领先的虚拟化公司,为客户提供虚拟化解决方案,个人虚拟化产品workstation,可以让用户通过虚拟化的方式在一台物理电脑中安装多个操 ...

  8. Linux上天之路(三)之Linux系统目录

    1. Linux设计思想 1) 程序应该小而专一,程序应该尽量的小,且只专注于一件事上,不要开发那些看起来有用但是90%的情况都用不到的特性: 2) 程序不只要考虑性能, 程序的可移植性更重要,she ...

  9. Linux上天之路(五)之Linux基本命令

    1. Linux命令格式 命令 命令选项 学会看语法: {必选项}[可选项] 举例 ls -a /tmp 等价 ls –all /tmp ls 命令 -a 命令选项 简写使用- 全写-- /tmp 参 ...

随机推荐

  1. 【Linux】【专项突破】Linux重定向与管道

    [专项突破]Linux重定向与管道 This article is written by Xrilang(Chinese Name:萌狼蓝天) If you want find me ,You can ...

  2. PSpiceAA-高级分析例程

    一.高级分析应用例程 1.1.例程电路原理图(同向放大电路) 器件模型使用PSpice-ELEM库中的模型. 1..1.1.仿真测试波形图 1.2.灵敏度分析 1.2.1菜单选择:PSpice-> ...

  3. JAVA将byte数组(byte[])按照指定大小分割成多个byte数组

    /** * 将byte数组按照指定大小分割成多个数组 * @param bytes 要分割的byte数组 * @param subSize 分割的块大小 单位:字节 * @return 指定大小的by ...

  4. 【LeetCode】 202. Happy Number 解题报告(Java & Python & C++)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 递归 迭代 日期 [LeetCode] 题目地址:h ...

  5. 【LeetCode】253. Meeting Rooms II 解题报告(C++)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客:http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 排序+堆 日期 题目地址:https://leetco ...

  6. 【LeetCode】987. Vertical Order Traversal of a Binary Tree 解题报告(C++ & Python)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 DFS BFS 日期 题目地址:https://le ...

  7. 【LeetCode】617. Merge Two Binary Trees 解题报告

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 递归 日期 题目地址:https://leetcod ...

  8. 3027 - Corporative Network

    3027 - Corporative Network 思路:并查集: cost记录当前点到根节点的距离,每次合并时路径压缩将cost更新. 1 #include<stdio.h> 2 #i ...

  9. 1091. Tmutarakan Exams

    1091. Tmutarakan Exams Time limit: 1.0 secondMemory limit: 64 MB University of New Tmutarakan trains ...

  10. 『学了就忘』vim编辑器基础 — 96、末行模式中的相关命令

    目录 1.在文档中显示行号 2.是否显示文档内容相关颜色 3.是否将查找的字符串高亮显示 4.是否显示右下角的状态栏 5.是否在左下角显示如"--INSERT--"之类的状态栏 6 ...