ubuntu 離線裝包

1,爲何要離線裝包

防止有些包官方升級之後致使的不兼容,好比php5和php7,目前已經沒法apt-get install php5了,php

2,裝包之前你得有安裝包文件,deb或者是run

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包了

3,方法2,安裝deb包文件

sudo dpkg -i xxx.deb

要注意,安裝前要確認你的deb文件是否適用於你的系統,若是是ubuntu16.04裝到ubuntu18.04上,估計是不行,有些包有依賴,必須按順序來,另外dpkg裝的包不會在/var/cache/apt/archives中備份json

4,目前知道的經常使用包的安裝順序(經驗所得)

廢話一句,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離線裝包適用,目前不知道是否將來有什麼隱含的坑。

相關文章
相關標籤/搜索