apache php mysql python 环境部署与离线安装deb包

news2024/11/26 20:33:08

文章目录

    • 1.背景介绍
    • 2. 主要涉及操作
      • 2.1 安装系统:
      • 2.2 apache mysql php安装
      • 2.3 配置
      • 2.4 python相关库安装
    • 3. 操作记录
      • 3.1 软件安装
      • 3.2 读取文件内容后进行文件内容抽取
      • 3.3 执行以上的sh脚本
      • 3.4 所学
      • 3.5 打包发送
    • 4. 参考文献

1.背景介绍

使用的系统为ubuntu18.04 server amd64

2. 主要涉及操作

2.1 安装系统:

下载:https://cn.ubuntu.com/download/alternative-downloads
在这里插入图片描述
选择查看全部Ubuntu 镜像站
在这里插入图片描述
点击可以选择使用国内的源进行下载,速度非常快

2.2 apache mysql php安装

安装顺序为:apache2,mysql,php,在当前的Ubuntu18安装apache2和mysql时,apt会自动将这两个软件加入服务,所以在安装之后可以通过systemctl status apache2/mysql查看两者的状态
在这里插入图片描述

2.3 配置

在安装mysql后,默认mysql是没有密码的,所以需要我们手动设置密码:
设置方式可以通过以下命令:

mysql -u root -p #不用输入密码
# plugin是插件的意思,把插件修改为mysql本地的:mysql-native-password
update user set plugin='mysql_native_password' where user='root';
#root的初始authentication_string字段为空,更改密码操作如下:执行下面的SQL语句把root的登录密码改为secpoint@123。
update user set authentication_string=password('secpoint@123') where user='root';

当然也可以把这些设置内容写入到sql脚本中,:

SET FOREIGN_KEY_CHECKS=0;
use `mysql`;
update user set plugin='mysql_native_password' where user='root';
update user set authentication_string=password('secpoint@123') where user='root';

执行方式:

mysql -uroot -psecpoint@123 -e 'source config/modify.sql' 
sudo systemctl restart mysql
或者sudo systemctl restart mysql.service都可以

执行后需要重启mysql生效

2.4 python相关库安装

参看文章:https://blog.csdn.net/LCY133/article/details/128597562?spm=1001.2014.3001.5502
这里的安装与这里的方法完全一致,因为就是我写的文章,今天又重新操作了一遍

3. 操作记录

因为在这里涉及部署环境之后,再将安装包进行离线安装,所以在安装中我也会把deb包下载下来,把安装顺序记录到文件内以便后续的安装。

3.1 软件安装

安装apache:

sudo apt-get install -y apache2 >apacheinstall.txt
cd /var/cache/apt/archives/
mkdir apachepack
mv *.deb apachepack/
cp -Rf apachepack/ ~
cd ~

安装MySQL:

sudo apt-get install -y mysql-server >mysqlinstall.txt
cd /var/cache/apt/archives/
mkdir mysqlpack
mv *.deb mysqlpack/
cp -Rf mysqlpack/ ~
cd ~

安装php:

sudo apt-get install -y  php libapache2-mod-php >phpinstall.txt
cd /var/cache/apt/archives/
mkdir phppack
mv *.deb phppack/
cp -Rf phppack/ ~
cd ~

注:因为 在这里安装旧版的php依旧可以使用,且无需多余配置,在本次使用的是旧版php安装方式,并未执行以上的安装过程

sudo dpkg -i php-common_1%3a35ubuntu6.1_all.deb php7.0-common_7.0.33-0ubuntu0.16.04.16_amd64.deb php7.0-json_7.0.33-0ubuntu0.16.04.16_amd64.deb php7.0-opcache_7.0.33-0ubuntu0.16.04.16_amd64.deb php7.0-readline_7.0.33-0ubuntu0.16.04.16_amd64.deb php7.0-cli_7.0.33-0ubuntu0.16.04.16_amd64.deb php7.0-fpm_7.0.33-0ubuntu0.16.04.16_amd64.deb php7.0_7.0.33-0ubuntu0.16.04.16_all.deb php_1%3a7.0+35ubuntu6.1_all.deb

sudo dpkg -i libapache2-mod-php7.0_7.0.33-0ubuntu0.16.04.16_amd64.deb libapache2-mod-php_1%3a7.0+35ubuntu6.1_all.deb
sudo dpkg -i php7.0-mysql_7.0.33-0ubuntu0.16.04.16_amd64.deb php-mysql_1%3a7.0+35ubuntu6.1_all.deb

