zoukankan      html  css  js  c++  java
  • 006_设置执行命令提示和unset shell function

    一、unset不能unset只读变量

    问题:

    [root@zb1-bdwaimai-inf-wfe-28 ~]# source ~/.bash_profile
    bash: PROMPT_COMMAND: readonly variable
    [root@zb1-bdwaimai-inf-wfe-28 ~]# tail ~/.bash_profile
    PATH=$PATH:$HOME/bin
    export PATH
    hhhh=`pwd`
    [root@ ~]# echo $hhhh      #从这个输出看是不影响source命令执行的,但是不知道在哪设置的PROMPT_COMMAND为只读变量,declare -r 变量是可以设置为只读变量,declare -x可以设置为可以执行的
    /root
    
    [root@z ~]# unset -f PROMPT_COMMAND
    [root@zb1-bdwaimai-inf-wfe-28 ~]# source ~/.bash_profile
    bash: PROMPT_COMMAND: readonly variable
    [root@zb1-bdwaimai-inf-wfe-28 ~]# echo $PROMPT_COMMAND
    { msg=$(history 1 | { read x y; echo $y; });logger -p local0.notice "[euid=$(whoami)]":$(who am i):[`pwd`]"$msg"; }
    [root@zb1-bdwaimai-inf-wfe-28 ~]# unset -fv PROMPT_COMMAND
    bash: unset: cannot simultaneously unset a function and a variable
    

    解决方案待查

    二、

    同事在线上执行了"tcpdump -i eth0 tcp port 80 -XX"命令触发了以下的bug,所以提示大家正确的使用姿势应该为指定绑定网卡的接口执行抓包

    tcpdump 命令只有将自定设备设置为混杂模式才能抓包,在 bond 模式下不能单独设置其中一块 slave 网卡为混杂模式,否则会引起 bond 故障。这个和内核参数没有任何关系。tcpdump -i eth0 敲完回车 bond0 一定故障。

    notice:

    不是所有bond0设备都会出问题,我印象中是intel i40系列的网卡会有问题,其他网卡也有概率会出锅。
    

    /root/../etc/profile.d/tcpdump.sh

    #!/bin/bash
    TCPDUMP_WARN="
    使用tcpdump会导致网卡进入混杂模式(promiscuous mode),在有bond设备的物理机上使用 -i eth0 或着其它 slave 设备会导致 bond 设备异常,请在执行前确认你指定的设备是否正确。
    
    请先使用 ip a 命令查看本地设备,如果存在 bond0 或其他 bond 设备,请使用 -i bond0 参数指定抓包设备。
    
    当你仔细查看过以上警告后,需要使用 tcpdump 命令,请使用全路径执行 /usr/sbin/tcpdump
    "
    
    tcpdump()
    {
           echo -ne "33[34;31m$TCPDUMP_WARN
    33[34;00m"
    }
    

      

  • 相关阅读:
    在 Spring 中使用 Quartz
    Quartz 快速进阶
    任务调度概述
    Spring Boot 2.x 整合 Mybatis 3.x
    pwd函数实现
    07-图4 哈利·波特的考试 (25 分)
    06-图3 六度空间 (30 分)
    linux中的目录
    Linux中的文件
    06-图2 Saving James Bond
  • 原文地址:https://www.cnblogs.com/itcomputer/p/10288944.html
Copyright © 2011-2022 走看看