2. Linux常⽤服务器构建-ssh和scp
<1>ssh介绍
SSH为Secure Shell的缩写,由 IETF 的⽹络⼯作⼩组(Network Working Group)所制 定;SSH 为建⽴在应⽤层和传输层基础上的安全协议。
SSH是⽬前较可靠,专为远程登录会话和其他⽹络服务提供安全性的协议。常⽤于远程登 录,以及⽤户之间进⾏资料拷⻉。
利⽤SSH协议可以有效防⽌远程管理过程中的信息泄露问题。SSH最初是 UNIX 系统上的 ⼀个程序,后来⼜迅速扩展到其他操作平台。SSH 在正确使⽤时可弥补⽹络中的漏洞。 SSH 客户端适⽤于多种平台。⼏乎所有 UNIX 平台—包括 HP-UX、Linux、AIX、 Solaris、Digital UNIX、Irix,以及其他平台,都可运⾏SSH。
使⽤SSH服务,需要安装相应的服务器和客户端。客户端和服务器的关系:如果,A机器 想被B机器远程控制,那么,A机器需要安装SSH服务器,B机器需要安装SSH客户端。
<2>安装ssh
A.安装ssh服务器
sudo apt-get install openssh-server
B.远程登陆
ssh ⽤户名@IP
使⽤ssh访问,如访问出现错误。可查看是否有该⽂件 ~/.ssh/known_ssh 尝试删除该⽂ 件解决。
<3>使⽤ssh连接服务器
SSH 告知⽤户,这个主机不能识别,这时键⼊"yes",SSH 就会将相关信息,写⼊" ~/.ssh/know_hosts" 中,再次访问,就不会有这些信息了。然后输⼊完⼝令,就可以登录到 主机了。
scp
远程拷⻉⽂件,scp -r 的常⽤⽅法:
.使⽤该命令的前提条件要求⽬标主机已经成功安装openssh-server
如没有安装使⽤ sudo apt-get install openssh-server 来安装
2.使⽤格式:
scp -r ⽬标⽤户名@⽬标主机IP地址:/⽬标⽂件的绝对路径 /保存到本机的绝对/相对路径
举例: scp -r itcast@192.168.1.100:/home/itcast/QQ_dir/ ./mytest/lisi
在后续会提示输⼊“yes”此时,只能输“yes”⽽不能简单输⼊“Y”
拷⻉单个⽂件可以不加 -r参数,拷⻉⽬录必须要加。
本地⽂件复制到远程:
[AppleScript] 纯文本查看 复制代码 scp FileName RemoteUserName@RemoteHostIp:RemoteFile scp FileName RemoteHostIp:RemoteFolder scp FileName RemoteHostIp:RemoteFile
本地⽬录复制到远程
[AppleScript] 纯文本查看 复制代码 scp -r FolderName RemoteUserName@RemoteHostIp:RemoteFolder scp -r FolderName RemoteHostIp:RemoteFolder
远程⽂件复制到本地:
[AppleScript] 纯文本查看 复制代码 scp RemoteUserName@RemoteHostIp:RemoteFile FileName scp RemoteHostIp:RemoteFolder FileName scp RemoteHostIp:RemoteFile FileName
远程⽬录复制到本地:
[AppleScript] 纯文本查看 复制代码 scp -r RemoteUserName@RemoteHostIp:RemoteFolder FolderName scp -r RemoteHostIp:RemoteFolder FolderName
编辑器vim vi简介
vi是“Visual interface”的简称,它在Linux上的地位就仿佛Edit程序在DOS上⼀样。它可以 执⾏输出、删除、查找、替换、块操作等众多⽂本操作,⽽且⽤户可以根据⾃⼰的需要对 其进⾏定制。Vi不是⼀个排版程序,它不象Word或WPS那样可以对字体、格式、段落等 其他属性进⾏编排,它只是⼀个⽂本编辑程序。 vi没有菜单,只有命令,且命令繁多。
Vi有三种基本⼯作模式:
+ 命令模式
+ ⽂本输⼊模式
+ 末⾏模式。
命令⾏模式
任何时候,不管⽤户处于何种模式,只要按⼀下ESC键,即可使Vi进⼊命令模式;我们在 shell环境(提示符为$)下输⼊启动Vi命令,进⼊编辑器时,也是处于该模式下。在该模式 下,⽤户可以输⼊各种合法的Vi命令,⽤于管理⾃⼰的⽂档。此时从键盘上输⼊的任何字 符都被当做编辑命令来解释,若输⼊的字符是合法的Vi命令,则Vi在接受⽤户命令之后完 成相应的动作。但需注意的是,所输⼊的命令并不在屏幕上显示出来。若输⼊的字符不是 Vi的合法命令,Vi会响铃报警。
⽂本输⼊模式
在命令模式下输⼊插⼊命令i、附加命令a 、打开命令o、修改命令c、取代命令r或替换命 令s都可以进⼊⽂本输⼊模式。在该模式下,⽤户输⼊的任何字符都被Vi当做⽂件内容保 存起来,并将其显示在屏幕上。在⽂本输⼊过程中,若想回到命令模式下,按键ESC即 可。
末⾏模式
末⾏模式也称ex转义模式。在命令模式下,⽤户按“:”键即可进⼊末⾏模式下,此时Vi会在 显示窗⼝的最后⼀⾏(通常也是屏幕的最后⼀⾏)显示⼀个“:”作为末⾏模式的提示符,等待 ⽤户输⼊命令。多数⽂件管理命令都是在此模式下执⾏的(如把编辑缓冲区的内容写到⽂ 件中等)。末⾏命令执⾏完后,Vi⾃动回到命令模式。例如:
:sp newfile
则分出⼀个窗⼝编辑newfile⽂件。如果要从命令模式转换到编辑模式,可以键⼊命令a或 者i;如果需要从⽂本模式返回,则按Esc键即可。在命令模式下输⼊“:”即可切换到末⾏模 式,然后输⼊命令。
vim基础操作
vim是从 vi 发展出来的⼀个⽂本编辑器 。代码补完、编译及错误跳转等⽅便编程的功能特 别丰富
进⼊插⼊模式:
[AppleScript] 纯文本查看 复制代码 i: 插⼊光标前⼀个字符
I: 插⼊⾏⾸
a: 插⼊光标后⼀个字符
A: 插⼊⾏未
o: 向下新开⼀⾏,插⼊⾏⾸
O: 向上新开⼀⾏,插⼊⾏⾸
进⼊命令模式:
ESC:从插⼊模式或末⾏模式进⼊命令模式
移动光标:
[AppleScript] 纯文本查看 复制代码 h: 左移
j: 下移
k: 上移
l: 右移
M: 光标移动到中间⾏
L: 光标移动到屏幕最后⼀⾏⾏⾸
G: 移动到指定⾏,⾏号 -G
w: 向后⼀次移动⼀个字
b: 向前⼀次移动⼀个字
{: 按段移动,上移
}: 按段移动,下移
Ctr-d: 向下翻半屏
Ctr-u: 向上翻半屏
Ctr-f: 向下翻⼀屏
Ctr-b: 向上翻⼀屏
gg: 光标移动⽂件开头
G: 光标移动到⽂件末尾
删除命令:
[AppleScript] 纯文本查看 复制代码 x: 删除光标后⼀个字符,相当于 Del
X: 删除光标前⼀个字符,相当于 Backspace
dd: 删除光标所在⾏,n dd 删除指定的⾏数 D: 删除光标后本⾏所有内容,包含光标所在字符
d0: 删除光标前本⾏所有内容,不包含光标所在字符
dw: 删除光标开始位置的字,包含光标所在字符
撤销命令:
[AppleScript] 纯文本查看 复制代码 u: ⼀步⼀步撤销
Ctr-r: 反撤销
重复命令:
.: 重复上⼀次操作的命令
⽂本⾏移动:
>>: ⽂本⾏右移
<<: ⽂本⾏左移
复制粘贴:
yy: 复制当前⾏,n yy 复制 n ⾏
p: 在光标所在位置向下新开辟⼀⾏,粘贴
可视模式:
v: 按字符移动,选中⽂本
V: 按⾏移动,选中⽂本可视模式可以配合 d, y, >>, << 实现对⽂本块的删除,复制,左右移动
替换操作:
r: 替换当前字符
R: 替换当前⾏光标后的字符
查找命令:
[AppleScript] 纯文本查看 复制代码 /: str查找 n: 下⼀个 N:上⼀个
替换命令:
把abc全部替换成123
末⾏模式下,将当前⽂件中的所有abc替换成123 :%s/abc/123/g
末⾏模式下,将第⼀⾏⾄第10⾏之间的abc替换成123 :1, 10s/abc/123/g
vim⾥执⾏ shell 下命令:
末⾏模式⾥输⼊!,后⾯跟命令
|
|