python 相关库:

sudo apt-get install -y wget build-essential libreadline-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev libffi-dev zlib1g-dev zlib1g >pythoninstall.txt
cd /var/cache/apt/archives/
mkdir pythoninstall
mv *.deb pythoninstall/
cp -Rf pythoninstall/ ~
cd ~

3.2 读取文件内容后进行文件内容抽取

import os,sys
path1 = os.path.dirname(os.path.abspath(__file__))
path2 = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
sys.path.append(path2)
sys.path.append(path1)


#folderList = ["apacheinstall.txt","mysqlinstall.txt"]
folderList = ["pythoninstall.txt"]
for file in folderList:
    debList = []
    with open(file,'rt',encoding='GBK') as f:
        for line in f:
            if line.startswith("Preparing"):
                mid1 = line.split(".../")
                mid2 = mid1[1].split(" ")
                #debList.append(mid2[0])
                if "/" in mid2[0]:
                    mid3 = mid2[0].split("/")
                    index = mid3[1].index("-")
                    deb = mid3[1][index+1:]
                    #print(deb)
                    debList.append(deb)
                else:
                    #debList.append(mid2[0])
                    index = mid2[0].index("-")
                    deb = mid2[0][index + 1:]
                    #print(deb)
                    debList.append(deb)
    # debnewList = []
    # for deb in debList:
    #     index = deb.index("-")
    #     deb_new = deb[index+1]
    #     debnewList.append(deb_new)

    print(debList,len(debList))
    # commandList = []
    # for deb in debList:
    #     command0 = "sudo "
    #     command1 = "dpkg -i "
    #     strCommand = command0 + command1 + deb + "\n"
    #     #print(strCommand)
    #     commandList.append(strCommand)

    #fileCommand = "".join(commandList)
    command1 = " ".join(debList)
    print(command1)
    command2 = "sudo dpkg -i "
    name = file.split(".")
    shname = name[0] + ".sh"
    with open(shname,"wt") as f2:

        f2.write("cd {} \n".format(name[0]))
        f2.write(command2+command1+"\n")
        f2.write("cd .. \n")

安装过程中读到的install.txt文件如下:

Reading package lists...
Building dependency tree...
Reading state information...
The following additional packages will be installed:
  apache2-bin apache2-data apache2-utils libapr1 libaprutil1
  libaprutil1-dbd-sqlite3 libaprutil1-ldap liblua5.2-0 ssl-cert
Suggested packages:
  www-browser apache2-doc apache2-suexec-pristine | apache2-suexec-custom
  openssl-blacklist
The following NEW packages will be installed:
  apache2 apache2-bin apache2-data apache2-utils libapr1 libaprutil1
  libaprutil1-dbd-sqlite3 libaprutil1-ldap liblua5.2-0 ssl-cert
