uutils/coreutils · error · uucore::error::Error
Reading cyclic directory
Error message
Reading cyclic directory
What it means
Error "Reading cyclic directory" thrown in uutils/coreutils.
Source
Thrown at src/uu/chcon/src/chcon.rs:593
// this file, tell fts_read to stat it "again".
if entry.level() == 0 && entry.number() == 0 {
entry.set_number(1);
let _ignored = fts.set(fts_sys::FTS_AGAIN);
return Ok(());
}
result = fts_err(translate!("chcon-op-accessing"));
}
fts_sys::FTS_ERR => result = fts_err(translate!("chcon-op-accessing")),
fts_sys::FTS_DNR => result = fts_err(translate!("chcon-op-reading-directory")),
fts_sys::FTS_DC
if cycle_warning_required(options.recursive_mode.fts_open_options(), &entry) =>
{
emit_cycle_warning(&file_full_name);
return Err(err(
translate!("chcon-op-reading-cyclic-directory"),
io::ErrorKind::InvalidData,
));
}
_ => {}
}
if entry.flags() == fts_sys::FTS_DP
&& result.is_ok()
&& root_dev_ino_check(root_dev_ino, file_dev_ino)
{
root_dev_ino_warn(&file_full_name);
result = Err(err(
translate!("chcon-op-modifying-root-path"),
io::ErrorKind::PermissionDenied,
));
}View on GitHub (pinned to 0b77ced485)
Solutions
- Remove the directory cycle (symlink loop or bind mount loop) before recursing.
- Use options that do not follow symbolic links, e.g. chcon without -L/-H dereferencing.
When it happens
Trigger: Occurs when chcon recursion detects a directory cycle, e.g. via bind mounts or symlinks.
Common situations: Recursing with -R through directory structures containing loops.
AI-assisted analysis of uutils/coreutils@0b77ced485 (2026-08-19).
Data as JSON: /api/errors/442d36e677262c4b.
Report an issue: GitHub.