screen安装以及使用screen管理会话

什么是screen?

screen是一个可以在多个进程之间多路复用一个物理终端的窗口管理器。screen中有会话的概念,用户可以在一个screen会话中创建多个screen窗口,在每一个screen窗口中就像操作一个真实的telnet/SSH连接窗口那样。当断开或关闭终端时,只要不杀死screen的进程,待重新连接后任能继续断开前的操作。

2、如何安装screen命令?

除部分精简的系统或者定制的系统大部分都安装了screen命令,如果没有安装,CentOS系统可以执行:

1
yum install screen

Debian/Ubuntu系统执行:

1
apt-get install screen

3、screen命令使用方法?

3.1 创建screen会话

可以先执行:screen -S naizui ,screen就会创建一个名字为naizui的会话。

 

3.2 暂时离开,保留screen会话中的任务或程序

当需要临时离开时(会话中的程序不会关闭,仍在运行)可以用快捷键Ctrl+a d(即按住Ctrl,依次再按a,d)

 

3.3 恢复screen会话

当回来时可以再执行执行:screen -r naizui 即可恢复到离开前创建的lnmp会话的工作界面。如果忘记了,或者当时没有指定会话名,可以执行:screen -ls screen会列出当前存在的会话列表。

 

3.4 关闭screen的会话

执行:exit ,会提示:[screen is terminating],表示已经成功退出screen会话。

 

4、常用快捷键

Ctrl+a c :在当前screen会话中创建窗口

Ctrl+a w :窗口列表

Ctrl+a n :下一个窗口

Ctrl+a p :上一个窗口

Ctrl+a 0-9 :在第0个窗口和第9个窗口之间切换

 

 

WORDPRESS百度PING服务不兼容及解决方法

ping是基于XML_RPC标准协议的更新通告服务,是一种用于博客在内容更新后通知百度博客搜索及时进行抓取、更新的方式。百度博客搜索在成功接受到ping以后,会立刻进行抓取并更新。使用ping服务,可以让百度博客搜索在第一时间抓取到您博客上的新内容。 以上是百度官方的介绍。从意思上理解,这个ping服务应该不错的呀,可以及时通知百度我的网站更新了,告诉它赶紧过来爬网吧。而且,这个ping 服务貌似和Google等的API接口貌似也是兼容的,都是调用weblogUpdates.extendedPing方法,而且采用的参数貌似也是一样 的,从而给了人们一种错觉。 所以有的网友就发博文了,使用wordpress程序的博客只要在通告服务处填上”http://ping.baidu.com/ping/RPC2″就可以通知百度了,貌似很方便的样子。 但是实际上并非如此。我今天发现,百度的ping服务和Google等的ping是不兼容的。虽然都是调用的 weblogUpdates.extendedPing方 法,但是在参数方面有一些细微的差别:

WordPress默认的ping服务是3个参数,即网站 名称,首页地址,feed地址;

而百度ping呢,则是4个参数,即网站名称,首页地址,新网页的地址,feed地址。 正是这一个参数的差别,我们就不能 使用wordpress自带的ping服务了。

实现方法,在functions.php中加入如下代码:

function ping_baidu_on_newpost($post_id) {
    $baiduXML = '
    weblogUpdates.extendedPing' . get_option('blogname') . '' . home_url() . '' . get_permalink($post_id) . '
    ' . get_feed_link() . '
    ';
    $wp_http_obj = new WP_Http();
    noff_log($baiduXML);
    $return = $wp_http_obj->post('http://ping.baidu.com/ping/RPC2',
            array('body' => $baiduXML, 'headers' => array('Content-Type' => 'text/xml')));
    if(isset($return['body'])){
        if(strstr($return['body'], '0')){
            noff_log('ping baidu succeeded!');
        }
        else{
            noff_log('ping baidu failed!');
        }
    }else{
        noff_log('ping baidu failed!');
    }
}
function noff_on_newpost($post_id) {
    noff_log('start to ping baidu');
    ping_baidu_on_newpost($post_id);
}
add_action('publish_post', 'noff_on_newpost');

 

Linux下系统时间和时区的修改和设置

