界限:
我在这里有一个Linux64(Redhat 6.8)测试服务器,我可以通过内部网的FTP访问。此服务器无法访问互联网。
我想在该机器上使用SVN命令行客户端和Python与cx_Oracle和oracle客户端
我没有root权限。
在我看来,我认为我将从最简单的SVN开始: 我的第一个猜测是,我可以在我的Windows机器上下载SVN for Redhat 6的二进制文件,然后使用FTP将它们复制到Linux机器上。
但我在这里发现的是" yum install subversion" (由于缺少root和Internet访问而无效)和文件" subversion_installer_1.9.sh"我从WANdisco获得(但也需要root和Internet访问)。
为什么这么复杂?我来自一个Windows世界,我现在有点失望,因为我一直认为像这样的东西在LINUX上应该很容易(只是复制二进制文件,你很高兴)。 我有什么看法? 你会怎么做?
答案 0 :(得分:1)
你可以在没有root权限的情况下“安装”Subversion和Python以及cx_Oracle,但是由于你偏离了“正常”的方法,你会发现它比你只是遵循“正常”方法要困难得多。而“正常”方法是使用需要root访问权限的包管理器(如yum)。 Windows的方法完全不同。有很多争论哪个是“更好”,但我不会在这里讨论!
答案 1 :(得分:1)
在Linux上安装一些东西 就像复制二进制文件一样简单。困难在于获得正确的二进制文件进行复制。与Windows系统API(kernel32.dll
/ user32.dll
/ gdi32.dll
)在版本之间非常一致且高度兼容的Windows不同,Linux发行版具有多个系统API(glibc,newlib,uclibc)并且更频繁ABI破坏了libc.so. n 中的 n 。
当您从分发维护者托管的存储库下载二进制文件时,您知道它们构建为使用与系统上的每个其他二进制文件相同的各种依赖项版本。从开发者那里获得的二进制文件没有这样的保证,开发人员可能使用完全不同的发行版。
因此,开源项目(如subversion)的常见之处在于从开发人员那里获取源代码的存档,解压缩,运行./configure
以自定义系统上系统库的makefile,{{ 1}}构建使用发行版特定系统库风格的二进制文件,并make
安装在您具有写入权限的任何目录中。