Sono stato davvero bloccato su questo problema minore (sono sicuro) quindi qualsiasi aiuto sarebbe molto apprezzato. Ho creato un pacchetto di Ubuntu standard con dh_make. Lo scopo di questo pacchetto è creare un pacchetto che imposterà tutti i pacchetti relativi a ldap di cui un sistema ha bisogno, inclusa la sua configurazione. Uno dei passaggi che sto cercando di fare è copiare su un file /etc/ldap.conf mentre fai un backup del file esistente. Come faccio a fare questo? Ho provato a creare uno script postinst che assomiglia in sostanza a quanto segue, ma non sono chiaro su come il pacchetto memorizza i file e ricevo un errore che dice il file etc/ldap.conf mancante. Qual'è il miglior modo per farlo? Qui è il mio script postinst:Creazione pacchetto Debian - Come installare i file di configurazione?
#!/bin/bash -xv
install -v -b etc/ldap.conf /etc/ldap.conf > /tmp/tst 2>&1
Qui è la mia struttura dello scheletro:
[email protected]:~/navldapubuntu-0.1/debian# tree ├── changelog ├── compat ├── control ├── copyright ├── docs ├── etc └── ldap.conf ├── install ├── postinst ├── README.Debian ├── README.source ├── rules ├── source └── format ├── navldapubuntu └── etc ├── navldapubuntu.debhelper.log ├── navldapubuntu.dirs └── navldapubuntu.doc-base.EX
Ecco alcune informazioni aggiuntive del pacchetto che ho creato.
dpkg --contents tnoldapubuntu_0.1-1_all.deb (truncated output) ./usr/ ./usr/share/ ./usr/share/doc
./usr/share/doc/navldapubuntu/ ./usr/share/doc/navldapubuntu/copyright ./usr/share/doc/navldapubuntu/README.Debian ./usr/share/doc/navldapubuntu/changelog.Debian.gz ./etc/ldap.conf
backup in postinst? forse in preinst? controllare file esiste: 'if [-f /etc/ldap.conf] poi cp /etc/ldap.conf /etc/ldap.conf.dist fi', giusto? – mkjasinski
Il problema non è nella logica del cp. Il problema è che l'origine /etc/ldap.conf non esiste. Come posso includerlo nel pacchetto in modo che il mio script postinstall veda il file /etc/ldap.conf? Ottengo un errore nel mio script, ora che afferma qualcosa di simile: l'installazione: non può stat '/navldap-0.1/debian/etc/ldap.conf ': Nessun file o direttore – user2175757
stranamente, non hanno un file in'/ecc. e lanciando un errore che non ce l'hai in una directory diversa? lo script non può eseguire 'stat' su file nel pacchetto, da quale directory si esegue l'installazione? – mkjasinski