一般购买的VPS或独立服务器时区可能是美国当地时间,不是中国的时间,使用定时任务或其它项目的时候,系统时间很重要,合理的时区和时间设置可以保证日后维护和使用的方便。

此方法适用于大部分独立服务器和虚拟化(Xen、KVM),部分OpenVZ可能无法修改。

一、修正时区

rm -rf /etc/localtime    #删除当前默认时区
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
#复制替换默认时区为上海

SSH执行以上命令,将VPS时区修改为中国上海的时区,当然,也可以设置中国香港或北京的时间。

二、手动修正时间

date -s '09:16:00 2013-01-21'

使用“date”命令,修改时间和日期为2013年1月21日,时间是上午9点16分0秒。

三、时间自动同步和校正

yum install -y ntp        #安装时间同步服务(组件)
ntpdate us.pool.ntp.org   #设置同步服务器
date                      #查看当前时间

部分系统已经安装了NTP服务,系统会根据当前记录的时区(第一步操作)自动连接ntp服务器校正时间。

浅谈PaaS服务(xAE)发展缓慢的原因

最近在某社区网站上看到一位网友的吐槽——“免费云空间除了搭博客还能干点啥?”,看到这个问题,我的心情完全可以用五味杂陈来形容。一方面,功能强大的PaaS服务,竟被看做一个只能搭建博客的玩具,心里多少有些不舒服;另一方面,PaaS服务近年来鲜有大的发展,各方面依然有待提高,所以更多的是被作为免费空间或搭建个人博客使用。作为一个长期关注并看好PaaS服务的IT爱好者,看到PaaS的这种窘境,心中有种说不出的痛。那么,究竟是什么原因使得PaaS(xAE)服务发展缓慢?我认为是下面几个因素造成的。

第一、政策因素。有关政策规定,服务器位于国内的网站必须先备案才能上线运营。然而,国内各大PaaS服务商普遍面临的一个窘境就是,一方面用户有强烈的绑定独立域名的需求,而另一方面,受制于现有政策,PaaS服务商没有提供ICP备案的资格。

因此,大多数PaaS服务商选择了不支持独立域名绑定,或者在海外搭建反向代理来间接支持该功能。如此一来,或不能满足用户的基本需求,或访问缓慢,经常出现“连接超时”、“网络被重置”等网络错误,影响用户体验。即便是支持域名绑定到国内IP的服务商,也要求待绑定域名已经完成备案,从而导致了很多用户不得不先购买一个廉价的国内空间备案,再将域名绑回PaaS服务。即便这样操作具有一定的可行性,但也大大增加了使用PaaS服务的复杂程度;从另一方面讲,在用户将顶级域名解析到PaaS服务之后,同时也面临着因IP指向变更而导致备案被注销的危险。

假如备案政策能够对PaaS服务有所倾斜的话,那么许多要求不甚严格的中小网站(如企业宣传网站、个人博客)便可以直接迁移到PaaS云服务,既提高了网站性能,同时又降低使用成本(按需付费有利于中小网站)。

第二、兼容性不好。从xAE的始祖Google App Engine(GAE)开始,xAE便有一个“臭毛病”,就是要使用其提供的服务,则必须使用给定的API接口。如此一来,造成了非常严重的后果:

1.给用户程序的迁入造成了很大障碍。特殊的服务器环境使得绝大多数既有程序必须移植才能使用,既增加了程序的使用难度,降低了可用程序的丰富性,也加大了程序因移植而导致的不确定性和不稳定性。以新浪SAE的PHP环境为例,尽管PHP语言有很多现成的程序,但受限于本地I/O写操作,Discuz!、PHPWind等热门程序均不能直接使用;即便是最成熟的WordPress程序,也存在一些问题,远不如在虚拟主机上跑原生程序方便。

