FAQs

该文档整理了用户常见的一些问题和解答

如何租用主机呢?

如何计费?

矩池云目前支持按租用时长实时计费和包周包月付费。
实时计费模式下,主机启动时不计费,进入运行中状态时开始计费,直到用户停止并释放主机后计费终止。启动中、保存中、恢复中、不可用等状态都不计费。实时计费模式支持使用时长卡、算力豆,扣费优先级为 时长卡、算力豆、余额。优惠券仅在抵扣余额时使用。
若余额不足,则自动释放主机。租用价格以租用时显示的价格为准。
包周包月模式下,您也可按照矩池云页面上提供的包周/包月价格,一次性付费,长期使用更实惠。包周包月机器不支持手动释放,到期自动释放。用户可提前进行续费。

我有时长卡,为什么租用时提示账户余额不足?

可能因为您的账号有欠费。当余额为负数时,需还清欠款,才能继续使用矩池云服务。

我需要的模块包镜像里没有,我可以自己装吗,怎么装?

如果您需要安装 Python 包,可以在连上机器后,执行如下命令:pip install,例如,pip install numpy。 若您需要安装的是系统包,请执行 Bash 命令,例如 apt install htop

矩池云提供数据存储服务吗,怎么使用?

矩池云为每位用户提供了 5G 的网盘,您可将数据上传到网盘中。租用机器时,网盘中的数据会挂载进主机指定目录,以便您在主机中操作。网盘中的数据不会随机器释放而丢失。
默认挂载路径是主机根目录下 mnt 文件夹,您可使用 cd /mnt 命令访问。您可在租用机器时修改挂载路径。网盘挂载路径不支持软链接。
目前数据存储服务支持扩容,您可根据容量需求定制。

租用主机是独占还是与他人共享?

矩池云目前仅支持独占。在租用成功后,您就独占了这台主机,在您释放主机之前,他人不会使用这台机器。

如何自动释放机器?

若您租用的是按时计费的机器,可使用如下命令自动释放机器。包周包月机器不可使用自动释放命令。
bash 命令示例
shell
# 若释放前要保存环境并命名为 SnapName
export $(cat /proc/1/environ |tr '\0' '\n' | grep MATCLOUD_CANCELTOKEN)&&/public/script/matncli node cancel -url https://matpool.com/api/public/node -save -name SnapName
# 若释放前不需要保存环境 
export $(cat /proc/1/environ |tr '\0' '\n' | grep MATCLOUD_CANCELTOKEN)&&/public/script/matncli node cancel -url https://matpool.com/api/public/node
两句命令二选一即可:
  • -save 表示保存环境,一般与 -name 连用。 如果不需要保存环境,则不添加 -save-name
  • -name 代表保存环境的环境名称,如果此项缺失,系统会给一个默认的环境名称。但需要注意,-save 选项不可缺失,否则不会进行保存环境。
注意:若选择了保存环境但是由于网盘空间不足等问题导致保存失败,机器无法自动释放,会自动恢复运行。为了节省您的费用,请在自动释放前保证网盘有足够的空间。
python代码示例:
python
import os
# 若释放前要保存环境并命名为 SnapName
os.system("export $(cat /proc/1/environ |tr '\\0' '\\n' | grep MATCLOUD_CANCELTOKEN)&&/public/script/matncli node cancel -url https://matpool.com/api/public/node -save -name snapName")
# 若释放前不需要保存环境 
os.system("export $(cat /proc/1/environ |tr '\\0' '\\n' | grep MATCLOUD_CANCELTOKEN)&&/public/script/matncli node cancel -url https://matpool.com/api/public/node")

执行 apt install 的时候下载特别慢怎么办?

矩池云提供的镜像中,apt install 的默认源为阿里源,在国内使用比较快。
如果您当前执行 apt install 时下载特别慢,可能是由于所在地区使用阿里源不稳定,您可以尝试更换源。
快速方法:执行命令
shell
bash /public/script/switch_apt_source.sh
选择 apt 源
输入想要切换的源前面的序号,然后按回车,切换后脚本会自动执行 apt update,源切换成功。
若您想要切换的源不在矩池云提供的源里,可联系客服添加,或自行按以下方法操作。
shell
cd /etc/apt/
# 备份源文件
cp sources.list sources.list.bk
# 修改文件
vim sources.list
通过修改 sources.list 文件来修改源,例如要修改为清华源:
shell
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main restricted universe multiverse
输入 :wq 保存修改。
保存后执行 apt update,可以看到源已经成功更改为清华源。

