Why `sudo echo "..." > file` Doesn’t Work — and How to Fix It
Tried this command: echo "/export *(rw,async,no_root_squash,no_subtree_check)" > /etc/exports But the file didn’t get updated. Core Issue: Redirection (>) Happens Before sudo When executing sudo echo "line" > /etc/file Only the echo runs with sudo. So this fails silently (or leaves the file empty). Correct Approach: Use sudo tee echo "/export *(rw,async,no_root_squash,no_subtree_check)" | sudo tee /etc/exports > /dev/null This works because: echo runs normally Output is piped (|) to sudo tee tee runs with root privileges and writes the file IMPORTANT: Append Instead of Overwrite?...