apt-get install -y não funciona com contratos de licença, como automatizar isso?

3

Para a maioria dos pacotes que exigem uma resposta sim / não, isso funciona bem para mim:

sudo apt-get install -y ....

Mas se você precisar de um pacote que faça você aceitar uma licença, como você concorda automaticamente com isso?

Por exemplo, sun java:

sudo apt-get install -y sun-java6-bin sun-java6-jdk sun-java6-jre sun-java6-plugin

Isso requer que eu selecione OK e, em seguida, sim.

    
por Blankman 01.11.2011 / 02:11

1 resposta

5

Existem algumas maneiras de fazer isso:

  1. Pré-resposta com debconf executando o seguinte comando antes instalando:

    echo sun-java6-jdk shared/accepted-sun-dlj-v1-1 select true | \
        /usr/bin/debconf-set-selections
    
  2. Use expect :

    #!/usr/bin/expect -f
    sudo apt-get -y install sun-java6-jre
    expect "[y/n]"
    sleep 1
    send -- "yes\r"
    
por 01.11.2011 / 03:12

Tags