rup:: RPC: Program not registered in RHEL6.1

I just installed Redhat Enterprise Linux 6.1 on one HP server. Following error met when rup it on other servers:

[sourcecode language="text"]
$rup coolnjmcl033
rup:coolnjmcl033: RPC: Program not registered

1) check if all nfs related services are working:

[sourcecode language="text"]
[root@coolnjmcl033init.d]# rpcinfo -p
program vers proto port service
100000 4 tcp 111 portmapper
100000 3 tcp 111 portmapper
100000 2 tcp 111 portmapper
100000 4 udp 111 portmapper
100000 3 udp 111 portmapper
100000 2 udp 111 portmapper
100011 1 udp 875 rquotad
100011 2 udp 875 rquotad
100011 1 tcp 875 rquotad
100011 2 tcp 875 rquotad
100003 2 tcp 2049 nfs
100003 3 tcp 2049 nfs
100003 4 tcp 2049 nfs
100227 2 tcp 2049 nfs_acl
100227 3 tcp 2049 nfs_acl
100003 2 udp 2049 nfs
100003 3 udp 2049 nfs
100003 4 udp 2049 nfs
100227 2 udp 2049 nfs_acl
100227 3 udp 2049 nfs_acl
100005 1 udp 51310 mountd
100005 1 tcp 60605 mountd
100005 2 udp 42799 mountd
100005 2 tcp 44201 mountd
100005 3 udp 49544 mountd
100005 3 tcp 49098 mountd
100024 1 udp 37035 status
100024 1 tcp 60898 status
100001 3 udp 1008 rstatd
100001 2 udp 1008 rstatd
100001 1 udp 1008 rstatd

If there is no running rstatdservice , start it byservice rstatd start.
Accordingto RHEL 6 RUP manual:

[sourcecode language="text"]
rup: RPC: Program not registered

The rpc.rstatd(8) daemon has not been started on the remote host.

2) check if package rusers-server-*and rusers-* are installed: rpm –qa|greprusers. If not, install it and then restart service rstatd.

Other userful commands:
[sourcecode language="text"]
rup localhost
service rstatd status


c++flit decodes(demangles) low-level names into user-level names so that the linker can keep these overloaded functions from clashing.

You may use c++filt to demangle the symbols.
[sourcecode language="text"]
$ c++filt _ZNSt8ios_base4InitD1Ev

You may try adding-lstdc++ to your link command to resolve the issue.

c++filt manual

What's the differences between virtualization and cloud computing?

Many people will be confused by the relations and differences between virtualization and cloud computing. Following essays will clarify the nature of the two technologies.
1. Cloud is an operations model, not technology:
2. Difference Between Virtualization and Cloud Computing:
3. The Difference Between Virtualization and Cloud Computing:



答案就是在Gmail的搜索框中输入after:或者/和before:, 如 “after:2007/07/31 before:2007/12/31”就是搜索2007年7月31日之后12月31日之前的邮件。

Steve Jobs的家庭教育

来看,Steve Jobs小时候的家庭教育还是很成功的,虽然他的养父母都没有受过高等教育,但他们懂得如何教育一个(被收养的)小孩子,如何培养他正确的人生观和价值观。反观我们的童年,这些大多是缺失的。

1. 追求完美


WALTER ISAACSON: Paul Jobs was a salt-of-the-earth guy who was a great mechanic. And he taught his son Steve how to make great things  And he--once they were building a fence. And he said, "You got to make the back of the
fence that nobody will see just as good looking as the front of the fence." Even though nobody will see it, you will know, and that will show that you're dedicated to making something perfect." 

2. 培养自信


STEVE JOBS TAPES: I was, I remember right here on my lawn, telling Lisa McMoylar from across the street that I was adopted. And she said, “So does that mean your real parents didn't want you?” Ooooh, lightning bolts went off in my head. I remember running into
the house, I think I was like crying, asking my parents. And they sat me down and they said, “No, you don't understand. We specifically picked you out.

