curl "https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh" | sh
或者:
curl https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh > Miniconda.sh
bash Miniconda.sh -b -p ~/conda
# -b is used to specify that this is done "in batch", so skip the EULA prompt
# -p lets you specify where you want conda installed
下载软件包,并使用--resolve标志指明要包括依赖项。 yumdownloader --resolve openslide-tools个 迭代所有下载的rpm文件。 for i in *.rpm; do rpm2cpio $i | cpio -idv; done 输出将存储在当前工作目录$PWD/usr/*中
5条答案
按热度按时间67up9zun1#
可以使用yum和rpm在发行版的仓库中安装任何包。
查找软件包名称
使用
yum search
。下载
使用
yumdownloader
(CentOS默认提供)下载包及其所有依赖项。您需要传递--resolve
以获得依赖项解析。yumdownloader
下载到当前目录,除非您指定--destdir
。选择前缀位置
它可能是
~
、~/centos
或~/y
。如果您的主目录由于位于网络文件系统上而速度较慢,则可以将其放入/var/tmp/...
。解压缩所有.rpm软件包
将所有.rpm软件包解压缩到您选择的前缀位置。
rpm2cpio
将.rpm文件作为.cpio归档文件输出到stdout。cpio
从标准输入读取-i
表示提取(到当前目录)-d
表示创建缺少的目录您可以选择使用
-v
:冗长的配置环境
您需要配置环境变量
PATH
和LD_LIBRARY_PATH
,以便安装的软件包能够正常工作。编辑备注(感谢@AmitNaidu指出我的错误):
根据有关启动文件的bash文档,当通过ssh连接到服务器时,只有.bashrc是源文件:
由远程shell守护程序调用
Bash会尝试判断它何时以连接到网络的标准输入运行,比如由远程shell守护进程(通常是rshd)或安全shell守护进程sshd执行。如果Bash判断它是以这种方式运行的,它会读取并执行~/.bashrc中的命令,如果该文件存在并且可读的话。
如果你想用这种方式安装很多软件包,你可能想自动化这个过程,如果是这样的话,看看this repository。
额外注意:如果你试图安装任何
gcc, zlib, make, cmake, git, fish, zsh or tmux
,你真的应该考虑使用conda,请参阅my other answer。0h4hbjxa2#
使用Miniconda,康达锻造是惊人的。
或者:
常用软件包:
conda install gcc
conda install make
conda install cmake
conda install git
conda install -c conda-forge fish
conda install -c ActivisionGameScience zsh
型conda install -c conda-forge tmux
da/lib
文件夹并符号链接ln -sT libtinfow.so.6.1 libtinfo.so.6
来解决它对于其余的,你可以尝试
https://anaconda.org/search?q=
。我已经尝试了很长时间让一个包管理器在CentOS/RedHat上工作得很好,但是没有成功。我能做的最好的事情是在另一个具有根访问权限的CentOS上的正确位置安装一个Gentoo前缀,然后scp整个安装的
.tar.xz
到目标服务器(获得Gentoo前缀的正确GCC的唯一方法)。我可以在目标服务器上安装X1 M12 N1 X(构建和安装)包,但不断遇到本地和权限问题。我最近用conda实现了一些有趣的软件包的用户安装。下面是如何从命令行安装它:
如果像我一样,您的主文件夹托管在远程驱动器(网络文件系统)上,您可能不希望将其安装在您的主文件夹中,因此您可能希望使用类似
mkdir /var/tmp/lo
的文件夹,然后在安装过程中指定类似/var/tmp/lo/da
的安装文件夹。然后你就可以安装很多软件包了,虽然可能不是所有你想要的。大多数时候,如果它不在默认通道,它会在
conda-forge
。你可以在https://anaconda.org/search?q=
检查现有的软件包在conda之后我尝试过的其他软件包管理器:
Linux版本
我以为安装homebrew(linuxbrew)会很容易,但是他们的源代码很混乱,使用硬编码的ruby解释器的绝对路径,这失败了,因为它不是最后一个版本,等等,我放弃了。
否定
Nix仍然要求你使用/nix文件夹。他们也是硬编码的,在安装过程中很难从每次下载中正确地使用它(更不用说更新了)。
中文字首
我希望Gentoo前缀更容易直接安装,因为我们gcc可以在目标服务器上使用。--好的,我试过了,但在安装过程中遇到了权限错误(2018-09-28):
软件包来源
我现在要尝试pkgsrc。--如果在CentOS 6上或者遇到(G)LibC版本问题,请使用(旧的)64位EL 6.x版本。--运气不好,pkgsrc硬编码
/usr/pkg/sbin
和/usr/pkg/bin
。所以它不能作为用户使用,除非可能设置一个fakechroot环境。但我从来没有这样做过,我预计会出现可用性问题。如果您成功安装了任何其他软件包管理器,请给出注解/回答。
xzlaal3s3#
下载软件包,并使用
--resolve
标志指明要包括依赖项。yumdownloader --resolve openslide-tools
个迭代所有下载的
rpm
文件。for i in *.rpm; do rpm2cpio $i | cpio -idv; done
输出将存储在当前工作目录
$PWD/usr/*
中zf2sa74q4#
goldilocks的这个答案听起来就像你正在寻找的。
https://unix.stackexchange.com/a/61295
这仍然不是一个漂亮的过程,但似乎比从源代码构建更容易。
否则,您可能希望将非根包管理器作为yum的替代方案。
z9ju0rcb5#
是的。如果软件是打包在repos。和管理员安装PackageKit命令-未找到包。
请参阅:https://fedoraproject.org/wiki/Features/PackageKitCommandNotFound