0 upgraded, 10 newly installed, 0 to remove and 42 not upgraded.
Need to get 1,730 kB of archives.
After this operation, 7,000 kB of additional disk space will be used.
Get:1 http://cn.archive.ubuntu.com/ubuntu bionic/main amd64 libapr1 amd64 1.6.3-2 [90.9 kB]
Get:2 http://cn.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libaprutil1 amd64 1.6.1-2ubuntu0.1 [84.6 kB]
Get:3 http://cn.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libaprutil1-dbd-sqlite3 amd64 1.6.1-2ubuntu0.1 [10.6 kB]
Get:4 http://cn.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libaprutil1-ldap amd64 1.6.1-2ubuntu0.1 [8,752 B]
Get:5 http://cn.archive.ubuntu.com/ubuntu bionic/main amd64 liblua5.2-0 amd64 5.2.4-1.1build1 [108 kB]
Get:6 http://cn.archive.ubuntu.com/ubuntu bionic-updates/main amd64 apache2-bin amd64 2.4.29-1ubuntu4.27 [1,071 kB]
Get:7 http://cn.archive.ubuntu.com/ubuntu bionic-updates/main amd64 apache2-utils amd64 2.4.29-1ubuntu4.27 [83.3 kB]
Get:8 http://cn.archive.ubuntu.com/ubuntu bionic-updates/main amd64 apache2-data all 2.4.29-1ubuntu4.27 [160 kB]
Get:9 http://cn.archive.ubuntu.com/ubuntu bionic-updates/main amd64 apache2 amd64 2.4.29-1ubuntu4.27 [95.1 kB]
Get:10 http://cn.archive.ubuntu.com/ubuntu bionic/main amd64 ssl-cert all 1.0.39 [17.0 kB]
Preconfiguring packages ...
Fetched 1,730 kB in 9s (184 kB/s)
Selecting previously unselected package libapr1:amd64.
(Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 67524 files and directories currently installed.)
Preparing to unpack .../0-libapr1_1.6.3-2_amd64.deb ...
Unpacking libapr1:amd64 (1.6.3-2) ...
Selecting previously unselected package libaprutil1:amd64.
Preparing to unpack .../1-libaprutil1_1.6.1-2ubuntu0.1_amd64.deb ...
Unpacking libaprutil1:amd64 (1.6.1-2ubuntu0.1) ...
Selecting previously unselected package libaprutil1-dbd-sqlite3:amd64.
Preparing to unpack .../2-libaprutil1-dbd-sqlite3_1.6.1-2ubuntu0.1_amd64.deb ...
Unpacking libaprutil1-dbd-sqlite3:amd64 (1.6.1-2ubuntu0.1) ...
Selecting previously unselected package libaprutil1-ldap:amd64.
Preparing to unpack .../3-libaprutil1-ldap_1.6.1-2ubuntu0.1_amd64.deb ...
Unpacking libaprutil1-ldap:amd64 (1.6.1-2ubuntu0.1) ...
Selecting previously unselected package liblua5.2-0:amd64.
Preparing to unpack .../4-liblua5.2-0_5.2.4-1.1build1_amd64.deb ...
Unpacking liblua5.2-0:amd64 (5.2.4-1.1build1) ...
Selecting previously unselected package apache2-bin.
Preparing to unpack .../5-apache2-bin_2.4.29-1ubuntu4.27_amd64.deb ...
Unpacking apache2-bin (2.4.29-1ubuntu4.27) ...
Selecting previously unselected package apache2-utils.
Preparing to unpack .../6-apache2-utils_2.4.29-1ubuntu4.27_amd64.deb ...
Unpacking apache2-utils (2.4.29-1ubuntu4.27) ...
Selecting previously unselected package apache2-data.
Preparing to unpack .../7-apache2-data_2.4.29-1ubuntu4.27_all.deb ...
Unpacking apache2-data (2.4.29-1ubuntu4.27) ...
Selecting previously unselected package apache2.
Preparing to unpack .../8-apache2_2.4.29-1ubuntu4.27_amd64.deb ...
Unpacking apache2 (2.4.29-1ubuntu4.27) ...
Selecting previously unselected package ssl-cert.
Preparing to unpack .../9-ssl-cert_1.0.39_all.deb ...
Unpacking ssl-cert (1.0.39) ...
Setting up libapr1:amd64 (1.6.3-2) ...
Setting up apache2-data (2.4.29-1ubuntu4.27) ...
Setting up ssl-cert (1.0.39) ...
Setting up libaprutil1:amd64 (1.6.1-2ubuntu0.1) ...
Setting up liblua5.2-0:amd64 (5.2.4-1.1build1) ...
Setting up libaprutil1-ldap:amd64 (1.6.1-2ubuntu0.1) ...
Setting up libaprutil1-dbd-sqlite3:amd64 (1.6.1-2ubuntu0.1) ...
Setting up apache2-utils (2.4.29-1ubuntu4.27) ...
Setting up apache2-bin (2.4.29-1ubuntu4.27) ...
Setting up apache2 (2.4.29-1ubuntu4.27) ...
Enabling module mpm_event.
Enabling module authz_core.
Enabling module authz_host.
Enabling module authn_core.
Enabling module auth_basic.
Enabling module access_compat.
Enabling module authn_file.
Enabling module authz_user.
Enabling module alias.
Enabling module dir.
Enabling module autoindex.
Enabling module env.
Enabling module mime.
Enabling module negotiation.
Enabling module setenvif.
Enabling module filter.
Enabling module deflate.
Enabling module status.
Enabling module reqtimeout.
Enabling conf charset.
Enabling conf localized-error-pages.
Enabling conf other-vhosts-access-log.
Enabling conf security.
Enabling conf serve-cgi-bin.
Enabling site 000-default.