WALTER ISAACSON: He said, "From then on, I realized that I was not — just abandoned. I was chosen. I was special." And I think that's the key to understanding Steve Jobs.

Steve Jobs的英文版自传目前还没买到,我的iTunes帐号只能在中国大陆使用,期盼过些天能够有办法。由于Steve Jobs的语言十分生动灵活,Walter Isaacson 的文体严肃认真,估计直接阅读英文版还是会很有一些障碍的,但那应该是学习好的英语的一种不可多得的机会。



1. Cloud is an operations model, not technology:

2. Difference Between Virtualization and Cloud Computing:

3. The Difference Between Virtualization and Cloud Computing:


1. Cloud is an operations model, not technology:

One of the most common questions I get from those exploring cloud computing for the first time is "what is the difference between cloud computing and virtualization?" It is an excellent question, as most IT departments are currently exploring the ways in which virtualization enables
automation and provisioning agility. Given the fact that cloud is often touted for providing similar benefits, it can be confusing to understand why the two terms aren't equivalent.

My response to that question requires a bit of explanation, so let's step through the differences between the two concepts.

Virtualization is a technology.

CNET/James Urquhart)

When you run software in a virtual machine, the bits that represent the program's instructions run through a layer of software that "pretends" to be a dedicated server infrastructure, the hypervisor. The hypervisor is the heart and soul of server virtualization,
and is the enabler of the consolidation and agility values that virtualization brings to the data center.

It is because of the hypervisor that virtualization is the true disruptive technology that enables cloud computing on a massive scale. Hypervisors allow servers to be multi-tenant without rewriting applications to be multi-tenant. Hypervisors allow operating
systems and applications to install to a consistent hardware profile, even though they end up running on a variety of actual physical system implementations. Hypervisors also allow servers to be manipulated by software APIs, which greatly simplifies the act
of automating IT operations.

Cloud computing is an operations model, not a technology.

When you run an application in a public or private cloud, there is no "cloud layer" that your software must pass through in order to leverage the physical infrastructure available to it. In the vast majority of cases, there is probably some virtualization involved,
but the existence of hypervisors clearly does not make your data center resources into a cloud. Nor is the fact that Amazon
 uses Xen hypervisors the reason that they are a cloud.

What makes a cloud a cloud is the fact that the physical resources involved are operated to deliver abstracted IT resources on-demand, at scale, and (almost always) in a multi-tenant environment. It is how you use the technologies involved. For the most part,
cloud computing uses the same management tools, operating systems, middleware, databases, server platforms, network cabling, storage arrays, and so on, that we have come to know and love over the last several decades.

Specific technologies, of course, gain significant importance in a cloud computing environment, such as policy-driven automation, metering systems, and self-service provisioning portals. However, all of these technologies--with the possible exception of the
self-service portal--existed before cloud computing became a much hyped paradigm.

There is no doubt cloud borrows much from long established technologies. It is also true that cloud has borrowed from many long standing operations models, such as mainframe service bureaus. However, the combination of on-demand, at scale, in a multi-tenant
infrastructure is relatively unique for the post client-server era, and is the reason why cloud computing is disruptive, rather than just another operations fad.

2. Difference Between Virtualization and Cloud Computing:
Cloud Computing and Virtualization are completely two different technologies. Both of them are considered as future saving technologies and that is the only similarity between them.
In the process of Cloud Computing easily scalable and mostly virtualized data resources are provided to the users over the internet. Using Cloud computing colocation provider or Data Centers providers offer managed IT services via a hosted software as a service
model. In Cloud Computing a database can be physically located somewhere in secure remote location and data can be accessed through clients computer using the database server to analyze and recover the data. This eliminates the need of a costly in-house equipments
and department. Cloud Computing make use of virtualized resources such as servers, computing devices and networks. Cloud Computing provider own the hardware and the providing host manage all the services to the clients according to their usage basis. On the
other hand Virtualization is creating virtual versions of technologies like servers, operating system, network resources and storage devices. Virtualization basically enables a single user to access multiple physical devices. In virtualization, either its
one operating system using multiple computers to evaluate database or a single computer controlling several machines. Here we will learn how Cloud Computing and virtualization are different from each other.