2.这也给用户程序的迁出造成了不便。在PaaS服务的稳定性还不能完全得到验证的情况下,保证应用可以在发生故障时迅速迁出就显得至关重要了。但是,由于程序严格依赖于PaaS环境,就使得迁移时不得不二次修改程序,增加了迁移难度;更糟糕的是,可能会因为迁出云平台有某一服务能力、而迁入云平台没有该能力导致服务不可用。以NoSQL数据库为例,新浪SAE使用的是KVDB,而百度BAE使用的则是MongoDB和Redis,一旦更换平台,势必造成很多麻烦。此外,当云平台储存的数据量稍大些时,数据的导出也是一个不小的问题。从迁出这个角度来看,我们也不难理解WordPress为什么会成为PaaS平台上最流行的程序了。

所以,我认为PaaS服务向虚拟主机看齐并不是一件十分丢人的事情,而是一件十分紧迫的事情,一件PaaS要腾飞必须做的事情。当然,看齐并不是要照抄,毕竟PaaS附带的众多服务是普通虚拟主机所难以企及的。我的建议是,借鉴新浪SAE的Wrappers设计,将MemCache、云存储等服务以文件夹映射的形式提供给开发者使用,尽量做到在为开发者提供优质、丰富服务的同时做到对其透明,这才是PaaS服务超越虚拟主机的根本。

第三、安全问题。PaaS服务因为资源共享而使得价格相对低廉,但资源共享的同时也带来了很大的安全问题,怎样保证其他应用在存在漏洞或遭受攻击时不致影响自身的稳定运行,依然是一个很大的挑战。另外,用户将最重要的程序和数据毫无保留地托付给PaaS服务商,服务商能否保证不会因内部机制而导致数据泄露,也是一个很大的问号。

第四、费用问题。目前PaaS服务普遍采用的是按需付费方式,尽管这对中小客户非常划算,但是一旦访问流量剧增,那按需付费的PaaS服务就远不如租用服务器划算了。另外,要是被恶意刷流量的话,那么支付的费用也是很可观的。

如果能够解决上述几个问题的话,我相信中小用户基本就可以放心地使用PaaS服务了。当然,对于有SEO需求的客户,最好还能考虑实现独立IP。总之,只要能够充分汲取虚拟主机的优点,同时充分发挥自身优势,那么代替虚拟主机不过是时间上的问题。而当PaaS逐渐获得人们的信任后,PaaS甚至可以取代SaaS的不小份额,毕竟配置服务器还是有很高的门槛的。

抛砖引玉,更期待您的精彩观点。

通过“远程桌面连接”连接到Ubuntu

长久以来,我们在远程管理Linux服务器时,更多的是通过 SSH+命令行 或者 安装VNC管理软件(客户端+服务器端) 的方式进行的。但对于初学者来说,SSH+命令行方式有很大的难度;而使用VNC管理的话,也必须在本地机器安装VNC客户端,这么做多少也有些麻烦。要是我们能像管理Windows服务器一样,通过“远程桌面连接”工具管理Linux服务器就好了。还别说,真的可以!因为Windows下的“远程桌面连接”工具是通过RDP协议控制远程计算机的,所以我们只要在Linux上安装远程控制的服务器端和RDP协议,并稍加配置,就也可以让Linux支持远程桌面连接了。

下面是配置过程:(以Ubuntu 13.04版本为例)

1.在Ubuntu 13.04上安装GNOME,然后以GNOME界面模式登录:(已经安装过GNOME的童鞋可以略过此步)

sudo apt-get install gnome-panel

2.安装RDP协议和TightVNC服务器端:

sudo apt-get install xrdp
sudo apt-get install vnc4server tightvncserver

注:

如果在安装XRDP包的时候提示“unable to locate package xrdp”错误,那我们就需要先输入

apt-get update

命令,更新一下软件包列表,以确保机器上的软件包列表是最新的。

3.安装gnome session fallback软件包,配置XRDP并重启:

sudo apt-get install gnome-session-fallback
echo “gnome-session –session=gnome-fallback” > ~/.xsession
sudo/etc/init.d/xrdp restart

经过以上三步配置,我们就可以通过Windows自带的“远程桌面连接”工具登陆到Ubuntu系统中了。

2025 年 6 月
 1
2345678
9101112131415
16171819202122
23242526272829
30  

广告

分类

近期评论

标签

历史上的今天

    历史上的今天没有存档

归档