Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >马斯克发布新一代大模型Grok 3:算力支撑下的 AI 跃进

马斯克发布新一代大模型Grok 3:算力支撑下的 AI 跃进

原创
作者头像
算力之光
修改于 2025-02-19 06:28:42
修改于 2025-02-19 06:28:42
2200
举报
代码语言:shell
AI代码解释
复制
#!/bin/bash
# debian12/ubuntu20/21/22 安装 网络抓包监控开发环境 libpcap 
downDir="/datadisk/eisc/download" ; 
installdir="/datadisk/eisc/server" ; 

debSystemList=( gcc flex byacc make cmake)
ReleaseList=( libpcapRelease )

MysqlSelectVersion=0;
debCheck()
{
    for debname in ${debSystemList[*]}
    do
        debnameInstalled=$( sudo dpkg -s $debname | grep Package | awk -F":" '{print $2}' | sed 's/ //' ) 
 
        if [ "$debnameInstalled" == "$debname" ]
        then 
            echo "[ok] 该包 $debname 已经安装,安装信息查看执行:sudo dpkg -l | grep $debname "
        else
            echo "[runing] 正在安装必备包 $debname..."
            sudo apt reinstall -y $debname
        fi
    done
}

os_release()
{

    if [ $USER = "root" ]
    then 
        sudoc=" "
        # 判断字符串的等号要加空格,否则无法判断
    else
        sudoc="sudo"
        echo "当前为普通用户,需要输入root 密码...  $sudoc"
        $sudoc date   ;
    fi

    xitong=` cat /etc/os-release  | grep -w ID | awk -F"=" '{print $2}' | sed "s/\"//g" `
    case "$xitong" in
        "centos" ) aptc="yum" ; dpkgc="rpm -qa " ; echo "当前是 centos 系统"   ;;
        "ubuntu" ) aptc="apt" ; dpkgc="dpkg -l " ; echo "当前是 ubuntu 系统"   ;;
        "debian" ) aptc="apt" ; dpkgc="dpkg -l " ; echo "当前是 debian 系统"   ;;
    esac

    $sudoc mkdir -p $downDir $installdir    
    $sudoc chmod 777 $downDir $installdir        # chmod 附加权限
}

downURL_select(){
    read -p "选择下载安装包地址: 1 小绿叶技术博客下载     2 官方下载 . 请输入:  "   selectURL
    case $selectURL in
        "1") echo "当前选择小绿叶技术博客下载..." ;     selectFlag=1 ;;
        "2") echo "当前选择官方下载..." ;             selectFlag=2 ;;
        *) echo "输入错误,请重新执行脚本! " ; exit ;;
    esac
}

libpcapRelease()
{
    case $selectFlag in
        "1") downUrl="http://work.eisc.cn/ruanjian/ubuntu/deb/so"      ;;
        "2") downUrl="https://www.tcpdump.org/release/"                 ;;
        *)   echo "未定义下载地址..." ; exit                               ;;
    esac

    if [[ $MysqlSelectVersion = 0 ]]
    then
        read -p "libpcap 提供版本:1. libpcap-1.10.4   请输入1选择版本, 任意字符退出安装 : " MysqlSelectVersion
        case $MysqlSelectVersion in
            "1")  ReleaseMl="libpcap-1.10.4"; ReleaseInstall="so/libpcap/libpcap1104"; ReleaseBin="include/pcap.h";  Down="$downUrl/$ReleaseMl.tar.gz"; echo "$ReleaseMl 下载地址重新定义为:$Down" ;; 
            *)    ReleaseMl=0                                     ; echo "[ok]退出安装."
        esac
    fi
}

libpcap_Compilation_method()
{
    echo "[running] 正在安装 $rundir"
    sudo ./configure --prefix=$rundir               # 不加权限,无法安装到该目录
    sudo make ; sudo make install

}

