CVS配置ssh问题

WinCVS安装配置与使用实战手册 简单说,CVSROOT 就是你告诉 WinCVS “去哪找代码仓库” 的导航坐标。它是一个字符串,包含了协议、用户名、主机、端口和路径信息。其标准格式如下:常用的有两种协议:协议示例适用场景:pserver:内网环境,快速接入:ext:外网或高安全要求,需 SSH维度pserverext (SSH)安全性低(明文)高(加密)认证方式用户名+密码公私钥 / 密码是否需要服务监听是(2401端口) 阅读详情

一.问题:
一般情况大家到是linux做服务器,比较多的文章说过了,我是需要在window下面做服务器,linux访问,因为开发机器是window:-),我测试过window版本的openssh不好用,不知道是不会配置还是什么,没有成功.
二.过程:
1.window安装cygwin
    注意选择Admin->cygrunsrv用做启动服务功能,openssh服务需要
2.安装ssh
安装net->openssh
3.安装Devel->cvs
三.配置
    ssh-host-config -y
    提示CYGWIN=输入 ntsec
    cygrunsrv -S sshd
四.测试
    ssh localhost
    注意就是sshd的cygwin1.dll只能够有一份(c:/winnt/system32和C:/cygwin/bin),否则不能够启动服务,特别    容易出现在多次安装的情况.
4.key认证
window的key认证
    使用putty的puttygen产生key文件。
    注意把窗口的内容copy到authorized_keys2,注意是每个Key一行的格式!
    把文件authorized_keys2放置到cygwin的$HOME/.ssh目录,或者添加到linux服务器的$HOME/.ssh目录的authorized_keys2(就可以实现登陆linux的ssh服务了)
    使用pageant.exe加载私Key,这样后续使用无须密码
linux的认证
    必须使用linux带的openssh产生一对key,使用putty的不行
    添加公共key到cygwin的$HOME/.ssh目录的authorized_keys2中,注意格式是每个Key一行。
五.服务器建立源码仓库
    使用winCVS的remote->Create a new repository...
    在general里面:
    authentication:选择local
    path:自己选
    确定就可以了
六.winCVS设置
    先使用pageant.exe加载私Key
    admin->preferences->General
    authentication选择ssh
        设置ssh:SSH client选择,同时指定为putty的工具plink.exe
    path输入:/cygdrive/c/cvsroot注意/cygdrive一定要/c/cvsroot表示c:/cvsroot,就是之前的cvs仓库路径
    输入服务器地址/用户
    确定
    已经可以正常使用了
七.cygwin的用户帐号问题
     设置用户
通过将 CYGWIN 系统变量定义为 ntsec,这就可以让 Cygwin 使用 NT 安全性来管理登录。但是,为了使 sshd 能够接受登录,需要一个 passwd 文件。这可用以下代码完成:


$ mkpasswd -l > /usr/etc/passwd
$ mkgroup -l > /usr/etc/group

请确保每次创建或删除用户时都再次运行这些命令 — 否则将不能与 Windows 保持同步。此外,将需要重新启动 Cygwin sshd 服务以使它读入新的 passwd 文件。

仔细检查以确保 passwd 文件包含每个用户的主目录。否则当用户试图通过 OpenSSH 隧道运行命令时,OpenSSH 将报告无法切换至用户的主目录。这是最让人讨厌的事。

注:mkpasswd 命令将用户 Guest 插入 passwd 文件。我将其删除,以消除一个潜在的安全性问题。


CVS(SSH)客户端配置指南 我建议两篇文档单独看,这不是完全的中英对译,两个文档解析了cvs openssh 以及 putty 之间配置! 刚进公司的时候,公司用cvs管理代码,由于要用ant打war包,搞了两个星期才解决的 真心希望改资源能够帮助到大家 立即下载

相关推荐

NT用户管理

关于nt用户的建立,删除,禁用等操作

故障排查:通过ssh远程执行命令时报错未找到命令

通过ssh远程执行命令时,可能会遇到报错“command not found”。本文提供了两种解决方案。

农民工老王的博客 8990

【信息学奥赛一本通】1215:迷宫(bfs版)

同时当Extense处在某个格点时,他只能移动到东南西北(或者说上下左右)四个方向之一的相邻格点上,Extense想要从点A走到点B,问在不走出迷宫的情况下能不能办到。每组测试数据的第1行是一个正整数n(1≤n≤100),表示迷宫的规模是n×n的。接下来是一个n×n的矩阵,矩阵中的元素为‘再接下来一行是4个整数ha,la,hb,lb,描述A处在第ha行, 第la列,B处在第hb行, 第lb列。一天Extense在森林里探险的时候不小心走入了一个迷宫,迷宫可以看成是由n×n的格点组成,每个格点只有2种状态,.

chu_xiaojie的博客 944

用ssh方式访问cvs的配置

