实用的操作命令
[root@mini dhcp]# tail -fn 100 /var/log/messages #查看系统最近100条日志信息,一般用于排错
[root@mini ~]# grep -v "#" /etc/vsftpd/vsftpd.conf #利用grep的v参数反向查找去除配置文件中带#的配置信息
#源码安装httpd配置文件去除注释和空行追加到新文件中
[root@mini ~]#grep -v "#" /usr/local/apache2/conf/httpd.conf|grep -v "^$" >> /usr/local/apache2/conf/httpd.conf.bak
#将本地yum源配置文件远程scp拷贝到目标主机目录
[root@mini ~]# scp /etc/yum.repos.d/centos.repo root@192.168.15.170:/etc/yum.repos.d/
-p 拷贝文件的时候保留源文件建立的时间。
-q 执行文件拷贝时,不显示任何提示消息。
-r 拷贝整个目录 www.2cto.com
-v 拷贝文件时,显示提示信息。
#将nfs共享目录挂载到本地,中小企业可挂载网站发布目录
[root@localhost htdocs]# mount -t nfs 192.168.15.150:/data/ /usr/local/apache/htdocs/
#下载安装常用命令如(加参数c表示接着下载没下载完的文件,类似断点续传功能)
[root@localhost htdocs]# wget -c http://URL
#linux脚本文件中反引号``里面的语句会作为命令直接运行如:for i in `seq 1 100`,i作为变量就会被从1开始依次赋值直到100
#利用SSH免密登录远程其他服务器操作(编写脚本远程批量管理主机)
#格式:ssh -l username userIP "command"(命令用双引号括起来)
[root@localhost htdocs]# ssh -l root 192.168.15.171 "ifconfig"
#脚本编写时变量命名不能以数字或者特殊字符开头,不区分大小写,但为了不和其他系统变量混肴推荐全大写,同理数据库操作的SQL语句也一样大写.命名最好通俗易懂,如LAMP部署脚本分成不同模块命名,http模块里变量H_FILES/H_FILES_DIR/H_URL/H_PREFIX,
mysql模块变量M_FILES/M_FILES_DIR/M_URL/M_PREFIX.
#利用tar命令实现linux系统的增量备份,格式:tar -g 快照文件 -cavf 备份后tar包名 源目录,每次备份都会对文件的增删改进行比对,发生变化就会重新备份该文件
#第一次备份快照不存在就相当于完全备份
[root@localhost sh]# tar -g /data/snapshot -czvf /data/sh.bak.tgz /data/sh/
tar: /data/sh:目录是新的
tar: 从成员名中删除开头的“/”
/data/sh/
/data/sh/auto_log_tgz.sh
/data/sh/case_test.sh
/data/sh/for_scp.sh
/data/sh/ip_list
/data/sh/ip_list.txt
/data/sh/read_scp.sh
/data/sh/ssh_ip.sh
/data/sh/while_nu.sh
/data/sh/while_read.sh
/data/sh/while_scp_dir.sh
#在备份目录下创建新文件
[root@localhost data]# echo "1">/data/sh/text.txt
#执行相同命令从输出看就只备份了新增文件,实现增量备份
[root@localhost data]# tar -g /data/snapshot -czvf /data/sh.bak.tgz /data/sh/
tar: 从成员名中删除开头的“/”
/data/sh/
/data/sh/text.txt[root@localhost data]# ll
总用量 32
drwxr-xr-x 2 root root 4096 12月 21 01:43 sh #备份的系统目录
-rw-r--r-- 1 root root 255 12月 21 01:43 sh.bak.tgz #备份的tar包
-rw-r--r-- 1 root root 217 12月 21 01:43 snapshot #快照文件
#利用awk命令查看tcp监听的端口
[root@localhost sh]# netstat -an|awk '/^tcp/'
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN
tcp 0 0 192.168.15.172:22 192.168.15.2:10620 ESTABLISHED
tcp 0 0 :::22 :::* LISTEN
tcp 0 0 ::1:25 :::* LISTEN
#screen服务可以在后台另外打开一个终端运行服务
#安装服务
[root@localhost ~]# yum install screen -y
#打开终端,运行需要循环执行的脚本或者命令
[root@localhost ~]# screen -S noty
#参数S可以命名该窗口
[root@localhost ~]# tail -fn 1 /var/log/messages
Dec 28 07:32:34 localhost kernel: usb 2-2.1: configuration #1 chosen from 1 choice
#CTRL+A+D保存运行并退出后台
#查看后台终端ID
[root@localhost ~]# screen -ls
There are screens on:
11218.noty (Detached) #Detached表示状态是离开
11197.pts-0.localhost (Detached)
2 Sockets in /var/run/screen/S-root.
#使用ID号和参数r可以再次还原进入终端
[root@localhost ~]# screen -r 11218
#screen打开的终端可以一直在后台运行,除非重启服务器
#command &在命令后加&可以放在后台执行,但是退出操作窗口后一样终止进程
#nohup comman &等价于screen
[root@localhost ~]# exit
#直接退出窗口
#利用x参数可以实现两个终端窗口的同步操作
[root@localhost ~]# screen -x 11218
#使用的端口扫描工具nmap
#安装
[root@localhost ~]# yum install nmap -y
#扫描
[root@localhost ~]# nmap 127.0.0.1
Starting Nmap 5.51 ( http://nmap.org ) at 2018-01-09 04:26 CST
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000051s latency).
Not shown: 997 closed ports
PORT STATE SERVICE
22/tcp open ssh
25/tcp open smtp
80/tcp open http
Nmap done: 1 IP address (1 host up) scanned in 0.05 seconds
#使用tcpdump进行抓包
[root@localhost ~]# tcpdump -nn port 80 and host 192.168.15.2ump -i eth0
参数nn显示详细的地址信息
参数port指定抓包的端口号
参数and host指定抓包的IP
参数i指定抓取包的网卡
#关于源码安装三步的说明
- 第一步./configure 加一堆参数,预编译,指定软件的功能模块并检测系统配置环境
- 第二步make根据第一步的执行结果生成可执行的二进制文件
- 第三步make install安装,执行二进制文件安装软件
查找服务的端口cat /etc/services|grep ssh
- 远程服务SSHD 端口22
- apache的web服务httpd,端口80
- NTP网络时间协议,端口123
- FTP文件传输协议,端口21连接请求,端口20远程传输数据
- RSYNC数据同步服务,端口873
网友评论