仅仅写这一个吧,毕竟太长了这个日志
以下为由日志得到的三个安装脚本

cd apachepack
sudo dpkg -i libapr1_1.6.3-2_amd64.deb libaprutil1_1.6.1-2ubuntu0.1_amd64.deb libaprutil1-dbd-sqlite3_1.6.1-2ubuntu0.1_amd64.deb libaprutil1-ldap_1.6.1-2ubuntu0.1_amd64.deb liblua5.2-0_5.2.4-1.1build1_amd64.deb apache2-bin_2.4.29-1ubuntu4.27_amd64.deb apache2-utils_2.4.29-1ubuntu4.27_amd64.deb apache2-data_2.4.29-1ubuntu4.27_all.deb apache2_2.4.29-1ubuntu4.27_amd64.deb ssl-cert_1.0.39_all.deb
cd .. 

cd mysqlpack

sudo dpkg -i mysql-common_5.8+1.0.4_all.deb libaio1_0.3.110-5ubuntu0.1_amd64.deb mysql-client-core-5.7_5.7.42-0ubuntu0.18.04.1_amd64.deb mysql-client-5.7_5.7.42-0ubuntu0.18.04.1_amd64.deb mysql-server-core-5.7_5.7.42-0ubuntu0.18.04.1_amd64.deb libevent-core-2.1-6_2.1.8-stable-4build1_amd64.deb  libhtml-tagset-perl_3.20-3_all.deb liburi-perl_1.73-1_all.deb libhtml-parser-perl_3.72-3build1_amd64.deb libcgi-pm-perl_4.38-1_all.deb libfcgi-perl_0.78-2build1_amd64.deb libcgi-fast-perl_1%3a2.13-1_all.deb libencode-locale-perl_1.05-1_all.deb libhtml-template-perl_2.97-1_all.deb libtimedate-perl_2.3000-2_all.deb libhttp-date-perl_6.02-1_all.deb libio-html-perl_1.001-1_all.deb liblwp-mediatypes-perl_6.02-1_all.deb libhttp-message-perl_6.14-1_all.deb
sudo dpkg -i mysql-server-5.7_5.7.42-0ubuntu0.18.04.1_amd64.deb mysql-server_5.7.42-0ubuntu0.18.04.1_all.deb
# sudo dpkg -i mysql-server_5.7.42-0ubuntu0.18.04.1_all.deb
cd .. 

php

sudo dpkg -i php-common_1%3a35ubuntu6.1_all.deb php7.0-common_7.0.33-0ubuntu0.16.04.16_amd64.deb php7.0-json_7.0.33-0ubuntu0.16.04.16_amd64.deb php7.0-opcache_7.0.33-0ubuntu0.16.04.16_amd64.deb php7.0-readline_7.0.33-0ubuntu0.16.04.16_amd64.deb php7.0-cli_7.0.33-0ubuntu0.16.04.16_amd64.deb php7.0-fpm_7.0.33-0ubuntu0.16.04.16_amd64.deb php7.0_7.0.33-0ubuntu0.16.04.16_all.deb php_1%3a7.0+35ubuntu6.1_all.deb

sudo dpkg -i libapache2-mod-php7.0_7.0.33-0ubuntu0.16.04.16_amd64.deb libapache2-mod-php_1%3a7.0+35ubuntu6.1_all.deb

sudo dpkg -i php7.0-mysql_7.0.33-0ubuntu0.16.04.16_amd64.deb php-mysql_1%3a7.0+35ubuntu6.1_all.deb

pythoninstall:

