当前位置: 首页 > news >正文

Linux基础-Ubuntu中三种安装方式

防火墙关闭命令  

centos

systermctl restart firewalld

setenforce 0  关闭selinux安全机制

ubuntu

ufw disable

安装依赖环境

apt -y install libpcre3-dev zlib1g-dev libssl-dev build-essential 

源位置

etc/apt/source.list   unbuntu的源位置(在线源)

etc/yum.repos.d/*.repo   centos的源位置(在线源和本地源)

ubuntu的源文件

source.list加上.bak会变成备份源   apt-get update 更新软件包

不同操作系统nginx源码包编译安装所需要的依赖环境

apt -y install libpcre3-dev zlib1g-dev libssl-dev build-essential(ubuntu)

yum -y install gcc pcre-devel openssl-devel zlib-devel openssl  openssl-devel(centos)

1.0编译安装(初代安装方法)

遇到的问题

root@cwq-virtual-machine:~# ping -c 5 www.baidu.com
ping: www.baidu.com: 域名解析出现暂时性错误

解决方法:修改域名解析地址

root@cwq-virtual-machine:/usr/local# ln -s /usr/local/nginx/sbin/nginx /usr/local/
ln: 无法创建符号链接 '/usr/local/nginx': 文件已存在

解决方法:环境路径是usr/bin

nginx: [emerg] getpwnam("nginx--group=nginx") failed
nginx: configuration file /usr/local/nginx/conf/nginx.conf test failed

解决方法:--user =nginx\ 没有空格

> --user=nginx\
> --group=nginx

编译安装源码包的过程(ubuntu)

ufw disabled
关闭防火墙apt -y install libpcre3-dev zlib1g-dev libssl-dev build-essential
安装依赖环境,用apt包管理器下载一些库和工具
apt install -y lrzsz
lrzsz:是一个用于在 Linux 系统和 Windows 系统之间进行文件传输的软件包cat /etc/passwd  查找该系统下的用户名
useradd -M -s /sbin/nologin nginx
为nginx的运行新建一个名为nginx的程序用户,不在home目录下创建用户文件夹,禁止用户登陆系统
-M 不给建立的用户创建家目录
-s /sbin/noligin 新建的用户为程序用户,不可以登陆系统,仅拥有可以执行程序的最小权限rz -E
tar -xf nginx-1.22.0.tar.gz
解包cd /opt/nginx-1.22.0 
ls
./configure --prefix=/usr/local/nginx \
> --user=nginx \
> --group=nginx
nginx-1.22.0是源码包解压目录,configure是可执行文件,--prefix 指定的安装路径前缀,在这里是指将nginx安装到/usr/local/nginx下面
配置(会检查依赖环境)make -j 4 && make install
编译安装,用cpu四核来编译ln -s /usr/local/nginx/sbin/nginx /usr/bin/
创建软链接到环境路径下,可以在shell中直接输入nginx来执行cd usr/local
ll
发现nginx的所属用户和所属用户组都是root
chown -R nginx.nginx /usr/local/nginx/
改变nginx安装目录的所属用户和所属用户组,-R表递归
cd /usr/local/nginx
root@cwq-virtual-machine:/usr/local/nginx# ls
conf  html  logs  sbin
mkdir run
为进程文件创建一个目录,每一个进程都有一个PID号,是唯一的
root@cwq-virtual-machine:/usr/local/nginx# ls
conf  html  logs  run  sbin
run目录已经创建
root@cwq-virtual-machine:/usr/local/nginx# chown  nginx.nginx run/
为run目录改变所属用户以及所属用户组cd /usr/local/nginx/
ll  找nginx.conf
vim   nginx.conf
(#pid     logs/nginx.pid;)
修改成pid /usr/local/nginx/run/nginx.pid;
nginx -t  检查配置文件语法是否正确
vim lib/systemd/system/nginx.service    让系统识别到应用并且能控制,负责启动、停止和管理服务系统

unit:描述信息,依赖环境

service:后台运行,进程文件存放位置,启动nginx读取配置文件内容,启动,停用

install:多用户模式

systemctl daemon-reload
systemctl restart nginx
cd /usr/local/nginx/html
vim index.html  修改默认访问页面主页

编译安装的好处和坏处:

好处:1、开源,如果会代码,可以修改源代码

           2、可以自定义模块和功能

缺点:1、繁琐

2.0dpkg安装deb包(第二代安装方法)

查找依赖,不解决依赖

dpkg -l  查找软甲是否安装

dpkj -i   安装

dpkj -r   卸载

dpkj -p  完全清除

3.0apt安装方法(第三代安装方法)

apt自动化一键式安装  安装完成之后软件的默认位置都在/etc

  • RPM/DEB包:RPM/DEB包的安装位置通常不由安装者决定,而是由RPM包的作者预先设定,安装在多个默认路径中。
  • 源码包:源码包安装的服务不能被服务管理命令所管理,因为没有安装到默认路径中,所有只能用绝对路径进行服务的管理。

挂载命令:mount -t 指定文件系统的类型

                             -o 指定挂载的参数,指定挂载目录的权限与配额

                             -a 自动挂载,根据/etc/fatab的配置实现

                             -v 显示详细过程

挂载的规则:1、一个设备同时只能挂载一个目录

                      2、挂载点指的是linux系统中的目录,这个目录最好是一个空目录(新建的目录)

本地yum仓库建立过程:

mount /dev/sr0(cdrom)   /mnt    前一个是设备,后一个是挂载目录(绝对路径) 
cd etc/yum.repos.dmkdir bak
mv *.repo ./bak/
vim cxk.repo
[cxk]
name=cxk
baseurl=file:///mnt
gpgcheck=0yum clean all                     清除元数据
yum makeacahe                     
更新并且同步元数据,元数据提供软件包的位置,软件包之间的依赖关系,所以yum可以发现并且下载依赖关系,每次有新的源配置加入都需要更新元数据yum install httpd -y
yum remove httpd -y
yum update 获取在线源软件包的最新版本yum history

配置其他在线源的方法

wget http://mirrors.aliyun.com/repo/Centos-7.repo (阿里源配置的在线地址)centos

需要更新元数据

直接/etc/apt/sources.list文件里粘贴 ubuntu

不需要更新元数据(apt-get update就可以)

阿里源

deb http://mirrors.aliyun.com/ubuntu/ jammy main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ jammy main restricted
deb http://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted
deb http://mirrors.aliyun.com/ubuntu/ jammy universe
deb-src http://mirrors.aliyun.com/ubuntu/ jammy universe
deb http://mirrors.aliyun.com/ubuntu/ jammy-updates universe
deb-src http://mirrors.aliyun.com/ubuntu/ jammy-updates universe
deb http://mirrors.aliyun.com/ubuntu/ jammy multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-updates multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy-updates multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu jammy-security main restricted
deb-src http://mirrors.aliyun.com/ubuntu jammy-security main restricted
deb http://mirrors.aliyun.com/ubuntu jammy-security universe
deb-src http://mirrors.aliyun.com/ubuntu jammy-security universe
deb http://mirrors.aliyun.com/ubuntu jammy-security multiverse
deb-src http://mirrors.aliyun.com/ubuntu jammy-security multiverse

centos装nginx需要装一个第三方的源epel-release(yum -y install epel-release)


http://www.mrgr.cn/news/61599.html

相关文章:

  • 《机器学习by周志华》学习笔记-神经网络-03多层网络学习算法之误差逆传播算法
  • Flutter加载本地HTML的优雅解决方案:轻松实现富文本展示
  • 【Spring框架】Spring框架的开发方式
  • 算法练习:LCR 179. 查找总价格为目标值的两个商品
  • 第4章 kafka broker
  • Mac打开环境变量配置文件,source ~/.zshrc无法打开问题解决
  • GPU 学习笔记四:GPU多卡通信(基于nccl和hccl)
  • 深入理解 Java JDK、JRE 和 JVM:原理与区别
  • 创作三周年:在忙碌中寻找灵感与快乐
  • 有哪些提高英语听力的方法?实用的学习资源
  • Idea常见插件(超级实用)
  • 人工智能驱动的社交进化:Facebook的新方向
  • navstr:一个简单的字符串数据解析实现
  • C语言 | Leetcode C语言题解之第519题随机翻转矩阵
  • go的反射
  • SQLI LABS | Less-18 POST-Header Injection-Uagent field-Error based
  • 【ShuQiHere】硬盘的S.M.A.R.T.: 自我监测、分析与报告技术
  • snmpwalk样例
  • KKcms 1.32 代码审计过程
  • Python | Leetcode Python题解之第520题检测大写字母
  • Brilliant Labs CEO Bobak Tavangar揭秘:AI驱动的开源AR眼镜Frame
  • 动态类的控制
  • 交换机端口三种链路类型
  • 《贪婪算法实战:寻找最短无序连续子数组的深度解析与实现》
  • Java | Leetcode Java题解之第519题随机翻转矩阵
  • 采用STM32CubeMX和HAL库的定时器应用实例