① linux里面rpcbind是什么
rpcbind工具可以将RPC程序号码和通用地址互相转换。要让某主机能向远程主机的服务发起RPC调用,
则该主机上的rpcbind必须处于已运行状态。
当RPC服务启动后,它会告诉rpcbind它监听在哪个地址上,还会告诉它为服务准备好提供的PRC程序
号码。当客户端要向某个给定的程序号码发起RPC调用时,它首先会联系服务端的rpcbind以确定RPC
请求应该发送到哪个地址上。
rpcbind工具应该在所有RPC管理的服务(rpc service)启动之前启动。一般来说,标准的rpc服务由端
口监视器来启动,因此rpcbind必须在端口监视器被调用之前已经启动完成。
当rpcbind工具已经启动后,它会检查特定的name-to-address的转换调用功能是否正确执行。如果失
败,则网络配置数据库会被认为过期,由于RPC管理的服务在这种情况下无法正确运行,rpcbind会输
出这些信息并终止。
rpcbind工具只能由super-user启动。
② Linux里面rpc是什么
RPC(Remote Procere Call)中文全称远程过程调用,在Linux里有个rpcbind软件,是rpc的一个简单应用例子,是和网络存储NFS相关的软件,用户要想找到NFS存储,必须通过先访问RPCBIND才行。
对于大型网站来说,RPC是一个非常重要的架构
有了RPC可以让网站架构更加的系统、合理,例如:
1、服务化/微服务 2、分布式系统架构 3、服务可重用 4、系统间交互调用
③ Linux 环境下搭建NFS服务
NFS(Network File System),网络文件存储系统,它最早是由 Sun 公司开发的,也是 FreeBSD 支持的文件系统中的一个,它允许网络中的计算机之间通过TCP/IP 网络共享资源。通过 NFS 协议,我们本地 NFS 的客户端应用可以透明的读写位于服务端 NFS 服务器上的文件,就像访问本地文件一样方便。简单的理解,NFS 就是可以透过网络,让不同的主机,不同的操作系统可以共享存储的服务。
NFS 在文件传送或信息传送过程中依赖 RPC(Remote Procere Call)协议,即远程过程调用,NFS的各项功能都必须向 RPC 来注册,如此一来 RPC 才能了解 NFS 这服务的各项功能 Port,PID,NFS 在服务器所监听的 IP 等,而客户端才能透过 RPC 的询问找到正确对应的端口,所以 NFS 必须要有 RPC 存在是才能成功的提供服务,简单的理解二者关系:NFS 是一个文件存储系统,而 RPC 是负责信息的传输。
通过上面的简介,我们知道 NFS 服务需要依赖 RPC 服务,所以这里 NFS 服务端需要安装 rpcbind 和 nfs-utils ,客户端只需要安装 nfs-utils 即可,由于我们选用 CentOS 系统,所以可以使用 yum 快速的安装。
然后安装 NFS 服务
另:Ubuntu 16.04 安装命令
我们在服务端创建一个共享目录 /data/share ,作为客户端挂载在远端入口,然后设置权限
然后,修改 NFS 配置文件 /etx/exports
说明一下,这里配置后边有很多参数,每个参数有不同的含义,具体可以参考下边。此处,我配置了将 /data/share 文件目录设置为允许IP为 192.168.0.0/24 区间的客户端挂载。然后,如果客户端IP不在该区间也想要挂载的话,可以设置IP区间更大或者设置为 * 即允许所有客户端挂载,例如: /home *(ro, sync,insecure,no_root_squash) 设置 /home 目录允许所有客户端只读挂载。
接下来,我们先启动 RPC 服务
我们发现,启动了 NFS 服务后,RPC 注册的端口列表明显增多。现在服务端都启动起来了,在服务端看下是否正确加载了设置的 /etc/exports 配置
最后,在另一台Linux虚拟机上测试一下,是否能够正确挂载。首先,我们可以在客户端查看下NFS服务端设置可共享的目录信息
然后,在客户端创建挂载目录/share
最后,挂载远端目录到本地 /share 目录
可以看到,可以正确将远端 NFS 目录挂载到本地。注意:挂载点 /share 目录必须已经存在,而且目录中没有文件或子目录
最后,我们在 NFS 服务端 /data/share 目录下创建一个文件,看下客户端能否正确读取并修改
都可以了,这里因为上面设置了 NFS 远端目录权限为 rw 拥有读写权限,如果设置为 ro ,那么客户端只能读取,不能写入。根据实际应用场景合理配置。
NFS 默认使用 UDP协议进行挂载,为了提供 NFS 的稳定性,可以使用 TCP 协议挂载,那么客户端挂载命令如下:
最后,卸载命令
④ linux服务器RPC用户名密码
linux服务器RPC用户名密码如下
通过密钥认证登录,首先在自己的服务器上生成公钥和私钥,其次将公钥上传到远程服务中,在于远程服务器建立连接通信时,远程服务器首先会验证该服务器上是否包含请求服务器的公钥,若不包含则需要远程登录的用户输入密码。
(如果没有~/.ssh文件夹,则新建一个.ssh文件夹,mkdir ~/.ssh)在本地生成密钥对(公钥与私钥)
ssh-keygen -t rsa
敲下回车后会有三个交互,第一个是文件名,默认是id_rsa,如需修改,自己输入一个文件名即可。第二个与第三个是密码与密码确认,是以后使用该公钥时要输入的密码,一般不设置,如有强烈的安全需求,自己设置即可。最后会生成两个文件id_rsa,id_rsa.pub。以.pub结尾的公钥,另一个是私钥。
⑤ Linux中portmap 是用来干嘛的
portmap进程的主要功能是把RPC程序号转化为Internet的端口号
当一个RPC服务器启动时,会选择一个空闲的端口号并在上面监听(每次启动后的端口号各不相同),同时它作为一个可用的服务会在portmap进程注册。一个RPC服务器对应惟一一个RPC程序号,RPC服务器告诉portmap进程它在哪个端口号上监听连接请求和为哪个RPC程序号提供服务。经过这个过程,portmap进程就知道了每一个已注册的RPC服务器所用的Internet端口号,而且还知道哪个程序号在这个端口上是可用的。portmap进程维护着一张RPC程序号到Internet端口号之间的映射表,它的字段包括程序号、版本号、所用协议、端口号和服务名,portmap进程通过这张映射表来提供程序号-端口号之间的转化功能
如果portmap进程停止了运行或异常终止,那么该系统上的所有RPC服务器必须重新启动。首先停止NFS服务器上的所有NFS服务进程,然后启动portmap进程,再启动服务器上的NFS进程。
但portmap只在第一次建立连接的时候起作用,帮助网络应用程序找到正确的通讯端口,但是一旦这个双方正确连接,端口和应用就绑定,portmap也就不起作用了。但对其他任何第一次需要找到端口建立通讯的应用仍然有用。
简单的说,portmap就是应用和端口的婚姻介绍人,双方成事了以后,媒婆就没用了。
⑥ linux 下是否可通过 RPC(远程过程调用)方式操作windows,如可修改Windows用户的口令等.
可以,net rpc password这条指令可以实现