| « | 十一月 2007 | » | ||||
|---|---|---|---|---|---|---|
| 一 | 二 | 三 | 四 | 五 | 六 | 日 |
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 | ||
1、 系统起不动,SYSLOG报以下错误。
R/3 Basis System: Operating system call getservbyname failed (error no. 0 )
R/3 Basis System: Failed to send a request to the message server
按条件“Operating system call getservbyname failed” 查到NOTES:896973。
问题可能是安装生产机的客户端,导致C:WINDOWSsystem32driversetc下的文件services中的MSGSERVER配置sapmsC11 3600/tcp改成了sapmsPRD 3600/tcp,导致消息服务启动不了。
Summary
Symptom
A service name is unknown, in this example sapmsOSS. The trace file contains the following entry:
***LOG Q0I=> NiPGetServByName: service 'sapmsOSS' not found: getservbyname [niuxi.c 1669] |
or
***LOG Q0I=> NiPGetServByName: 'sapmsOSS' not found: getaddrinfo [niuxi.c 1617] |
*** ERROR => GwIAsyncConn: GwBufConnect to oss001 / sapmsOSS failed (rc=NIESERV_UNKNOWN) [gwxx.c 1113] |
or
**************************************************************** |
* |
* LOCATION SAP-Gateway on host ld0168 / sapgw53 |
* ERROR service 'sapmsOSS' unknown |
* |
* TIME Wed Jan 11 13:22:35 2006 |
* RELEASE 710 |
* COMPONENT NI (network interface) |
* VERSION 39 |
* RC -3 |
* MODULE nixxhsl.cpp |
* LINE 643 |
* DETAIL NiHsLGetServNo: service name cached as unknown |
* COUNTER 293 |
* |
**************************************************************** |
Or the following SAP GUI error message occurs:
service 'sapmsOSS' unknown |
Other terms
service unknown, sapms, sapgw, sapdp, getservbyname, getservbyname_r, getservbyport, getservbyport_r, getaddrinfo, getnameinfo, NiPServToNo, NiPNoToServ, NiPGetServByName, NiPGetServByName2, NiPGetServByPort, NiPGetServByPort2, NIESERV_UNKNOWN
Reason and Prerequisites
A lookup for the specified service name is not possible for the corresponding port number. In most cases the error occurs during the connection to a server (for example, message server, dispatcher, gateway, SAProuter , and so on) in which a service name is specified instead of a port number. Since the service name is unknown, the connection cannot be established.
You can use the 'niping' program to reproduce the error. Call the program as follows:
niping -v -S |
For sapmsOSS, the program displays the following:
:/> niping -v -S sapmsOSS |
... |
Servicename/Serviceport verification: |
======================================= |
Lookup of service: sapmsOSS (NiServToNo) |
Wed Jan 11 13:44:35 2006 |
***LOG Q0I=> NiPGetServByName: service 'sapmsOS2' not found: getservbyname [niuxi.c 1669] |
--> **** FAILED **** |
... |
In case of a successful lookup (in this example, port number 3616 is assigned to the sapmsOSS service name), the program displays the following:
:/> niping -v -S sapmsOSS |
... |
Servicename/Serviceport verification: |
======================================= |
Lookup of service: sapmsOSS (NiServToNo) |
--> Number: 3616 |
... |
You can choose any assignment of a service name to a port number. The default values for the SAP service names are usually within the following port number ranges:
Dispatcher:
sapdp |
Gateway:
sapgw |
Message server:
sapms |
Solution
The port number for the service name must be published on the corresponding computer or in the network. You can add the required entry in the local file or in a central service (for example, NIS). To check whether a lookup for the corresponding service name is possible on the host, use the 'niping' program.
1) Unix
You can configure the operating system as to check whether the lookup for a service name is performed locally and/or by means of a global service. To do this, some platforms use the '/etc/nsswitch. conf' configuration file. Information is also available on 'man services'. |
You can store service names locally in the '/etc/services' file with the following format: |
For the SAP service names, one entry for the TCP protocol is sufficient. Example if the 'sapmsOss' service name corresponds to port number 3616: |
sapmsOSS 3616/tcp |
You can use the following command to check whether a service name is stored in the NIS: |
:/> ypcat services | grep |
2) Microsoft Windows
In Microsoft Windows, the service names are stored locally in the 'C:WINDOWSdriversetcservices' file. The format is identical to the one of UNIX platforms: |
Header Data
Release Status: | Released for Customer |
Released on: | 11.01.2006 15:58:33 |
Priority: | Recommendations/additional info |
Category: | Customizing |
Primary Component: | BC-CST-NI Network Interface |
Secondary Components: | BC-MID-RFC RFC |
BC-CST-GW Gateway/CPIC | |
BC-CST-MS Message Service | |
BC-NET Network Infrastructure |