防止有些包官方升级之后致使的不兼容,好比php5和php7,目前已经没法apt-get install php5了,php
deb包在哪里?html
1,方法1,若是你有一个已经安装好了的同样的环境你能够在老系统上找mysql
sudo apt-get 的包在路径 /var/cache/apt/archives
下,通常会有对应的deb包sql
2,方法2,下载(这一步一样须要一台老的差很少的系统,而且安装过你想要的包)apache
apt-cache show 包名称 #这会显示有关包的详情,其中有一行Filename,拷贝内容,前面加上“http://archive.ubuntu.com/ubuntu/” 用网络访问,而后下载
最近忽然发现有些arm机器并不能在ubuntu网站上找到合适的安装包,因此须要找到它本身适用的源才能下载所需的deb包,那么本身的源怎么找呢?
cat /etc/apt/sources.list打印出源来,而后加上某个包后面的Filename的结果,就能够下载想要的deb包了
sudo dpkg -i xxx.deb
要注意,安装前要确认你的deb文件是否适用于你的系统,若是是ubuntu16.04装到ubuntu18.04上,估计是不行,有些包有依赖,必须按顺序来,另外dpkg装的包不会在/var/cache/apt/archives中备份json
废话一句,dpkg安装的包在/var/cache/apt/archives中找不到备份ubuntu
建议先装mysql再装php,由于pdo须要enabled为mysqlvim
1,php7.2(sudo dpkg -i )网络
#包名称简写
php-common... php7.2-common... php7.2-json... php7.2-opcache... php7.2-readline... php7.2-cli... libapache2... php7.2_7.2... php_1%3a7.2... php7.2-curl... php7.2-mysql... php-mysql... php-curl...
2,mysqlphp7
#包名称简写 mysql-common.... mysql-client_5.7... mysql-client-5.7... mysql-client-core... mysql-server-core.... sudo apt-get install libevent-core-2.1-6(这么装是由于我没有这个deb包,不知是丢失了仍是其余缘由没有) mysql-server_5.7... mysql-server-5.7...
装完之后直接用sudo不要密码能够登陆,若是想要改为密码验证登陆,那须要在mysql的终端中输入以下四句:
update mysql.user set authentication_string=password('你的密码') where user='root' and Host ='localhost';
update user set plugin="mysql_native_password";
flush privileges;
quit;
3,apache2
apache很奇怪,在线安装完之后在/var/cache/apt/archives下面有四个包,可是不必定能保存多久,我在旧的机器上没有找到apache2的包文件因此没有尝试离线安装apache2
4,遇到问题,pdo驱动不工做,
解决办法:
sudo vim /etc/php/7.2/apache2/php.ini 添加两行到最后,没有分号: extension = pdo.so extension = pdo_mysql.so
重启apache
sudo /etc/init.d/apache2 restart 从新运行,居然能够了
感谢原做者,注意,此方法本人不熟,仅在deb离线装包适用,目前不知道是否将来有什么隐含的坑。