• [问题求助] AICC压测文件
    【问题来源】公司根据华为侧提供的压测文档来进行操作【问题简要】在安装完各种工具后,发现缺失startclient.sh文件,无法进行下一步【问题类别】【AICC】【问题现象描述】在安装完1,ncurses、2, libpcap、3,bison、4,flex、5,SIPp这5个工具后,接下来安装签入工具时,发现提供的安装包中缺少startclient.sh,文档图中示例展示的有agent TXT文件,agentsimulate压缩包,agentsimulate-8.14.0-SNAPSHOT,startclient.sh,目前需要华为侧提供下startclient.sh这个文件。【日志或错误截图】已上传附件【附件】文档信息附件下载
  • [问题求助] AICC压测文档
    麻烦提供下这几个文件
  • [问题求助] shell 脚本无法执行
    不知道未什么会去读root_715369_out.txt,
  • [openEuler] openeuler系统outbox外部驱动使能指导
    Outbox外部驱动使能指导  1    QLogic qla2xxx 1.    驱动下载链接:https://repo.oepkgs.net/openEuler/rpm/openEuler-20.03-LTS-SP3/contrib/drivers/source/Packages/qla2xxx-10.02.06.04_k-1_OpenEuler.zip 2.    环境信息 openeuler-20.03lts-sp33.    解压驱动包  4.    cd /qla2xxx-10.02.06.02-k ./extras/build.sh  install        仅做测试使用,重启不生效 ./extras/build.sh  initrd        重启生效  5.    查看新驱动 modinfo qla2xxx qla2xxx 第二种 1.    驱动下载地址:https://repo.oepkgs.net/openEuler/rpm/openEuler-20.03-LTS-SP3/contrib/drivers/source/Packages/qla2xxx-10.02.06.04_k-1_OpenEuler.zip 或     https://driverdownloads.qlogic.com/QLogicDriverDownloads_UI/Files/TempDownlods/99261/qla2xxx-10.02.06.04_k-1_OpenEuler.zip 2.    环境信息 openeuler-20.03lts-sp33.    安装新驱动   rpm –ivh qla2xxx-10.02.06.04_k-1dkms.noarch.rpm  tmp/dkms.xxxx/下面是新驱动,把原来的ko文件备份 modinfo qla2xxx.ko |grep dep  insmod qla2xxx.ko  4.查看新驱动 modinfo qla2xxx |more  2    Intel     igb/i40e/ixgbe/ixgbevf/ice 1.    驱动下载地址:https://repo.oepkgs.net/openEuler/rpm/openEuler-20.03-LTS-SP1/contrib/drivers/x86_64/Packages/igb-5.5.2-1.x86_64.rpm 2.    环境信息 openeuler-20.03lts-sp13.    安装新驱动 rpm –ivh igb-5.5.2-1.x86_64.rpm  find / -name “igb.ko”  把新的igb.ko文件替换掉内核自带的igb.ko文件,updates这个目录下是新驱动的文件,把原来的ko文件备份  rmmod        igb insmod        igb.ko modprobe        igb      4.    查看新驱动  igb 第二种情况 1.    驱动下载地址 https://repo.oepkgs.net/openEuler/rpm/openEuler-20.03-LTS-SP3/contrib/drivers/source/Packages/igb-5.11.4.tar.gz  2.    环境信息 openeuler-20.03lts-sp3 3.    安装新驱动 解压缩软件包 tar –xvf igb-5.11.4.tar.gz cd igb-5.11.4/src make install 4.    查看新驱动 Modinfo igb |more                3    Avago megaraid_sas 1.    驱动下载地址:https://repo.oepkgs.net/openEuler/rpm/openEuler-20.03-LTS-SP1/contrib/drivers/x86_64/Packages/RAID-3004iMR_3108_3408iMR_3416iMR_3508_3516-openEuler20.03-megaraid_sas-07.714.04.00-1-x86_64.rpm  2.    环境信息 openeuler-20.03lts-sp1     3.    安装新驱动 rpm -ivh RAID-3004iMR_3108_3408iMR_3416iMR_3508_3516-openEuler20.03-megaraid_sas-07.714.04.00-1-x86_64.rpm 4.    查看新驱动 modinfo megaraid_sas megaraid_sas(官网) 1.    驱动下载地址:https://docs.broadcom.com/docs-and-downloads/raid-controllers/raid-controllers-common-files/MR_LINUX_DRIVER_7.21-07.721.02.00-1.tgz 2.    环境信息 openeuler-20.03lts-sp13.    安装驱动     解压驱动包     tar –xvf MR_LINUX_DRIVER_7.21-07.721.02.00-1.tgz     tar –xvf megaraid_sas_components.tgz     cd openEuler     cd rpms-1     rpm –ivh kmod-megaraid_sas-07.721.02.00_oe20.03-1.aarch64.rpm 4.    查看新驱动  Megaraid_sas 官网下载地址:https://docs.broadcom.com/docs-and-downloads/raid-controllers/raid-controllers-common-files/MR_LINUX_DRIVER_7.22-07.722.02.00-2.tgz 1.环境信息:  openeuler-20.03lts-sp13.解压缩安装包 解压源码包  cd megaraid_sas-07.722.02.00 ./compile.sh        会在当前目录生成一个megaraid_sas.ko文件 find  / -name “megaraid_sas.ko”  备份/kernel 路径下的ko文件 把上面生成的Ko文件放到kernel/drivers/scsi/megaraid/路径下 reboot 4.查看新驱动 modinfo megaraid_sas 4    Huawei hifc/hinic 1.    驱动下载地址:https://repo.oepkgs.net/openEuler/rpm/openEuler-20.03-LTS/contrib/drivers/aarch64/Packages/FC-IN300-openEuler20.03-hifc-3.7.0.8-aarch64.rpm 2.    环境信息  openeuler-20.03-lts3.    安装驱动  rpm -ivh xxxx4.    查看驱动信息 modprobe hifc  5    Mellanox mlx5_core 1.     驱动下载地址: https://network.nvidia.com/products/infiniband-drivers/linux/mlnx_ofed/ MLNX_OFED_LINUX-5.6-2.0.9.0-openeuler20.03sp1-x86_64.tgz 2.    环境信息  openeuler-20.03lts-sp13.    安装新驱动      解压OFED驱动包  ./mlnxofedinstall    --add-kernel-support 安装报错缺少依赖包    yum install 即可  4.    查看新驱动     modinf mlx5_core  Mellanox ofed community 驱动 1.     驱动下载地址:  https://repo.oepkgs.net/openEuler/rpm/openEuler-22.03-LTS/contrib/drivers/source/Packages/MLNX_OFED_SRC-5.7-1.0.2.0.tgz https://www.mellanox.com/downloads/ofed/ MLNX_OFED-5.7-1.0.2.0/ MLNX_OFED_SRC- 5.7-1.0.2.0.tgz 2.    环境信息 openeuler-22.03-lts3.安装驱动     解压安装包     tar –xvf MLNX_OFED_SRC-5.7-1.0.2.0.tgz     cd MLNX_OFED_SRC-5.7-1.0.2.0     yum install python     ./install.pl      选择2          选择1     报错缺少依赖,安装所需要的依赖,重复上面的步骤./install.pl     yum install cmake …… 4.查看新驱动       6    Broadcom lpfc 1.     驱动下载地址: https://docs.broadcom.com/docs-and-downloads/oem/support/elx/rt14.0.1/14.0.326.19/elx-lpfc-dd-openEuler20-14.0.326.19-ds-1.tar.gz 2.    环境信息   openeuler-20.03lts-sp13.    安装新驱动 解压安装包 cd elx-lpfc-dd-openEuler20-14.0.326.19-ds-1 ./elx_lpfc_install.sh  4.    查看新驱动 lpfc 第二种 1.     驱动下载地址: https://repo.oepkgs.net/openEuler/rpm/openEuler-20.03-LTS-SP1/contrib/drivers/source/Packages/elx-lpfc-dd-openEuler20-12.8.614.14-ds-1.tar.gz     或     https://docs.broadcom.com/docs-and-downloads/oem/support/elx/rt12.8.13/12.8.614.20/elx-lpfc-dd-openEuler20-12.8.614.14-ds-1.tar.gz 2.    环境信息  openeuler-20.03lts-sp13.    安装新驱动 解压安装包  cd elx-lpfc-dd-openEuler20-12.8.614.14-ds ./elx_lpfc_install.sh  find  / -name  “lpfc.ko”  extra/elx-lpfc/lpfc.ko是新驱动,把新驱动复制到kernel/drivers/scsi/lpfc/下面,把原来的lpfc.ko备份 modprobe  lpfc  4.    查看新驱动 modinfo lpfc|more  
  • [openEuler] yum工具使用(管理软件包)
    管理软件包:搜索软件包使用yum能够方便的进行查询、安装、删除软件包使用如下命令 可以通过软件包的名称、缩写或者描述搜索需要的包文件:yum search 名称这样就解决了想要安装一个软件但是有时候往往不能够准确的知道它的名字问题比如:当我们需要安装一个instant Messenger,但是又不知道到底又那些,这时就可以使用 yum search message 先进行搜索然后再去安装管理软件包:列出软件包我们已经知道使用yum可以使我们很轻松的下载很多依赖和软件,除此之外yum也可以对我们下载的很多软件包进行管理,可以轻松的获取软件包的相关信息如果要列出系统中所有已安装的已经可以使用的RPM软件包,可以使用以下命令:yum list all如果需要列出特定RPM包的信息,将上面的all换成RPM包名即可:yum list [包名]如图:管理软件包:显示RPM包信息要显示一个或者多个RPM包的信息可以使用如下的命令yum info 包名如图所示:管理软件包:安装RPM包要安装一个软件包及其所有未安装的依赖,在root权限下执行如下命令:yum install 名称也可以通过添加软件包名同时安装多个软件包。配置文件/etc/yum/yum.conf添加参数strict=False,运行yum命令参数添加–setopt=strict=0。 在root权限下执行如下命令:yum install 名称 名称 .....--setopt=strict=0管理软件包:下载、删除软件包使用yum下载软件包,可以在root权限下使用如下命令:yum download 名称如果同时需要下载未安装的依赖,只需要加上–resolve:yum download --resolve 名称如果需要卸载软件包及其相关的依赖包,需要在root权限下执行如下命令:yum remove 名称管理软件包组:列出软件包组清单软件包组是一组用于公共功能的软件包,包括系统工具、声音和视频。 安装软件包组的过程中,会获取到一系列的依赖包,从而大大节省了时间。使用yum可以对软件包组进行安装/删除等操作,使相关操作更高效使用summary参数,可以列出系统中所有已安装软件包组、可用的组、可用的环境组额数量:yum groups summaryyum group list 列出软件包组和对应组的id管理软件包组:显示软件包组信息列出包含在一个软件包组中必须安装的包和可选包yum group info glob_expression...例如:管理软件包组:安装、删除软件包组每一个软件包组都有自己的名称以及相应的id,可以使用软件包组名称或它的id进行安装:yum group install 名称yum group install id同样如果要卸载软件包组,可以使用软件包组的名称或者idyum group remove 名称yum group remove id软件包检查、更新升级yum工具可以检查系统中是否有软件包更新。可以通过yum列出需要更新的软件包,并可以选择一次性全部更新或者只对某个包进行更新显示当前系统可用的更新:yum check-update 升级单个软件包,在root权限下执行:yum update package_name更新所有的包和他们的依赖yum update
  • [openEuler] yum工具使用(配置yum)
    HCE—OS—yum工具使用(配置yum)yum工具概述yum全称Yellow dog Updater, Modified,是一个专门为了解决包的依赖关系而存在的软件包管理器。就好像 Windows 系统上可以通过 360 软件管家实现软件的一键安装、升级和卸载,Linux 系统也提供有这样的工具,就是 yum。通过yum源我们可以获取软件包、进行软件包的升级那么我们为什么要使用yum进行软件安装?这是因为当我们安装某个软件的时候往往会伴随着很多的其他组件一起安装,尤其是一些依赖之间的关系往往很难去梳理当我们使用yum工具进行安装就避免了这些麻烦yum工具的主要特点:可以同时配置多个资源库简介的进行文件配置自动解决或删除rpm包时遇到的依赖性问题保持了rpm数据库的一致性这样基于RPM包管理,能够从指定的服务器自动下载RPM包并且自动安装,这样就可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐的下载、安装在使用yum工具前我们需要对yum进行一些配置配置yum:yum配置文件yum的主要配置文件是/etc/yum/yum.conf该文件中主要包含两部分mainrepository【main部分】:定义了全局配置选项,整个yum配置文件只能有一个main。该文件是/etc/yum.conf【repository部分】:定义了每个源/服务器的具体配置,可以有一到多个。常位于/etc/yum.repo.d 目录下的各文件中。另外:在/etc/yum.repos.d目录中保存着一个或者多个repo源的相关文件,它们可以定义不同的repository配置yum:显示当前配置当要显示当前的配置信息时可以使用以下命令:yum config-manager --dump当要显示相应的软件的配置时,首先查询repo id:yum repolist然后执行命令显示对应id的软件源配置,其中repository为查询得到的repo id:yum config-manager --dump repository也可以使用一个全局正则表达式来显示所有匹配部分的配置:yum config-manager --dump glob_experssion配置yum:创建本地软件源仓库要建立一个本地的软件源仓库,可以按照下面的步骤操作:安装createrrepo软件包,在root权限下执行:yum install createrepo将需要的软件包复制到一个目录下,可以直接新建目录,如:/local_repo/执行以下命令创建软件源:createrepo /local_repo这样就可以将本地软件源仓库自动配置完成配置yum:添加启动和禁用软件源添加软件源 - 要定义一个新的软件源仓库,可以在/etc/yum/yum.conf文件中添加repository部分),或者在/etc/yum.repos.d目录下添加.repo文件(如图所示只有一个软件源)。执行下面一段代码其中repository_url为repo源地址:yum config-manager --add-repo repository_url启动软件源 - 要启动软件源,需要在root权限下执行如下命令,其中repository为新增的.repo文件中的repo id (可以通过yum repolist查询):yum config-manager --dump repository
  • [openEuler] Shell脚本概述
    HCE-OS基础操作——Shell脚本概述Shell脚本编写基础知识linux shell是一种特殊的交互式工具,它为用户提供了启动程序、管理文件系统中的文件以及运行在linux系统上的进程的途径。shell的核心是命令行提示符。命令行提示符是shell负责交互的部分。它允许你输入文本命令,然后解析命令,并在内核中执行。常见的shell有bash、zsh、ksh、ash等,由于linux系统默认为bash,因此本文章主要采用bash。使用shell脚本的几点好处:shell脚本可以记录执行命令的过程和逻辑,以便下次的重复执行shell脚本可以批量处理主机shell脚本可以定时处理主机创建和执行Bash shell脚本Bash是linux下默认提供的shell解释器,而且是使用最广泛、与其他shell兼容性最好的解释器创建和执行一个shell程序一般需要以下几个步骤:利用文本编辑器创建脚本内容使用”chmod”命令设置脚本可以执行属性执行脚本命令解释器在Bash shell脚本中第一行以#!开头,通常也称为sharp-bang后面的路劲名称是命令解释器,也就是应用于执行脚本的程序Bash shell脚本将由Bash shell解释,因此他们作为第一行的开头#!/bin/bashecho “hello”执行Bash shell脚本在编写完成shell脚本后不能立即执行,我们需要对其进行权限修改,不然会发生以下报错接下我们需要修改文件权限和所有文件,使它可以变成可执行文件使用chmod命令修改执行权限,并且可以与chown命令组合更改脚本的文件所有权主要命令如下:chmod +x hello.shchmod 755 hello.shsh hello.sh./hello.sh变量的使用shell脚本的编写也需要一些变量的定义,这些变量可以支持我们去编写一些其他更为复杂的shell脚本这些变量可以在内存中存储数据通过变量我们可以轻松访问和修改存储的数据而且相较于其他语言shell变量要简单的多,这里没用的众多的存储类型的限制也能用预定义,shell变量可以边定义的同时边赋值shell变量的种类:1、环境变量临时变量环境变量是永久性的变量,一旦定义其值就不会随脚本的执行结束而消失临时变量则是在shell脚本内部定义的,当脚本执行结束这些值也就消失了变量命名规则变量名称可以由数字、字母(大写和小写)和下划线”_”组成变量的名称不能以数字开头等号=用于为变量分配值,并且不能使用空格将其与变量名称或值进行分隔如以下变量均为有效变量:变量数据类型shell变量中存储的数据类型,常见的有两种:整数类型:zhangsan=40字符串类型:zhangsan=’zhang san’当在为变量分配字符串值得时候,通常用引号将其括起来,如果没有将其括起那么Bash会将空格字符解释为单词分隔符当我们需要处理一些Bash具有特殊意义含义得字符时我们可以使用双引号扩展变量通过在变量名称前面加上$,我们就可以通过变量扩展来重新调用变量的值在程序执行中使用的变量的值的时候,要在变量名面前加上一个$号,这里就会告诉shell,要进行变量值的替换
  • [openEuler] Shell基础命令
    HCE-OS基础操作——Shell基础命令Shell常用命令shell常用的命令一共分为目录操作、文件操作、压缩文件操作、查找操作等,以下为我们介绍详细的各个操作一、目录操作:1、cd 目录切换ls/pwd 查看目录mkdir 创建目录rm 删除目录或文件rmdir 删除文件夹mv 修改目录名称/移动文件二、文件操作:1、touch 新建文件cp 文件复制vim 修改、新增文件cat/head/tail/more/less 查看文件内容三、压缩文件操作:1、tar/gzip  压缩/解压缩文件四、查找操作:1、find 在指定目录下查找文件grep 用于查找文件里符合条件的字符串which 用于查找文件whereis 用于查找指定类型的文件五、其他操作:1、kill 删除执行中的程序和工作su 变更为其他使用者的身份wget 下载指定的链接内容chmod 权限操作ln 连接文件或者目录以上是shell常用的命令操作,接下来我们看看每个操作的具体shell常用命令语法规则目录操作——cd目录切换语法:cd [dir]cd /[dir] 进入到目录/dir中cd  .. 回到上一级目录当中cd cd后面不带参数默认回到家目录下目录操作——ls查看目录语法:ls  [OPTION]....[FILE]....-a 显示所有文件及目录(当我们的文件或者目录名称开头为“.”则视为隐藏,使用ls不会将其列出)-l 除文件名称外,还会将文件的形态、权限、拥有者、文件大小等资讯详细列出-t 将文件按照建立的时间先后顺序列出-S 按文件的大小进行排序目录操作——pwd查看当前工作目录pwd命令有两个选项,-L和-P-L 目录连接链接时,输出连接路径-P 输出物理路径目录操作——mkdir创建目录语法:mkdir [OPTION]...DIRECTORY...mkdir 目录名称 创建一个目录mkdir 名称1 名称2 创建多个目录mkdir -p 名称1/名称2/名称3 如果目录1、目录2不存在则一并创建目录操作——rm删除文件或者目录rm属于危险命令,使用rm删除的文件将不能够100%恢复语法:rm [OPTION] file-or-dir-f、--force 忽略不存在的文件,从不给出提示-i、--interacting 进行交互式删除-r、-R、--recursive 将rm参数中列出的全部目录和子目录均递归删除-v、--verbose 详细显示删除进行的步骤目录操作——rmdir用于删除空的目录语法:rmdir  [OPTION]..[FILE]...-p 循环读取目录操作——mv用于一定文件或者目录、有时用于文件命名mv命令用于移动文件或者目录如果源文件和目标文件在同一个父目录下。则mv命令的效果相当于给文件改名语法:mv [选项] 源文件或者目录 目标文件或者目录-b 如果会进行文件的覆盖,则会在文件覆盖时先进行备份-f 如果进行覆盖这里将不会进行询问-i 若目标文件已经存在,会询问是否覆盖-u 若目标文件已存在,且source比较新,才会更新(update)文件操作——touch创建文件、修改时间戳-a 改变档案的读取时间记录-m 改变档案的修改时间记录-d 设定时间的日期,可以使用各种不同的格式文件操作——cp复制文件或者目录语法: cp [OPTION]...SOURCE....DIRECTORY-a 此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容-p 除复制文件的内容外,还把修改时间和访问权限也复制到新文件中-r 若给出的源文件是一个目录文件,此时将复制该目录下的所有的子目录和文件-s 不复制文件,创建软链接-l 不复制文件,创建硬链接文件操作——cat读取文件的全部内容,或将几个文件合并为一个文件文件操作——head显示文件开头内容,默认打印出相应的开头10行文件操作——tail 用来显示文件的末尾内容,默认为10行文件操作——more 会一页一页显示内容方便阅读,空格去往下一页,b键返回上一页文件操作——less 读取文件内容,可以分屏显示,于more类似,但是使用less可以随意浏览文件,而且less在查看文件内容之前不会加载整个文件压缩文件操作——tar 用于打包文件方便数据移动语法:tar [OPTION]... [FILE]-c、--create 创建一个新的归档 -x、--extract、--get 从归当解出文件-f、--file=ARCHIVE 使用归当文件-z、--gzip、--gunzip、--ungzip 通过gzip过滤文档-C、--directory=DIR 改变目录到DIR-v、--verbose 详细的列出待处理的文件常用用法:tar cf base.tar dir1 把目录dir1及其下的所有内容打包tar xf base.tar 把包中的内容解压到当前目录tar tf base.tar 列出包中的内容tar xf base.tar -C  /test 解压到/tmp目录下 默认的话就在当前目录下压缩文件操作——gzip 对文件进行解压缩和压缩的命令同样是对文件压缩的操作,那么gzip和tar的区别是什么?首先我们先来区分两个概念:1、打包:将一堆文件或者目录变成一个总的文件压缩:将一个大的文件经过某种压缩算法变成一个小的文件为什么在linux中需要区分这些呢?这是因为在linux中的很多压缩程序只能针对一个文件进行压缩,所以,在进行一堆大文件压缩的时候就需要先进行打包才能进行压缩。这样我们就可以从tar和gzip的效果看出,tar可以将文档进行归当也可以进行压缩,而是gzip是为了方便用户而设计的可以在打包的同时进行文件压缩或文件解压gzip是linux系统中常用到的对一个文件进行解压缩和压缩的命令gzip可以用来压缩大的文件节省空间语法:gzip [参数] [文件或者目录]-d、--decompress、--uncompress 解压缩文件-f、--force 强制压缩文件,不会判断文件名是否存在以及该文件是否为符号连接-l、--list 列出压缩文件的相关信息-r、--recursive 递归处理,将指定目录下的所有文件及子目录一并处理-v、--verbose 显示指令执行过程查找操作——find 用来查找指定目录下的文件可以指定一些匹配条件,如按文件名,文件类型、用户或者时间戳查找文件语法:find [path] [experssion]-name 按照文件名进行查找-perm 按照文件权限来查找-user 按照文件属性查找文件-mtime -n +n 按照文件的更改时间来查找文件例如查找目录中更改时间在7日以前的普通文件find /test -type -f -mtime +7在7日以内的普通文件就是find /test -type -f -mtime -7查找操作——grep 查找文件里符合条件的字符串查找操作——which 该指令会在环境变量中$PATH中设置的目录里进行查找符合条件的文件查找操作——whereis 该指令可以在特定的目录中查找符合条件的文件,这些文件属于原始代码
  • GRE over IPSec笔记分享
    技术背景: IPSecVPN用于两个端点之间提供安全的IP通讯,但是只能加密并传播单播数据,无法加密和传输,视频,语音和动态路由协议等组播数据流量。 GRE可以封装组播流量,但不提供数据加密,这就可以和IPSec结合使用,从而保证语音,视频等组播业务的安全。 配置GRE over IPSec时,与单独配置GRE和IPSec没有太大的区别。唯一需要注意的地方是,通过ACL定义需要保护的数据流时,不能再以总部和分部内部私网地址为匹配条件,而是必须匹配经过GRE封装后的报文,即定义报文的源地址为GRE隧道的源地址,目的地址为GRE隧道的目的地址。工作流程: 首先通过GRE对报文进行封装,然后在由IPSec对封装后的GRE报文进行加密和传输。 GRE over IPSec就是让GRE的隧道技术代替IPSec本身的隧道技术,而只需要引用IPSec策略(包含ACL)对GRE流量进行加密保护,保证了GRE流量的安全,也就是GRE over IPSec。 配置GRE over IPSec时,与单独配置GRE和IPSec没有太大的区别。唯一需要注意的地方是,通过ACL定义需要保护的数据流时,不能再以总部和分部内部私网地址为匹配条件,而是必须匹配经过GRE封装后的报文,即定义报文的源地址为GRE隧道的源地址,目的地址为GRE隧道的目的地址。
  • [问题求助] MDK5中如何添加源码中的shell组件。
    想在mdk5中移植liteos模块中的shell组件。可是里面的配置不知道怎么回事。移植的lib文件都有那些?
  • [问题求助] STM32L431RCT6移植liteos shell
    STM32L431RCT6移植liteos有shell组件吗?有教程吗?怎么配置。
  • [开发应用] 如何定时analyse所有库所有表,或者特定库的所有表
    比如一个月,对全库全表,或者特定库的所有表analyse?是内部可以配置定时任务,还是编写shell脚本实现?如果shell脚本的话,如果采集到所有表的表名,并再配置成analys语句呢?
  • [问题求助] 【云服务器香港产品】【ssh功能】xshell登录不进去,ping不通
    【功能模块】【操作步骤&问题现象】1、防火墙已关闭2、端口已开启3,香港云ping内地也ping不通,ping谷歌可以ping通【截图信息】【日志信息】(可选,上传日志内容或者附件)
  • [技术干货] 鸿蒙LiteOs-a中shell程序源码分析
    1 之前自己写过一篇介绍shell的文章hi3518 openharmony shell命令代码修改,并没有全面介绍shell,这次全面介绍一下。liteos-a中shell相关代码是有两处,但是这两处有什么区别和联系,本文着重介绍一下。2 liteos-a中的两个shell地方,我们可以把它俩叫做app_shell和full_shell,一个是用户空间程序,会生成单独的shell文件,放到了跟文件系统的bin目录下,代码位置如下:另一个地方运行在内核空间,和内核固件放到了一起,代码位置如下:我们在串口操作命令,不管是系统命令还是运行二进制文件,都会走到如下函数,在如下函数会判断两种情况,调用不同的系统调用,从而由用户态切换到内核态。运行效果如下:其中execve和syscall(__NR_shellexec, cmdName, cmdline)分别执行二机制文件和系统命令,关于系统调用简单说就是通过软中断方式由用户态进入到内核态,内核态会有对应的处理函数,此文不着重介绍,这两个判断函数所在文件如下所示:3 先说系统命令的调用流程,从用户态进入内核态之后,进入到的函数名称如下,从函数位置名字和里边的copyfromuser可以看出这就是一个系统调用处理函数,还有从用户空间往内核空间拷贝命令的操作。在这个函数里最终调用的函数为 OsCmdExec,注意内核代码中有两个这个函数的实现不要弄混,用户程序的shell代码中的这个函数是不对的,代码中也有注释说明。在这个函数中最终在全局变量中找到命令匹配的执行函数,完成了命令的调用。4 然后说一下二进制文件调用的流程execve最终的系统调用执行函数是SysExecve然后直接调用在这个函数里,最终调用到了运行加载运行elf二进制文件的操作5 app_shell和full_shell的这两部分代码,有好多函数名都一样,代码逻辑也类似,很很容易让人疑惑,操作系统接受命令时,默认会初始化串口shell控制台,还有一个功能时telnet服务器在启动时会初始化telnet控制台,串口是启动时调用,telnet是自己运行命令调用,后续我们在单独介绍telnet shell相关代码,敬请期待。转载于鸿蒙开发微信公众号
  • [技术干货] shell脚本设置防止暴力破解ssh
    大家好,本篇文章主要讲的是shell脚本设置防止暴力破解ssh,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览shell脚本设置访问控制,多次失败登录即封掉IP,防止暴力破解ssh当发现某一台主机向服务器进行SSH远程管理,在10分钟内输错密码3次,使用firewalld进行响应, 禁止此IP再次连接,6个小时候后再次允许连接。一、系统:Centos7.1 64位二、方法:读取/var/log/secure,查找关键字 Failed12345Jan  4 16:29:01 centos7 sshd[1718]: Failed password for root from 192.168.120.1 port 2171 ssh2Jan  4 16:29:02 centos7 sshd[1718]: pam_succeed_if(sshd:auth): requirement "uid >= 1000" not met by user "root"Jan  4 16:29:04 centos7 sshd[1718]: Failed password for root from 192.168.120.1 port 2171 ssh2Jan  4 16:29:06 centos7 sshd[1718]: error: Received disconnect from 192.168.120.1 port 2171:0:  [preauth]Jan  4 16:45:53 centos7 sshd[1758]: Failed password for root from 192.168.120.134 port 40026 ssh2三.shell代码,创建test.sh1234567891011121314151617181920212223#!bin/bash#Intercept illegal IP addressesmonth=$(LANG=C date +"%b")day=$(LANG=C date +"%e")now=$(LANG=C date +"%T")ten=$(LANG=C date -d "10 minutes ago" +"%T") cat /var/log/secure |awk  '$1=="'$month'" && $2=='"$day"' && $3>="'$ten'" && $3<="'$now'" { print}' |grep 'Failed'|awk -F'from' '{ print $2}' |awk '{ print $1}'|sort |uniq -c > baduser.txt #Number of calculationstimes=`awk '{ print $1 }' baduser.txt` #banned IP addressseq=1for i in $timesdo   ip=`sed -n ''$seq'p' baduser.txt |awk '{ print $2}'`   if [ $i -ge 3 ]   then   firewall-cmd --add-rich-rule='rule family=ipv4 source address='$ip' port port=22 protocol=tcp reject' --timeout=6h   fiseq=`expr $seq + 1`done四.将test.sh脚本放入cron计划任务,每60分钟执行一次。12# crontab -e*/60 * * * * sh /root/test.sh五、测试1、开一个终端窗口,一个ssh连上服务器,另一个用错误的密码连接服务器几次。很快,服务器上黑名单baduser.txt文件里已经有记录了:IP 已经被加入到服务器的baduser.txt文件中,无法连接服务器,被拒绝:到此这篇关于shell脚本设置防止暴力破解ssh的文章就介绍到这了转载自https://www.jb51.net/article/233737.htm
总条数:136 到第
上滑加载中