[内容] Linux 内存机制

内容一:Linux 显示内存的命令

# free -m

内容二:Linux 内存机制

1) total 内存的总大小
2) used 正在被使用的内存大小
3) free 没有被使用的内存大小
4) shared 正在被用于共享的内存大小
5) buffers/cached 正处于缓存状态的内存大小(当 free 状态的内存不够时,它会自动释放出来)
6) available 还可以被应用程序使用的内存大小


补充:释放处于 shared 状态内存的方法
1) # echo 1 > /proc/sys/vm/drop_caches #清除 pagecache
2) # echo 2 > /proc/sys/vm/drop_caches #清除 slab
3) # echo 3 > /proc/sys/vm/drop_caches #同时清除 pagecache 和 slab

[内容] Ansible 条件判断 when

注意:

在使用 Ansible 魔法变量之前,要先安装 Ansible、添加被 Ansible 管理的主机,并且需要 root 权限

正文:

案例一:判断某一个变量是否是一个固定值

# vim test.yml

添加以下内容:

......
when: "'test' in group_names"
......


补充:
1) 这里以在 test.yml 中, test 为服务器的所属组为条件判断为例
2) group_names 在这里是魔法变量

案例二:判断某一个变量是否和另一个变量的值相等

# vim test.yml

添加以下内容:

......
when: inventory_hostname in groups.test
......


补充:
1) 这里以在 test.yml 中,服务器名在 test 组中为条件判断为例
2) inventory_hostname 和 groups.test 在这里都是魔法变量

案例三:判断某一个变量是否小于或等于一个值

# vim test.yml

添加以下内容:

......
when: ansible_distribution_version is version("7.6","le")
......


补充:
1) 这里以在 test.yml 中,系统的版本是否小于或等于 7.6 为条件判断为例
2) inventory_hostname 和 groups.test 在这里都是魔法变量

案例四:判断某一个变量是否大于一个值

# vim test.yml

添加以下内容:

......
when: ansible_distribution_version is version("7.6","gt")
......


补充:
1) 这里以在 test.yml 中,系统的版本是否大于 7.6 为条件判断为例
2) inventory_hostname 和 groups.test 在这里都是魔法变量

[步骤] Linux 切换用户时图形变量的保持

步骤一:显示当前用户的图形变量

$ echo $DISPLAY
localhost:10.0

(补充:这里的图形变量参数是 localhost:10.0)

步骤二:切换到其他用户

$ su - root

(补充:这里以切换到 root 用户为例)

步骤三:使用上一个用户的图形变量

# export DISPLAY=localhost:10.0

(补充:这里以将图像变量设置为刚才看到的 localhost:10.0 为例)

步骤四:使用图形程序

# xclock

(补充:这里以使用 xclock 图形程序为例)

[命令] Linux 命令 route (管理临时路由表)

案例一:添加某一个 IP 地址的路由表

# route add -host 192.168.2.1 netmask 255.255.255.255 gw 192.168.1.1 dev eth0

(补充:这里以指向 192.168.2.1 IP 地址的流量需要通过 eth0 网卡和 192.168.1.1 网关为例)

案例二:删除某一个 IP 地址的路由表

# route del -host 192.168.2.1

(补充:这里删除 192.168.2.1 IP 地址的路由表为例)

案例三:添加某一个网段的路由表

# route add -net 192.168.2.0 netmask 255.255.255.0 gw 192.168.1.1

(补充:这里以指向 192.168.2.0/24 网段的流量需要通过 192.168.1.1 网关为例)

案例四:删除某一个网段的路由表

# route del -net 192.168.2.0/24

(补充:这里删除 192.168.2.0/24 网段的路由表为例)

案例五:显示现有的路由表

# route -n