segue....codice:Parte prima montaggio e scompressione... chiaramente necessitiamo del disco di installazione che contiene i pacchetti... nel mio caso si tratta di un disco unico avendo io escluso il kde tex e qualche altre sciocchezza, chiaramente current ma funge anche su altri dischi come le iso scaricate o fatte a mano da voi purche' abbiano conservato la struttura slackware, per esempio nel mio caso: # mount /dev/hdc /mnt/cdrom -t iso9660 # ls -1 /mnt/cdrom ANNOUNCE.10_0 BOOTING.TXT ChangeLog.txt CHECKSUMS.md5 CHECKSUMS.md5.asc COPYING COPYRIGHT.TXT CRYPTO_NOTICE.TXT CURRENT.WARNING extra/ FAQ.TXT FILELIST.TXT GPG-KEY isolinux/ kernels/ PACKAGES.TXT README.TXT RELEASE_NOTES slackware/ Slackware-HOWTO SPEAK_INSTALL.TXT SPEAKUP_DOCS.TXT UPGRADE.TXT nella sotto-directory slackware c'e' il file MANIFEST.bz2 copiamolo scompresso sotto /tmp # bzcat /mnt/cdrom/slackware/MANIFEST.bz2 > /tmp/MANIFEST prima parte incruenta e terminata ora dobbiamo crearci il secondo file che ci serve cioe' il MANIFESTLINK per fare cio' estrarremo dai vari pacchetti solo il file /install/doinst.sh lo scorreremo alla ricerca dei comandi che creano i link e ci annoteremo sia il pacchetto da dove lo abbiamo estratto sia i nomi dei link che saranno creati e con questo output creeremo un file con la stessa struttura del MANIFEST, la stessa struttura solo per riutilizzare funzioni di ricerca gia' scritte. Parte seconda, ovvero come farlo in pratica...detto anche il file make_links_manifest.sh ... per evitare casini da formattazione scaricatevi il file che contiene gli script da: http://www.slack.z00.it/users/share/pkgdeps.tar.bz2 creiamo una cartella di lavoro # mkdir /usr/local/src/pkgdeps creiamoci dentro il file "make_links_manifest.sh" con il seguente contenuto #!/bin/bash #copyleft 2004 Pierluigi Previtali bashing for fun #make_links_manifest.sh MOUNT_CD="/mnt/cdrom/slackware/" FILES_LIST=$(find $MOUNT_CD* -name "*.tgz") MANIFEST_FILE="/tmp/MANIFESTLINK" TMP_FILE="/tmp/MyTeMpFiLe" rm -fr *386* *486* *noarch* $TMP_FILE $MANIFEST_FILE &> /dev/null for i in $FILES_LIST; do PACK="$i" PACK_FILE=$(basename "$(echo "$PACK" | sed 's/.tgz//g')") W_DIR="./" echo -e "\n\ ++========================================\n\ ||\n\ || Package: $PACK\n\ ||\n\ ++========================================" > $PACK_FILE tar -O -xzf "$PACK" install/doinst.sh 2> /dev/null \ | grep "; ln -sf" | cut -d " " -f 8 |grep .so >> $W_DIR/$PACK_FILE done for i in $(ls -1 $W_DIR | grep -v $(basename $0) | grep -v .sh); do EMPTY_TEST=$(sed -n "7p" $i) if [ -z "$EMPTY_TEST" ];then rm $W_DIR/$i fi done for i in $(ls -1 $W_DIR |grep -v $(basename $0) |grep -v .sh); do cat $i >> $TMP_FILE done sed 's/^[Aa-Zz]/lrwxr\-xr\-x root\/root 0 2004-01-01 00:00:00 &/g' $TMP_FILE > $MANIFEST_FILE rm -fr *386* *486* *586* *686* *noarch* $TMP_FILE &> /dev/null rendiamo eseguibile e sempre col cdrom montato lanciatelo... sul mio celeron 2600 impiega oltre i tre minuti... otterremo alla fine il file /tmp/MANIFESTLINK che contiene i nomi dei link creati dai pacchetti durante l'installazione... parte seconda finita senza lacrime...