The easily availability of computers has opened new doors in the field of information technology. Instead of creating own Data Center all the Data Center services can be acquired from IT server providers with outstanding IT infrastructure which is strong, flexible
and safe. The cost which either wise would have been invested in building a Data Center can be avoided with acquiring related services on a usage basis. Fees for the managed IT services is similar to the operating costs of a Data Center. Cloud Computing seems
attractive option, since it cuts a lot costs and also remove operating costs. In a traditional IT department equipments and staff are occupied in the peak hours, however in off hours they sat idle. Most of the servers are not operable in off hours, even when
they are operational its not necessary that they are giving their 100% of their potential. Also a Data Center services provider also needs to upgrade latest technologies in order to keep the data safe and secure. On the other side these services are provided
by Cloud Computing provider.


There are many types of virtualization, but all of them focus on usage format and control that improves efficiency. What this efficiency means is a single task running over multiple computers through unoccupied computer or a single terminal running multiple
tasks. One more advanced advantage of virtualization is hosting an application to many users, thus preventing several needed software’s from being installed again and again. Data is combined into a central computer from databases, hard drives and USB drives.
This process increase security and accessibility by using replication. In an IT company physical resources can be divided into many virtual networks allowing the Central IT resources to be available to all the departments via local networks. Computer devices
which are allocated to individual staff members or which are only dedicated to a specific software application are highly efficient and they are much more cheaper.


3. The Difference Between Virtualization and Cloud Computing:

Brittany Meeks, Dynamics GP Sales and Marketing Assistant

As a newbie sales and marketing assistant at Custom
Information Services
, I kept getting thrown technical terms that I was unable to grasp.  That is until I did some research and discovered the easy way to understand and implement such terms or questions as, “What’s
the difference between virtualization and cloud computing?”
  Originally, I couldn’t even tell you the meaning of virtualization or cloud computing, let alone what the differences were.   Since we implement and support these technologies I had to understand
the definitions quickly!

Virtualization is a computing technology that enables a single user to access multiple physical devices.  Another way to look at it is a single computer controlling multiple machines, or one operating system utilizing multiple computers to analyze a database. 
Virtualization may also be used for running multiple applications on each server rather than just one; this in turn reduces the number of servers companies need to purchase and manage.  It enables you to consolidate your servers and do more with less hardware. It
also lets you support more users per piece of hardware, deliver applications, and run applications faster.  Follow this link for more detail on virtualization VirtualizationWhitePaper.pdf

Cloud computing offers scalable infrastructure and software off site, saving labor, hardware, and power costs.  Financially, the cloud’s virtual resources are typically cheaper than dedicated physical resources connected to a personal computer or network. 
With cloud computing, the software
 you use aren’t run from your personal computer, but  rather are stored on servers housed elsewhere and accessed via the Internet.  If your computer crashes, the software is still available for others to use.  Simply, the cloud is a collection
of computers and servers that are publicly accessible via the Internet.  Here is something else I found online which may be helpful in better understanding cloud servicesMicrosoft
Cloud Services.pdf

One way to look at it is that virtualization is basically one physical computer pretending to be many computing environments whereas cloud computing is many different computers pretending to be the one computing environment (hence user scaling).  Virtualization
provides flexibility that is a great match for cloud computing.  Moreover, cloud computing can be defined based on the virtual machine containers created with virtualization.  Virtualization is not always necessary in cloud computing; however, you can use
it as the basis.  Cloud computing is an approach for the delivery of services while virtualization is one possible service that could be delivered.  Large corporations with little downtime tolerance and airtight security requirements may find that virtualization
fits them best.  Smaller businesses are more likely to profit more with cloud computing, allowing them to focus on their mission while leaving IT chores to those who can do more for less.