# about python lib write in 2023.7.15
cd pythoninstall
sudo dpkg -i libc6_2.27-3ubuntu1.6_amd64.deb x11-common_1%3a7.7+19ubuntu7.1_all.deb libice6_2%3a1.0.9-2ubuntu0.18.04.1_amd64.deb libsm6_2%3a1.2.2-1_amd64.deb fonts-dejavu-core_2.37-1_all.deb fontconfig-config_2.12.6-0ubuntu2_all.deb libfontconfig1_2.12.6-0ubuntu2_amd64.deb libxrender1_1%3a0.9.10-1_amd64.deb libxft2_2.3.2-1_amd64.deb libxinerama1_2%3a1.1.3-1_amd64.deb libxss1_1%3a1.2.2-1_amd64.deb libxxf86dga1_2%3a1.1.4-1_amd64.deb libxxf86vm1_1%3a1.1.4-1_amd64.deb binutils-common_2.30-21ubuntu1~18.04.9_amd64.deb libbinutils_2.30-21ubuntu1~18.04.9_amd64.deb binutils-x86-64-linux-gnu_2.30-21ubuntu1~18.04.9_amd64.deb binutils_2.30-21ubuntu1~18.04.9_amd64.deb libc-dev-bin_2.27-3ubuntu1.6_amd64.deb linux-libc-dev_4.15.0-213.224_amd64.deb libc6-dev_2.27-3ubuntu1.6_amd64.deb gcc-7-base_7.5.0-3ubuntu1~18.04_amd64.deb libisl19_0.19-1_amd64.deb libmpc3_1.1.0-1_amd64.deb cpp-7_7.5.0-3ubuntu1~18.04_amd64.deb cpp_4%3a7.4.0-1ubuntu2.3_amd64.deb libcc1-0_8.4.0-1ubuntu1~18.04_amd64.deb libgomp1_8.4.0-1ubuntu1~18.04_amd64.deb libitm1_8.4.0-1ubuntu1~18.04_amd64.deb libatomic1_8.4.0-1ubuntu1~18.04_amd64.deb libasan4_7.5.0-3ubuntu1~18.04_amd64.deb liblsan0_8.4.0-1ubuntu1~18.04_amd64.deb libtsan0_8.4.0-1ubuntu1~18.04_amd64.deb libubsan0_7.5.0-3ubuntu1~18.04_amd64.deb libcilkrts5_7.5.0-3ubuntu1~18.04_amd64.deb libmpx2_8.4.0-1ubuntu1~18.04_amd64.deb libquadmath0_8.4.0-1ubuntu1~18.04_amd64.deb libgcc-7-dev_7.5.0-3ubuntu1~18.04_amd64.deb gcc-7_7.5.0-3ubuntu1~18.04_amd64.deb gcc_4%3a7.4.0-1ubuntu2.3_amd64.deb libstdc++-7-dev_7.5.0-3ubuntu1~18.04_amd64.deb g++-7_7.5.0-3ubuntu1~18.04_amd64.deb g++_4%3a7.4.0-1ubuntu2.3_amd64.deb make_4.1-9.1ubuntu1_amd64.deb libdpkg-perl_1.19.0.5ubuntu2.4_all.deb dpkg-dev_1.19.0.5ubuntu2.4_all.deb build-essential_12.4ubuntu1_amd64.deb bzip2-doc_1.0.6-8.1ubuntu0.2_all.deb libfakeroot_1.22-2ubuntu1_amd64.deb fakeroot_1.22-2ubuntu1_amd64.deb libalgorithm-diff-perl_1.19.03-1_all.deb libalgorithm-diff-xs-perl_0.04-5_amd64.deb libalgorithm-merge-perl_0.08-3_all.deb libbz2-dev_1.0.6-8.1ubuntu0.2_amd64.deb libdrm-amdgpu1_2.4.101-2~18.04.1_amd64.deb libpciaccess0_0.14-1_amd64.deb libdrm-intel1_2.4.101-2~18.04.1_amd64.deb libdrm-nouveau2_2.4.101-2~18.04.1_amd64.deb libdrm-radeon1_2.4.101-2~18.04.1_amd64.deb libexpat1-dev_2.2.5-3ubuntu0.9_amd64.deb libfile-fcntllock-perl_0.22-3build2_amd64.deb zlib1g-dev_1%3a1.2.11.dfsg-0ubuntu2.2_amd64.deb libpng-dev_1.6.34-1ubuntu0.18.04.2_amd64.deb libfreetype6-dev_2.8.1-2ubuntu2.2_amd64.deb pkg-config_0.29.1-0ubuntu2_amd64.deb libfontconfig1-dev_2.12.6-0ubuntu2_amd64.deb libfontenc1_1%3a1.1.3-1_amd64.deb libgdbm-dev_1.14.1-6_amd64.deb libglapi-mesa_20.0.8-0ubuntu1~18.04.1_amd64.deb libllvm10_1%3a10.0.0-4ubuntu1~18.04.2_amd64.deb libsensors4_1%3a3.4.0-4ubuntu0.1_amd64.deb libgl1-mesa-dri_20.0.8-0ubuntu1~18.04.1_amd64.deb libglvnd0_1.0.0-2ubuntu2.3_amd64.deb libx11-xcb1_2%3a1.6.4-3ubuntu0.4_amd64.deb libxcb-dri2-0_1.13-2~ubuntu18.04_amd64.deb libxcb-dri3-0_1.13-2~ubuntu18.04_amd64.deb libxcb-glx0_1.13-2~ubuntu18.04_amd64.deb libxcb-present0_1.13-2~ubuntu18.04_amd64.deb libxcb-sync1_1.13-2~ubuntu18.04_amd64.deb libxdamage1_1%3a1.1.4-3_amd64.deb libxfixes3_1%3a5.0.3-1_amd64.deb libxshmfence1_1.3-1_amd64.deb libglx-mesa0_20.0.8-0ubuntu1~18.04.1_amd64.deb libglx0_1.0.0-2ubuntu2.3_amd64.deb libgl1_1.0.0-2ubuntu2.3_amd64.deb libgl1-mesa-glx_20.0.8-0ubuntu1~18.04.1_amd64.deb xorg-sgml-doctools_1%3a1.11-1_all.deb x11proto-dev_2018.4-4_all.deb x11proto-core-dev_2018.4-4_all.deb libice-dev_2%3a1.0.9-2ubuntu0.18.04.1_amd64.deb libtinfo-dev_6.1-1ubuntu1.18.04.1_amd64.deb libncursesw5-dev_6.1-1ubuntu1.18.04.1_amd64.deb libpng-tools_1.6.34-1ubuntu0.18.04.2_amd64.deb libpthread-stubs0-dev_0.3-4_amd64.deb libreadline-dev_7.0-3_amd64.deb libsm-dev_2%3a1.2.2-1_amd64.deb libsqlite3-dev_3.22.0-1ubuntu0.7_amd64.deb libssl-dev_1.1.1-1ubuntu2.1~18.04.23_amd64.deb libtcl8.6_8.6.8+dfsg-3_amd64.deb libtk8.6_8.6.8-4_amd64.deb libxau-dev_1%3a1.0.8-1ubuntu1_amd64.deb libxdmcp-dev_1%3a1.1.2-3_amd64.deb xtrans-dev_1.3.5-1_all.deb libxcb1-dev_1.13-2~ubuntu18.04_amd64.deb libx11-dev_2%3a1.6.4-3ubuntu0.4_amd64.deb libx11-doc_2%3a1.6.4-3ubuntu0.4_all.deb libxt6_1%3a1.1.5-1_amd64.deb libxmu6_2%3a1.1.2-2_amd64.deb libxpm4_1%3a3.5.12-1ubuntu0.18.04.2_amd64.deb libxaw7_2%3a1.0.13-1_amd64.deb libxcb-shape0_1.13-2~ubuntu18.04_amd64.deb libxcomposite1_1%3a0.4.4-2_amd64.deb x11proto-xext-dev_2018.4-4_all.deb libxext-dev_2%3a1.3.3-1_amd64.deb libxrender-dev_1%3a0.9.10-1_amd64.deb libxft-dev_2.3.2-1_amd64.deb libxi6_2%3a1.7.9-1_amd64.deb libxrandr2_2%3a1.5.1-1_amd64.deb x11proto-scrnsaver-dev_2018.4-4_all.deb libxss-dev_1%3a1.2.2-1_amd64.deb libxt-dev_1%3a1.1.5-1_amd64.deb libxtst6_2%3a1.2.3-1_amd64.deb libxv1_2%3a1.0.11-1_amd64.deb manpages-dev_4.15-1_all.deb tcl8.6_8.6.8+dfsg-3_amd64.deb tcl_8.6.0+9_amd64.deb tcl8.6-dev_8.6.8+dfsg-3_amd64.deb tcl-dev_8.6.0+9_amd64.deb tk8.6_8.6.8-4_amd64.deb tk_8.6.0+9_amd64.deb tk8.6-dev_8.6.8-4_amd64.deb tk-dev_8.6.0+9_amd64.deb x11-utils_7.7+3build1_amd64.deb xbitmaps_1.1.1-2_all.deb xterm_330-1ubuntu2.2_amd64.deb libffi-dev_3.2.1-8_amd64.deb
cd .. 

