I've read to never run fsck when the file system is mounted. What about running fsck -N to only identify but not repair the file system when mounted? Is that dangerous? Is fsck -N known to overload a system and slow it down?
fsck -N only prints the list of filesystems that would be checked.
fsck is a front-end to filesystem-specific programs such as
fsck.btrfs, … The option
fsck not to invoke those programs but to print the command line that it would use instead.
fsck itself doesn't actually read those filesystems, so it doesn't matter whether the filesystems are mounted or not.
If you meant
fsck -n, then the filesystem-specific programs are called and passed the
-n option, which for most of them means “look but don't touch”. If the filesystem is mounted,
fsck will usually find spurious errors, because a mounted filesystem tends to be in an inconsistent state as write operations are happening. It won't lock up your system, but it won't report anything useful either.