环境rhel7.5
1,桥接网卡
brctl show 查看
brctl addif br0 vnet0 将虚拟机网卡添加到桥接上
brctl addif br0 vnet0
ip link set up/down vnet0
brctl show 显示桥接
brctl addif br0 vnet0 添加桥接
ip link set up dev vnet0 打开
ifcfg-eth0文件:
BOOTPROTO=none
ONBOOT=yes
DEVICE=enp0s26u1u2 #自己实际网卡名字
BRIDGE=br0

ifcfg-bridge文件:
DEVICE=br0
STP=yes
TYPE=Bridge
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
NAME=bridge
UUID=884a309a-9b12-4a84-bc06-6bda8c38b836
ONBOOT=yes
BRIDGING_OPTS=priority=32768
IPADDR0=172.25.254.135
PREFIX0=24
IPADDR1=172.25.135.250
PREFIX1=24
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
将这两个文件放到/etc/sysconfig/network-scripts/下,其他的网卡配置文件不要重启网络即可,这样虚拟机就可以有私有独立ip地址段可用,又不影响与物理机通讯。
2,虚拟机通过桥接上外网
物理机加允许的通道
iptables -t nat -I POSTROUTING -s 172.25.35.0/24 -j MASQUERADE
查看 iptables -L -t nat

查看解析nameserver 物理机和虚拟机保持一致
vim /etc/resolv.conf

虚拟机添加路由route add default gw 172.25.35.250
查看 route
yum install net-tools 不装没有route这个命令
用kvm装windows系统注意linux系统一些实用办公技巧网卡设备类型不是virtio进系统配置网络桥接的ip地址和dns,4个114也可以,注意防火墙即可
3,打印机
yum install -y hplip hplip-* 系统版本低前提需要epel源
4,pycharm的快捷启动方式 #其他的也可
vim /usr/share/applications/pycharm.desktop
[Desktop Entry]
Encoding=UTF-8
Type=Application
Name=Pycharm
GenericName=Pycharm3
Comment=Pycharm3:The Python IDE
Exec=sh /opt/pycharm/bin/pycharm.sh
Icon=/opt/pycharm/bin/pycharm.png
Terminal=false
Categories=Development;
5, 虚拟机使用建立

cd /var/lib/libvirt/images
qemu-img create -f qcow2 -b server.qcow2 vm1 建快照
qemu-img convert -f raw -O qcow2 sever0.img server.qcow2 改格式

管理kvm虚拟机

列出所有的虚拟机

virsh list --all

显示虚拟机信息

virsh dominfo kvm-1

显示虚拟机内存和cpu的使用情况

yum install virt-top -y
virt-top

显示虚拟机分区信息

virt-df kvm-1

关闭虚拟机(shutodwn)

virsh shutdown kvm-1

启动虚拟机

virsh start kvm-1

设置虚拟机(kvm-1)跟随系统自启

virsh autostart kvm-1

关闭虚拟及自启

virsh autostart --disable kvm-1

删除虚拟机

virsh undefine kvm-1

通过控制窗口登录虚拟机

virsh console kvm-1
6, 图形化
yum -y groupinstall "Server with GUI" 安装图形化,可由 yum grouplist 查看,根据中英文系统的语言变化,组名跟系统走
查看开机默认运行级别:
systemctl get-default
修改默认运行级别为图形方式:
systemctl set-default graphical.target
rhel6.5
yum grouplist 选择
7,uget
yum install uget 前提epel源呀
和迅雷一样图形化界面下载东西,可自定义下载目录感觉比wget好用。
8, yun源
1.使用YUM查找软件包
命令:yum search~
2.列出所有可安装的软件包
命令:yum list
3.列出所有可更新的软件包
命令:yum list updates
4.列出所有已安装的软件包
命令:yum list installed
5.列出所有已安装但不在Yum Repository 內的软件包
命令:yum list extras
6.列出所指定软件包
命令:yum list ~
7.使用YUM获取软件包信息
命令:yum info ~
8.列出所有软件包的信息
命令:yum info
9.列出所有可更新的软件包信息
命令:yum info updates
10.列出所有已安裝的软件包信息
命令:yum info installed
11.列出所有已安裝但不在Yum Repository 內的软件包信息
命令:yum info extras
12.列出软件包提供哪些文件
命令:yum provides~
使用YUM查找软件包
yum search
命令:
rpm -q …
附加查询命令:
a 查询所有已经安装的包
以下附加命令用于查询安装包的信息;
i 显示安装包的信息;
l 显示安装包中的所有文件被安装到哪些目录下;
s 显示安装版中的所有文件状态及被安装到哪些目录下;
以下附加命令用于指定需要查询的是安装包还是已安装后的文件;
p 查询的是安装包的信息;
f 查询的是已安装的某文件信息;
10,vim
vim如何与剪贴板交互(将vim的内容复制出来)

