怎么样在Linux系统上安装软件
源码包:源代码程序组成的,程序员按照特定的格式和语法编写出来的
源码包包含多个文件,所以常见的格式:tar.gz
程序:未执行的代码
进程:执行起来的代码
线程:进程的真正执行者
源码包又叫做二进制包,二进制安装。源码包经过编译之后,就会形成二进制包
计算机只识别二进制语言,0 1
编译器会把源代码翻译成计算机可以执行的二进制程序
二进制安装的好处:
- 开源。(免费)
- 可以自由选择功能,随时添加模块
- 卸载方便
不足:
- 步骤过多
- 时间较长
- 编译安装,一旦报错,新手很难解决
基于源码包,安装一个NGINX
安装步骤:
systemctl stop firewalld ——关闭防火墙
systemctl disable firewall
setenforce 0 ——关闭安全机制
2、安装依赖包
yum -y install gcc pcre-devel openssl-devel zlib-devel openssl openssl-devel
3、创建运行用户、组
(Nginx 服务程序默认以 nobody 身份运行,建议为其创建专门的用户账号,以便更准确地控制其访问权限)
useradd -M -s /sbin/nologin nginx
-M 不创建家目录
程序用户,不能登录系统用
4、编译安装Nginx
cd /opt
tar zxvf nginx-1.22.0.tar.gz -C /opt/
cd nginx-1.22.0/
一定要在解压出来的源码文件里进行下面的配置,也就是上面的路径里
./configure --prefix=/usr/local/nginx \ ——配置程序的安装路径
--user=nginx \
--group=nginx \
--with-http_ssl_module \
--with-http_v2_module \
--with-http_realip_module \
--with-http_stub_status_module \
--with-http_gzip_static_module \
--with-pcre \
--with-stream \
--with-stream_ssl_module \
--with-stream_realip_module ——指定模块
make -j 4 && make install
编译(利用4线程,快速编译) && 安装软件
chown -R nginx.nginx /usr/local/nginx ——递归修改权限
conf:一般都是应用程序的配置文件所在目录
logs:应用程序的日志文件
sbin:应用程序的执行文件
ln -s /usr/local/nginx/sbin/nginx /usr/sbin/ ——让系统识别nginx的操作命令
放在usr/sbin 只有管理员可以使用
vim /lib/systemd/system/nginx.service ——进入
[Unit]
Description=nginx - high performance web server
Documentation=http://nginx.org/en/docs/
After=network-online.target remote-fs.target nss-lookup.target
Wants=network-online.target
[Service]
Type=forking
PIDFile=/usr/local/nginx/run/nginx.pid
#注意文件位置,如果不对 启动不了
ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
#注意启动文件位置
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s TERM $MAINPID
[Install]
WantedBy=multi-user.target
mkdir -p /usr/local/nginx/run/
#创建目录
vim /usr/local/nginx/conf/nginx.conf
#修改配置文件
pid /usr/local/nginx/run/nginx.pid;
#找到 pid的位置修改
systemctl daemon-reload
#重新加载配置
systemctl start nginx.service
vim /usr/local/nginx/html/index.html
100 dd 删除原内容
添加新内容:
this is ky32!
打开浏览器,访问ip地址
编译安装总结:
- 解压源码包
- 进入解压出来的源码包的文件目录
- ./configure prifix=/usr/local/nginx #指定程序的安装路径
- 编译,把代码翻译成二进制,让计算机处理。编译的命令:make
- 安装:make install
make && make install 编译和安装可以写在一起
make -j 4 指定4个cpu来处理,提高安装速度,不能给太多,会烧
meke -j 4 && make install
rpm的安装方式:
可以通过rpm包的方式快捷的安装应用程序。可以自动检测依赖关系。
mount 挂载设备:Linux的硬件设备(硬盘、光驱),都需要通过挂载的方式才能够使用
mount 设备 文件路径(挂载目录)————挂载命令
umount 设备 挂载点(挂载目录) 取消挂载
umount -lf 设备 挂载点
l:懒惰模式,知道挂载点的目录不再被使用,立刻关闭其他的挂载应用。(所有程序运行完毕,才会结束)
f:强制,没有程序运行,立刻强制结束挂载
这种方式是临时挂载,重启服务器就会消失
挂载规则:
1、挂载点(挂载的目录):必须是已经存在的,最好是一个空目录。如果非空,挂载设备之后,原来的目录里的数据将被隐藏
2、一个挂载点同时只能挂载一个设备
rpm安装命令:
rpm -ivh 软件包包名
i:安装一个新的包
v:显示安装过程
h:在安装过程中,以#号显示安装进度
rpm -e 卸载软件
rpm -q 软件名:检测当前系统是否安装这个软件
yum安装方式:
yum也是基于rpm包的安装,但是yum方式会自动检测依赖环境,并且自动安装依赖环境
yum安装方式的组成结构:仓库、客户端 两部分组成。可以放在不同的机器上,也可以部署在一台机器上
服务端:提供服务
客户端:使用服务端提供的功能
国内yum源(yum仓库):阿里云、腾讯云、本地源(仓库)......网易、搜狐、epel第三方...
yum源(仓库):本地源、在线源
yum的工作原理:
创建yum仓库,在仓库中已经有了很多rpm包,以及包的相关元数据文件。通过yum的方式安装软件的时候,就会读取元数据当中的信息,查询安装包的依赖关系,自动从仓库当中下载并安装
元数据文件:用来描述软件包的数据文件。包含软件包版本、名称、依赖关系...
元数据文件的作用:让软件管理器知道软件包的信息,以及如何安装、升级、卸载
yum clean all && yum makecache
yum clean all :清除之前yum缓存文件
yum makecache:建立元数据信息
每次更换源的时候 都要清理缓存和建立信息
yum -y install httpd:安装软件
yum remove -y httpd:卸载软件
yum安装的软件 统一在etc目录下
yum本地源(仓库)安装:
1、虚拟机挂载光盘
2.Linux设置挂载光盘
sr0和cdrom 都行 都是镜像的意思
mount 设备 文件路径(挂载目录)
df -h查看挂载情况
进入yum文件
先创建一个备份目录backup,将Centos_ 的文件和epel文件剪切到备份的文件里面
5、
Centos-* 和 epel* *号是所有
将源文件剪切到备份文件
6、
创建一个repo 文件
配置本地yum源配置文件
配置vim
7、
8、
在yum安装 httpd
yum文件安装在etc目录
yum安装文件 一定要在 /etc/yum.reops.d 目录下面
每次进入都要
make clear all && makechack
清除缓存源 && 建立元数据
安装yum在线源:
wget http://mirrors.aliyun.com/repo/Centos-7.repo
#时间同步
yum install ntpdate -y
ntpdate ntp.aliyun.com
面试题:
创建本地yum源的完整步骤:
1、挂载光盘镜像,其他的目录也可以使用,本地仓库也可以。
- 切换到etc/yum.repos.d,把文件备份
- 创建一个本地yum源的配置文件,名称不限,但是不要用中文和特殊符号。可以英文+数字结合。必须以.repo 结尾
- 开始编写本地yum源的配置文件
[local]
name=123
baseurl=file:///mnt
gpgcheck=0
enabled=1
- yum clean all 清除yum缓存
- yum makecache 建立元数据
在线源,依赖于网络:从网络上下载一个在线源的配置文件
wget http://mirrors.aliyun.com/repo/Centos-7.repo
所有的.repo的yum源配置文件(本地源、在线源)只能放在/etc/yum.repos.d目录下
安装软件 和 配置在线源都要在/etc/yum.repos.d目录下
第三方源:epel
yum -y install epel-release 安装epel
sudo yum repolist 检查是否安装
epel 要在在线源下载
wget http://mirrors.aliyun.com/repo/Centos-7.repo
在 /etc/yum.reops.d/ 目录下
yum -y install sl 小火车sl
yum -y install cowsay 动物说 animalsay 你好