Linux服务器操作

一、服务器网络

#服务器外网设置
vim /etc/hosts
10.81.113.225 www.baidu.com
/etc/init.d/network restart

centos6: Oracle Linux 6 changes /etc/hosts after reboot

https://blog.youkuaiyun.com/msdnchina/article/details/50910324
解决方案: 升级NetworkManager到0.8.1-9或者更高版本

# 允许特定的IP地址
sudo iptables -A INPUT -s 10.81.12.100 -j ACCEPT

# 允许特定的IP 端口地址
    iptables -t filter -I INPUT -s 10.81.12.100 -p tcp --dport 13309 -j ACCEPT

# 允许一个IP段
sudo iptables -A INPUT -s 123.123.123.0/24 -j ACCEPT


# 解除禁止特定的IP 端口地址
iptables -D INPUT -s 10.81.12.100 -j DROP
iptables -D INPUT -s 10.81.12.100 -j REJECT
iptables -F 全清掉了

#端口查询, 端口占用

lsof -i:61007  

pidof admin

#测试远程服务IP+端口

1、验证服务器端口是否通
  nc -zv 172.16.7.78 3306
2、拷贝文件
 1) 首先在文件接收终端test2机器上激活nc监听   nc -lp 33333 > tc.txt
 2) 文件发送终端test1机器上发送文件  nc -w 2 10.81.12.100 33333 < tc.txt
3、 聊天记录
 1)test1服务器开启nc : nc -l 33333
 2)test2服务器连接test1 : nc 10.81.12.100 33333
 
4、端口扫描
  nc -v -w 1 172.16.7.78 -z 22-81 
5、验证UDP端口
nc -uvz 192.168.0.125 111 

二、服务器文件

#文件上传下载: rz(上),sz(下)
#下载多文件        sz file1 file2
# 下载目录下所有文件  sz dir/*

 #文件查找:  find /path/to/directory -name "*.txt" 
 #文件备份:  cp -r /path/to/source/directory /path/to/backup/directory

#查找字符串出现的文件: 

grep -rl "target_string" /path/to/search/...

cat 12.txt|grep '12'

  cp -r /opt/evoWpms/card /opt/evoWpms/card-wuyating

############## DB_SQ###################
 mysql -u DHCloudYr -pCloud0#9exqRFzv -h 10.56.14.85 -D hapuservice -e 'SELECT now() FROM dual;'  
 
################# DB_SQL ###############
oracle  select * from v$version;  Orcale9之后将oracle.jdbc.driver.OracleDriver改为oracle.jdbc.OracleDriver

################ FTP ####################
>redis-cli -h 10.81.12.100 -p 6379
ftp  ---》 open 127.0.0.1

2.1     #文件查找
    按照文件名搜索
name:按照文件名搜索
iname:按照文件名搜索,不区分文件名大小写
inum:按照 inode 号搜索
    find  /  -name  "CardSolution" -print
    find /etc -name "host*" -print
    
    # 在/目录中查找以b开头的不区分大小写的文件
    find / -iname "b"
    # 在/etc目录下检索以b开头共4个字符的文件
    find  /etc  -name  "b???"
    # 在/etc目录下检索第二个字母为c的文件
    find  /etc  -name  "?c*"
    # /目录下检索扩展名为.cfg的文件
    find  /  -name  "*.cfg"
    # /目录下检索扩展名为.txt的文件并统计个数
    find  /  -name  "*.txt"  |  wc  -l


2.2    # 按照文件大小搜索
    
size [+|-]大小:按照指定大小搜索文件,“+”的意思是搜索比指定大小还要大的文件, “-”的意思是搜索比指定大小还要小的文件  
单位:可以通过man  find  查看size参数的单位
        #这是默认单位,如果单位为b或不写单位,则按照512 Byte搜索。
        ' b':for 512-byte blocks(this is the default if no suffix is used)
        
        #搜索单位是c,按照字节搜索。
        'c':for bytes
      
        #搜索单位是w,按照双字节(中文)搜索。
        'w':for two-byte words
     
        #按照KB单位搜索,必须是小写的k。
        'k':for Kilobytes(units of 1024 bytes)
     
        #按照MB单位搜索,必须是大写的M
        'M':for Megabytes(units of 1048576 bytes)
    find / -size -1k
    find  /   -size  +100M
    
     find . -empty  # 空文件
     
