| 137 | * 撰寫 drbl-hadoop-live 測試程式 [source:drbl-hadoop-live/test-live-helper.sh test-live-helper.sh] [147][148] |
| 138 | |
| 139 | = 2010-05-30 = |
| 140 | |
| 141 | * 如何在 shell script 裡面安裝 java 又不用選 yes |
| 142 | * [參考] [http://www.davidpashley.com/blog/debian/java-license Installing java non-interactively] |
| 143 | * 這裡提到用 debconf-set-selections 來設定一些參數,讓 sun-java*-* 不問授權的 yes,方法包括有寫檔跟沒寫檔的做法,個人覺得留言裡面的那個做法最帥了!! |
| 144 | {{{ |
| 145 | cat << EOF | /usr/bin/debconf-set-selections |
| 146 | sun-java6-bin shared/accepted-sun-dlj-v1-1 select true |
| 147 | sun-java6-jdk shared/accepted-sun-dlj-v1-1 select true |
| 148 | sun-java6-jre shared/accepted-sun-dlj-v1-1 select true |
| 149 | EOF |
| 150 | }}} |
| 151 | * 那麼如果以後遇到別的套件也有類似的問題該怎麼找參數呢?? 答案是用 debconf-get-selections 這個指令,首先必須安裝 [http://packages.debian.org/debconf-utils debconf-utils] 套件,然後執行 debconf-get-selections 再用 grep 用套件名稱找出可以改的參數。 |
| 152 | {{{ |
| 153 | ~$ sudo debconf-get-selections | grep sun-java6 |
| 154 | sun-java6-jre sun-java6-jre/stopthread boolean true |
| 155 | sun-java6-bin shared/accepted-sun-dlj-v1-1 boolean true |
| 156 | sun-java6-jre shared/accepted-sun-dlj-v1-1 boolean true |
| 157 | sun-java6-jre sun-java6-jre/jcepolicy note |
| 158 | sun-java6-bin shared/error-sun-dlj-v1-1 error |
| 159 | sun-java6-jre shared/error-sun-dlj-v1-1 error |
| 160 | sun-java6-bin shared/present-sun-dlj-v1-1 note |
| 161 | sun-java6-jre shared/present-sun-dlj-v1-1 note |
| 162 | }}} |
| 163 | * 須注意的是原本參數是 boolean 格式,若要下給 debconf-set-selections 必須置換成 select 關鍵字喔!! |
| 164 | {{{ |
| 165 | ~$ sudo debconf-get-selections | grep sun-java6 | grep boolean | sed 's#boolean#select#g' |
| 166 | sun-java6-bin shared/accepted-sun-dlj-v1-1 select true |
| 167 | sun-java6-jdk shared/accepted-sun-dlj-v1-1 select true |
| 168 | sun-java6-jre shared/accepted-sun-dlj-v1-1 select true |
| 169 | sun-java6-jre sun-java6-jre/stopthread select true |
| 170 | }}} |