zoukankan      html  css  js  c++  java
  • ubuntu安装软件自动交互

    在ubuntu下安装软件过程中可能会出现需要你输入密码或者其他的一些交互类的操作,这样在脚本安装的时候就可能出现阻断,这个在ubuntu里面已经考虑到了这个情况,以前我在安装这个的时候,通过的是脚本传递参数的方式,这里介绍的是原生的控制方式,这个方式更好

    以安装mariadb-server-5.5为例

    1、查询需要应答的问题

    首先通过命令查询这个软件需要问答什么问题

    root@mytest:/var/cache/apt/archives# debconf-show mariadb-server-5.5 
    * mysql-server/root_password: (password omitted)
    * mysql-server/root_password_again: (password omitted)
      mysql-server/password_mismatch:
      mysql-server/error_setting_password:
    * mariadb-server/oneway_migration: true
      mysql-server-5.5/nis_warning:
      mysql-server-5.5/postrm_remove_databases: false
      mariadb-server-5.5/really_downgrade: false
      mysql-server/no_upgrade_when_using_ndb:
    

    这里可以看到需要处理的是密码的问题

    2、执行命令传递参数进去

    debconf-set-selections <<< 'mariadb-server-5.5 mysql-server/root_password password 123456'
    debconf-set-selections <<< 'mariadb-server-5.5 mysql-server/root_password_again password 123456'
    

    这个地方实际是把这个值记录到了这个地方,如果要修改可以覆盖或者删除即可

    root@mytest:/var/cache/apt/archives# cat /var/cache/debconf/passwords.dat
    Name: mysql-server/root_password
    Template: mysql-server/root_password
    Value: 123456
    Owners: mariadb-server-5.5
    Flags: seen
    
    Name: mysql-server/root_password_again
    Template: mysql-server/root_password_again
    Value: 123456
    Owners: mariadb-server-5.5
    Flags: seen
    

    然后执行安装的操作:
    修改环境变量(这一步不做也没看到有问题)

    export DEBIAN_FRONTEND=noninteractive
    

    3、安装相应的包

    dpkg -i mariadb-server-5.5_5.5.46-1ubuntu0.14.04.2_amd64.deb
    

    以上即为ubuntu下的deb包的自动应答的处理

  • 相关阅读:
    自动化测试框架相关资料下载
    C++白盒测试最佳实践课程,3个免费名额火热申请中,31号前截止申请...
    亿能测试培训中心 下周进入完整自动化测试项目实训阶段
    亿能测试大讲堂
    自动化测试调查问卷送《QTP自动化测试最佳实践》
    8月白盒测试课程
    广州亿能自动化测试沙龙
    8月自动化测试课程
    广州亿能自动化测试沙龙
    史上最强的自动化测试课程7月开设
  • 原文地址:https://www.cnblogs.com/zphj1987/p/13575329.html
Copyright © 2011-2022 走看看