Un utilitaire offrant des opérations de type système de fichiers sur les disques ClickHouse. Il peut fonctionner en mode interactif ou non interactif.
Options globales du programme
--config-file, -C — chemin vers la config ClickHouse ; valeur par défaut : /etc/clickhouse-server/config.xml.
--save-logs — consigner la progression des commandes invoquées dans /var/log/clickhouse-server/clickhouse-disks.log.
--log-level — type d’événements à consigner ; valeur par défaut : none.
--disk — disque à utiliser pour les commandes mkdir, move, read, write, remove. Valeur par défaut : default.
--query, -q — requête unique pouvant être exécutée sans lancer le mode interactif
--help, -h — afficher toutes les options et commandes avec leur description
Tous les disques disponibles dans la configuration sont initialisés de manière différée. Cela signifie que l’objet correspondant à un disque n’est initialisé que lorsque ce disque est utilisé dans une commande. Cela permet de rendre l’utilitaire plus robuste et d’éviter de solliciter des disques décrits dans la configuration mais non utilisés par l’utilisateur, qui pourraient échouer lors de l’initialisation. Cependant, un disque doit être initialisé au démarrage de clickhouse-disks. Ce disque est spécifié à l’aide du paramètre --disk en ligne de commande (valeur par défaut : default).
Après le lancement, deux disques non spécifiés dans la configuration sont disponibles pour l’initialisation.
-
Disque
local : ce disque est conçu pour reproduire le système de fichiers local depuis lequel l’utilitaire clickhouse-disks a été lancé. Son chemin initial est le répertoire depuis lequel clickhouse-disks a été démarré, et il est monté à la racine du système de fichiers.
-
Disque
default : ce disque est monté sur le système de fichiers local dans le répertoire spécifié par le paramètre clickhouse/path de la configuration (la valeur par défaut est /var/lib/clickhouse). Son chemin initial est défini sur /.
Pour chaque disque ajouté, l’utilitaire stocke le répertoire courant (comme dans un système de fichiers classique). L’utilisateur peut modifier le répertoire courant et basculer d’un disque à l’autre.
L’état est indiqué dans une invite “disk_name:path_name”
Dans ce fichier de documentation, tous les arguments positionnels obligatoires sont notés <parameter>, et les arguments nommés sont notés [--parameter value]. Tous les paramètres positionnels peuvent également être indiqués sous forme de paramètres nommés avec le nom correspondant.
cd (change-dir, change_dir) [--disk disk] <path>
Changer de répertoire pour le chemin path sur le disque disk (la valeur par défaut est le disque courant). Aucun changement de disque n’est effectué.
copy (cp) [--disk-from disk_1] [--disk-to disk_2] <path-from> <path-to>.
Copier récursivement les données de path-from sur le disque disk_1 (la valeur par défaut est le disque courant (paramètre disk en mode non interactif))
vers path-to sur le disque disk_2 (la valeur par défaut est le disque courant (paramètre disk en mode non interactif)).
current_disk_with_path (current, current_disk, current_path)
Afficher l’état actuel au format :
Disk: "current_disk" Path: "current path on current disk"
du [--human-readable] [<path>]
Afficher la taille totale en octets du fichier ou du répertoire situé à path sur le disque courant. Pour un répertoire, la taille de tous les fichiers qu’il contient est additionnée récursivement. Si path n’est pas spécifié, le répertoire courant est utilisé. Avec --human-readable (-h), la taille est affichée dans un format lisible par l’humain (par exemple 1.23 GiB).
help [<command>]
Afficher le message d’aide pour la commande command. Si command n’est pas spécifiée, afficher des informations sur toutes les commandes.
move (mv) <path-from> <path-to>.
Déplacer un fichier ou un répertoire de path-from vers path-to sur le disque courant.
remove (rm, delete) <path>.
Supprimer path récursivement sur le disque courant.
link (ln) <path-from> <path-to>.
Créer un lien physique de path-from vers path-to sur le disque courant.
list (ls) [--recursive] <path>
Lister les fichiers dans path sur le disque courant. Non récursif par défaut.
list-disks (list_disks, ls-disks, ls_disks).
Lister les noms des disques.
mkdir [--recursive] <path> sur le disque courant.
Créer un répertoire. Non récursif par défaut.
read (r) <path-from> [--path-to path]
Lire un fichier depuis path-from vers path (stdout si non fourni).
read-bitmap <path-from> [--values]
Inspecter un fichier sidecar delete-bitmap (.rbm) situé à path-from. Affiche le magic et la version, la validité du CRC, la cardinalité (nombre de lignes supprimées) et la plage de lignes. Avec --values, affiche également tous les set bits (les offsets des lignes supprimées) dans l’ordre croissant.
switch-disk [--path path] <disk>
Basculer vers le disque disk au chemin path (si path n’est pas spécifié, la valeur par défaut est le chemin précédent sur le disque disk).
write (w) [--path-from path] <path-to>.
Écrire un fichier depuis path (stdin si path n’est pas fourni, l’entrée doit se terminer par Ctrl+D) vers path-to.
wc <path> [--bytes] [--lines] [--words]
Compter les octets, les lignes et les mots dans le fichier situé à path sur le disque courant (comme la commande Unix wc). Sans option, les trois décomptes sont affichés dans l’ordre suivant : lignes, mots, puis octets. Utilisez --bytes (-c), --lines (-l), --words (-w) pour sélectionner des décomptes spécifiques.
sed <expression> <path>
Appliquer l’expression sed au fichier situé à path sur le disque courant, directement dans le fichier. Nécessite que sed soit installé sur l’hôte. Une seule expression sed sans options est prise en charge (par exemple 's/foo/bar/g', '/foo/d'), pas plusieurs expressions (-e ... -e ...) ni des options combinées à une adresse (par exemple -n avec 4,10p).
read-checksums <path>
Lire un fichier checksums.txt d’une data part MergeTree sur le disque courant et l’afficher sur stdout sous la forme d’un tableau lisible par l’humain, séparé par des tabulations, avec les colonnes name, file_size, file_hash, uncompressed_size et uncompressed_hash. Les deux dernières colonnes ne sont présentes que pour les fichiers compressés.
Dernière modification le 23 juillet 2026