安装完成之后打包:

3.3 执行以上的sh脚本

通过把sh脚本安装deb包,确认安装过程是否正确,该安装包是不是能够成功安装,以上过程比较繁琐,在安装时需要经过比较多的调试。尤其对于新手需要进行比较多次的尝试。

3.4 所学

在进行以上操作的过程中,需要一个好的虚拟机,在进行每一次操作后最好是要每一个重要的操作后都要打一个快照,要不然就复制一个虚拟机,当然打快照时更好的选择了,因为我们并不知道这个操作是不是会引起比较严重的后果

3.5 打包发送

4. 参考文献

https://blog.csdn.net/IT_Holmes/article/details/115830078
https://www.cnblogs.com/2020javamianshibaodian/p/12912933.html
https://blog.csdn.net/a71468293a/article/details/113603682
mysql 配置

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/722377.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

密码学学习笔记(四):Authenticated Encryption - 认证加密

加密数据的最新方法是使用一种称为一体式结构的认证加密算法,该算法也称为有附加数据的认证加密。从之前的博客中,我们看到在特定的操作模式中使用的分组密码,如CBC、OFB、CFB、CTR,提供了IND-CPA安全性。 但是IND-CCA安全性呢&a…

电脑卡顿甚至崩溃?那重置系统吧