Plainly, virtualization provides more servers on the same hardware and cloud computing provides measured resources while paying for what you use.  While it is not uncommon to hear people discuss them interchangeably, they are very different approaches to solving
the problem of maximizing the use of available resources.  They differ in many ways and that also leads to some important considerations when selecting between the two.  Not only do we offer Dynamics
 but we also offer services for cloud and virtualization for your business applications.   Our new website set for a September go live will have more information on this subject.


1. 硅谷海盗



2007年另一件记忆深刻的事情是第一次看到了《硅谷海盗》(The Pirates of
Silicon Valley)。其实当时是受《加勒比海盗》的影响,对海盗片非常感兴趣,在网上看到
《硅谷海盗》中有“海盗”两个字,就下了。下完一看这电影一开场就是比尔.盖茨和鲍尔默等人打牌泡妞的镜头,很黄很暴力,当时的我很喜欢。直到看完之后才明白,原来该片的主角不是比尔.盖茨,而是一个叫Jobs的人,这个人是Apple公司的创始人,心里有些失望。由于当时鄙人孤陋寡闻,只知道比尔.盖茨牛X的不得了,全然不知原来盖茨当初竟然是Jobs的小弟(后来看到2007年D5上Steve Jobs和Bill Gates两个人的采访,更加深了我的这种感觉——盖茨虽然比乔帮主年长两岁,但在帮助面前一副谦卑的姿态,而乔帮主尽显老大风范,即使是在1997年Apple濒临破产有求于微软的时候)。由于《硅谷海盗》中的Steve Jobs风流倜傥,我开始留心Apple的一些新闻。

reader中添加的第一个网站就是它。正是apple4us,这个国内差不多资历最老的果粉网站,让我了解并接受了Apple或者说Steve Jobs的世界观和方法论。

2008年第一次看到Steve Jobs在Stanford毕业典礼上的演讲的中文版,很是震撼,但当时视野狭窄,理解不够深刻,花前月下,乔帮主引用的“Stay hungry. Stay foolish.”的箴言也仅止于思想层面的震撼而已,没有什么实际行动。

关于Apple和Steve Jobs的文章看多了,才逐渐明白现实中的Steve Jobs和《硅谷海盗》中所描述的相去甚远:他深谋远虑,绝非意气用事,即使是在年轻气盛的时候(参见Playboy1985年对Steve Jobs的采访);他笃信佛教,奉行鱼素主义,绝不自我放纵;他执着认真,勤奋努力,绝非像电影中描绘的纨绔子弟的形象…… 每次观看《Think Different》,每次重读《Thoughts on Flash》,每次分析Steve Jobs对Andoid平板电脑的批评,无不为帮主的才华所深深折服。

尤其是从去年起喜欢上了Daring Fireball,John Gruber的分析往往令人拍案叫绝。尽管仔细想来他的分析未必符合Apple或者Jobs的事实,但实在很难找出对Apple和Steve Jobs的很多决定的更好的解释。考虑到乔帮主素有“偷”别人idea的名声(参见《史蒂夫·乔布斯传》摘要首发:与伊夫二重唱),已经很难分辨哪些想法是他自己原创,哪些是和别人一起碰撞的火花,因此与其纠结于Steve Jobs是否原创了某个想法,毋宁把Steve Jobs和他的团队视为一个整体,而Jobs毋庸置疑是这个团队的灵魂。只有强大如斯、睿智如斯、固执如斯、挑剔如斯、努力如斯的人,才能掌控整个团队,激发出所有人的潜力,创造出最伟大的产品


2. 佛教徒





其实Jobs最能让我联想起来的一个中国人是曾国藩。个人感觉他们有很多的共性,最大的共同点就是能够认识自己,改造自己。另外的共同点就是:坚持、努力、有领导魅力、有远见、工于心计、善于玩弄策略(曾的更像权术)、失败过、影响了几代人…… 还有一个有意思的共性就是他们小时候学习都不好:曾是出了名的笨小孩(参见南京师范大学郦波副教授在《百家讲坛》所讲的《曾国藩家训》);Jobs也是淘气鬼,直到小学四年级碰到了一位好老师才有所好转(具体故事不甚了解,期待Walter Isaacsson的Steve Jobs传记)。


