当项目计算量比较大,我们需要将任务分布到多台电脑上面运行,因为对于分布式概念不熟,就想到了linux最简单的ssh协议,远程控制其他电脑,然后写shell脚本统一在所有电脑上运行程序linux命令,下面我们以Ubuntu16.04为例子看看使用ssh有哪些步骤:
1
在电脑中输入以下命令查看是否安装了ssh:
—ps-e|grepssh
—sshusername@ip,
会提示需要输入密码,这时候输入密码即可远程控制另一台电脑.
—ssh-keygen
然后一路enter,此时会在主目录下生成.ssh的文件夹
用下面命令可以进行检查核对:
—ls-a
:~$ scp -p port_of_ssh ~/.ssh/id_rsa.pub username@server_ip:/home/username/.ssh/authorized_keys。scp~/.ssh/id_rsa.pubxxx@host:/home/xxx/id_rsa.pub。很简单,例如scp id_rsa.pub user@10.11.xx.xx:~/.ssh。
6
远程连接上你需要连接作为服务器的电脑:
—touch~/.ssh/authorized_keys
—cat~/.ssh/id_rsa.pub_copy>>~/.ssh/authorized_keys
7
修改权限:
—chmod755~
—chmod700~/.ssh
—chmod600~/.ssh/authorized_keys
这里整个流程就结束了!
商户可为角色设置部分页面的查看或操作的权限linux命令,当角色仅拥有页面的查看权限时,该角色仅能查看页面的内容,页面上的操作按钮将会针对该角色隐藏。文件具有suid的特殊权限时,代表当用户执行此二进制文件制程序时,在执行过程中用户会暂时具有程序所有者的权限(/usr/bin/passwd)。但在每一次重新设定或修改文件夹的权限时,可选择是否需要以新权限取代该文件夹下的原有使用权限。
我们会看到上面的结果,前面这一部分是由十位组成,1-3-3-3的方式,第一个字母表示文件类型,d表示的就是文件夹document的第一个字母,接下来第一个三位表示所有者的权限,第二个三位是所在组的权限,第三个三位是其他组的权限.R--读,W-写,X-执行,所以rwx表示当前组可读可写可执行.回到上面数字,R同时对应数字4,W对应2,X对应1.现在可以明白755表示所有者是可读可写可执行,所在组是可写可执行,其他组也是可写可执行.好啦,现在可以测试一下是否可以免密码登录他人电脑了:
在运行过程中,你可能会遇到这个问题,这是表明ssh-agent在运行,但是没有找到相应的key,我们通过ssh-add,即可解决,同时也可以通过ssh-add-l来查看附加的key.
在远程连接中还是需要输入用户名和ip,如果你不想输入用户名,就在最初为所有的电脑创建一个相同的用户即可.脚本运行所有程序:
Screen-dmssh-tusername1@ip1 “...”(在引号里面输入你想运行的命令即可)
Screen-dmssh-tusername2@ip2 “...”
ps:写得不好的地方希望大家多多指教.!