1.防火墙操作
下面是red hat/CentOs7关闭防火墙的命令!
1)查看防火状态
systemctl status firewalld
service iptables status
2)暂时关闭防火墙
systemctl stop firewalld
service iptables stop
3)永久关闭防火墙
systemctl disable firewalld
chkconfig iptables off
4)重启防火墙
systemctl enable firewalld
service iptables restart
5)永久关闭后重启
//暂时还没有试过
chkconfig iptables on
2.查看端口占用情况
sudo netstat -tlnp 查状态(服务及端口状态)
lsof -i:8000 (查看某一端口的占用情况)
netstat -tunlp (查看端口占用)
netstat -tunlp|grep 8000 (查看包括指定的端口号的所有进程情况)
3.安装与卸载应用程序
yum的命令形式一般是如下:yum [options] [command] [package ...]
其中的[options]是可选的,选项包括-h(帮助),-y(当安装过程提示选择全部为"yes"),-q(不显示安装的过程)等等。[command]为所要进行的操作,[package ...]是操作的对象。
自动搜索最快镜像插件: yum install yum-fastestmirror
安装yum图形窗口插件: yum install yumex
查看可能批量安装的列表: yum grouplist
1 )安装
yum install 全部安装
yum install package1 安装指定的安装包package1
yum groupinsall group1 安装程序组group1
2 )更新和升级
yum update 全部更新
yum update package1 更新指定程序包package1
yum check-update 检查可更新的程序
yum upgrade package1 升级指定程序包package1
yum groupupdate group1 升级程序组group1
3 )查找和显示
yum info package1 显示安装包信息package1
yum list 显示所有已经安装和可以安装的程序包
yum list package1 显示指定程序包安装情况package1
yum groupinfo group1 显示程序组group1信息yum search string 根据关键字string查找安装包
4 )删除程序
yum remove | erase package1 删除程序包package1
yum groupremove group1 删除程序组group1
yum deplist package1 查看程序package1依赖情况
5 )清除缓存
yum clean packages 清除缓存目录下的软件包
yum clean headers 清除缓存目录下的 headers
yum clean oldheaders 清除缓存目录下旧的 headers
yum clean, yum clean all (= yum clean packages; yum clean oldheaders) 清除缓存目录下的软件包及旧的headers
4.wget 命令 :在终端中下载网络文件,格式为“wget [参数] 下载地址”。
wget https://www.linuxprobe.com/docs/LinuxProbe.pdf (下载文件到当前路径下)
wget -b https://www.linuxprobe.com/docs/LinuxProbe.pdf (后台下载文件)
wget -P dir https://www.linuxprobe.com/docs/LinuxProbe.pdf (下载文件到指定目录)
wget -b -P dir1 https://www.linuxprobe.com/docs/LinuxProbe.pdf (将文件以后台下载方式下到指定目录)
wget -r -p www.linuxprobe.com (递归下载www.linuxprobe.com内的所有页面数据及文件,
下载完自动保存到当前路径下一个名为www.linuxprobe.com的目录中)
注:crtl+c终止任务或者的crtl+d退出下载过程。
5.查看文件大小
stat file1.txt
wc -c file1.txt -c表示统计字符,
du -b file1.txt 参数-b表示以字节计数
du -h file1.txt
ll file1.txt
6.查看修改主机名
#查看
hostname
#临时修改主机名
hostname fengpei
#永久修改
vi /etc/sysconfig/network
----
HOSTANME=fengpei
----
cat /etc/sysconfig/network
修改主机名就是修改这个文件,同时最好也把host文件也修改
7.设置IP、网卡、DNS
7.1修改IP
#查看IP
ifconfig
ip addr
cat /etc/sysconfig/network-scripts/ifcfg-ens32|grep IPADDR
#临时修改IP ----立即生效,但重启失效
ifconfig ens32 10.0.0.88 netmask 255.255.255.0
#永久修改IP
vi /etc/sysconfig/network-scripts/ifcfg-ens32
--------------
IPADDR=10.0.0.66
--------------
service network restart (重启网络服务)
7.2修改网关
#临时设置网关---立即生效,重启失效
route -n (查看默认路由)
route add default gw 192.168.209.2 dev ens32
#永久修改网关
vi /etc/sysconfig/network-scripts/ifcfg-ens32
----------------
GATEWAY=10.0.0.1
----------------
#重启网卡
ifdown ens32
ifup ens32
7.3 设置DNS
1.新方式
#显示当前网络连接
nmcli connection show
#设置DNS
nmcli con mod ens32 ipv4.dns "114.114.114.114 8.8.8.8"
#将DNS配置生效
nmcli con up ens32
#测试网络
ping www.baidu.com
2.老方式
vi /etc/resolv.conf
------------------
nameserver 114.114.114.114
nameserver 8.8.8.8
-------------------
#重启网卡
systemctl restart network
#8.配置网卡
8.1文件配置路径
推荐使用修改配置文件的方式进行网络配置,以下为CentOS7在VirtualBox下的配置过程。
网卡配置文件位置 /etc/sysconfig/network-scripts/ifcfg-ens32
DNS配置文件位置 /etc/resolv.conf
静态主机名配置文件位置 /etc/hosts
8.2配置文件生效顺序:
1)hosts
2)网卡配置文件ifcfg
3)DNS配置文件resolv.conf
8.3配置网卡信息
vi /etc/sysconfig/network-scripts/ifcfg-ens32
--------------------
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static (启用静态IP地址)
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=no
IPV6_AUTOCONF=no
IPV6_DEFROUTE=no
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens32
NAME=ens32
UUID=b1bf19ea-bad9-499f-b3c5-16ecc87ef2cf
DEVICE=ens32
ONBOOT=yes (开启自动启用网络连接)
IPADDR=10.0.0.66 (IP)
NETMASK=255.255.255.0 (子网掩码)
GATEWAY=10.0.0.1 (网关)
DNS1=114.114.114.114 (DNS)
DNS2=8.8.8.8
--------------------
#重启网卡
systemctl stop network
stystemctl start network
systemctl restart network
#查看默认路由
route -n
--------------------------------------------------------------------------------
配置说明:
参数值不区分大小写,单引号和双引号,甚至可以不用引号
TYPE:Ethernet、IPsec
DEVICE:网络接口名称
BOOTPROTO:系统启动地址协议
none:不使用启动地址协议
bootp:使用BOOTP协议
dhcp:使用dhcp协议
static:静态地址协议
ONBOOT:系统启动时是否激活
yes:激活
no:不激活
IPADDR:IP地址
NETMASK:子网掩码
GATEWAY:网关地址
BROADCAST:广播地址
HWADDR/MACADDR:MAC地址,只需设置一个,同时设置时不能互相冲突
PEERDNS:是否指定DNS。如果食用DHCP协议,默认为yes
yes:如果DNS设置,修改/etc/resolv.confg中的DNS
no:不修改/etc/resolv.confg中的DNS
DNS1/DNS2:当PEERDNS为yes时会被写入/etc/resolv.conf中
NM_CONTROLLED:是否由Network Manager控制该网络接口,修改保存后立即生效,建议一般为no
yes:由Network Manager控制
no:不由Network Manager控制
USERCTL:用户权限控制
yes:非root用户允许控制该网络接口
no:非root用户不允许控制该网络接口
IPV6INIT:是否执行IPv6
yes:支持IPv6
no:不支持IPv6
IPV6ADDR:IPv6地址/前缀长度
--------------------------------------------------------------------------------
9.常用的网络测试命令
常用网络测试命令
ping 172.16.1.132 (测试网络连通性)
host baidu.com 测试DNS解释
dig baidu.com 测试DNS解释
ip route 显示路由表
traceroute www.baidu.com 追踪到达目标地址的网络路径
mtr www.baidu.com 使用mtr进行网络质量测试(结合了traceroute和ping)
10.计划任务的使用
10.1 当前用户的计划任务
#安装crontabs服务并设置开机自启动
yum install crontabs
systemctl enable crond (设为开机自启动)
systemctl start crond (启动crond服务)
systemctl status crond (查看服务运行状态)
#设置自定义定时任务
----------------- mycommand.sh
#!/bin/bash
echo "坚持学习,一定会成功!!!" >> /root/lucas/cmd/mycommand.txt
-----------------
crontab -e (打开定时任务文件)
-------------------
#要加上执行用户(一定不能加用户)
*/1 * * * * /root/lucas/cmd/mycommand.sh
-------------------
#重新加载配置(测试发现不重加载也生效)
systemctl reload crond
#查看当前用户下的任务
crontab -l
10.2全局的计划任务
#安装crontabs服务并设置开机自启动
yum install crontabs
systemctl enable crond (设为开机自启动)
systemctl start crond (启动crond服务)
systemctl status crond (查看服务运行状态)
#设置自定义定时任务
----------------- mycommand.sh
#!/bin/bash
echo "坚持学习,一定会成功!!!" >> /root/lucas/cmd/mycommand.txt
-----------------
vi/etc/crontab (打开定时任务文件)
-------------------
#要加上执行用户(一定要写执行用户)
*/1 * * * * root /root/lucas/cmd/mycommand.sh
-------------------
#重新加载配置
crontab /etc/crontab (测试发现不重新加载也生效)
#查看全局计划中的任务
cat /etc/crontab
11.文件传输
两台设备:A: 10.0.0.66, B: 10.0.0.70
#把A服务器一目录下的文件拷贝到B服务器的指定目录下
scp -r root@10.0.0.66:/root/lucas/linux/LinuxProbe.pdf /root/lucas/linux
#scp -r root@10.0.0.19:/mysql/3306/* /data/3306/
参数解析:
-1 强制scp命令使用协议ssh1
-2 强制scp命令使用协议ssh2
-4 强制scp命令只使用IPv4寻址
-6 强制scp命令只使用IPv6寻址
-B 使用批处理模式(传输过程中不询问传输口令或短语)
-C 允许压缩。(将-C标志传递给ssh,从而打开压缩功能)
-p 保留原文件的修改时间,访问时间和访问权限。
-q 不显示传输进度条。
-r 递归复制整个目录。
-v 详细方式显示输出。scp和ssh(1)会显示出整个过程的调试信息。这些信息用于调试连接,验证和配置问题。
-c cipher 以cipher将数据传输进行加密,这个选项将直接传递给ssh。
-F ssh_config 指定一个替代的ssh配置文件,此参数直接传递给ssh。
-i identity_file 从指定文件中读取传输时使用的密钥文件,此参数直接传递给ssh。
-l limit 限定用户所能使用的带宽,以Kbit/s为单位。
-o ssh_option 如果习惯于使用ssh_config(5)中的参数传递方式,
-P port 注意是大写的P, port是指定数据传输用到的端口号
-S program 指定加密传输时所使用的程序。此程序必须能够理解ssh(1)的选项
12.免密登录
假设要登录的机器为10.0.0.70,当前登录的机器为10.0.0.66,
#首先在66上生成密钥,然后一路回车。
ssh-keygen -t rsa
#将生成的公钥复制到机器70上的~/.ssh/authorized_keys中
ssh-copy-id -i ~/.ssh/id_rsa.pub root@10.0.0.70
#测试免密码登录
ssh root@10.0.0.70