摘要:用户每执行一次命令,就会有一个新的连接建立,并一直维持连接直到用户退出。提供一个叫做的功能,可以有效缓解这一问题。无需再手动输入密码由于已经做了用户授权的操作,所有的不需要在进行密码的输入或公钥的验证。
linux terminal
# 查看Ip $ ifconfig en0 # 查找目录 $ find (查找范围) -name "查找关键字" -type d # 获取http response $ curl url –o file 读取文件内容到文件中 # 复制目录 $ cp -r # 建立软连接 $ ln -s 源目标 目的目标 # 查看目录下的所有软链接 $ ls -l 目录 # 查看日志 $ tail -f access_log # 解压缩: z(具有gzip属性);j(具有bzip2属性);c(压缩);x(解压) $ tar -z/j c/xvf 文件 # -C dir参数的作用在于改变工作目录,其有效期为该命令中下一次-C dir参数之前。 $ tar -xzf XXX.tar.gz -C # 查看端口号 $ netstat -an | grep 8080 $ ps -ef | grep <进程名> $ lsof -i 4tcp:svn使用$ kill -9 # 在当前目录搜索带"energywise"行的文件 $ grep "energywise" * # 查询命令 $ where expect # 创建tmp目录和其子目录svntemp $ mkdir -p /tmp/svntemp # 使用ssh-keygen生成私钥和公钥: 参数 -t rsa 表示使用rsa算法进行加密 $ ssh-keygen -t rsa # 输出执行命令结果到文件中 $ [command(svn diff)] [file"s filename] > [file"s filename].diff # 放入到剪贴板 $ cat file | pbcopy # 创建目录并进入 $ mkdir [folder"s name] && cd $_ # 不需要交互式命令 $ npm init -y
在linux下完svn的都碰到过一个这样的问题,怎么一次性删除该目录以及子目录下下所有.svn文件呢?递归删除!
介绍两种方法
find和exec结合
find . -name "*.svn" -print -exec rm -rf {} ;
做一个简单说明
-exec之后的rm -rf是命令以及参数,{}就是find的命令找到的结果集,;是必须输入的
find和xargs结合
find . -name "*.svn" | xargs rm -rf
每次修改.bashrc后,使用source ~/.bashrc可以立刻加载修改后的设置,使之生效
切换shell的命令$ chsh -s /bin/zsh # 一般使用oh_my_zsh $ git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh $ cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrcssh无密码登录
# 在Client机上生成公钥 $ ssh-keygen -t rsa # 到Server机user用户的~目录下 # 进入.ssh目录下,检查是否有authorized_keys文件,如果没有,则创建一个名为authorized_keys的文件 # 在authorized_keys文件中,加入Client的机生成的公钥(即将Client机生成的id_rsa.pub文件的内容追加到authorized_keys文件中,注意:要多带带占一行)通过 ControlMaster 对 OpenSSH 进行加速,减少系统资源消耗
执行这个命令,成功登陆服务器后,客户端与服务器建立了一个安全的 TCP/IP 连接。用户每执行一次命令,就会有一个新的连接建立,并一直维持连接直到用户退出。如果用户有大量的连接请求,就需要建立并维持大量的 TCP/IP 连接,消耗用户和主机的资源。
OpenSSH 提供一个叫做 ControlMaster 的功能,可以有效缓解这一问题。在使用 ControlMaster 后,ssh 与服务器建立一个 Master 连接,之后的所有连接都可以重用这一通道,也就是说不管有多少访问请求,都只需要维护一个 TCP/IP 连接。
如何开启 ControlMasterControlMaster 默认是关闭的,修改~/.ssh/config文件:
Host * ControlMaster auto ControlPath ~/.ssh/master-%r@%h:%p
其中,%r 是用户名,%h 是远程主机IP,%p 是端口,打开ControlMaster之后,一个ssh连接在后台运行,创建一个本地套接字( controlpath 就是这个套接字的名字),以后本地再有 ssh 需要连接到远端同样的主机的时候,直接使用这个已经创建好的 socket 文件进行连接,不用再创建连接了,同理,也不需要再进行用户身份验证。
运行 ssh -M -N -f user@1.2.3.4 之后,就会在 ~/.ssh 目录下生成本地套接字文件:
srw------- 1 SYSADM Friends 0 Nov 3 01:23 master-user@1.2.3.4:22
其中 user 是我的用户名,1.2.3.4 是服务器的 IP
这个第一个运行的 ssh 即为 master ,其中 -f 表示在后台运行,这个 ssh 本身的作用就是在后台的一个守护进程,对连接上来的其它 slaver 的消息进行转发,转发给 sshd。
减少系统资源消耗:
可以有效地减少 ssh 所产生的 TCP/IP 的数量,从多个减少到一个,达到节省系统资源的目的。
加快访问速度:
普通非 control master 的访问方式,客户端都需要进行秘钥交换、用户授权等操作,而 Control Master 访问方式,重用之前的连接,不需要进行进行秘钥交换、用户授权等操作,减少了对内存和 CPU 资源的使用。
slave 无需再手动输入密码:由于 master 已经做了用户授权的操作,所有的 salve 不需要在进行密码的输入或公钥的验证。
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/10513.html
摘要:发布工具快速教程阶段性的完成了这本书开源书籍,发布出来给有需要的朋友,同时也欢迎更多的朋友加入进来,完善这本书本书地址在线阅读缘起下有很多命令行工具供我们使用,每个工具总是提供了大量参数供我们选择实际工作中,我们用到的工具,最常用的总是那么 发布 《Linux工具快速教程》 阶段性的完成了这本书开源书籍,发布出来给有需要的朋友,同时也欢迎更多的朋友加入进来,完善这本书; 本书Gith...
摘要:发布工具快速教程阶段性的完成了这本书开源书籍,发布出来给有需要的朋友,同时也欢迎更多的朋友加入进来,完善这本书本书地址在线阅读缘起下有很多命令行工具供我们使用,每个工具总是提供了大量参数供我们选择实际工作中,我们用到的工具,最常用的总是那么 发布 《Linux工具快速教程》 阶段性的完成了这本书开源书籍,发布出来给有需要的朋友,同时也欢迎更多的朋友加入进来,完善这本书; 本书Gith...
摘要:扩展分区无法格式化逻辑分区的数量依操作系统而不同,在系统中,硬盘最多有个逻辑分割号到号,硬盘则有个逻辑分割号到号。 一、磁盘的组成 我们在计算机概论谈过磁盘的组成主要有磁盘、机械手臂、磁盘读取头与主轴马达所组成, 而数据的写入其实是在盘片上面。盘片上面又可细分出扇区(Sector)与柱面(Cylinder)两种单位, 其中扇区每个为512bytes那么大。假设磁盘只有一个盘片,那么盘片...
摘要:前几天,有位老粉私信我,说看到某后学弟晒出阿里的工资单,他是真酸了想狠补下技术,努力冲一把大厂。为了帮到他,也为了大家能在最短的时间内做面试复习,我把面试系列都汇总在这一篇文章了。 前几天,有位老粉私信我,说看到某95后学弟晒出阿里P7的工资单,他是真酸了......想狠补下技术,努力冲一把...
摘要:有个建议,一定要学一下,一定要学一下,一定要学一下,重要的事情说三遍。 首先,要学Linux编程,你得会用Linux,也就是得在命令行环境下生存下来。什么叫生存下来呢?就是我现在给你一台主机,键盘,显示器啥的,然后给你一个服务器版的Linux系统的光盘或者其他什么安装盘,你去把这台主机用起来。什么叫用起来呢?你平常用Windows电脑干啥,你现在还用这台电脑干啥。新建文件啊,查看文件,...
阅读 3442·2021-09-13 10:28
阅读 1812·2021-08-10 09:43
阅读 868·2019-08-30 15:44
阅读 3023·2019-08-30 13:14
阅读 1633·2019-08-29 16:56
阅读 2799·2019-08-29 16:35
阅读 2717·2019-08-29 12:58
阅读 759·2019-08-26 13:46