我们平时用电脑,最怕遇到蓝屏、死机、报错,等等问题。有时还会碰到些奇奇怪怪的系统问题 文章目录 问题场景:解决方案:一、重启电脑二、移除外接设备三、系统还原1、设置系统还原2、如何进行系统还原3、系统还原失败怎么办 四、卸…

有源差分探头的电压限定和检查步骤

为了使传统示波器能够显示和测试高共模电压的电路波形,有源差分探头对示波器测量性能延伸到了电子功率变换器、 逆变器、 电机的速度控制、 开关电源和许多应用程序的测试。 差分探头外观构成: A-输出线:连接示波器的 BNC 输出连接头和辅助性…

【操作系统】c语言--进程调度算法(FCFS和SPN)

创作不易&#xff0c;本篇文章如果帮助到了你&#xff0c;还请点赞 关注支持一下♡>&#x16966;<)!! 主页专栏有更多知识&#xff0c;如有疑问欢迎大家指正讨论&#xff0c;共同进步&#xff01; &#x1f525;c系列专栏&#xff1a;C/C零基础到精通 &#x1f525; 给大…

Docker轻量级可视化工具Portainer

掌握Portainer的部署和使用。 Portainer 是一款轻量级的应用&#xff0c;它提供了图形化界面&#xff0c;用于方便地管理Docker环境&#xff0c;包括单机环境和集群环境。 Portainer&#xff08;https://www.portainer.io/&#xff09;是一个流行的开源Docker管理工具&#xff…

【设计模式】第八章:桥接模式详解及应用案例

系列文章 【设计模式】七大设计原则 【设计模式】第一章&#xff1a;单例模式 【设计模式】第二章&#xff1a;工厂模式 【设计模式】第三章&#xff1a;建造者模式 【设计模式】第四章&#xff1a;原型模式 【设计模式】第五章&#xff1a;适配器模式 【设计模式】第六章&…

前端为什么使用svg图片

参考链接&#xff1a; 1.http://www.youngzi.cn/5392.html 2.https://baijiahao.baidu.com/s?id1728784571128338709&wfrspider&forpc SVG是什么&#xff1f;SVG有什么用&#xff1f;为什么要使用SVG&#xff1f;本篇文章就给大家介绍一下SVG的相关知识&#xff0c;让…

【Unity】HyBridCLR初探

完成目标: 创建热更新程序集加载热更新程序集,并执行其中热更新代码,打印 Hello, HybridCLR修改热更新代码,打印 Hello, World准备环境​ 安装Unity HybridCLR也支持2019.4.x,但新手请先按照下面要求跑通流程后,再根据安装HybridCLR文档尝试2019.4.x。 安装 2020.3.26+…

如何部署LVS负载均衡集群(DR模式)

目录 一、集群概念与NAT模式LVS集群 二、部署LVS集群&#xff08;DR模式&#xff09; 第一步 关闭防火墙和安全机制 第二步 手动配置ip_vs 第三步 安装ipvsadm工具 第四步 创建虚拟网卡 第五步 修改虚拟网卡配置内容 第六步 开启虚拟网卡并加入路由 第七步 调整proc相…

linux学习(韩顺平 一周学会linux)

