Linux软件学习笔记[待更]

Linux软件的基本操做

软件安装

  • 1.在线安装
    sudo spt-get install x
    sudo apt-get remove x/卸载
  • 下载-安装

下载 .deb 文件,经过
sudo dkpg -i xxxx.deb
sudo dkpg -r xxxx.deblinux

  • 源码安装

targit

  • 提高安装速度

①网速
②更换下载源,输入:
sudo vim /etc/apt/sources.listgithub

粘贴以下内容:web

deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse

更新源sudo apt-get update
更新包sudo apt-get upgradeshell


tmux

tmux是什么

tmux(terminal multiplexer)是Linux上的终端复用神器,可从一个屏幕上管理多个终端(准确说是伪终端)。使用该工具,用户能够链接或断开会话,而保持终端在后台运行。ubuntu

基本的操做无非就是对会话、窗口、窗格进行管理,包括建立、关闭、重命名、链接、分离、选择等等。vim

通常使用命令和快捷键进行操做,可在系统shell终端和tmux命令模式(相似vim的命令模式)下使用命令,或者在tmux终端使用快捷键。windows


tmux安装

服务器的系统是 redhat、centos 或 fedora,那么安装会很简单:
[root@roclinux ~]# yum install tmuxcentos

tmux 依赖于 libevent 库和 ncurses 库,因此若是系统中本来没有这两个库的话,yum 会在安装时自动一并安装上。ruby

若是服务器的系统是 ubuntu,那么安装也很简单:
[root@roclinux ~]# apt-get install tmux

若是服务器的系统是 OS X Server,仍然是一条命令搞定:
$ brew install tmux

brew 是苹果系统中经常使用的包管理工具,若是 OS X Server 提示你没有 brew 命令的话,则要事先安装这个包管理工具:
$ ruby -e " $(curl -fsSL https://raw.githubusercontent.com/Homebrew/ install/master/install)"


tmux基本结构与入门

tmux的结构包括**会话(session)、窗口(window)、窗格(pane)**三部分,会话实质是伪终端的集合,每一个窗格表示一个伪终端,多个窗格展示在一个屏幕上,这一屏幕就叫窗口。基本结构及状态信息以下图所示:
[外链图片转存失败(img-mYt0z1PZ-1568096218441)(./1567474776547.png)]

  • 1.启动 tmux

首先,咱们使用远程登陆工具,登陆到远程服务器上,而后执行下面的命令:
[root@roclinux ~]# tmux new -s roclinux
-s是 session 的缩写,顾名思义,咱们启动了一个全新的 tmux 会话(tmux session),而且把这个会话起名叫做 roclinux。这就是 tmux 环境了,如图。
[外链图片转存失败(img-1chhSLIx-1568096218447)(./1568078271921.png)]

  • 2.再建立一个新的窗口

在建立会话的同时,tmux 会在会话中建立一个窗口(tmux window),就是下图 中的 0:bash。

好了,咱们试着再建立一个窗口:
第一步:按 Ctrl+B 组合键,而后松开。 第二步:再单独按一下 c 键。
最底部出现了一个 1:bash , *表示当前活跃窗口
[外链图片转存失败(img-JWXJaRSN-1568096218449)(./1568078588944.png)]

  • 3.在窗口间切换

既然,咱们在 roclinux 这个 session 中已经有了两个窗口,那么若是想在两个窗口间进行切换,应该怎么操做呢?

很简单,假如咱们要切换到 0:bash 这个窗口,步骤以下:
第一步:按 Ctrl-B 组合键,而后松开。 第二步:按数字 0 键。

同理,在按下 Ctrl+B 组合键后,按相应数字键,就能够切换到相应的窗口了。

  • 4.退出会话,还能再回来

如今,咱们切换到 0:bash,运行一个命令:
[root@roclinux ~]# watch -n 2 free

这个命令会每隔 2 秒钟更新一次内存使用状态,若是不输入 Ctrl+C,则永远不会退出。

假如这时候你要带着办公电脑去开会,你的电脑要断网,又不想中断服务器上正在执行的 watch 命令,怎么办呢?