执行 pip install 的时候下载特别慢怎么办?怎么切换源?

矩池云提供的镜像中,pip install 的默认源为阿里源,在国内使用比较快。
如果您当前执行 pip install 时下载特别慢,可能是由于所在地区使用阿里源不稳定,您可以尝试更换源。
快速方法:执行命令
shell
bash /public/script/switch_pip_source.sh
选择 pip 源
输入想要切换的源前面的序号,然后按回车,提示切换成功。
切换后安装
执行 pip 命令可看到源已切换成功。
若您想要切换的源不在矩池云提供的源里,可联系客服添加,或自行按以下方法操作。
方法一:临时指定源
pip 命令可通过 -i 参数指定安装源,例如:
shell
pip install numpy -i https://pypi.tuna.tsinghua.edu.cn/simple/ 
系统将会从清华源中安装 numpy。
方法二:系统修改
shell
cd ~
mkdir .pip
cd .pip/
touch pip.conf
vim pip.conf
将 pip.conf 的内容修改为:
text
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
输入 :wq 保存。
执行 pip install numpy 可以看到源已经被更新为清华源。

执行 conda install 的时候下载特别慢怎么办?怎么切换源?

矩池云提供的镜像中,conda install 的默认源为清华源,在国内使用比较快。
如果您当前执行 conda install 时下载特别慢,可能是由于所在地区使用清华源不稳定,您可以尝试更换源。
快速方法:执行命令
shell
bash /public/script/switch_conda_source.sh
选择 apt 源
输入想要切换的源前面的序号,然后按回车,源会自动切换。
若您想要切换的源不在矩池云提供的源里,可联系客服添加。

使用过程中我想换一个环境,镜像可以更改吗?

在申请租用时,您可以选择镜像。申请成功后,镜像无法修改。您可以释放并重新申请租用。

同样型号和配置的 GPU 为什么有些租用价格不一样呢?

价格由 GPU 供应方设定,不同的供应方有不同的定价。您可根据需要从中选择。

余额不足怎么办,会影响正在租用的主机的使用吗?

请保证余额充足,当余额不足以支付租用费用时,租用自动停止。

为什么租用的主机启动后直接就自动释放了?

很可能用户自定义了一个入口命令,主机启动后入口命令执行完毕,进程正常退出,主机因为任务已结束而自动释放,所以出现这种情况请检查是否与自定义的入口命令相关,如若没有定义入口命令,请检查是否使用了自定义的镜像,镜像没有默认的入口命令或者镜像的默认入口命令执行完毕(与自定义入口命令原因相同),最后再检查挂载配置中网盘路径是否存在,如果都无误,依旧遇到该问题,请联系我们。
此外,这里要说明的是,入口命令相关进程执行完毕后主机自动释放这个特性能帮助用户节省成本,用户在租用主机后,执行相关任务,任务结束后,主机就闲置了,自动释放可以帮助用户节省开销。

不小心把 jupyter 进程 kill 了,如何恢复?

  1. 使用 SSH 登陆机器。
  2. 检查 8888 端口是否已被 JupyterLab 占用
sh
apt update 
apt install net-tools
netstat -antup | grep 8888
8888端口已被占用
图中所示为 8888 已经被占用,请确认 8888 没有被占用。
  1. 查看自己的 token 并运行 jupyter 进程
sh
nohup jupyter lab --notebook-dir=/ --allow-root --no-browser --NotebookApp.token=${YOUR_TOKEN} --ip=0.0.0.0 &
把命令中的 ${YOUR_TOKEN} 替换为您的 Token。Token 为 Jupyter 链接中带的参数。
Token
例如:
sh
nohup jupyter lab --notebook-dir=/ --allow-root --no-browser --NotebookApp.token=zLAT32Gb0I --ip=0.0.0.0 &
  1. 检查jupyter链接是否能正常打开

如何安装 nvcc?

若您想要使用 nvcc,但是所选的镜像中没有预装 nvcc,可按照如下操作自行安装。
  1. 检查系统版本
sh
source /etc/os-release && echo $VERSION_ID
  1. 导入apt仓库和其GPG key
sh
# 第一步若输出 16.04 
curl -fsSL https://mirrors.aliyun.com/nvidia-cuda/ubuntu1604/x86_64/7fa2af80.pub | apt-key add -
echo "deb https://mirrors.aliyun.com/nvidia-cuda/ubuntu1604/x86_64/ /" > /etc/apt/sources.list.d/cuda.list

