我的虛擬機位於封閉網路內,因此我無法使用apt install apache2
.相反,我透過以下步驟手動安裝:
tar -xzvf httpd-2.4.51.tar.gz
在/home/my_username
目錄中,取得httpd-2.4.51
目錄- 放置在它們之下
apr-1.7.0.tar.gz
,apr-iconv-1.2.2.tar.gz
以及所有它們之下apr-util-1.6.1.tar.gz
httpd-2.4.51/srclib/
tar -xzvf
- 透過省略它們的版本來重命名這些解壓縮的 APR 目錄,
apr-util-1.6.1
例如apr-util
使用mv apr-util-1.6.1 apr-util
tar -xzvf pcre-8.45.tar.gz
在/home/my_username
目錄中,取得pcre-8.45
目錄cd pcre-8.45
和./configure --prefix=/usr/local/pcre; make; make install
- 最後安裝了Apache
./configure --prefix=/usr/local/apache2 --with-pcre=/usr/local/pcre; make; make install
我檢查了/usr/local/apache2
文件夾,一切似乎都很好。但是當我嘗試啟動 Apache 時systemctl start apache2
,cmd 說Failed to start apache2.service: Unit apache2.service not found.
。是否有可能即使安裝後裝置也無法識別 Apache,還是我應該將 Apache 註冊為 Linux 服務?網路上的大多數解決方案都假設使用該apt install apache2
方法,並且系統將在後面處理所有必需的內容。就我而言,我相信我錯過了一些配置設置,所以我被困在這裡。歡迎任何建議。
答案1
嘗試下載.deb
適用於您的發行版的軟體包並安裝它dpkg
。 (例如dpkg -i package.deb
)
答案2
如果沒有互聯網接入,建立具有所有相依性的 apache2 是非常困難的。替代選項:透過網路安裝 Ubuntu 20.04(您可以使用從 USB 運行的 Ubuntu 20.04 live iso)。
Run in the terminal mkdir ${HOME}/apache2 && cd apache2
閱讀答案https://askubuntu.com/search?q=recursively+list+dependencies
Download the packages to the apache2 folder
apt-get download $(apt-cache depends --recurse --no-recommends --no-suggests --no-conflicts --no-breaks --no-replaces --no-enhances apache2 | grep "^\w" |grep -v "i386" | sort -u)
grep -v "i386" (To ignore the i386 ones)
將 apache2 資料夾複製到沒有 Internet 的虛擬機器中。
In the apache2 folder, run sudo dpkg -i *.deb in the terminal