分类: 技术
-
笔记本安装Centos系统设置盒盖不休眠
1.找到CentOS7下对应配置文件,目录:/etc/systemd/logind.conf,使用vi命令打开
[root@localhost ~]# vi /etc/systemd/logind.conf
2.配置文件中找到我们要修改的配置项:
HandlePowerKey 按下电源键后的行为,默认power off
HandleSleepKey 按下挂起键后的行为,默认suspend
HandleHibernateKey 按下休眠键后的行为,默认hibernate
HandleLidSwitch 合上笔记本盖后的行为,默认suspend
我们把HandleLidSwitch后面的suspend修改为lock,即
HandleLidSwitch=lock
注意,如果配置项前面有#号,要删掉,#是注释的意思
3.重启systemd-logind服务:
[root@localhost ~]# systemctl restart systemd-logind
其中,后面的配置项的可选范围为:
ignore忽略,跳过power off关机eboot重启halt挂起suspendshell内建指令,可暂停目前正在执行的shell。若要恢复,则必须使用SIGCONT信息。所有的进程都会暂停,但不是消失(halt是进程关闭)hibernate让笔记本进入休眠状态hybrid-sleep混合睡眠,主要是为台式机设计的,是睡眠和休眠的结合体,当你选择Hybird时,系统会像休眠一样把内存里的数据从头到尾复制到硬盘里 ,然后进入睡眠状态,即内存和CPU还是活动的,其他设置不活动,这样你想用电脑时就可以快速恢复到之前的状态了,笔记本一般不用这个功能。lock仅锁屏,计算机继续工作。 -
CentOS 7下通过SSHFS挂载sftp资源
环境
CentOS7
SSHFS:2.10安装
安装装EPEL源
yum install epel-release安装sshfs
yum install sshfs配置
使用如下命令进行挂载
sshfs -p 22 root@192.168.1.21:/ /app1/ #输入密码后确认挂载 #允许其他用户访问 sudo sshfs -o allow_other tecmint@x.x.x.x:/home/tecmint/ /mnt/tecmint #无密码登录 sudo sshfs -o allow_other,IdentityFile=~/.ssh/id_rsa tecmint@x.x.x.x:/home/tecmint/ /mnt/tecmint 设置开机自启动挂载 touch auto.sh 写入开机启动脚本: echo 远程主机密码 | sshfs 远程主机用户@远程ip:/OA/RP/ /root/test -o workaround=rename -o password_stdin -o allow_other chmod +x auto.sh vim /etc/rc.d/rc.local 写入 sh /home/autosu.sh chmod +x /etc/rc.d/rc.local //开机自动启动 #去挂载目录查看 cd /app1/ ll #查看挂载情况