b站链接&#xff1a;b站 共27个小时 P3-P85 linux基础篇 P86-P90 java定制篇 P91-P107 大数据shell篇 P108-P115 python定制篇 P117-P141 linux高级篇 P142-P153 面试题 四个阶段&#xff1a; 一、基本操作 二、配置 三、搭建开发环境 四、写一些基本的shell脚本 五、安全设置…

list容器语法

文章目录 listlist基本概念list的优点&#xff1a;list的缺点&#xff1a;重要性质 list 的使用方法list构造函数list 赋值和交换list 长度/大小操作list 插入元素和删除元素访问list 反转和排序sort链表排序案例forward_list&#xff08;C11&#xff09;forward_list 的使用方…

Openlayers实战:绘制点、线、圆、多边形

Openlayers地图中,绘制图形是非常重要的一个功能。Openlayers主要使用draw类来绘制图形,在实际项目中经常会绘制点、线、多边形、矩形等。 下面的示例是绘制点、线、圆形、多边形。 效果图 源代码 /* * @Author: 大剑师兰特(xiaozhuanlan),还是大剑师兰特(CSDN) * @此…

抖音关键词排名怎么做

抖音seo关键词搜索排名推广 产品及合作流程 了解抖音seo关键词搜索流量——用工具选择需要优化的关键词确认——预存套餐及服务——付款签约——开通关键词管理后台——建运营群流程化推进 如何选择优化的关键词? 先选3-5个主词 在工具分别输入主词 列出来的词&#xff0c…

【AJAX】跨域问题笔记

跨域 一、同源策略&#xff08;Same-Origin Policy&#xff09; 是浏览器的安全机制。 同源&#xff1a;协议、域名、端口号必须完全相同 客户端 服务端 违背同源策略就是跨域 二、如何解决跨域 1、JSOPN &#xff08;1&#xff09;JSONP是什么 JSONP(JSON with Padding…

Unity XR Interaction Toolkit(二)手柄交互

目录 一、结构配置 二、交互事件 1、事件设置 2、绑定设置 3、组合按键输入 4、事件挂载 三、代码响应 1、事件回调 2、数值获取 注意&#xff0c;本文的Toolkit版本在2.2以上&#xff0c;低版本没有样例和部分api&#xff0c;更新方法在第一张环境配置内 打开Packag…

力扣 46. 全排列

题目来源&#xff1a;https://leetcode.cn/problems/permutations/description/ C题解&#xff1a; 全排列每一次都需要从第一个元素开始遍历&#xff0c;所以不用ind标记开始元素&#xff0c;都从0开始&#xff0c;但需要一个数组used不断更新哪些元素已经被使用&#xff0c;遍…

基于SpringBoot+vue的家具销售电商平台设计与实现

博主介绍&#xff1a; 大家好&#xff0c;我是一名在Java圈混迹十余年的程序员&#xff0c;精通Java编程语言&#xff0c;同时也熟练掌握微信小程序、Python和Android等技术&#xff0c;能够为大家提供全方位的技术支持和交流。 我擅长在JavaWeb、SSH、SSM、SpringBoot等框架…

k8s从节点加入主节点[preflight] Running pre-flight checks卡住(已解决)k8s常用问题解决

文章目录 一、写在前面二、问题排查1、执行join时加上-v2参数查看日志2、处理证书问题3、重启4、其他方法15、其他方法2 三、总结参考资料 一、写在前面 部署k8s时&#xff0c;主节点部署成功了&#xff0c;从节点1执行kubeadm join也成功了&#xff0c;从节点2执行kubeadm jo…

go专业数据结构与算法

go语言之专业数据结构与算法 2.数组概念 3.golang实现数组结构 4.golang实现数组迭代器 5.数组栈的高级实现 6.栈模拟低级递归 7.斐波那契数列栈模拟递归 8.递归实现文件夹遍历 9.栈模拟文件递归 10.层级展示文件夹 11.数组队列的实现 12.队列实现遍历文件夹 13.循环队列 14.链…

Java - 异常处理

异常介绍 对异常进行捕获&#xff0c;保证程序可以继续运行&#xff0c;提升程序的健壮性。 执行过程中所发生的异常时间可分为两大类&#xff1a; Error&#xff1a; Java虚拟机无法解决的严重问题。如&#xff1a;JVM系统内部错误&#xff0c;资源耗尽等严重情况。比如&…