3. 工心计

也许是受水果教一般信徒的影响,我对于那些几近阴谋论的Apple产品策略分析文章非常喜欢。最新的一篇大爱就是John Gruber的Thoughts
and Observations Regarding This Week’s iPhone 4S Event, Written Almost Entirely Before Wednesday’s Sad News, But Which the Time Has Come to Publish Because Life Goes On

纵观关于Jobs生命最后时光的报道(还是期待Walter Isaacsson的Steve Jobs传记),感觉Jobs直至生命的最后时刻,仍然牢牢掌控全局:2月份自感来日无多时便安排见诸多好友的最后一面,选择性接见,只有depend
Dented, Grass Underfoot
, 我特地看了WWDC乔帮主的开场白,他的脚上的New Balance确实沾满草迹);重病期间请来保安护卫全家;去世前一天还在家蜷缩在一楼的角落里观看iPhone



4. 斯人已逝

我实在北京时间10月6日中午回北京的火车上听说Steve Jobs离世的。其实我个人这次并没有太大震动,不像年初看到他再度休病假的通知,不像看到他参加Obama的晚宴的照片,不像看到他辞去CEO后网上流传的那张瘦骨嶙峋的照片那般。对于一个罹患胰腺癌(方舟子坚称Jobs身患胰腺肿瘤而非胰腺癌,期待他的自传中能给出答案),经历过肝脏移植的人,饱受病魔侵扰7年的人而言,未尝不是一种解脱。

但他是Steve Jobs,Apple的灵魂。

其实硕士毕业工作3年多以后,作为一个程序员,作为一名普通员工,对于企业运营、资本运作之类的东西早已不感兴趣,哪些东西跟我实在太远。只有面向消费者推出的产品,才是我有可能买得起,享受的到的——如Apple的iPxd,Google的XXX等。Steve Jobs作为一名企业创始人和管理者,对于我这样的普通程序员,能够直接借鉴的技巧实在不明显,但是他的智慧,是留给全世界最有价值的遗产。

无论我明天做什么,Steve Jobs永远值得学习。

Struct sctp_event_subscribe Differs Between RHEL5 and RHEL6

Recently meet an SCTP issue: one product application running on MontaVista(kernel version 2.6.21) can't run on RedHat Enterprise Linux 5.5. After hours investion between millions lines  of  log file and source code, I finally noticed following error showed up:

Dot(.) after the file permission flags in Redhat


$ rsh coolnjmcl033 'ls -l /opt/cool/tools/lib/COOLvirtenv'
ls: cannot access /opt/cool/tools/lib/COOLvirtenv: Permission denied

[root@coolnjmcl033 etc]# ls -l /opt/cool/tools/lib/COOLvirtenv
-rwxr-xr-x. 1 cool cool 29852 Jul 22 03:16 /opt/cool/tools/lib/COOLvirtenv

According to,

