然而,没有人能回答……为什么命令会sudo apt-get install lamp-server^
安装一些 Perl 库?正如所述帮助中心。
帮助链接说,命令安装以下包:apache2 apache2-mpm-prefork apache2-utils apache2.2-common libapache2-mod-php5 libapr1 libaprutil1 libdbd-mysql-perl libdbi-perl libnet-daemon-perl libplrpc-perl libpq5 mysql-client-5.5 mysql-common mysql-server mysql-server-5.5 php5-common php5-mysql
。
如果我只需要 Apache、MySQL 和 PHP,我可以跳过安装 Perl 吗?或者我的“基于 PHP”的 LAMP 需要这些包?
答案1
我以前从未注意到这一点,但是文档将 LAMP 视为:
Linux + Apache + MySQL + PHP/Perl/Python
但这不是真正的原因。这些是所需的包。我想检查一下我的一台没有 LAMP(但是 LEMP 来自原始包而不是 taskel)的服务器,但它仍然安装了libdbd-mysql-perl
(等)。
当我问为什么时,我mysql-server
间接地看到了原因:
$ aptitude why libdbd-mysql-perl
u mysql-server Depends mysql-server-5.5
C A mysql-server-5.5 Depends mysql-client-5.5 (>= 5.5.47-0ubuntu0.14.04.1)
i A mysql-client-5.5 Depends libdbd-mysql-perl (>= 1.2202)
客户mysql
端本身是用 C 语言编译的,但是它附带的一些脚本是 Perl 的:
$ file $(which mysql_find_rows)
/usr/bin/mysql_find_rows: Perl script, ASCII text executable
$ dpkg -S /usr/bin/mysql_find_rows
mysql-client-5.5: /usr/bin/mysql_find_rows