L'utilità db_load legge il formato di output utilizzato dalle utilità di dump o (facoltativamente) una rappresentazione di testo piatto creata utilizzando altri strumenti e la memorizza in un database Berkeley DB.
Sintassi:
db_load [-nTV] [-c name=value] [-f file] [-h home] [-t btree | hash | queue | recno] file
L'input per db_load deve essere nel formato di output specificato dall'utilità db_dump, dai programmi di utilità o come specificato per -T di seguito. Le opzioni sono le seguenti:
- -t – L'hash è crittografato utilizzando il codice hash.
- -f – Specificare un file di testo contenente il nome utente e la password. Questo formato di file deve mostrare:righe dispari del nome utente, righe pari della password.
- -f – Legge dal file di input specificato anziché dallo standard input.
- -c – Specificare le opzioni di configurazione ignorando qualsiasi valore che potrebbero avere in base all'input.
- -h – Specificare una directory home per l'ambiente del database.
- -n – Non sovrascrivere le chiavi esistenti nel database durante il caricamento in un database già esistente.
- -V – Scrivere il numero di versione nello standard output ed uscire.
Esempi di comando db_load
1. Crea un nuovo file users.txt e inserisci nome utente e password:
# db_load -T -t hash -f /users.txt /users.db
2. Specificare il tipo di database come btree e specificare la directory home dell'ambiente di database:
# db_load -T -t btree -h /root - f /users.txt /users.db
3. Il database è recno e inserisci il nome utente e la password in vsftpd_login.db:
# db_load -T -t recno -f /etc/vsftpd/logins.txt /etc/vsftd/vsftpd_login.db
4. L'utilità db_load può essere utilizzata per caricare file di testo nei database. Ad esempio, il comando seguente carica il file UNIX /etc/passwd standard in un database, con il nome di accesso come elemento chiave e l'intera password come elemento dati:
$ awk -F: '{print $1; print $0}' < /etc/passwd | sed 's/\\/\\\\/g' | db_load -T -t hash passwd.db