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

文章目录

    • 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 配置

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

vscode安装+配置+使用+调试【保姆级教程】

1. VScode是什么 Visual Studio Code简称VS Code,是一款跨平台的、免费且开源的现代轻量级代码编辑器,支持几乎主流开发语言的语法高亮、智能代码补全、自定义快捷键、括号匹配和颜色区分、代码片段提示、代码对比等特性,也拥有对git的开箱即…

架构师进阶之路 - 微服务怎么划分

目录 微服务划分目标 业务、技术、团队导向规划服务 领域检查 依赖DAG检查 分布式事务检查 性能分布检查 稳定(易变)性检查 调用链检查 微服务划分目标 我们常说服务的合理划分是微服务成功的重中之重,一个合理的服务划分应该符合一下…

Linux性能优化实践——CPU上下文

CPU上下文切换 Linux是一个多任务操作系统,它支持远大于CPU数量的任务同时运行。这些任务不是真正意义上的并行运行,而是系统在短时间内,将CPU轮流分配给它们,造成任务同时运行的错觉。 CPU需要知道任务从哪里加载,从…

Linux调优–I/O 调度器

Linux 的 I/O 调度器是一个以块式 I/O 访问存储卷的进程,有时也叫磁盘调度器。Linux I/O 调度器的工作机制是控制块设备的请求队列:确定队列中哪些 I/O 的优先级更高以及何时下发 I/O 到块设备,以此来减少磁盘寻道时间,从而提高系…

QC51XX---I2c使用

QCC51XX---系统学习目录_嵌入式学习_force的博客-CSDN博客 今天我们聊聊I2C的使用。在开发过程中多多少少会加入一些外围传感器可以给用户带来更好的使用体验。例如,利用接近传感器识别戴上耳机和取下耳机,从而去自动暂停播放音乐,或接听转移通话。又例如,用触摸或敲击替代…

软件安全技术复习内容

软件安全技术 边复习边写的,有错误及时指正第一章 软件安全概述零日漏洞安全威胁分类CIA安全基本属性PDRR模型软件安全的主要方法和技术基本方法主要技术 第二章 软件漏洞概述概念软件漏洞成因分析软件漏洞分类基于漏洞成因的分类基于漏洞利用位置的分类基于威胁类型…

基于Stable Diffusion的2D游戏关卡生成【实战】

接下来的几篇文章将与常规主题有所不同(这是在从事通用机器人技术的职业中吸取的教训)。 相反,我决定利用我的一些新空闲时间 1 边做边学,并使用所有酷孩子都在谈论的一些很酷的新 ML。 推荐:用 NSDT设计器 快速搭建可…

第五章 运输层【计算机网络】

第五章 运输层【计算机网络】 前言推荐第五章 运输层5.1运输层协议概述5.1.1 进程之间的通信5.1.2运输层的两个主要协议5.1.3运输层的端口 5.2用户数据报协议UDP5.2.1UDP概述5.2.2UDP的首部格式 5.3传输控制协议TCP概述5.3.1TCP最主要的特点5.3.2TCP的连接 5.4可靠传输的工作原…

Node中express路由基本使用

1.路由的基本使用 //引入express const expressrequire("express") //创建路由 const appexpress() //规定路由的请求方法 app.get(/,(req,res)>{res.end("hello express") }) //启动路由,并且端口为9000 app.listen(9000,()>{console.l…

通俗易懂讲解CPU、GPU、FPGA的特点

1. CPU vs GPU 大家可以简单的将CPU理解为学识渊博的教授,什么都精通;而GPU则是一堆小学生,只会简单的算数运算。可即使教授再神通广大,也不能一秒钟内计算出500次加减法。因此,对简单重复的计算来说,单单一…

注册HTTPS证书

注册HTTPS证书 1. 从ACME获取脚本文件2. 运行shell脚本3. 安装socat4. 把acme.sh这个脚本添加到环境变量软连接直接添加到.bashrc 5. 注册ACME账户6. 注册证书6.1. 首先把80端口打开6.2. 申请证书 7. 部署到Flask上 1. 从ACME获取脚本文件 wget https://get.acme.shmv index.ht…

多元分类预测 | Matlab 鲸鱼算法(WOA)优化xgboost的分类预测模型,多特征输入模型,WOA-xgboost分类预测

文章目录 效果一览文章概述部分源码参考资料效果一览 文章概述 多元分类预测 | Matlab 鲸鱼算法(WOA)优化xgboost的分类预测模型,多特征输入模型,WOA-xgboost分类预测 多特征输入单输出的二分类及多分类模型。程序内注释详细,直接替换数据就可以用。程序语言为matlab,程序可…

python接口自动化(二十三)--unittest断言——上(详解)

简介 在测试用例中,执行完测试用例后,最后一步是判断测试结果是 pass 还是 fail,自动化测试脚本里面一般把这种生成测试结果的方法称为断言(assert)。用 unittest 组件测试用例的时候,断言的方法还是很多的…

最新AI创作系统V5.0.2+支持GPT4+支持ai绘画+实时语音识别输入+文章资讯发布功能+用户会员套餐

最新AI创作系统V5.0.2支持GPT4支持ai绘画实时语音识别输入文章资讯发布功能用户会员套餐! AI创作系统一、源码系统介绍二、AI创作系统程序下载三、安装教程四、主要功能展示五、更新日志 AI创作系统 1、提问:程序已经支持GPT3.5、GPT4.0接口 2、支持三种…

python爬虫_django+vue+echarts可视化查询所有CSDN用户质量分

文章目录 ⭐前言⭐ 效果⭐django简介⭐vue3简介⭐vue引入echarts ⭐前后分离实现💖 django代码层💖 vue3代码层结束 ⭐前言 大家好,我是yma16,本文分享关于前后分离djangovueecharts可视化查询CSDN用户质量分。 该系列文章&#…

Elasticsearch集群

单点的问题 单台机器存储容量有限,无法实现高存储。 单服务器容易出现单点故障,无法实现高可用。 单服务的并发处理能⼒有限,无法实现高并发。 集群的结构 数据分片:把数据拆分成多份,每一份存储到不同机器节点&a…

【C++修炼之路】string 概述

👑作者主页:安 度 因 🏠学习社区:StackFrame 📖专栏链接:C修炼之路 文章目录 一、string 为何使用模板二、string 类认识1、构造/析构/赋值运算符重载2、容量操作3、增删查改4、遍历5、迭代器6、非成员函数…

P1 第一章 电路模型与电路定律

1、什么是电路模型? 实际电路与电路模型间的关系?建立在相同的电路理论基础之上。 实际电路定义:由电工设备和电气器件,按照预期目的连接构成的,电流的通路。 实际电路的功能:能量方面,可以传输…

Vivado 下 呼吸灯实验

目录 Vivado 下 呼吸灯实验 1、实验简介 2、实验环境 3、实验任务 4、硬件设计 5、程序设计 5.1、呼吸灯代码如下: 5.2、添加约束文件 .xdc 5.3、下载验证 Vivado 下 呼吸灯实验 呼吸灯最早由苹果公司发明并应用于笔记本睡眠提示上,其一经展出&…

MySQl数据库第五课 --------在SQl的简单命令--------学习学习

作者前言 欢迎小可爱们前来借鉴我的gtiee秦老大大 (qin-laoda) - Gitee.com ———————————————————————————— 目录 数据库的简单介绍 1.数据储存 2.数据库类型 (1).关系型数据库 (2).非关系型数据库…