IP地址分类
五类IP地址:
A: 0.0.0.0-127.255.255,其中段0和127不可用
B: 128.0.0.0-191.255.255.255
C: 192.0.0.0-223.255.255.255
D: 224.0.0.0-239.255.255.255
E: 240.0.0.0-255.255.255.255,其中段255不可用
特殊IP:
全0 :网络地址
全1:广播地址
127.0.0.1 :环回地址
私有地址:
A: 10.0.0.0~10.255.255.255 即10.0.0.0/8
B:172.16.0.0~172.31.255.255 即172.16.0.0/12
C:192.168.0.0~192.168.255.255 即192.168.0.0/16
注:
网络地址就是:把IP地址转成二进制和子网掩码进行与运算
广播地址:网络地址的主机位全部变成1
实例
给定IP地址167.77.88.99,掩码:255.255.255.192,求子网号、广播地址、有效IP
网络号/子网号:两者进行与运算
IP: 10100111 01001101 01011000 01100011
掩码: 11111111 11111111 11111111 11000000
与运算: 10100111 01001101 01011000 01000000
结果: 167.77.88.64
主机号:子网掩码取反再和IP做与运算
IP: 10100111 01001101 01011000 01100011
反掩码: 00000000 00000000 00000000 00111111
与运算: 00000000 00000000 00000000 00100011
结果: 0.0.0.35
广播地址:网络地址的主机位全部变成1
10100111 01001101 01011000 01111111
167.77.88.127
有效IP:有效主机数-网络地址-广播地址
由于掩码为26
主机数=2^6=64
有效主机数=64-2=62
给网卡添加IP地址
eth0:x称为虚拟网络接口,是建立在网络接口上边。如果要这个IP地址立即生效,可在最后加上up
[root@localhost ~]# ifconfig ens32:0 192.168.2.2/24 up
[root@localhost ~]# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:0c:29:8b:de:21 brd ff:ff:ff:ff:ff:ff
inet 192.168.15.150/24 brd 192.168.15.255 scope global ens32
valid_lft forever preferred_lft forever
inet 192.168.2.2/24 brd 192.168.2.255 scope global ens32:0
valid_lft forever preferred_lft forever
inet6 fe80::b84c:549e:4b7f:1b5f/64 scope link
valid_lft forever preferred_lft forever
注:
这样reboot以后ip地址会变回去,所以要设置启动时自动激活ip设置。若想恢复,直接把文件删除重启即可。
[root@localhost network-scripts]# touch ifcfg-ens32:0
[root@localhost network-scripts]# vi ifcfg-ens32:0
DEVICE='ens32:0'
IPADDR='192.168.2.2'
找出CPU占用最多的10个进程
[root@localhost ~]# ps aux|grep -v PID|sort -rn -k +3|head
root 632 0.1 0.3 302636 6168 ? Ssl 22:23 0:02 /usr/bin/vmtoolsd
gdm 2435 0.1 5.2 1406896 97768 ? Sl 22:24 0:04 gnome-shell --mode=gdm
rtkit 634 0.0 0.0 164648 1260 ? SNsl 22:23 0:00 /usr/libexec/rtkit-daemon
root 974 0.0 0.0 126224 1620 ? Ss 22:24 0:00 /usr/sbin/crond -n
root 973 0.0 0.3 475492 6624 ? Ssl 22:24 0:00 /usr/sbin/gdm
root 966 0.0 0.3 230080 5688 ? Ss 22:24 0:00 /usr/sbin/httpd -DFOREGROUND
root 963 0.0 0.7 615420 14316 ? Ssl 22:24 0:00 /usr/sbin/libvirtd
root 962 0.0 0.0 82468 1268 ? Ss 22:24 0:00 /usr/sbin/sshd
root 961 0.0 0.0 27104 1036 ? Ss 22:24 0:00 /usr/sbin/xinetd -stayalive -pidfile /var/run/xinetd.pid
root 957 0.0 0.2 285312 4684 ? Ssl 22:24 0:00 /usr/sbin/rsyslogd -n
注:
ps -aux是查看所有进程信息,grep -v PID是将ps aux命令得到的标题去掉,即grep不包含PID这三个字母组合的行,再将其中结果使用sort排序。
sort -rn -k +3该命令中的-rn的r表示是结果倒序排列,n为以数值大小排序,而-k +3则是针对第3列的内容进行排序,再使用head命令获取默认前10行数据。
crontab实现再12月内,每天早上6点到12点,每隔3小时执行一次/usr/bin/backup
[root@localhost ~]# vi /etc/crontab
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
# For details see man 4 crontabs
# Example of job definition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * user-name command to be executed
* 6-12/3 * 12 * root /usr/bin/backup
注:
该文件下的前四行内容为crontab的环境变量,
SHELL变量的值指定系统使用的SHELL环境
(该样例为bash shell),PATH变量定义了执行命令的路径。
Cron的输出以电子邮件的形式发给MAILTO变量定义的用户名。
如果MAILTO变量定义为空字符串(MAILTO=""),电子邮件不会被发送。