apt-get 安装没有依赖项
apt-get install without dependencies
我正在尝试在我的 vps 以及我从源代码安装的 Maraiadb 上安装 phpmyadmin。
Mariadb 10.1.12 没问题 运行 。
当我尝试安装 phpmyadmin
apt-get install phpmyadmin
然后显示
The following extra packages will be installed:
libdbd-mysql-perl libmysqlclient18 mysql-client mysql-client-5.5 mysql-common php5-mysql
Suggested packages:
mysql-server maridadb-server virtual-mysql-server www-browser
The following NEW packages will be installed:
libdbd-mysql-perl libmysqlclient18 mysql-client mysql-client-5.5 mysql-common php5-mysql phpmyadmin
0 upgraded, 7 newly installed, 0 to remove and 0 not upgraded.
1 not fully installed or removed.
如果我按 y 继续它,那么之后我的 Mariadb 就不能工作了,它会出现套接字问题,
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2 "No such file or directory")
可能是由于 mysql-client 安装了 phpmyadmin,然后为了修复它我清除了 mysql 包,
sudo apt-get --purge remove "mysql*"
然后 mariadb 又开始正常工作了。
所以我想知道我是否可以在没有这些依赖项的情况下安装 phpmyadmin,我试图在
中找到 phpmyadmin
/var/lib/dpkg/status
这样我就可以删除它的依赖项,但是 phpmyadmin 不在列表中:(
我正在使用 debian 8 jessie
phpmyadmin
似乎有一个 sql 服务器作为依赖,因此它默认安装 mysql。因为您已经安装了 Mariadb 的自编译版本,所以这会导致问题。在您的情况下,mysql 似乎使用了您实际想要用于 Mariadb 的套接字。
您当然可以更改这两个 sql 服务器的 ports/sockets,以便它们可以同时 运行,但是 运行 两个 sql 服务器没有多大意义同时在同一台服务器上。
更好的方法...
所以更好的方法是为您安装的 mysql 服务器创建一个假包。您可以使用 equivs
执行此操作。更多信息:How to tell apt that dependencies are resolved manually?.
所以在你的情况下,你应该弄清楚 Debian 安装了哪些 maraiadb
包,并伪造你知道你已经在你的服务器上安装了内容的每个包。
这是我的一般指南
如何使用等价物
我建议你在处理假包时使用新文件夹。 (mkdir ~/fakepackages && cd ~/fakepackages
)
- 获取你要仿冒的程序原包:
apt-get download mypackage
获取.deb
文件的控制文件。
您可以通过提取 .deb 文件并找到控制文件来完成此操作。
我推荐以下步骤:
- 创建一个新目录并移入其中:
mkdir package&&cd package
(您可以在下载 .deb 文件之前执行此操作)
ar xv package.deb
tar xzf control.tar.gz
- 将控制文件复制到您找到它的地方:
cp control ../mypackage.ctl.orig
- 退出目录并删除它:
cd ..
和rm -rf package
- 保持控制文件打开。
- 新建一个控制文件:
equivs-control mypackage.ctl
它会给你一个模板。现在结合您所知道的关于您已安装并想要伪造的(自编译)程序的信息以及原始控制文件的信息来创建您的伪造控制文件。您应该尝试添加尽可能多的真值。至少提供这些值很重要:
- 部分
- 套餐
- 提供(如果原控制文件有)
- 描述
请在描述中注明是假货
- 构建假包:
equivs-build mypackage.ctl
- 安装假包:
sudo dpkg -i mypackage_1.0.deb
我正在尝试在我的 vps 以及我从源代码安装的 Maraiadb 上安装 phpmyadmin。 Mariadb 10.1.12 没问题 运行 。 当我尝试安装 phpmyadmin
apt-get install phpmyadmin
然后显示
The following extra packages will be installed:
libdbd-mysql-perl libmysqlclient18 mysql-client mysql-client-5.5 mysql-common php5-mysql
Suggested packages:
mysql-server maridadb-server virtual-mysql-server www-browser
The following NEW packages will be installed:
libdbd-mysql-perl libmysqlclient18 mysql-client mysql-client-5.5 mysql-common php5-mysql phpmyadmin
0 upgraded, 7 newly installed, 0 to remove and 0 not upgraded.
1 not fully installed or removed.
如果我按 y 继续它,那么之后我的 Mariadb 就不能工作了,它会出现套接字问题,
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2 "No such file or directory")
可能是由于 mysql-client 安装了 phpmyadmin,然后为了修复它我清除了 mysql 包,
sudo apt-get --purge remove "mysql*"
然后 mariadb 又开始正常工作了。
所以我想知道我是否可以在没有这些依赖项的情况下安装 phpmyadmin,我试图在
中找到 phpmyadmin/var/lib/dpkg/status
这样我就可以删除它的依赖项,但是 phpmyadmin 不在列表中:(
我正在使用 debian 8 jessie
phpmyadmin
似乎有一个 sql 服务器作为依赖,因此它默认安装 mysql。因为您已经安装了 Mariadb 的自编译版本,所以这会导致问题。在您的情况下,mysql 似乎使用了您实际想要用于 Mariadb 的套接字。
您当然可以更改这两个 sql 服务器的 ports/sockets,以便它们可以同时 运行,但是 运行 两个 sql 服务器没有多大意义同时在同一台服务器上。
更好的方法...
所以更好的方法是为您安装的 mysql 服务器创建一个假包。您可以使用 equivs
执行此操作。更多信息:How to tell apt that dependencies are resolved manually?.
所以在你的情况下,你应该弄清楚 Debian 安装了哪些 maraiadb
包,并伪造你知道你已经在你的服务器上安装了内容的每个包。
这是我的一般指南
如何使用等价物
我建议你在处理假包时使用新文件夹。 (mkdir ~/fakepackages && cd ~/fakepackages
)
- 获取你要仿冒的程序原包:
apt-get download mypackage
获取
.deb
文件的控制文件。 您可以通过提取 .deb 文件并找到控制文件来完成此操作。我推荐以下步骤:
- 创建一个新目录并移入其中:
mkdir package&&cd package
(您可以在下载 .deb 文件之前执行此操作) ar xv package.deb
tar xzf control.tar.gz
- 将控制文件复制到您找到它的地方:
cp control ../mypackage.ctl.orig
- 退出目录并删除它:
cd ..
和rm -rf package
- 创建一个新目录并移入其中:
- 保持控制文件打开。
- 新建一个控制文件:
equivs-control mypackage.ctl
它会给你一个模板。现在结合您所知道的关于您已安装并想要伪造的(自编译)程序的信息以及原始控制文件的信息来创建您的伪造控制文件。您应该尝试添加尽可能多的真值。至少提供这些值很重要:
- 部分
- 套餐
- 提供(如果原控制文件有)
- 描述
请在描述中注明是假货
- 构建假包:
equivs-build mypackage.ctl
- 安装假包:
sudo dpkg -i mypackage_1.0.deb