哈哈,tmux 正好能够派上用场,方法是这样的:
第一步:输入组合键 Ctrl+B,而后松开。 第二步:输入字母 d。
看,tmux 环境消失了!眼前只有一行提示 [detached]:
[root@roclinux ~]# tmux new -s roclinux [detached]
这表示,咱们已经切断了办公电脑和刚才那个 tmux 之间的桥梁。如今若是你要外出,能够放心地关闭你的电脑了。

当你回到家后,打开电脑,链接到你的那台远程服务器,而后执行一个神奇的命令:
[root@roclinux ~]# tmux ls roclinux: 2 windows (created Fri Jan 22 16:30:13 2016) [130x36] [root@roclinux ~]# tmux a -t roclinux
看,咱们又回到了刚才的状态,那个查看内存使用状态的 watch 命令,在那里乖乖地运行着。这就是 tmux 的神奇之处,它可让远端服务器的命令,脱离用户本身的电脑来执行,还能够随时召唤回来,继续进行操做和查看。


使用-控制命令

console 命令
开启会话: tmux new -s <session-name>
断开会话:tmux deattach
接入以前的会话: tmux a -t <session-name>
关闭会话: tmux kill-session -t <session-name>
关闭窗口: tmux kill-session -t <session-name>
关闭 tmux: tmux killall
建立一个新的 window: tmux new-window
列出窗口:tmux list-windows
0-9 根据索引转到该 window: tmux select-window -t
重命名当前 window: tmux rename-window
将 window 垂直划分为两个 pane: tmux split-window
将 window 水平划分为两个 pane: tmux split-window -h
在指定的方向交换 pane: tmux swap-pane -[UDLR]
在指定的方向选择下一个 pane: tmux select-pane -[UDLR]
查看全局设定: tmux show-options -g
查看窗口设定:tmux show-options -w
查看remote设定:tmux show-options -s


下面的命令须要先按 prefix 键

基础

? 获取帮助信息


会话管理

s列出全部会话
$重命名当前的会话
d断开当前的会话
D选择要脱离的会话;在同时开启多个会话时使用
[复制模式,光标移动到复制内容位置,空格键开始,方向键选择复制,回车确认,q/Esc退出
]粘贴模式,粘贴以前复制的内容,按 q/Esc退出
t显示当前时间


窗口管理

c建立一个新窗口
&关闭当前窗口
l先后窗口间互相切换
.修改当前窗口编号,至关于从新排序
f在全部窗口中查找关键词
,重命名当前窗口
w列出全部窗口
%水平分割窗口
"竖直分割窗口
n选择下一个窗口
p选择上一个窗口
0~9选择 0~9 对应的窗口


窗格管理

%建立一个水平窗格
"建立一个竖直窗格
h将光标移入左侧的窗格*
j将光标移入下方的窗格*
l将光标移入右侧的窗格*
k将光标移入上方的窗格*
q显示窗格的编号
o在窗格间切换
}与下一个窗格交换位置
{与上一个窗格交换位置
ctrl+方向键以 1 个单元格为单位移动边缘以调整当前窗格大小
alt+方向键以 5 个单元格为单位移动边缘以调整当前窗格大小
alt+o逆时针旋转当前窗格
ctrl+o顺时针旋转当前窗格
z最大化当前所在窗格
Page up向上滚动屏幕,q 退出
Page down向下滚动屏幕,q 退出
!在新窗口中显示当前窗格
x关闭当前窗格>要使用带“*”的快捷键须要提早配置,配置方法能够参考上文的“在窗格间移动光标一节。


ssh

  • SSH(远程链接工具)链接原理:ssh服务是一个守护进程(demon),系统后台监听客户端的链接,ssh服务端的进程名为sshd,负责实时监听客户端的请求(IP 22端口),包括公共秘钥等交换等信息。
  • ssh服务端由2部分组成: openssh(提供ssh服务) openssl(提供加密的程序)
    ssh的客户端能够用 XSHELL,Securecrt, Mobaxterm等工具进行链接

scp