如需取消:#umount掉挂载点即可 umount /app1开机自动挂载方案:
1. 在系统启动时挂载 crontab -e ------------------------------------------ @reboot sh mountsshfs.sh vim mountsshfs.sh ------------------------------------------ #! /bin/sh while true do ping -c1 -w1 ssh_server_ip > /dev/null && break done sshfs -o reconnect,ServerAliveInterval=15,ServerAliveCountMax=3 user@192.168.200.10:/pathto/dir /home/username/mount/dir 2.利用/etc/fstab user@host:/remote/folder /mount/point fuse.sshfs noauto,x-systemd.automount,_netdev,users,idmap=user,IdentityFile=/home/user/.ssh/id_rsa,allow_other,reconnect 0 0 参数 noauto 不在boot时mount x-systemd.automount 配置按需挂载 _netdev 避免“No such device”错误,指明sshfs是一个网络设备而非块设备 注意:在完成对/etc/fstab的修改后,需要执行如下命令 systemctl daemon-reload systemctl restart <target> 这里 <target>可以使用如下命令查询 systemctl list-unit-files --type automount注意事项
- 挂载在重启后失效
- 一般来说,linux系统都默认安装了sftp,挂载期间基本不用考虑sftp服务。
- Windows下可使用其他第三方软件开启sftp服务,或通过smb进行挂载 [CentOS]CentOS 7下通过mount cifs挂载smb资源
-
aliyundrive-webdav
docker run -d --name=aliyundrive-webdav --restart=unless-stopped -p 8080:8080 \ -v /etc/aliyundrive-webdav/:/etc/aliyundrive-webdav/ \ -e REFRESH_TOKEN='your refresh token' \ -e WEBDAV_AUTH_USER=admin \ -e WEBDAV_AUTH_PASSWORD=admin \ messense/aliyundrive-webdav -
Hyper-V 共享式网络链接 端口映射
远程路由访问我配置了很久都不成功,经过多方搜索,现面的命令能实现端口映射 一、查询端口映射情况
netsh interface portproxy show v4tov4查询这个IP所有的端口映射。 netsh interface portproxy show v4tov4|find "192.168.1.1" 二、增加一个端口映射 netsh interface portproxy add v4tov4 listenport=外网端口 listenaddress=主IP connectaddress=私网IP connectport=私网IP端口 例如: netsh interface portproxy add v4tov4 listenport=8888 listenaddress=118.123.13.180 connectaddress=192.168.1.10 connectport=2222 三、删除一个端口映射 netsh interface portproxy delete v4tov4 listenaddress=主IP listenport=外网端口 例如: netsh interface portproxy delete v4tov4 listenaddress=118.123.13.180 listenport=8888 在关闭Hyper-V虚拟机的情况下,选择Hyper-V管理界面中的“虚拟交换机管理器” 在弹出的对话框中“新建虚拟网络交换机”,选择“内部”,点击“创建虚拟交换机”。 在IP网卡 切换到“共享”标签下,勾选“允许其他网络用户通过此计算机的Internet连接来连接”并在下方“家庭网络连接”中选择刚刚创建的虚拟交换机——vEthernet (Hyper-V Switch),点击“确认 -
tmux
Tmux是一个优秀的终端复用软件,类似GNU Screen,但来自于OpenBSD,采用BSD授权。
补充说明
使用它最直观的好处就是,通过一个终端登录远程主机并运行tmux后,在其中可以开启多个控制台而无需再“浪费”多余的终端来连接这台远程主机;
功能
- 提供了强劲的、易于使用的命令行界面。
- 可横向和纵向分割窗口。
- 窗格可以自由移动和调整大小,或直接利用四个预设布局之一。
- 支持 UTF-8 编码及 256 色终端。
- 可在多个缓冲区进行复制和粘贴。
- 可通过交互式菜单来选择窗口、会话及客户端。
- 支持跨窗口搜索。
- 支持自动及手动锁定窗口。
安装
# 在 Mac OS 中,通过 brew 安装 brew install tmux # ubuntu版本下直接apt-get安装 sudo apt-get install tmux # centos7版本下直接yum安装 yum install -y tmux # centos6版本需要编译安装 yum install libevent libevent-devel ncurses-devel tar -zvxf tmux-2.3.tar.gz # (提前下载:wget https://github.com/tmux/tmux/releases/download/2.3/tmux-2.3.tar.gz) cd tmux-2.3 ./configure make && make install快捷键使用说明
Ctrl+b 激活控制台;此时以下按键生效 系统操作 ? 列出所有快捷键;按q返回 d 脱离当前会话;这样可以暂时返回Shell界面,输入tmux attach能够重新进入之前的会话 D 选择要脱离的会话;在同时开启了多个会话时使用 Ctrl+z 挂起当前会话 r 强制重绘未脱离的会话 s 选择并切换会话;在同时开启了多个会话时使用 : 进入命令行模式;此时可以输入支持的命令,例如kill-server可以关闭服务器 [ 进入复制模式;此时的操作与vi/emacs相同,按q/Esc退出 ~ 列出提示信息缓存;其中包含了之前tmux返回的各种提示信息 窗口操作 c 创建新窗口 & 关闭当前窗口 数字键 切换至指定窗口 p 切换至上一窗口 n 切换至下一窗口 l 在前后两个窗口间互相切换 w 通过窗口列表切换窗口 , 重命名当前窗口;这样便于识别 . 修改当前窗口编号;相当于窗口重新排序 f 在所有窗口中查找指定文本 面板操作 ” 将当前面板平分为上下两块 % 将当前面板平分为左右两块 x 关闭当前面板 ! 将当前面板置于新窗口;即新建一个窗口,其中仅包含当前面板 Ctrl+方向键 以1个单元格为单位移动边缘以调整当前面板大小 Alt+方向键 以5个单元格为单位移动边缘以调整当前面板大小 Space 在预置的面板布局中循环切换;依次包括even-horizontal、even-vertical、main-horizontal、main-vertical、tiled q 显示面板编号 o 在当前窗口中选择下一面板 方向键 移动光标以选择面板 { 向前置换当前面板 } 向后置换当前面板 Alt+o 逆时针旋转当前窗口的面板 Ctrl+o 顺时针旋转当前窗口的面板 1)进入tmux面板后,一定要先按ctrl+b,然后松开,再按其他的组合键才生效。 2)常用到的几个组合键:
ctrl+b ? # 显示快捷键帮助 ctrl+b 空格键 # 采用下一个内置布局,这个很有意思,在多屏时,用这个就会将多有屏幕竖着展示 ctrl+b ! # 把当前窗口变为新窗口 ctrl+b " # 模向分隔窗口 ctrl+b % # 纵向分隔窗口 ctrl+b q # 显示分隔窗口的编号 ctrl+b o # 跳到下一个分隔窗口。多屏之间的切换 ctrl+b 上下键 # 上一个及下一个分隔窗口 ctrl+b C-方向键 # 调整分隔窗口大小 ctrl+b & # 确认后退出当前tmux ctrl+b [ # 复制模式,即将当前屏幕移到上一个的位置上,其他所有窗口都向前移动一个。 ctrl+b c # 创建新窗口 ctrl+b n # 选择下一个窗口 ctrl+b l # 最后使用的窗口 ctrl+b p # 选择前一个窗口 ctrl+b w # 以菜单方式显示及选择窗口 ctrl+b s # 以菜单方式显示和选择会话。这个常用到,可以选择进入哪个tmux ctrl+b t # 显示时钟。然后按enter键后就会恢复到shell终端状态 ctrl+b d # 脱离当前会话;这样可以暂时返回Shell界面,输入tmux attach能够重新进入之前的会话参考资料
- tmux 官网下载地址:http://tmux.github.io/
-
Linux查看网络流量
作为一个非职业运维,不时需要查看Linux服务器上的网络流量状况。本文介绍几个常用的Linux查看网络流量命令,并简要介绍其用法。部分命令系统已经内置,某些命令则需要从软件仓库或者自行编译安装,本文以CentOS系统为例介绍软件安装方法。
一、查看总流量
ip
ip命令来自iproute2util包,是查看、配置网络/路由的工具。作为ifconfig的替代品,ip命令功能更强大,用法更语义化。ip命令在大多数系统上都已经默认安装,也可通过yum install -y iproute安装。ip的 “-s -h” 参数查看各网卡的总流量,下图是ip -s -h link的输出结果:nload
nload命令可以查看各个网络设备的当前网络速率,也会展示流经设备的总流量。nload来自EPEL软件库,CentOS安装命令为:yum install -y epel-release && yum install -y nload。查看eth0网卡流量nload eth0命令输出如下:PS:
netstat -s和ifconfig -s都可以查看收发的总包(netstat分协议给出),但不会给出字节数据。二、查看实时网速网速
nload命令可以输出当前网速,上面已经介绍过,本节不再赘述。dstat
dstat是一个用来替换vmstat、iostat、netstat、nfsstat和ifstat的全能系统信息统计工具,支持数据实时刷新,输出直观易懂。dstat默认没有安装,安装命令为:yum install -y dstat。dstat -tnf 1 10输出接下来10秒内每秒的网络数据:sar
sar是System Activity Report的缩写,是一款全面的Linux系统运行状态统计和性能分析工具,可从磁盘IO、CPU负载、内存使用等多个维度对系统活动进行报告。sar命令来自sysstat包,可使用这个命令安装:yum install -y sysstat。sar -n TCP 1 10可查看接下来10秒内的tcp数据:三、查看连接/进程流量
ss/netstat
ss和netstat是查看活动链接/监听端口的常用命令。ss是netstat的替代,性能更好,建议使用。ss是iproute2util包的一部分,因此在大多数系统上默认安装,也可通过yum install -y iproute安装。netstat来自net-tools包,新版系统上需要自行安装:yum install -y net-tools。下图是用
ss查看tcp连接的输出:iftop
iftop是一款实时流量监控工具,可以查看每个连接的实时速率。iftop来自EPEL软件库,安装命令是:yum install -y epel-release && yum install -y iftop。iftop -nN -i eth0实时查看eth0网卡的各个连接和网速:nethogs
nethogs是为了查看单个进程流量而设计的工具,按照进程进行带宽分组。nethogs来自EPEL软件库,安装命令是:yum install -y epel-release && yum install -y nethogs。nethogs -d 2 eth0每2秒刷新流经eth0网卡的进程流量信息:其他
tcpdump可以用来抓包,保存的数据可以用wireshark打开和查看。 -
安装 docker-compose
- 最新发行的版本地址:https://github.com/docker/compose/releases
- 运行以下命令以下载Docker Compose的当前稳定版本:
sudo curl -L "https://github.com/docker/compose/releases/download/1.27.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose 将可执行权限应用于二进制文件: sudo chmod +x /usr/local/bin/docker-compose 注意:如果命令docker-compose在安装后失败,请检查您的路径。您还可以创建指向/usr/bin或路径中任何其他目录的符号链接。 测试安装 docker-compose --version bash 命令补齐 curl -L https://raw.githubusercontent.com/docker/compose/1.8.0/contrib/completion/bash/docker-compose > /etc/bash_completion.d/docker-compose 卸载docker-compose 直接移除二进制包即可 sudo rm /usr/local/bin/docker-compose