# 第一步若输出 18.04 
curl -fsSL https://mirrors.aliyun.com/nvidia-cuda/ubuntu1804/x86_64/7fa2af80.pub | apt-key add -
echo "deb https://mirrors.aliyun.com/nvidia-cuda/ubuntu1804/x86_64/ /" > /etc/apt/sources.list.d/cuda.list
  1. 安装所需版本的 nvcc
sh
apt update
# "10-0" 表示安装CUDA10.0版本的 nvcc, 应根据镜像中cuda版本安装
apt install cuda-command-line-tools-10-0
  1. 验证nvcc安装
sh
nvcc --version

如何查看cudnn版本?

sh
dpkg -l | grep cudnn
null

为什么 JupyterLab 右键删除文件,保存环境反而变大了 ?

因为保存环境功能保存的是服务器本地的所有修改,JupyterLab 右键删除文件会缓存下来,你可以用下面的命令进行删除。注意:删除命令请谨慎操作
sh
cd /root/.local/share/Trash/files/
ls 
rm -rf /root/.local/share/Trash/files/*  # 注意:删除命令请谨慎操作
null

误删 start_all_services.sh 文件后机器无法启动?

因为有一批镜像的 start_all_services.sh 文件在机器的 / 目录下,会有误删的情况,导致保存的镜像无法启动。
这里在租用的时候打开高级选项,将下面的代码复制粘贴进去。
null
sh
/usr/sbin/sshd -E /root/sshd_running.log
jupyter lab --allow-root --no-browser --NotebookApp.token="${TOKEN}" --ip=0.0.0.0
tail -f /dev/null
然后再执行
sh
cp -r /public/script/start_all_services.sh /
之后再保存一次环境就恢复了。

自定义了多个端口导出,为什么有些 URL 无法连接?

自定义端口导出需要启动的主机内有进程监听该端口,这和入口命令相关,入口命令是主机启动后执行的命令。
如果该命令启动的进程监听了相应的协议和端口,那么就可以配置暴露这些端口从而可以连接,反之,如果入口命令启动的进程没有监听某端口,那么配置该端口的导出虽然是成功的,但却是无法连接的。
入口命令一方面可以由用户定义,另一方面如果用户没有定义,则使用镜像默认的入口命令

如何获取优惠券?

您可通过邀请好友注册来获得优惠券大礼包,进入个人中心-邀请好友,获得您的邀请码,每成功邀请一位新用户,双方都将获得优惠券大礼包一份,上不封顶。该活动派发的优惠券有效期为 7 天。

优惠券怎么使用?

优惠券会在您每次按时租用结束时自动抵扣。
当您停止租用按时计费的机器时,系统会根据您本次的消费额和仍在有效期内并且未使用的优惠券,智能匹配最大的抵扣额度,自动抵扣。若您的消费金额达到多张优惠券使用门槛的累计值,优惠券可叠加使用。
例如,您拥有 5 张满 10 元减 5 元的券。当您某次停止租用时,费用是 50 元,若这 5 张券仍在有效期内并且未使用,那么系统会自动使用这 5 张券,您最后需支付 25 元。若您消费了 20 元,则只能使用两张满 10 元减 5 元的券。
购买网盘、购买包周包月机器时不可使用优惠券。优惠券仅限矩池云官方网站使用,不支持第三方渠道。

机器变为不可用状态是怎么回事,要怎么处理?

不可用是由于机器掉线或代理重连等若干原因引起的。不可用状态下不计费。
若发现机器不可用,请等待机器重新连接,重新连接后原服务会继续进行。若长时间不可用,请及时联系客服处理。
您也可直接释放不可用机器,释放后网盘中的数据仍然会保存。

如何在 Jupyter 中访问网盘中的文件呢?

在 Jupyter 中,执行 !ln -s /mnt /notebooks,即可在 Jupyter 中查看网盘中的内容

在 Python3.7 镜像中,遇到 This is probably because cuDNN failed to initialize 错误,如何解决?

该问题有可能由 TF 版本不兼容引起。在 Python3.7 镜像中,我们默认为您安装了 TensorFlow2.0,若您的脚本使用较低的 TF 版本,则有可能会遇到这个错误。此时可在脚本中添加如下代码解决:
python
from tensorflow.compat.v1 import ConfigProto
from tensorflow.compat.v1 import InteractiveSession

config = ConfigProto()
config.gpu_options.allow_growth = True
session = InteractiveSession(config=config)
该代码是将 TF 的配置文件修改为较低版本,但矩池云建议您依照 TensorFlow2.0 的规范编写脚本。
若您已添加上述代码,或在 TensorFlow 1.x 版本下使用遇到该问题,可尝试添加如下代码解决:
python
physical_devices = tf.config.experimental.list_physical_devices('GPU')
assert len(physical_devices) > 0, "Not enough GPU hardware devices available"
tf.config.experimental.set_memory_growth(physical_devices[0], True)
若您是在 TensorFlow2 下遇到此问题,可尝试通过限制显存解决。
python
import tensorflow as tf
gpus = tf.config.experimental.list_physical_devices('GPU')
if gpus:
    tf.config.experimental.set_virtual_device_configuration(gpus[0],[tf.config.experimental.VirtualDeviceConfiguration(memory_limit=1024)]) #限制显存只有 1G

能开发票吗?

您可以在 [个人中心] - [账户设置] 中,找到开发票入口。
开发票
矩池云对用户充值后的消费金额可进行开票。消费时平台优先使用赠送金额,赠送金额不予开票。如果您在账户中心的开发票处看到的是请联系客服,说明您的可开票消费金额不足100元,请联系客服人工处理,并提供如下信息发送给客服。
  • 发票类型:默认为电子发票。
  • 发票内容:*研发和技术服务*技术服务费。
  • 您需要提供信息:客户名称、纳税人识别号、收取发票邮箱、您的矩池云账号。
  • 如需要备注,请一并发送。
建议您消费累计到一定程度后再申请开票,详情请咨询客服

如何修改服务器时区?

shell
apt-get update
apt-get install tzdata
执行 tzselect,下载后选择 Asia - China - Beijing,然后选择 yes。
运行后,如果出现如图所示的要求,则运行这句代码即可。
tzselect
TZ='Asia/Shanghai'; export TZ
运行后使用 date -R 命令查看,时区已修改。

如何加速 GitHub 下载?

方法一:使用国内镜像,在域名后增加 cnpmjs.org(经工作人员测试可用),将下载的域名 github.com 改为 github.com.cnpmjs.org
例如 https://github.com/keras-team/keras-contrib.git
改为 https://github.com.cnpmjs.org/keras-team/keras-contrib.git
下载命令为 git clone https://github.com.cnpmjs.org/keras-team/keras-contrib.git
在使用的时候可能会报error: server certificate verification failed.的错误,可以使用下面的命令来解决。
shell
export GIT_SSL_NO_VERIFY=1
方法二:使用码云。
从 GitHub 导入仓库
导入
仓库导入成功后,可以像操作 GitHub 仓库一样,复制下载地址。
复制
在矩池云机器,复制这串命令,即可下载。
使用命令

如何使用 Keras 预置模型?

矩池云会在租用机器后自动为您挂载 Keras 预置模型,路径为 /public/keras_pretrained_model
使用前,可先将预置模型复制到 Keras 目录,路径为 ~/.keras/models,例如要使用 Resnet50 模型:
shell
# 若路径不存在则先创建
mkdir -p ~/.keras/models/
# 复制到目标路径
cp /public/keras_pretrained_model/resnet50_weights_tf_dim_ordering_tf_kernels.h5 ~/.keras/models
复制成功后即可在 Python 文件中即可调用该模型。
python
from keras.applications.resnet50 import ResNet50
model = ResNet50(weights='imagenet')
model.summary()
更多关于 Keras 预置模型的使用教程,可参见官方教程

如何使用 TensorBoard?

  1. 配置端口
首先在租用机器时,展开高级选项,在端口导出中,新增一个端口配置,为 HTTP-6006(6006 为 TensorBoard 的默认端口)。
若您没有在租用时导出 6006 端口,可用本地 SSH 映射到服务器的 6006 端口。在本地 SSH 工具中,输入命令:
shell
ssh -p [sshport] -NL [localport]:localhost:6006 root@hz.matpool.com
其中:
sshport:矩池云机器的 SSH 端口。
localport:您本地的任一端口。
例如:
shell
ssh -p 40327 -NL 1234:localhost:6006 root@hz.matpool.com
输入密码后没有任何反应为正常现象,此时端口映射已经成功。
  1. 启动 TensorBoard
在需要使用 TensorBoard 时,输入命令:
shell
tensorboard --logdir logs --bind_all
或者
tensorboard --logdir logs 
其中 logs 是 TensorBoard 的日志输出路径,您可以将其修改为您自己的路径。
  1. 访问 TensorBoard
若您租用时配置了 6006 端口,点击租用列表里自定义的 HTTP 链接(不是 JupyterLab 链接),即可打开 Tensorboard。
若您是通过本地 SSH 映射,则在网页中访问连接 localhost:[localport],localport 为您刚才配置的本地端口,例如 localhost:1234
更多关于 TensorBoard 的问题,可参考官方教程

如何在 VS Code 中选择 conda 环境

首先,按照 VS Code 的连接教程,连上矩池云机器。
点击左侧的插件图标,输入 Python,选择并安装 Python 插件。
安装 Python 插件
安装完成后,当您打开一个远程文件时,下方会有 Python Interpreter 的按钮,点击它。
点击 Interpreter
点击会让您选择 Interpreter,选择 myconda 即可
选择 conda

矩池云怎么上传文件夹?

矩池云的网盘支持在多种方式上传方式,支持网页端上传和 SCP/SFTP 等方式上传,下面介绍一下相应的方式。
压缩包上传
第一种压缩包上传,主要利用的是矩池云的网页端上传。网页端可以在不租用机器的情况下上传文件,还支持大文件的断点续传。
  1. 将需要上传的文件压缩成 zip 、 rar 等 Linux 支持解压缩的文件类型,并上传到云盘。因为矩池云的网盘没上传完空间就计算进去了,大家上传的时候一定要看到已上传,再去解压。
上传成功
  1. 开启一台主机,我这里用的是矩池云自带的 JupyterLab 的 Terminal 来解压。
我的租用 JupyterLab 链接
JupyterLab Terminal
  1. 进入网盘,查看网盘内文件
命令解压
shell
cd /mnt  #进入网盘文件默认保存位置
ls  #查看文件
# ZIP压缩包
unzip test.zip  #全路径解压
unzip test.zip -d data/  #去掉路径解压,data/表示解压的路径
# RAR压缩包
apt-get update  #更新系统
apt-get install rar unrar  #安装unrar
unrar x test.rar  #全路径解压
unrar e test.rar data/  #去掉路径解压,data/表示解压的路径
如果遇到 zip.ZIP 不要紧张,是因为数据没有上传完整,矩池云网盘支持断点续传,不用删除旧文件,重新选中上传即可
SCP上传
scp上传的需要先租用在上传,在操作上也会比压缩包上传网盘难一些
我的租用 SSH 链接
命令
shell
scp -P <ssh的端口> root@hz.matpool.com:/mnt/<网盘路径> /<本地路径>
或者使用工具,如 WinSCP 等,选中文件夹上传即可。
WinSCP 登录
WinSCP 同步

矩池云网盘怎么切换线路?

null
如果遇到租用的时候无法选择镜像或者网盘页面无法上传东西,可以尝试打开我的网盘-点击主线路,将其切换成其他线路。
如果还是无法请检查本地释放有用代理软件,请将 matpool.com 加至代理白名单内后再次尝试。

矩池云怎么安装java?

安装 OpenJDK 11
text
apt update
apt install openjdk-11-jdk
java -version
安装 OpenJDK 8
text
apt update
apt install openjdk-8-jdk
java -version

矩池云上如何为 JupyterLab 添加新 kernel?

利用 ipykernel 为 JupyterLab 添加 kernel 以及展示出来
text
conda activate myconda
conda create -n py36 python=3.6 # 创建虚拟环境
pip install ipykernel
python -m ipykernel install --user --name py36 --display-name "py36" # 添加 py36 的 kernel
null

矩池云升级 JupyterLab 版本?

text
conda deactivate
ps -aux | grep jupyter
null
我这个进程是616
text
kill -9 616
升级jupyterlab
text
pip install -U jupyterlab
查看自己的 token 并运行 jupyter 进程
text
nohup jupyter lab --notebook-dir=/ --allow-root --no-browser --NotebookApp.token=${YOUR_TOKEN} --ip=0.0.0.0 &
null

矩池云降级到 gcc4.9 和 g++4.9?

修改软件源
text
cd /etc/apt/
cp sources.list sources.list.bk # 备份源文件
vim sources.list # 修改文件
打开的文件最后添加如下两行
text
deb http://cn.archive.ubuntu.com/ubuntu/ xenial main
deb http://cn.archive.ubuntu.com/ubuntu/ xenial universe
输入 :wq 保存修改
text
apt-get update
apt-get install gcc-4.9
apt-get install g++-4.9
更新
text
update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 20
update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.9 20
验证版本
text
gcc --version