背景
希望在无需互联网连接的情况下在 CentOS 6 上安装 ConTeXt。
问题
CentOS 6服务器没有Internet访问权限,但可以从同一局域网内的计算机接收文件。
有关的
存在许多相关问题,包括:
然而,这些问题并没有解决离线特性,特别是针对最新版本的 ConTeXt,http://standalone.contextgarden.net/setup/linux-64/。
问题
给定一台运行 Windows 的机器(或者 Windows 上的 Cygwin,或者 Linux,甚至根据说明可以移植),您将如何在运行 CentOS 6 的服务器上为所有用户下载并安装离线版本的 ConTeXt?
以下步骤不起作用,但可以作为我想要完成的操作的示例:
- 在 Windows 上,打开 Cygwin。
- 类型:
mkdir $HOME/context cd $HOME/上下文 curl——递归http://standalone.contextgarden.net/setup/linux-64/。
- 在 Windows 上,打开 WinSCP(或文件传输程序)。
- 连接到 CentOS 服务器。
- 传输整个
linux-64
目录。 - 断开 WinSCP。
- 在 Windows 上,打开 Putty(或其他远程 shell 访问程序)。
- 连接并登录 CentOS 服务器。
- 更改为
root
用户。 - 类型:
mkdir /opt/context cd /opt/上下文 cp -R /home/user/linux-64 。 cd linux-64 ./first-setup.sh
- 或者,断开与服务器的连接。
此时,ConTeXt 将安装在 CentOS 6 上,所有用户都可以从.tex
文件创建 PDF。
答案1
概述
由于 ConTeXt 不依赖于其树之外的任何文件,因此以下是一种解决方案:
- 在另一台 Cent OS 6 机器上安装 ConTeXt。
- 档案
/opt/context
。 - 将档案传输至离线机器。
- 删除然后再生缓存。
通过 Docker 安装 ConTeXt
这些说明介绍了如何使用 Docker 进行离线安装。如果 Docker 不可用,请使用其他虚拟化解决方案(例如虚拟盒)。
- 下载并安装 Docker。 也可以看看:
创建一个新目录(我选择
/tmp/centos
)并进入该目录。mkdir -p /tmp/centos cd /tmp/centos
启动 Docker CentOS 6 容器并将当前目录挂载到
/opt/context
。-it
开关( 的缩写--interactive --tty
)将您带入交互式会话。sudo docker run -v `pwd`:/opt/context -it centos:6 /bin/bash
现在,容器内有一个外壳。
为了能够下载必要的文件并安装 ConTeXt,请安装
rsync
和wget
。yum install -y rsync wget
安装 ConTeXt。
cd /opt/context wget http://minimals.contextgarden.net/setup/first-setup.sh sh ./first-setup.sh --modules=all
退出容器。
exit
现在,您应该在工作目录中安装了 ConTeXt。压缩它。
tar -czvf /tmp/ctx-centos6.tar.gz .
转移。
创建目标目录并提取。
mkdir /opt/context tar -xzvf ctx-centos6.tar.gz -C /opt/context
使用 ConTeXt。
. /opt/context/tex/setuptex