习惯了在windows环境各个应用程序之间如UltraEdit,记事本,eclipse之间ctrl+c,ctrl+v进行复制粘贴的你,如何在vim与别的windows应用程序之间拷贝粘贴呢?
当然你可以在vim里选择用鼠标,选中一块文字然后右键复制,再到应用程序里ctrl+v粘贴,只不过这样效率就差多了。
更好的做法是,在vim中使用 "*y 使用进行复制,然后在应用程序中用ctrl+v粘贴。
从应用程序到vim则在应用程序中使用ctrl+c复制,在vim中使用shift+insert粘贴。

如:

"yy复制一行
"
y2w复制二个词
……

实现的原理是:
" 表示使用寄存器
"* 表示使用当前选择区

我个人推荐使用ctrl+insert复制,shift+insert粘贴。

VIM 复制粘贴 shirt+v或ctrl+v 选中复制行yy复制pp粘贴

按大些“I”进入插入模式,输入注释符“#”或者是"//",然后立刻按下ESC(两下)
在vim中将光标移到最初被注释的那一行,按ctrl + v
然后将光标移到注释的结尾部分,按x

方法一

ctrl+v 进入列编辑模式,向下或向上移动光标,把需要注释的行的开头标记起来,然后按大写的I(shift+i),再插入注释符,比如"//",再按Esc,就会全部注释了
批量去掉注释

ctrl+v,进入列编辑模式,横向选中列的个数(如"//"注释符号,需要选中两列),然后按d, 就会删除注释符号

方法二

使用下面命令在指定的行首添加注释:
:起始行号,结束行号s/^/注释符/g
取消注释:
:起始行号,结束行号s/^注释符//g
例子:
在10 - 20行添加 // 注释
:10,50s#^#//#g
在10 - 20行删除 // 注释
:10,20s#^//##g

替换标志

上文中命令结尾的g即是替换标志之一,表示全局global替换(即替换目标的所有出现)。 还有很多其他有用的替换标志:

空替换标志表示只替换从光标位置开始,目标的第一次出现:

:%s/foo/bar

i表示大小写不敏感查找,I表示大小写敏感:

:%s/foo/bar/i

等效于模式中的\c(不敏感)或\C(敏感)

:%s/foo\c/bar

c表示需要确认,例如全局查找"foo"替换为"bar"并且需要确认:

:%s/foo/bar/gc

回车后Vim会将光标移动到每一次"foo"出现的位置,并提示

replace with bar (y/n/a/q/l/^E/^Y)?

按下y表示替换,n表示不替换,a表示替换所有,q表示退出查找模式, l表示替换当前位置并退出。^E与^Y是光标移动快捷键,参考: Vim中如何快速进行光标移

删除包含特定字符的行,匹配删除
:% g/abc/d

删除不包含特定字符的行,
% v/abc/d
% g!/abc/d

在全局替换中,ex编辑器使用指定的字符模式对文件中的每行进行检查。在所有行中发现模式的位置,ex使用新字符串来替换模式。

全局替换真正使用的是两个ex命令是 :g(global全局)和:s(switch替换)。

替换命令的语法如下:
:s / old / new /
这将把当前中模式old的第一次出现修改为new。 /(斜杆)是命令不同部分之间的分隔符(当斜杆为该行的最后一个字符时,可不写)

下面这种形式的替换命令:
:s / old / new / g
把当前行old的每次出现改为new,而不只是该行的第一个old。:s命令允许替换串后面带有选项,上面语法中的g代表全局(g选项影响一行中的每个模式,不要把它与影响文件中所有行的:g命令混淆)

通过在:s命令前加上地址前缀,可以把它的范围扩展到多行。例如下面命令把50行到100行的old的每次出现都改为new:
:50, 100 s / old / new / g

下面的命令把整个文件中的old的每次出现都改为new:
:1, $s / old / new / g
我们知道%等价于1,$,所以上行命令也可以这样写:
:% s / old / new / g
其他的wps不用说了吧直接安装即可