L'utilitaire db_load lit soit le format de sortie utilisé par les utilitaires de vidage, soit (éventuellement) une représentation en texte plat créée à l'aide d'autres outils, et le stocke dans une base de données Berkeley DB.
Syntaxe :
db_load [-nTV] [-c name=value] [-f file] [-h home] [-t btree | hash | queue | recno] file
L'entrée de db_load doit être au format de sortie spécifié par l'utilitaire db_dump, les utilitaires ou comme spécifié pour le -T ci-dessous. Les options sont les suivantes :
- -t – Le hachage est crypté à l'aide d'un code de hachage.
- -f – Spécifiez un fichier texte contenant le nom d'utilisateur et le mot de passe. Ce format de fichier doit afficher :les lignes impaires du nom d'utilisateur, les lignes paires du mot de passe.
- -f - Lire à partir du fichier d'entrée spécifié au lieu de l'entrée standard.
- -c – Spécifiez les options de configuration en ignorant toute valeur qu'elles peuvent avoir en fonction de l'entrée.
- -h – Spécifiez un répertoire personnel pour l'environnement de la base de données.
- -n – N'écrasez pas les clés existantes dans la base de données lors du chargement dans une base de données déjà existante.
- -V – Écrivez le numéro de version dans la sortie standard et quittez.
Exemples de commande db_load
1. Créez un nouveau fichier users.txt et mettez-y le nom d'utilisateur et le mot de passe :
# db_load -T -t hash -f /users.txt /users.db
2. Spécifiez le type de base de données en tant que btree et spécifiez le répertoire personnel de l'environnement de base de données :
# db_load -T -t btree -h /root - f /users.txt /users.db
3. La base de données est recno et mettez le nom d'utilisateur et le mot de passe dans vsftpd_login.db :
# db_load -T -t recno -f /etc/vsftpd/logins.txt /etc/vsftd/vsftpd_login.db
4. L'utilitaire db_load peut être utilisé pour charger des fichiers texte dans des bases de données. Par exemple, la commande suivante charge le fichier standard UNIX /etc/passwd dans une base de données, avec le nom de connexion comme élément clé et l'intégralité de l'entrée du mot de passe comme élément de données :
$ awk -F: '{print $1; print $0}' < /etc/passwd | sed 's/\\/\\\\/g' | db_load -T -t hash passwd.db