1.环境: redhat 2.服务器配置a.设置用户能通过ssh方式登入cvs serverb.确定/etc/service文件有如下两行cvspserver 2401/tcp cvspserver 2401/udp c.在/etc/xinetd.d目录下建立cvspserver文件,内容如下service cvspserver{ disable = no flags = REUSE socke...

JAVA天地 316

Linux-VMware安装后没有虚拟网卡VMnet1和VMnet8(亲测有效,一步一步跟着绝对成功)

VMware-安装后没有虚拟网卡VMnet1和VMnet8 就这个破东西我昨天弄了一天,网上什么VMware卸载重装,用CCleaner清理注册表什么的操作我全用了,但是昨天就是弄不好,同样的操作我昨天试了无数遍一直觉得可能是 持续更新中… 文章参考学习地址:https://blog.youkuaiyun.com/qq_42445139/article/details/87872130 ...

杨的博客 8845

【学习笔记】《基于φ-OTDR的分布式扰动传感系统定位算法研究-北交-通信与信息系统-吴》重点笔记

一、绪论 1.1 引言 光纤传感器的优点:跟电子传感器相比较,光纤传感器有诸多独特的优势:对电磁干扰免疫;具有很好的绝缘性和耐腐蚀性;灵敏度高,可测量微弱信息;可实现大范围监测和分布式传感,仅需一根传感光纤,更为经济便捷;传感光纤体积小、重量轻、可形变,适用于一些特殊应用场所;还有无需供电、耐高温、便于组网等等优点 光纤传感器的感知信号的方法:当探测光入射到光纤中时会发生散射并产生各种散射光...

qq_36045093的博客 2万+

CVS的远程认证通过SSH远程访问CVS

使用cvs本身基于pserver的远程认证很麻烦,需要定义服务器和用户组,用户名,设置密码等,常见的登陆格式如下:cvs -d :pserver:cvs_user_name@cvs.server.address:/path/to/cvsroot login例子:cvs -d :pserver:cvs@samba.org:/cvsroot login 不是很安全,因此一般是作为匿名只读CVS访问的...

JAVA天地 272

open-mmlab / mmpose安装、使用教程

mmpose安装、使用教程mmpose安装教程1. 安装mmcv-full2. 安装MMPose2. 安装mmdet使用教程1. 预测图片2. 预测视频 mmpose mmpose是商汤旗下有又一款好用的工具箱,主要是针对姿态识别任务开发的,包括人体姿态识别和动物姿态识别。里面继承很多现成的网络可以供大家使用,并且提供了训练好的权重。用户可以更具自己的需求训练自己的数据,或者直接应用他们的结果,反正就是很全面啦!!!! github连接:https://github.com/open-mmlab/mmpos

CharmsLUO的博客 1万+

CVS over ssh配置

公司要求把工作的CVS服务器通过SSH协议登录,不能直接用pserver的方式联。CVS服务器端很简单的关掉就行了,而客户端的配置鼓捣了一天才搞定,写下来留个纪念。设置原理就是建立一个SSH隧道,让CVS通过这个隧道去连接服务器。假设CVS服务器是 foo.cvsserver.com,登录用户cvsroot。一、Linux/BSD平台下的CVS over SSH客户端。首先建立

Prophet的Blog 1446

lstm如何输入多维序列_深度学习也可以做时间序列异常诊断

最近在看的一篇论文里,用到了GRU、VAE等技术来做多维时间序列异常诊断。那么今天首先来聊一聊深度学习的基础知识,然后简单说一下论文。以下基础知识部分的内容,主要来源于李宏毅老师的课程。有兴趣的可以去看李老师的课程哦https://www.bilibili.com/video/BV1JE411g7XF?p=1 1、GRU(Gate Recurrent Unit):GRU是循环神经网络(Recurr...

weixin_30899789的博客 2833

NVIDIA Isaac Lab 入门教程(一)

Isaac Lab 是一个用于机器人学习的统一模块化框架,旨在简化机器人研究中的常见工作流程(如 RL、从演示中学习和运动规划)。它建立在英伟达 Isaac Sim 的基础上,利用最新的仿真功能实现逼真的场景和快速高效的仿真。该框架的核心目标是Isaac Lab 的主要功能包括:由 PhysX 提供的快速准确的物理模拟、用于矢量化渲染的平铺渲染 API、用于提高鲁棒性和适应性的域随机化,以及对在云中运行的支持。有关该框架的更多信息,请参阅论文[MYY+23]。

机器人控制与仿真应用 8216

bash:cvs:command not found

通过ssh连接Ubuntu出现排除用户启动脚本、SSH 密钥强制命令等常见场景,仍自动执行cvs。

qq_65389237的博客 205

WOFOST作物模型(3):敏感性分析

使用TAGP(Total Above Ground Production),地上总产量TSUM1,temperature sum from emergence to anthesis,萌发至开花所需温度TSUM2,temperature sum from anthesis to maturity,开花至成熟所需温度SPAN,life span of leaves growing at 35 Celsius,生长温度为35度时的叶龄。

所有专家都曾始于新手 1145

jenkins部署与基本配置

jenkins部署 gerrit->jenkins->docker 容器构建 docker run -d --name jenkins -p 8087:8080 -v /usr/local/jenkins:/var/jenkins_home jenkins /var/jenkins_home:jenkins数据文件默认位置 jenkins使用 首次登陆 192.168.0.69:...

大学以后的博客 367

YOLOv8自定义训练:车牌识别全流程(从标注到推理,附可视化代码)

车牌检测全流程实践指南 摘要:本文详细介绍了基于YOLOv8的车牌检测完整实现方案。针对车牌检测中的三大难点(小目标、多角度、光照变化),提供了从数据准备到模型部署的全流程解决方案。重点包括:1)数据采集与标注规范;2)针对小目标的YOLOv8模型优化配置;3)K-means锚框聚类方法;4)训练参数调优策略。通过实际验证,该方法可获得95%以上的检测准确率,并附有完整的代码实现和可视化工具,便于开发者快速复现应用。 (字数:149字)

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 849

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