From "info ls":

      Following the file mode bits is a single character that specifies
     whether an alternate access method such as an access control list
     applies to the file.  When the character following the file mode
     bits is a space, there is no alternate access method.  When it is
     a printing character, then there is such a method.

     GNU `ls' uses a `.' character to indicate a file with an SELinux
     security context, but no other alternate access method.

     A file with any other combination of alternate access methods is
     marked with a `+' character.

In order to make files located on one server can be accessied by other servers, SELinux should be disabled. In order to disable SELinux,  refer to How to Disable SELinux.

RPC - Program not registered in RHEL6.1

I just installed Redhat Enterprise Linux 6.1 on one HP server. Following error met when rup it on other servers:

$rup coolnjmcl033
rup:coolnjmcl033: RPC: Program not registered


1)        check if all nfs related services are working:

[root@coolnjmcl033init.d]# rpcinfo -p
   program vers proto   port  service
    100000   4   tcp    111 portmapper
    100000   3   tcp    111 portmapper
    100000   2   tcp    111 portmapper
    100000   4   udp    111 portmapper
    100000   3   udp    111 portmapper
    100000   2   udp    111 portmapper
    100011   1   udp    875 rquotad
    100011   2   udp    875 rquotad
    100011   1   tcp    875 rquotad
    100011   2   tcp    875 rquotad
    100003   2   tcp   2049 nfs
    100003   3   tcp   2049 nfs
    100003   4   tcp   2049 nfs
    100227   2   tcp   2049 nfs_acl
    100227   3   tcp   2049 nfs_acl
    100003   2   udp   2049 nfs
    100003   3   udp   2049 nfs
    100003   4   udp   2049 nfs
    100227   2   udp   2049 nfs_acl
    100227   3   udp   2049 nfs_acl
    100005    1  udp  51310  mountd
    100005    1  tcp  60605  mountd
   100005    2   udp 42799  mountd
   100005    2   tcp 44201  mountd
   100005    3   udp 49544  mountd
   100005    3   tcp 49098  mountd
   100024    1   udp 37035  status
   100024    1   tcp 60898  status
   100001    3   udp  1008  rstatd
   100001    2   udp  1008  rstatd
   100001    1   udp  1008  rstatd

If there is no running rstatdservice , start it by
service rstatd start

Accordingto RHEL 6 RUP manual:

    rup: RPC: Program not registered


The rpc.rstatd(8) daemon has not been started on the remote host.


2)  check if package rusers-server-*and rusers-*
are installed: rpm –qa|greprusers. If not, install it and then restart service rstatd.



Other userful commands:

  1. rup localhost
  2. service rstatd status

According to
New Featuresin RHEL6

1.ext4 file system is introduced.
2. xen is removed and kernel virtualization machine (KVM) is introduced.
3. neat command is removed.
4. portmap service is removed.
5. iscsi is introduced, which supports forSAN.
6. rpmbuild is available, which is used to create our own rpms.
7. File encyption is added.
8. palimpsest is available for disk management.
9. Virtual machine will run only on 64bit processors.
10. postfix service is recommended insteadof sendmail service.


Chapter 12. Network File System (NFS)

The portmap service wasused to map RPC program numbers to IP address port number combinations inearlier versions of Red Hat Enterprise Linux. This service is now replaced by rpcbind inRed Hat Enterprise Linux 6 to enable
IPv6 support. For more information aboutthis change, refer to the following links:

Required Services

service nfs start starts the NFS server and the appropriate RPC processes to service requests for shared NFS
file systems.
service nfslock start activates a mandatory service that starts the appropriate RPC processes which allow
NFS clients to lock files on the server.
rpcbind accepts port reservations from local RPC services. These ports are then made available (or advertised)
so the corresponding remote RPC services can access them. rpcbind responds to requests for RPC services and
sets up connections to the requested RPC service. This is not used with NFSv4.
The following RPC processes facilitate NFS services:
This process receives mount requests from NFS clients and verifies that the requested file system is currently exported. This process is started automatically by the nfs service
and does not require user configuration.
rpc.nfsd allows explicit NFS versions and protocols the server advertises to be defined. It works with the
Linux kernel to meet the dynamic demands of NFS clients, such as providing server threads each time an NFS client connects. This process corresponds to the nfs service.
lockd is a kernel thread which runs on both clients and servers. It implements the Network
Lock Manager
 (NLM) protocol, which allows NFSv2 and NFSv3 clients to lock files on the server. It is started automatically whenever the NFS server is run and whenever an NFS filesystem is mounted.
This process implements the Network Status Monitor (NSM) RPC protocol, which notifies NFS clients when an NFS server is restarted without being gracefully brought down. rpc.statd is
started automatically by the nfslockservice, and does not require user configuration. This is not used with
This process provides user quota information for remote users. rpc.rquotad is started automatically by the nfsservice
and does not require user configuration.
rpc.idmapd provides NFSv4 client and server upcalls, which map between on-the-wire NFSv4 names (which are
strings in the form of user@domain)
and local UIDs and GIDs. For idmapd to function with NFSv4, the/etc/idmapd.conf must
be configured. This service is required for use with NFSv4, although not when all hosts share the same DNS domain name.