• Ubuntu离线安装gcc


     
     
    本次成功案例是ubuntu-server-16.04.5
    一、我们所处的背景是Linux服务器完全处于无网状态,而且没有装gcc,make等环境。我们在该背景下,安装离线数据包
    <一>.首先在一台有网的相同的服务器上进行操作。
      1.apt-cache  search  XXX  (查找XXX有哪些软件包),找到XXX 软件,然后执行apt-get -d install XXX,执行完后,XXX的依赖包就会下载保存在/var/cache/apt/archives里面。在这里注明一点,我曾经在apt-get -d install gcc后进行下面的步骤失败了,后来是apt-get install gcc直接安装后,gcc -v查看后确实安装上了gcc,才成功的。原因是什么呢,我只发现-d安装后deb包没有直接安装上的多,相差的还是很大的。所以建议直接安装,确保把所有的包都已经下载完毕了。
      2.生成依赖关系
        1>.根目录下新建一个文件夹 
          $ sudo mkdir offlinePackage
        2>.将下载的deb包拷贝到上述新建的文件夹下
          $ sudo cp -r /var/cache/apt/archives  /offlinePackage
        3>.修改文件夹的权限,可读可写可执行
          $ sudo chmod 777 -R /offlinPackage/
        4>.建立deb包的依赖关系
          $ sudo dpkg-scanpackages /offlinePackage/ /dev/null |gzip >/offlinePackage/Packages.gz -r
          如果出现错误:sudo: dpkg-scanpackages: command not found
          则需要安装dpkg-dev工具:
            $ sudo apt-get install dpkg-dev
        5>.将生成的Packages.gz包复制到和deb同目录下
          $ sudo cp /offlinePackage/Packages.gz /offlinePackage/archives/Packages.gz
      3.打成压缩包,以备后用
        $ tar cvzf offlinePackage.tar.gz offlinePackage/
    <二>.在离线的Linux系统上进行安装
      1.将offlinePackage.tar.gz复制到根目录下,解压
        $ sudo tar -xvf offlinePackage.tar.gz
      2.将安装包所在和源路径添加到系统源source.list
        $ sudo vi /etc/apt/sources.list
               加入 deb file:///offlinePackage archives/
             然后将所有的其他deb全部注销掉(#)
             注意:我们在添加之前可以先将原来的源备份
              $ sudo cp /etc/apt/sources.list /etc/apt/sources.list.back
             以备以后使用
      3.更新系统源
        $ sudo apt-get update
        在更新源可能会出现一些问题,在参考博客中已经提到,我的解决是
          sudo apt-get update ---allow-insecure-repositories
          sudo apt-get install -f
          sudo apt-get update --allow-unauthenticated
        注意事项:本地的源是没有签名的,直接更新ubuntu1604下的apt会提示找不到release文件,是一种不安全的源,默认是被禁用的。如果还要安装的话需要加上这个 --allow-unauthenticated选项。
      4.离线安装
        此时,在没有网络的情况下,我们就可以安装我们之间下载的XXXX软件了
              $ sudo apt-get  install gcc
         这里应该会报个错,看报错信息,大体意思是文件的位置问题。这里需要将offlinePackage整个文件copy一份进入offlinePackage里。再安装
    注意:在执行是可能会出现这样的错误 You will have to enable the component called 'main'
    解决方法:sudo add-apt-repository main
     

  • 相关阅读:
    [转][LeetCode]Longest Common Prefix ——求字符串的最长公共前缀
    [转]最长回文子串——4种解法
    [转]通过金矿模型介绍动态规划
    一句话说清楚什么是闭包函数
    [转]as3事件流机制彻底理解
    Eclipse 快捷键
    文件打包与解压缩
    第5节 环境变量与文件查找
    vim的多标签
    java思维导图
  • 原文地址:https://www.cnblogs.com/pig1314/p/10175235.html
Copyright © 2020-2023  润新知