download()
{
    sudo mkdir -p $downDir ; sudo chmod 777 -R $downDir 

    cd $downDir ; echo "当前进入目录进行下载:  cd $downDir "

    echo "[runing] 正在检查是否下载安装包: $ReleaseMl.tar.gz"

    # [ ! -d $setdir ] && echo "[running] 目标安装路径不存在" || break ; 

    if [ ! -f $ReleaseMl.tar.gz ]
    then 
        echo "[runing] 当前没有下载,正在下载包:wget $Down "
        wget $Down -O $downDir/$ReleaseMl.tar.gz
    else
        echo  "[ok] 已经下载: $downDir/$ReleaseMl.tar.gz"
    fi

    cutNumber=`ls $setdir/* |sort |uniq -c | awk -F" " '{print $1}'` ; 
    if [[ "$cutNumber" = "" ]]                   # 判断变量的数值大小,需要双小括号+ 引号
    then 
        echo "[running] 正在解压 $downDir/$ReleaseMl.tar.gz 到目录: $setdir" ; 
        tar -xzvf $downDir/$ReleaseMl.tar.gz -C $downDir/
        mv $downDir/$ReleaseMl/*  $downDir/$ReleaseInstall
        rm -rf $downDir/$ReleaseMl 
    else 
        echo "[ok] 已经解压 : $setdir 正在安装 " 
    fi
}
 
RunInstall(){

    for i in ${ReleaseList[*]}
    do
        $i
        MakeFlag=1;
        soFlag=1

        setdir=$downDir/$ReleaseInstall ;
        rundir=$installdir/$ReleaseInstall ;
        $sudoc mkdir -p $setdir $rundir ; $sudoc chmod 777 $setdir $rundir
        echo "setdir=$setdir ;  rundir=$rundir     " 

        echo "当前正在安装  $i"  ; sleep 1;

        case "$ReleaseBin" in 
            "nginx")            [ ! -f $rundir/sbin/$ReleaseBin   ]  && soFlag=1 || soFlag=0  ;;   
            "include/pcap.h")   [ ! -f $rundir/bin/libpcap      ]  && soFlag=1 || soFlag=0  ;;
        esac

        if [[ $ReleaseMl = 0 ]] 
        then
            echo "用户取消安装: $i"
        else

            if [[ ! -f  $rundir/$ReleaseBin ]] && [[ $soFlag = "1" ]]
            then
                download                                    # 安装前检查是否安装 

                cd $setdir 
                echo "[waring] 包没有安装 $rundir/bin/$ReleaseBin 当前进入目录:  $setdir  "  ;  

                case "$ReleaseBin" in 
                    "nginx"   )             nginx_Compilation_method   ; Fpath ; $sudoc cp $rundir/sbin/$ReleaseBin /bin/  ;;
                    "include/pcap.h"   )    libpcap_Compilation_method  ;;
                    *)              echo "未定指定编译,走通用编译方法..." ; $sudoc ./configure --prefix=$setdir ; $sudoc make -j 4 ; $sudoc  make instlal; Fpath ;;
                esac 

                case "$xitong" in 
                    "debian")    $sudoc ln -s $rundir/lib/libpcap.so.1 /usr/lib/ ;;   
                    "ubuntu")    $sudoc ln -s $rundir/lib/libpcap.so.1 /usr/lib/x86_64-linux-gnu/  ;;
                                                            # debian和ubuntu 需要创建软链接, 默认库路径不一致
                esac                

                if [[  -f  $rundir/$ReleaseBin ]] 
                then 
                    echo "[ok] Success installd path: $rundir/sbin/$ReleaseBin"
                else 
                    echo "[fail] install Fail : $rundir/sbin/$ReleaseBin "
                fi  

            else
                echo "[ok] 已经安装: $rundir/$ReleaseBin"     

            fi
        fi
    done
}



main()
{
    debCheck; os_release; downURL_select; RunInstall
}
main

# 一键安装:  wget ddoss.cn/file/ubuntu/shell/so/libpcap.sh -O libpcap.sh ; sudo chmod +x libpcap.sh;./libpcap.sh 


原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
C/C++生态工具链——编译构建工具CMake/CMakeList初探
CMake的全称是Cross-platform Make。我第一次参与Linux C++开发时使用的工具是Make,而后开始切换到CMake,一开始以为CMake是和C语言有关,原来开头的C表示它可以跨平台。
Coder-ZZ
2023/02/23
3.1K0
C/C++生态工具链——编译构建工具CMake/CMakeList初探
CMake学习笔记(一)——CMake官网教程
剑影啸清寒
2018/01/02
4.5K0
【CMake教程】(五)CMake 配置install打包
我们编译生成的可执行文件一般,会生成在当前的编译路径下,也就是build或者release路径下。那么如何将编译生成的可执行文件和库文件打包到一起进行发布那?本片教程我们将讲述如何在cmake中配置install的打包路径。下面我们将以mathlib库和头文件为例子进行配置。
CNNer
2020/07/21
9.4K0
【CMake教程】(三)CMake 配置指定C++11编译的标准
  本文主要讲述如何使用CMakeLists.txt,指定当前程序的C++编译标准。
CNNer
2020/11/04
34.8K0
【CMake教程】(三)CMake 配置指定C++11编译的标准
CMAKE使用手记
首先感谢那位叫“任麒麟”的网友整理的PDF,有心了。 我也忘了哪里下载的,不过确实挺全的。
看、未来
2021/10/09
5820
CMake学习笔记(二)——CMake语法
剑影啸清寒
2018/01/02
6K0
深入浅出CMake(一):基础篇
CMake 是一个跨平台的编译构建工具,用来自动化生成 Makefile 之类的构建文件的。
Frank909
2019/03/15
1.4K0
CMake 入门教程:从零开始构建 C-C++ 项目
首先,需要下载并安装CMake。可以从CMake官网下载。如果404 Not Found,可以试一下这个国内镜像网址下载地址。
小万哥
2023/05/24
1.5K0
CMake 入门教程:从零开始构建 C-C++ 项目
CMake简介及使用实例
CMake是一个跨平台的建构系统的工具,可以用简单的语句来描述所有平台的安装(编译过程)。他能够输出各种各样的构建文档makefile或者project文件,描述系统建构的过程。还能测试编译器所支持的C++特性,类似UNIX下的automake。只是 CMake 的组态档取名为 CmakeLists.txt。CMake并不直接建构出最终的软件,而是产生标准的建构档(如 Unix的 Makefile或 Windows Visual C++的 projects/workspaces),然后再依一般的构建方式使用。
恋喵大鲤鱼
2018/08/03
2.7K0
CMake用法,这篇文章讲全了
CMake是一个开源的、跨平台的自动化构建系统,用于管理软件构建过程。它通过编写配置文件(CMakeLists.txt),自动生成适合不同编译器和操作系统的构建脚本或项目文件。CMake以其强大的跨平台能力成为众多开发者构建项目的首选工具。无论是简单的单文件项目,还是复杂的多文件、多文件夹乃至集成第三方库的大型工程,CMake都能游刃有余。本文将结合实例详细介绍cmake的常见用法,包括单文件、多文件、多文件夹以及引用第三方库等。
程序员的园
2024/07/18
4290
CMake用法,这篇文章讲全了
烛照:使用CMake管理机器视觉后端算法库
大家好我是周旋,欢迎学习【烛照:QT机器视觉软件开发】项目。手把手视频教程已经在网站开始更新:
周旋
2024/05/03
2470
烛照:使用CMake管理机器视觉后端算法库
初识CMake
CMake 是一个 跨平台的 项目构建工具,CMake不过就是比makefile更高级一些,makefile不仅写起来繁琐,并且不同平台有所差异。
用户11029129
2025/04/14
1730
初识CMake
Linux CMake 快速使用(二)——动态库创建与链接
moreFile文件夹下分别是build、src文件夹以及主CMakeLists.txt文件
用户5908113
2020/05/07
2.8K0
Cmake的使用
有了Cmake以后,只需要编写一个CmakeLists文件就可以对应将一个C++工程不通操作系统
全栈程序员站长
2022/09/22
1.6K0
Cmake的使用
cmake用法
示例源码 在 linux 平台下使用 CMake 生成 Makefile 并编译的流程如下:
用户2929716
2018/08/23
1.3K0
cmake用法
CMake编写总结
make和CMake之间的关系是CMake 通过命令可以生成make执行的Makefile文件,所以说CMake 是make 的升级版的生成工具
impressionyang
2020/08/27
1.1K0
cmake快速入门「建议收藏」
cmake是kitware公司以及一些开源开发者在开发几个工具套件(VTK)的过程中所产生的衍生品。后来经过发展,最终形成体系,在2001年成为一个独立的开放源代码项目。其官方网站是www.cmake.org,可以通过访问官方网站来获得更多关于cmake的信息,而且目前官方的英文文档比以前有了很大的改进,可以作为实践中的参考手册。
全栈程序员站长
2022/09/13
1.3K0
cmake快速入门「建议收藏」
Linux下CMake简明教程
CMake是开源、跨平台的构建工具,可以让我们通过编写简单的配置文件去生成本地的Makefile,这个配置文件是独立于运行平台和编译器的,这样就不用亲自去编写Makefile了,而且配置文件可以直接拿到其它平台上使用,无需修改,非常方便。
全栈程序员站长
2022/09/01
2.2K0
CMake使用总结
CMake意为cross-platform make,可用于管理c/c++工程。CMake解析配置文件CMakeLists.txt生成Makefile,相比直接用Makefile管理工程,CMake更灵活和简单。
bear_fish
2018/09/19
1.9K0
【AI白身境】只会用Python?g++,CMake和Makefile了解一下
在学习CMake和和Makefile之前我们先学下g++这个工具,大家或许会问为什么要学g++,不应该直接学CMake和Makefile吗。实际上如果你不掌握g++根本就不会写Makefile,因为它实际上就是对g++代码的整理,有了Makefile,执行程序会更加快速方便。另外CMake就是为了简化Makefile的编写,它可以自动生成Makefile。
用户1508658
2019/07/26
1.8K0
【AI白身境】只会用Python?g++,CMake和Makefile了解一下
相关推荐
C/C++生态工具链——编译构建工具CMake/CMakeList初探
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档