手机浏览 RSS 2.0 订阅 膘叔的简单人生 , 腾讯云RDS购买 | 超便宜Qcloud , 注册 | 登陆
浏览模式: 标准 | 列表全部文章

可恶的APPFOG

这个收购了(或者说合并了)phpfog的网站,原来支持8个实例。2G内存。

半年前更新后,就不再允许免费绑定域名,而这两天更新后,居然只支持2个实例,512M内存。一下子我就不知道该怎么绑了。要知道,我原来分配的实例可是内存不少的,我也把static都移到了新加坡节点,现在倒好,动不动就挂掉了。

APPFOG这样的网站,果然还是靠不住啊。这年头,目前看来能靠的住的还是linode。

Tags: appfog, phpfog

惊心动魄30分钟

这事儿需要从头说起。下午的时候,我启动终端的时候,突然出了这个错误:

大小: 29.76 K
尺寸: 500 x 322
浏览: 498 次
点击打开新窗口浏览全图

怎么重启都无效,纠结,要知道大部分操作都在终端下面啊,比如我连接远程,比如我git,比如我。。。。。一下子整个世界都灰暗了不少

这时候觉醒说:

XML/HTML代码
  1. That post was just over a year ago !!!! Hahahah I don't know however - but I'm repairing my disk permissions now !!!!  

他找到了原因,网上搜索到的。说是修复一下权限就好了,于是我开始修复权限。发现果然有问题:

大小: 45.54 K
尺寸: 448 x 205
浏览: 443 次
点击打开新窗口浏览全图

再次试试,果然就正常了。顺便我还注意到了。我好象swap功能没打开。所以还得再开始这玩意。

git 如何同时提交到多个版本库?

如果你维护了多个git在线平台的版本库,你就会遇到,如何将一份代码在push的时候推到所有的版本库呢?

其实命令行就可以了:
XML/HTML代码
  1. git remote add origin git@git.xxxxx.com:gouki/code.git  
有几条就执行几次。最后:git push -u origin master即可。
 
参考:
  1. http://segmentfault.com/q/1010000000367632
  2. http://blog.codepiano.com/2013/07/03/push-multi-remote-repositories/
 
 

Tags: git

git 如何处理大文件加入版本库

 在使用git做为版本库的时候,遇到一个问题,那就是超大文件无法上传。git我不仅仅是拿来做代码的备份,甚至一些文档,我也拿它来处理,所以这些带有图片的文档就让我很郁闷了。它们可是都有着30M左右,甚至更大。怎么办?

其实很简单,在项目的.git/config里加入:

XML/HTML代码
  1. [pack]  
  2. threads = 1  
  3. deltaCacheSize = 128m  
  4. packSizeLimit = 128m  
  5. windowMemory = 128m  
  6. [core]  
  7. packedGitLimit = 128m  
  8. packedGitWindowSize = 128m  
如果这个大小你觉得还不够。你还可以更调大一点。这回就没大事喽。

Tags: git

【转】建立SSH隧道(SSH端口转发)

虽然自己也常用ssh -D,ssh -l之类的操作,但毕竟没有详细的分析这些。事实上如果你要求不高,完全可以看文档。或者直接输入ssh也能够看到各个参数的含义。所以看到这篇讲说ssh隧道的。就转贴一下,毕竟它可以用来看一些国外资料。你懂的

原文地址是:http://www.xushulong.com/post/2012-08-04/40032371760

ssh隧道功能,也就是端口转发功能非常好用,可以实现一些代理功能或者是穿透内网功能。

ssh的端口转发(或者叫做隧道)命令分为三种:

本地:ssh -C -f -N -g -L listen_port:DST_Host:DST_port user@Tunnel_Host

远程:ssh -C -f -N -g -R listen_port:DST_Host:DST_port user@Tunnel_Host

动态:ssh -C -f -N -g -D listen_port user@Tunnel_Host

乍一看有点乱,仔细一分析就更蒙了-_-!  

但是再深入的分析了搜索出来的相关的说明和别人的一些分享之后,终于搞清楚了使用方法。下面详细的看各个参数的用法。

-L port:host:hostport

将本地机(客户机)的某个端口转发到远端指定机器的指定端口.

ssh -C -f -N -g -L listen_port:DST_Host:DST_port user@Tunnel_Host

以这个为例,在本地监听一个端口listen_port,把listen_port的所有数据通过Tunnel_Host全部转发到DST_Host:DST_port上去。

-R port:host:hostport

将远程主机(服务器)的某个端口转发到本地端指定机器的指定端口.

ssh -C -f -N -g -R listen_port:DST_Host:DST_port user@Tunnel_Host

远程端口转发,在Tunnel_Host上面监听一个端口 listen_port,listen_port的所有数据通过Tunnel_Host全部转发到DST_Host:DST_port上去。

DST_Host:DST_port是对于本机来说的,但却是通过Tunnel_Host来访问的,所以Tunnel_Host必须能访问到DST_Host:DST_port,才能进行转发。

举个例子:我在家里和公司各有一台电脑,均没有公网ip,不能互通,但是我有一个有公网ip的VPS,我的两台电脑都可以访问vps,但是vps不能访问我的两台电脑,然后通过公司电脑ssh到vps建立一条隧道,我在家里就可以访问公司里的电脑了。说起来罗嗦的不得了,但是做起来很容易:

在公司的电脑上:ssh -C -f -N -g -R 8080:127.0.0.1:80 root@vps的ip

然后在家里直接访问vps的8080端口,就相当与访问了公司电脑的80端口了,over。

当然80端口只是web端口,我们可以转发22或者3389端口,就可以远程控制公司的电脑了。

-D port

指定一个本地机器 “动态的'’ 应用程序端口转发. 这个动态的就简单了,

ssh -N -f -D 8000 登录名@我的vps的ip

就相当与在本机上开了一个sock代理,端口是8000,给浏览器挂上127.0.0.1:8000的代理,查一下本机ip,发现已经变成vps的ip了。

我的上面用的vps是ubuntu系统,有的时候做了远程端口转发之后发现不能从外面访问,需要修改一下vps上面ssh的一个配置,/etc/ssh/sshd_config,把这个改成yes,如果没这句就加上:

GatewayPorts yes

然后重启sshd。这个作用是把转发的端口绑定在0.0.0.0的接口上,让外部地址也可以访问。

还要注意一点就是listen_port必须是没有被使用的,不然会监听失败。

下面是几个辅助参数,看着乱的话可以忽略,用的时候按需加上就好了。

-C Enable compression.
压缩数据传输。

-f Fork into background after authentication.
后台认证用户/密码,通常和-N连用,不用登录到远程主机。

-N Do not execute a shell or command.
不执行脚本或命令,通常与-f连用。

-g Allow remote hosts to connect to forwarded ports.
在-L/-R/-D参数中,允许远程主机连接到建立的转发的端口,如果不加这个参数,只允许本地主机建立连接。

-p port Connect to this port. Server must be on the same port.
被登录的ssd服务器的sshd服务端口,省略就是默认的22端口。