Linux tutorial(2)
文章目录
之前的linux 学习笔记内容比较,然后新开了一篇。
- linux 使用sz rz命令下载上传文件
rz 是received,上传文件到服务器;sz 是send,从服务器端发送文件到客户端。
sz 服务器下载文件到本地
|
|
rz 从本地上传文件到服务器
|
|
本地上传文件到服务器,并强制覆盖文件
|
|
- 反向搜索
ctr+r快捷键(推荐): ctrl+r是反向搜索 (reverse-i-search )
- find 关键字
这个命令还是非常常见的
|
|
Iperf是美国伊利诺斯大学(University of Illinois)开发的一种开源的网络性能测试工具。可以用来测试网络节点间(也包括回环)TCP或UDP连接的性能,包括带宽、抖动以及丢包率,其中抖动和丢包率适应于UDP测试,而带宽测试适应于TCP和UDP。
zsh 学习笔记
在操作系统内核外有一层壳,而这层壳就是 shell,它是用户和操作系统交互的桥梁。
这很好理解,shell 包住了系统,用户想要跟系统交互,就必须经过shell。
后来,shell 还慢慢变成了内核与用户交互的脚本语言的总称。
我们常见的 shell 有:bash、zsh、csh、ksh、ash 等等。
bash 和 zsh 都是 mac 终端中自带的 shell 命令解释器。 zsh 原称 Z Shell
,兼容最常用的 bash 操作和命令,并且有很多增强,超强的定制性,但配置很难, oh-my-zsh
开源工具简化了 zsh 的配置过程。
bash 和 zsh 的区别:配置文件
|
|
安装 zsh
去官网上: oh-my-zsh 的官网地址:https://ohmyz.sh/
|
|
zsh 的插件
代码高亮插件
|
|
历史命令智能提示插件
|
|
在 shell 脚本下的 zsh 自动补全工具
|
|
基于 ssh 的端口转发
(1) 修改端口号
SSH的默认端口是22,也就是说,你的登录请求会送进远程主机的22端口。使用p参数,可以修改这个端口。
|
|
(2) 远程操作
这里不使用上面的ssh-copy-id命令,改用下面的命令,解释公钥的保存过程:
|
|
这条命令由多个语句组成,依次分解开来看:(1)" ssh user@host",表示登录远程主机;(2)单引号中的mkdir .ssh && cat » .ssh/authorized_keys,表示登录后在远程shell上执行的命令:(3)"$ mkdir -p .ssh"的作用是,如果用户主目录中的.ssh目录不存在,就创建一个;(4)‘cat » .ssh/authorized_keys’ < ~/.ssh/id_rsa.pub的作用是,将本地的公钥文件~/.ssh/id_rsa.pub,重定向追加到远程文件authorized_keys的末尾。
写入authorized_keys文件后,公钥登录的设置就完成了。
|
|
(3)本地端口转发
”本地端口转发“ 使得 host1 和host3 形成 SSH隧道。
host1 是本地主机,host2 是远程主机,但是host1 和host2 无法直接连通,通过 host3 进行跳转。
|
|
命令中的L参数一共接受三个值,分别是"本地端口:目标主机:目标主机端口",它们之间用冒号分隔。这条命令的意思,就是指定SSH绑定本地端口2121,然后指定host3将所有的数据,转发到目标主机host2的21端口(假定host2运行FTP,默认端口为21)。
|
|
这里例子想说的是:这里的localhost指的是host3,因为目标主机是相对host3而言的
(注意这两个端口的前后顺序,第一个端口是第一个 ip;第二个端口是第二个 ip)
端口转发
|
|
将本地端口5000 映射到远程 host2 上的80 端口。前提是远程主机 host1 能够正常连接 host2 的80 端口
|
|
应用示例
访问服务器端的 visdom(facebook 出品)
|
|
同理 tensorboard 也可以使用相同的方式进行访问。
(4) 远程端口转发 remote forwarding
host1与host2之间无法连通,必须借助host3转发。但是,特殊情况出现了,host3是一台内网机器,它可以连接外网的host1,但是反过来就不行,外网的host1连不上内网的host3。
我们在 host3 上执行
|
|
需要注意的是 ”远程端口转发“的前提条件, host1 和host3 上都有 sshD 和 ssh客户端。
|
|
将远程 host2 的 80端口映射到 host1 的8080 端口。前提是本机主机可以正常连接到 host2 的80 端口。
(这点是可以作为翻墙的应用的,好好研究一下,有一台机器是能够上外网,其他的能连接上这个机器的也是能够上网的)
(5)动态端口转发(socks 代理)
假设你在局域网A,HostB在局域网B,JumpHost有双网卡可以同时连接到局域网A和B。此时的你想要访问HostB上的web服务,便可以通过如下命令建立代理:
|
|
(6)安全性
建议为端口转发建立专门的账户,使用随机密码(当然使用私钥登录更好),并且禁掉其执行命令的权限。最简单的方式为
|
|
参考文献
|
|
这个命令可以显示出当前用户使用nvidia
的所有进程号
fuser 命令用于报告进程使用的文件和网络套接字。fuser 命令列出的是本地进程的进程号。
|
|
allow_other选项很重要,必须添加,否则任何文件都是Permission Deny
如果搭建大家都是用的文件夹,那么一定得注意这个细节
挂载远程服务器文件到本地/ 挂载本地文件到远程服务器的方法
(1)mount remote file in local machine
|
|
(2)mount local file to remote machine
|
|
文章作者 jijeng
上次更新 2020-07-08