linux系统远程桌面中怎么加为远程仓库

评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
本站已经安全运行:
创建百年品牌在Linux系统中安装web端的远程连接工具Wetty
作者:lienhua34
字体:[ ] 来源:cnblogs 时间:12-21 11:41:28
这篇文章主要介绍了在Linux系统中安装web端的远程连接工具Wetty的方法,包括不需要账号登陆便可进行命令行操作的方法,需要的朋友可以参考下
Wetty 是什么?
Wetty = Web + tty
作为系统管理员,如果你是在 Linux 桌面下,你可以用它像一个 GNOME 终端(或类似的)一样来连接远程服务器;如果你是在 Windows 下,你可以用它像使用 Putty 这样的 SSH 客户端一样来连接远程,然后同时可以在浏览器中上网并查收邮件等其它事情。
第1步: 安装 epel 源代码如下:# wget http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm# rpm -ivh epel-release-6-8.noarch.rpm第2步:安装依赖代码如下:# yum install epel-release git nodejs npm -y第3步:在安装完依赖后,克隆 GitHub 仓库代码如下:# git clone /krishnasrinivas/wetty第4步:运行 Wetty代码如下:# cd wetty# npm install第5步:从 Web 浏览器启动 Wetty 并访问 Linux 终端代码如下:# node app.js -p 8080第6步:为 Wetty 安装 HTTPS 证书代码如下:# openssl req -x509 -newkey rsa:2048 -keyout key.pem -out cert.pem -days 365 -nodes 等待完成。第7步:通过 HTTPS 来使用 Wetty代码如下:# nohup node app.js --sslkey key.pem --sslcert cert.pem -p 8080 &第8步:为 wetty 添加一个用户代码如下:# useradd &username&# Passwd &username&第9步:访问 wettyhttp://Your_IP-Address:8080输入你之前为 wetty 创建的证书然后访问。
设置wetty不需要账号登录便可进行命令行操作我们看到,在浏览器中输入http://127.0.0.1:3000进行访问的时候,还需要我们输入账号密码进行认证(如下图第一行所示)。
但在某些应用场景下,我们不需要用户输入账号密码进行认证,而且用户也不一定知道账号密码。我们希望用户打开即可直接进行命令操作。
&在命令行终端中输入node app.js会如下提示,其中列出了启动wetty服务的所有选项说明。
从上图的这些选项中看到wetty是通过ssh来进行终端操作的,而其中的--sshauth用于指定ssh的认证模式,其默认为password,表示通过账号密码方式进行认证。Ssh的认证方式有很四种:hostbased、publickey、keyboard-interactive、password。其中password即我们上面说的账号密码认证方式;publickey是RSA公钥认证方式;其它两个我们暂时不关心。
&Wetty默认采用的是password认证方式,我们可以通过--sshauth选项指定为publickey认证方式即可。关于ssh公钥的认证机制是:
&用户将自己的公钥储存在远程主机上。登录的时候,远程主机会向用户发送一段随机字符串,用户用自己的私钥加密后,再发回来。远程主机用事先储存的公钥进行解密,如果成功,就证明用户是可信的,直接允许登录shell,不再要求密码。
那么我们需要先打开一个命令行终端,然后输入
代码如下:$ ssh-keygen来生成我们的公钥和私钥。
该命令生成的公钥和密钥默认都保存在~/.ssh目录下,
其中id_rsa文件中保存的是私钥,id_rsa.pub文件中保存的是公钥。
&上面ssh公钥认证机制提供我们需要讲公钥保存到远程机器中,保存在登录后的用户主目录的~/.ssh/authorized_keys文件中。公钥就是一段字符串,只要把它追加在authorized_keys文件的末尾就行了。而此时我们的远程机器即是本地机器,于是我们只需要将~/.ssh/id_rsa.pub复制一份并命名为authorized_keys即可。代码如下:$ cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys
然后我们切换到wetty目录下,启动wetty服务,代码如下:$ node app.js -p 3000 --sshauth=publickey
然后在浏览器中输入http://127.0.0.1:3000/,可以看到此时不需要输入账号密码即可直接操作,如下图所示,、
如果我们嫌每次启动的时候还要指定--sshauth选项太麻烦的话,我们可以直接修改app.js文件中源代码。打开app.js文件,我们可以看到其在第45行指定的sshauth的默认认证方式为password,我们只需要将其修改为publickey即可。
大家感兴趣的内容
12345678910
最近更新的内容在Linux服务器上搭建Git远程仓库并Push本地库 - 博客频道 - CSDN.NET
思考、奋斗、坚持
添加git用户
adduser git -m
passwd git
切换到git用户,新建repos目录,在该目录下新建库hello.git目录,
cd到hello.git目录,初始化该库:
git --bare init hello.git
这样就新建了一个hello的远程库,这个库是空的。
配置用户名和邮箱
git config --global user.name "YOUR NAME"
git config --global user.email "YOUR EMAIL ADDRESS"
假设本地已有一个和远程库同名的hello项目,进入到该项目下,初始化该库
将所有文件添加到本地库索引
git add -A
提交工作目录树中的所有文件到本地库
git commit -a -m "init commit"
这时通过以下命令可查看本地分支:
git branch -a
列出的分支中,带有*的为本地分支,其他为远程分支。
要查看远程分支信息,执行命令:
git remote -v
如果输出信息为空,表示还没有添加远程主机,通过以下命令添加:
git remote add &主机名& &网址&
git remote add origin git@192.168.1.110:repos/hello.git
最后,将本地库push到上面的远程库:
git push origin master
origin 是远程库主机名, master是本地分支名,如果该远程分支不存在,则会被新建。
输入git用户的密码完成push。
如果远程仓库不为空的话,需要先执行pull,取回远程主机某个分支的更新,再与本地的指定分支合并.
git pull origin master
如果操作过程提示错误:
fatal: Unable to create temporary file: Permission denied
表示服务器git库目录权限问题,修改成git用户及git用户组就可以了。
排名:千里之外
(7)(5)(3)(15)(2)(5)(4)(3)(4)(0)(3)(2)(4)(3)(2)(5)(1)(6)(0)(1)(5)(1)(1)(0)(1)(1)git修改远程仓库地址及远程仓库管理-linux-操作系统-壹聚教程网git修改远程仓库地址及远程仓库管理
Git是一个开源的分布式版本控制系统,用以有效、高速的处理从很小到非常大的项目版本管理。Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。
git修改远程仓库地址 方法有三种:1.修改命令git remote origin set-url [url]2.先删后加git remote rm origingit remote add origin [url]3.直接修改config文件git 远程仓库管理要参与任何一个 Git 项目的协作,必须要了解该如何管理远程仓库.远程仓库是指托管在网络上的项目仓库,可能会有好多个,其中有些你只能读,另外有些可以写.同他人协作开发某 个项目时,需要管理这些远程仓库,以便推送或拉取数据,分享各自的工作进展.管理远程仓库的工作,包括添加远程库,移除废弃的远程库,管理各式远程库分 支,定义是否跟踪这些分支,等等.本节我们将详细讨论远程库的管理和使用.  查看当前的远程库  要查看当前配置有哪些远程仓库,可以用 git remote 命令,它会列出每个远程库的简短名字.在克隆完某个项目后,至少可以看到一个名为 origin 的远程库,Git 默认使用这个名字来标识你所克隆的原始仓库:  $ git clone git:///schacon/ticgit.git  Initialized empty Git repository in /private/tmp/ticgit/.git/  remote: Counting objects: 595, done.  remote: Compressing objects: 100% (269/269), done.  remote: Total 595 (delta 255), reused 589 (delta 253)  Receiving objects: 100% (595/595), 73.31 KiB | 1 KiB/s, done.  Resolving deltas: 100% (255/255), done.  $ cd ticgit  $ git remote  origin也可以加上 -v 选项(译注:此为 ?verbose 的简写,取首字母),显示对应的克隆地址:  $ git remote -v  origin git:///schacon/ticgit.git如果有多个远程仓库,此命令将全部列出.比如在我的 Grit 项目中,可以看到:  $ cd grit  $ git remote -v  bakkdoor git:///bakkdoor/grit.git  cho45 git:///cho45/grit.git  defunkt git:///defunkt/grit.git  koke git:///koke/grit.git  origin :mojombo/grit.git这样一来,我就可以非常轻松地从这些用户的仓库中,拉取他们的提交到本地.请注意,上面列出的地址只有 origin 用的是 SSH URL 链接,所以也只有这个仓库我能推送数据上去(我们会在第四章解释原因).  添加远程仓库  要添加一个新的远程仓库,可以指定一个简单的名字,以便将来引用,运行 git remote add [shortname] [url]:  $ git remote  origin  $ git remote add pb git:///paulboone/ticgit.git  $ git remote -v  origin git:///schacon/ticgit.git  pb git:///paulboone/ticgit.git现在可以用字串 pb 指代对应的仓库地址了.比如说,要抓取所有 Paul 有的,但本地仓库没有的信息,可以运行 git fetch pb:  $ git fetch pb  remote: Counting objects: 58, done.  remote: Compressing objects: 100% (41/41), done.  remote: Total 44 (delta 24), reused 1 (delta 0)  Unpacking objects: 100% (44/44), done.  From git:///paulboone/ticgit  * [new branch] master -& pb/master  * [new branch] ticgit -& pb/ticgit现在,Paul 的主干分支(master)已经完全可以在本地访问了,对应的名字是 pb/master,你可以将它合并到自己的某个分支,或者切换到这个分支,看看有些什么有趣的更新.  从远程仓库抓取数据  正如之前所看到的,可以用下面的命令从远程仓库抓取数据到本地:  $ git fetch [remote-name]此命令会到远程仓库中拉取所有你本地仓库中还没有的数据.运行完成后,你就可以在本地访问该远程仓库中的所有分支,将其中某个 分支合并到本地,或者只是取出某个分支,一探究竟.(我们会在第三章详细讨论关于分支的概念和操作.)  如果是克隆了一个仓库,此命令会自动将远程仓库归于 origin 名下.所以,git fetch origin 会抓取从你上次克隆以来别人上传到此远程仓库中的所有更新(或是上次 fetch 以来别人提交的更新).有一点很重要,需要记住,fetch 命令只是将远端的数据拉到本地仓库,并不自动合并到当前工作分支,只有当你确实准备好了,才能手工合并.(说 明:事先需要创建好远程的仓库,然后执行:git remote add [仓库名] [仓库url],git fetch [远程仓库名],即可抓取到远程仓库数据到本地,再用git merge remotes/[仓库名]/master就可以将远程仓库merge到本地当前branch.这种分支方式比较适合独立-整合开发,即各自开发测试好后 再整合在一起.比如,Android的Framework和AP开发.  可以使用--bare 选项运行git init 来设定一个空仓库,这会初始化一个不包含工作目录的仓库.  $ cd /opt/git  $ mkdir project.git  $ cd project.git  $ git --bare init这时,Join,Josie 或者Jessica 就可以把它加为远程仓库,推送一个分支,从而把第一个版本的工程上传到仓库里了.)  如果设置了某个分支用于跟踪某个远端仓库的分支(参见下节及第三章的内容),可以使用 git pull 命令自动抓取数据下来,然后将远端分支自动合并到本地仓库中当前分支.在日常工作中我们经常这么用,既快且好.实际上,默认情况下 git clone 命令本质上就是自动创建了本地的 master 分支用于跟踪远程仓库中的 master 分支(假设远程仓库确实有 master 分支).所以一般我们运行 git pull,目的都是要从原始克隆的远端仓库中抓取数据后,合并到工作目录中当前分支.  推送数据到远程仓库  项目进行到一个阶段,要同别人分享目前的成果,可以将本地仓库中的数据推送到远程仓库.实现这个任务的命令很简单: git push [remote-name] [branch-name].如果要把本地的 master 分支推送到 origin 服务器上(再次说明下,克隆操作会自动使用默认的 master 和 origin 名字),可以运行下面的命令:  $ git push origin master只有在所克隆的服务器上有写权限,或者同一时刻没有其他人在推数据,这条命令才会如期完成任务.如果在你推数据前,已经有其他人推送了若干更新,那 你的推送操作就会被驳回.你必须先把他们的更新抓取到本地,并到自己的项目中,然后才可以再次推送.有关推送数据到远程仓库的详细内容见第三章.  查看远程仓库信息  我们可以通过命令 git remote show [remote-name] 查看某个远程仓库的详细信息,比如要看所克隆的origin 仓库,可以运行:  $ git remote show origin  * remote origin  URL: git:///schacon/ticgit.git  Remote branch merged with 'git pull' while on branch master  master  Tracked remote branches  master  ticgit除了对应的克隆地址外,它还给出了许多额外的信息.它友善地告诉你如果是在 master 分支,就可以用git pull 命令抓取数据合并到本地.另外还列出了所有处于跟踪状态中的远端分支.  实际使用过程中,git remote show 给出的信息可能会像这样:  $ git remote show origin  * remote origin  URL: :defunkt/github.git  Remote branch merged with 'git pull' while on branch issues  issues  Remote branch merged with 'git pull' while on branch master  master  New remote branches (next fetch will store in remotes/origin)  caching  Stale tracking branches (use 'git remote prune')  libwalker  walker2  Tracked remote branches  acl  apiv2  dashboard2  issues  master  postgres  Local branch pushed with 'git push'  master:master它告诉我们,运行 git push 时缺省推送的分支是什么(译注:最后两行).它还显示了有哪些远端分支还没有同步 到本地(译注:第六行的 caching 分支),哪些已同步到本地的远端分支在远端服务器上已被删除(译注:Stale tracking branches 下面的两个分支),以及运行 git pull 时将自动合并哪些分支(译注:前四行中列出的 issues 和 master 分支).(此命令也可以查看到本地分支和远程仓库分支的对应关系.)  远程仓库的删除和重命名  在新版 Git 中可以用 git remote rename 命令修改某个远程仓库的简短名称,比如想把 pb 改成 paul,可以这么运行:  $ git remote rename pb paul  $ git remote  origin  paul注意,对远程仓库的重命名,也会使对应的分支名称发生变化,原来的 pb/master 分支现在成了paul/master.  碰到远端仓库服务器迁移,或者原来的克隆镜像不再使用,又或者某个参与者不再贡献代码,那么需要移除对应的远端仓库,可以运行 git remote rm 命令:  $ git remote rm paul  $ git remote  origin
上一页: &&&&&下一页:相关内容

我要回帖

更多关于 linux系统远程登录 的文章

 

随机推荐