数据可视化2_git仓库的使用

文章目录版本控制----->CASE工具中非常重要的一个工具文本编辑神器:Shell 的常见命令:使用Git:初始配置别的命令远端仓库配置免密范围fatal: refusing to merge unrelated historiesfatal: refusing to merge unrelated histories 版本控制----->CASE工具中非常重要的一个工具 Computer Aided Software Engineering 1990s 锁定模式 锁定代码 CVS

niki__的博客 775

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

CVS服务器安装配置

看了不少CVS服务器的安装说明,自己也着手开始进行CVS服务器的安装,现将安装及配置记录如下:OS环境:RedHat Linux 9CVS:cvs-1.12.9.tar.gz   (下载地址:http://www.cvshome.org)一、源码包安装一般来说RedHat Linux 9缺省是安装有cvs的,我们可以通过以下命令查看[root@VLinux root]# rpm

三V工作室·泰伯子仪 3317

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

提供cvs only的ssh服务

 摘抄自http://www.akeysoft.com今天配置了通过ssh提供的cvs服务:安装了sshd后,创建使用cvs的帐户。不过这些帐户的开通使得cvs的用户可以通过ssh登录到cvs服务器上执行命令。为了限制cvs用户只能通过ssh使用cvs功能,我用Google找到了两个方法。方法一:关闭ssh的密码认证功能,让ssh服务必须通过密钥(证书)认证,并在服务器上的认证证书文件

capboy的专栏 1224

linux 下建立cvs

1.首先确定是否安装了cvs包[root@love cvstest]#rpm -qa |grep cvslibbonoboui-2.8.0.99cvs20040929-2cvs-1.11.17-5或者 cvs --versionConcurrent Versions System (CVS) 1.11.17 (client/server)Copyright (c) 1989-2004 Bria

加油学习 648

CVS的配置及与X-Code的集成使用

服务器端的配置首先在服务器端建立CVS根目录.打开Terminal应用程序,输入如下命令:su rootmkdir /usr/local/cvsrepchmod 04777 /usr/local/cvsrepexit然后再设置CVSROOT环境变量,能够让cvs服务器知道你的仓库路径。export CVSROOT=/usr/local/cvsrep接下来对CVS进行初始化cvs init 项目文件

conccy的专栏 974

eclipse 透過 ssh 連接 CVS

準備工作: ssh能夠不輸入密碼連接主機,做法請參考這篇。 ssh command-line client:plink.exe 主機上以有可用的cvs程式(不需要安裝cvs pserver)。  確定以上的步驟都完成後,那我們就可以開始囉: 首先是server端關於CVS的設定,先建立一個CVS專用的帳號adduser -g users cvs我們讓

bangsen的专栏 684

CVS使用手册

 CVS是一个C/S系统,多个开发人员通过一个中心版本控制系统来记录文件版本,从而达到保证文件同步的目的。工作模式如下:        CVS服务器(文件版本库)     /     |       /     (版 本 同 步)   /       |         /开发者1  开发者2   开发者3作为一般开发人员挑选2,6看就可以了,CVS的管理员则更需要懂的更多

小轶的专栏 535

CVS服务器的安装配置

看了不少CVS服务器的安装说明,自己也着手开始进行CVS服务器的安装,现将安装及配置记录如下:OS环境:RedHat Linux 9CVS:cvs-1.12.9.tar.gz   (下载地址:http://www.cvshome.org)一、源码包安装一般来说RedHat Linux 9缺省是安装有cvs的,我们可以通过以下命令查看[root@VLinux root]# rpm

走向架构师之路 1826

CVS Server安装与配置

CVS是Concurrent Versions System(并行版本系统)的缩写,它是目前比较流行与优秀的版本管理与控制工具,它深受大多数开发人员与系统管理的喜爱,同时也是用来管理其它日常文档(如word工作文档之类)的一个强有力的工具。 一、 CVS服务器的安装 1、基本安装 首先确认系统中是否安装CVS服务: [root@localhost /]# rpm –qa ...

hanyoud的专栏 832
上一篇: 自己的linux系统安装以及软件配置
下一篇: 非常好的bug跟踪系统CVSTracNT
capboy
博客等级 码龄26年 15粉丝 34原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值