修改默认启动内核



理解软硬连接



openstack手动分配卷组

truncate -s 15G vg_file    #创建文件
losetup -f vg-_file --show #创建对应块设备,并显示名称,这里假设是/dev/loop0
vgcreate stack-volumes-lvmdriver-1 /dev/loop0    #创建卷组



网桥配置(不修改配置文件)

vbr=virbr0
eth=enp3s0
ip=192.168.2.101
zo=0.0.0.0
gate=192.168.2.1
brctl addbr $vbr                            #创建网桥
ifconfig $eth                              #查看eth0的ip,假设为192.168.2.101
ifconfig $vbr $ip                     #将br0的ip设为192.168.2.101
ifconfig $eth $zo                      #取消eth0的ip,相当于混杂模式!
brctl addif $vbr $eth                       #将eth0接到br0上
route add default gw $gate dev $vbr   #route命令添加网关,这样可以上外网
nmcli connection modify $vbr ipv4.dns 114.114.114.114        #可添加dns服务器

#理解网桥:https://www.cnblogs.com/lsgxeva/p/8622870.html

ip命令详解

Old command (Deprecated) New command
ifconfig -a ip a
ifconfig enp6s0 down ip link set enp6s0 down
ifconfig enp6s0 up ip link set enp6s0 up
ifconfig enp6s0 192.168.2.24 ip addr add 192.168.2.24/24 dev enp6s0
ifconfig enp6s0 netmask 255.255.255.0 ip addr add 192.168.1.1/24 dev enp6s0
ifconfig enp6s0 mtu 9000 ip link set enp6s0 mtu 9000
ifconfig enp6s0:0 192.168.2.25 ip addr add 192.168.2.25/24 dev enp6s0
netstat ss
netstat -tulpn ss -tulpn
netstat -neopa ss -neopa
netstat -g ip maddr
route ip r
route add -net 192.168.2.0 netmask 255.255.255.0 dev enp6s0 ip route add 192.168.2.0/24 dev enp6s0
route add default gw 192.168.2.254 ip route add default via 192.168.2.254
arp -a ip neigh
arp -v ip -s neigh
arp -s 192.168.2.33 1:2:3:4:5:6 ip neigh add 192.168.3.33 lladdr 1:2:3:4:5:6 dev enp6s0
arp -i enp6s0 -d 192.168.2.254 ip neigh del 192.168.2.254 dev wlp7s0


磁盘

/dev/sda:串行方式传输据的磁盘
/dev/hda:传统IDE硬盘
/dev/vda:云硬盘


理解network namespace

内核网络设备tun和tap:http://blog.nsfocus.net/linux-tun-tap/



ip addr系列

ip addr                                    #查看添加的虚拟ip
ip addr add 192.168.26.74/32 dev eth1      #添加虚拟ip
ip addr del 192.168.26.74/32 dev eth1      #删除刚添加的虚拟ip
1个网卡设置多个IP作用
https://www.cnblogs.com/itfat/p/7268029.html


lvm图示

创建一个物理分区,物理分区搞成物理卷
物理卷形成物理卷组
卷组划分成逻辑卷,然后再格式化挂载,使用


查看硬件命令


curl命令


wc命令

-c:统计文件的字符数。
-w:统计文件中的词语的数量,即被空格以及换行等分隔的字符串。
-l:统计文件的列数。

awk命令


https://www.lifewire.com/write-awk-commands-and-scripts-2200573

ps命令

ps -e    #全部进程
ps -ef   #全部进程+完整格式


tmpdump命令

tcpdump -i any|grep -E "expr"    #动态过滤


grep命令

grep -E "A|B|C"    #多字符串匹配


shell编程

${var}=$var         #变量替换
$(cmd)=`cmd`        #命令替换
${var1:-$var2}      #如果var1存在那么返回var1,否则返回var2



scp命令

上传
scp    –r    /local_dir_name    username@ip:/remote_dir_name
下载
scp    –r    username@ip:/remote_dir_name    /local_dir_name



查看端口占用情况

lsof -i:端口号

使用vncserver远控centos7

sudo systemctl stop firewalld         #关闭防火墙
sudo systemctl stop iptables
sudo systemctl disable firewalld
sudo systemctl disable iptables

sudpo yum groupinstall "GNOME Desktop"    #安装桌面环境
sudo yum install epel*                #安装企业扩展源epel

sudp yum install xrdp                  #安装远控工具

sudo systemctl start xrdp             #开启远程桌面
sudo systemctl enable xrdp

之后用win10自带的远程桌面连接就ok了


noVNC实现web远程桌面

sudo yum install tigervnc-server
vncserver :1   #启动vnc,:1表示vncserver在5900+1=5901端口接受连接
#vncserver -list 列出正在运行的远程桌面进程

noVNC/utils/launch.sh --vnc localhost:5901 [--listen 11111]
#运行启动脚本,noVNC可以指定接收端口(比如11111),或者使用默认的端口,通过websocket远程和浏览器交互,同时将信息转发给5901端口,起到***的作用
#浏览器输入ip:port/vnc.html?host=ip&port=port即可连接





systemd系列命令

正在运行的服务
systemctl list-units --type=service

已安装的服务
systemctl list-unit-files

查看配置文件内容
systemctl cat servicename

列出一个 Unit 的所有依赖
systemctl list-dependencies servicename



wget命令详解

-k 将绝对链接转为相对链接,下载整个站点后脱机浏览网页,最好加上这个参数
-m 网站镜像

centos内核升级


作业系统Ctrl+z任务切换

CTRL+Z 挂起进程并放入后台
jobs 显示当前暂停的进程
bg %N 使第N个任务在后台运行(%前有空格)
fg %N 使第N个任务在前台运行

文件解压


内核编译


更换pip源

cd ~     #进入当前用户的home  
mkdir .pip
touch pip.conf

#pip.conf内容如下
[global] index-url = http://pypi.douban.com/simple 
[install] trusted-host=pypi.douban.com


mariadb各种配置

安装
yum -y install mariadb mariadb-server

开机自启
centos7:sudo systemctl enable mariadb

windows:管理员权限的cmd下,net start mysql

启动
systemctl start mariadb

简单配置
mysql_secure_installation

用户配置

远程登陆
首先要有个mysql客户端,客户端里输命令:mysql -h [host] -u [username] -p [password]

host:远程主机地址

username:用户名

password:密码

假设远程主机的IP为:110.110.110.110,用户名为root,密码为abcd123,则键入以下命令:mysql -h 110.110.110.110 -u root -p abcd123;

配置国内源

yum install epel
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo~ #备份
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
yum clean all    #清除系统所有的yum缓存
yum makecache    #生成yum缓存
yum update       #更细

禁用yum fastmirror插件

	

sed -i 's/enabled=1/enabled=0/g' /etc/yum/pluginconf.d/fastestmirror.conf



更改桌面icon大小

gsettings set org.gnome.nautilus.icon-view default-zoom-level small