2.3 按照修改时间搜索
  -  -atime [+|-]时间:按照文件访问时间搜索
  - -mtime [+|-]时间:按照文件数据修改时间搜索
  - -ctime [+|-]时间:按照文件状态修改时间搜索
  - -newer file: 把比file修改时间更新的文件列出来
  - 注意:时间范围问题
    - -5:代表 5 天内修改的文件。
    - 5:代表前 5~6 天那一天修改的文件。
    - +5:代表 6 天前修改的文件。
![image-20191227204132704](https://foxandy007.oss-cn-chengdu.aliyuncs.com/typora_img/findtime.jpg)
bash
  find  /  -mtime -10  -empty  10天以内的空文件
  
  
2.4 - 按照权限搜索
  - -perm   权限模式:查找文件权限刚好等于“权限模式”的文件 ,常用
  - -perm   -权限模式:查找文件权限全部包含“权限模式”的文件
  - -perm   +权限模式:查找文件权限包含“权限模式”的任意一个权限的文件
  - 如果要在整个系统中搜索权限中包括SUID权限的所有文件,只需使用-4000即可:
shell
 find . perm  755
 find / -perm -4000
    
    
2.5 - 按照所有者和所属组搜索  
  - -uid 用户 ID:按照用户 ID 查找所有者是指定 ID 的文件
  - -gid 组 ID:按照用户组 ID 查找所属组是指定 ID 的文件
  - -user 用户名:按照用户名查找所有者是指定用户的文件
  - -group 组名:按照组名查找所属组是指定用户组的文件
  - -nouser:查找没有所有者的文件 ,常用,主要用于查找垃圾文件,还有一种情况就是外来
文件,比如光盘和U盘中的文件如果是由Windows复制来的(也就是文件是由windows建立的),在Linux中查看就是没有所有者的文件;再比如手工源码包安装的文件,也有可能没有所有者(由其他系统打的源码包)
  find . -user root
  find  / -nouser   # 查看无所有者的文件
  
2.6  - 按照文件类型搜索
  -  -type d:查找目录
  - -type f:查找普通文件
  - -type l:查找软链接文件
 
 find  /dev  -type  b
 find  ~  -type  d
 find  /dev  -type  c  -size  -10k

3. grep 命令使用

1)搜索包含 “error” 或 “critical” 的行,显示行号和上下文
grep -n -C 2 -E --color "error|critical" /var/log/syslog

-A n:显示匹配的那一行以及该行之后n行。
-B n:显示匹配的那一行以及该行之前n行。
-C n:除了匹配的那一行以及该行之前和之后n行
 
2)统计 Nginx 日志中 404 状态码出现的次数

grep -c " 404 " /var/log/nginx/access.log
 
3)递归搜索 Python 代码中未完成的 TODO 注释

grep -rnw --include="*.py" "TODO" ./src/
 
4)检查正在运行的 Java 进程

ps aux | grep "[j]ava"   
 
使用 [j] 避免匹配到grep自身
5)监控实时日志中的异常(tail -f 持续输出)

tail -f /var/log/app.log | grep --color "Exception"
 
6)提取 CSV 文件中第 3 列为 “success” 的行

grep -E "^([^,]*,){2}success," data.csv
 
7)过滤空行和注释行(假设注释以 开头)

grep -v -E "^$|^" config.conf
 
8)与 find 一起使用

 find /var/log -name "*.log" -exec grep "error" {} +
 
9)与 awk/sed 管道处理

 grep "data" file.txt | awk '{print $2}' | sed 's/old/new/'
 
10)多文件操作并行搜索(需 xargs 或 parallel):

 find . -name "*.txt" | xargs grep -H "pattern"   -H 显示文件名

11)结合 tee 保存搜索结果:将输出结果保存到文件中,并在终端中同时显示。
 grep "pattern" file.txt | tee results.txt

三、 服务器密码查看

Redis密码:cat /opt/3rdtool/redis/conf/redis.conf|grep requirepass
MySQL密码:cat /opt/mysql/etc/.account.cnf|grep '^mysql:'

四、内存占用查看

##命令示例:ps aux --sort -rss
其中,-rss表示按照进程占用的物理内存大小进行排序。这样就可以看到占用内存最多的进程

 ###服务查询
  ps aux|grep 'evo-custom'

直接进入root环境: sudo -i

五、服务器抓包

抓包端口8918命令:tcpdump -i any -s0 port 8918 -w 8918.pcap -v
抓包多个端口命令:
tcpdump -i any port 7086 or port 9000 or port 9090 or port 9407 or port 9320 -w 11281557.pcap -v

六、服务器时间

date -s "2024-08-24 12:00:00"

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值