为什么 Perl 包含在 lamp-server^ 中?

Mar*_* B. 3 lamp mysql php apache2

我知道LAMP安装很多方法,也有很多问题。

但是,没有答案...为什么命令会sudo apt-get install lamp-server^安装一些 Perl 库?help.ubuntu.com上所述。

帮助链接显示,命令安装以下软件包: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 需要这些包?

Oli*_*Oli 5

我以前从未注意到这一点,但文档将 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)
Run Code Online (Sandbox Code Playgroud)

客户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
Run Code Online (Sandbox Code Playgroud)