su - 和sudo,tcpdump,管道和管道命令

su命令和su -命令最大的本质区别就是:前者只是切换了root身份,但Shell环境仍然是普通用户的Shell;而后者连用户和Shell环境一起切换成root身份了。只有切换了Shell环境才不会出现PATH环境变量错误。su切换成root用户以后,pwd一下,发现工作目录仍然是普通用户的工作目录;而用su -命令切换以后,工作目录变成root的工作目录了。用echo $PATH命令看一下su和su -以后的环境变量有何不同。以此类推,要从当前用户切换到其它用户也一样,应该使用su -命令。


Sudo配置免密码登录
foobar localhost=NOPASSWD: /bin/cat, /bin/ls
openvpn ALL=(root)NOPASSWD: /bin/cat ,/etc/sysconfig/iptables


sudo: sorry, you must have a tty to run sudo
导致这问题的原因是 sudo默认需要在 tty终端里才能正确被调用,我们可以通过修改 /etc/sudoers配置文件来解决这个问题: 
注释掉 Default requiretty 一行


tcpdump的使用

tcpdump -p -nnn -vvv -i eth0 dst host 10.200.7.54 or src host 172.17.2.65 and port 8080 -w dump.cap -s0

tcpdump [-i 网卡名][-nn][src host IP地址] [dst host IP地址][port 端口号] [-w 存储文件名] [-s0]

-i: 后面写监听的网络接口,比如eth0

-nn: 直接以IP及port number显示,而非主机名和服务名

-w: 将监听的数据包以文件的方式存储下来,后面跟文件名

-X: 以16进制和ASCII数据包的内容列出

-c: 监听的数据包书,如果没有这个,会一直监听

我们还可以制定筛选的监听数据:

  ‘host foo’指定监听的主机

  ‘net 192.168’针对某个网络监听

‘src host IP’,’dst host IP’加上来源或目的限制

‘tcp port 21’指定监听的协议和端口号

还可以使用and 和or 来进行数据包组合显示


管道(pipe):将前一个命令的结果作为下一个命令的参数

管道命令:能够接受standard input的数据的命令

  1.选取命令:cut,grep

cut 截取: -d 分隔符  -f 选取分割数段中的某一段  -c 以字符为单位选择固定区间

  例:export | cut -c 11-22  

      echo $PATH | cut -d ‘:’ -f 3

grep 筛选:    grep [-acinv] [--color=auto] ‘查找的字符串’ filename

  a):  -c 计算找到’查找字符串’的次数

  b):  -i  忽略大小写

  c):  -n 输出行号

  d):  -v 反向选择

  e):  -R 递归筛选,对文件夹所有文件选择

: cat /etc/passwd | grep --color=auto ‘root’ 

   cat /etc/passwd | grep -c ‘/bin/bash’

  2.排序命令: sort, wc, uniq

sort 排序: sort [-fbMnrtuk]  [file or stdin]

  a):  -f --ignore-case fold  忽略大小写差异

  b):  -b --ignore-leading-blanks 忽略最前面空格部分

  c):  -n --numeric-sort 使用数字排序(默认使用字符排序)

  d):  -r --reverse 反向排序

  e):  -u --unique 相同数据,仅出现一行代表,类似去重

  f):  -t --field-separator transition转换设置分隔符,默认[tab]分割

  g):  -k --key 以哪个区间(filed)来进项分割排序

例: cat /etc/passwd | sort -t ‘:’ -rk 3

uniq 去重: uniq [-ic]

  a): -i 忽略大小写

  b): -c --count 统计

    例:cat passwd  | cut -d ':' -f7 | uniq

        cat passwd  | cut -d ':' -f7 | uniq -c

wc 统计: wc [-lwm]

  a):  -l 仅列出行数

  b):  -w 仅列出多少字(英文单字)

  c):  -m 多少字符

    例:cat passwd  | wc  , 结果三行表示 行,字数,字符数

  3.双向重定向 tee

     tee可以同时将数据流输送到文件和屏幕,实现数据两个方向传送

       例:cat passwd | tee passwd.bak | cut -d ':' -f1



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值