diff --git a/03-DESIGN/01-to-be/41-the-shell-and-the-accounts-environment.md b/03-DESIGN/01-to-be/41-the-shell-and-the-accounts-environment.md index 5a2556ad..c71ec4d8 100644 --- a/03-DESIGN/01-to-be/41-the-shell-and-the-accounts-environment.md +++ b/03-DESIGN/01-to-be/41-the-shell-and-the-accounts-environment.md @@ -383,9 +383,10 @@ project folders, downloads, logs, scratch. - **A node seat, `node-files`, on every node**, held by a module of its own, `mesh-files`, beside `mesh-reads` in the catalogue; the controller holds the seat's definition beside the other node seats. It has a verb for each file action: list, - stat, read, search, write, copy, move, delete, make a folder, change mode, change owner, and the trash's list and - restore. Each says what it replaces (ADR 0245): `ls`, `stat`, `cat`, `grep`, `cp`, `mv`, `rm`, `mkdir`, `chmod`, - `chown`, and `ssh cp` for a copy between nodes. + stat, readlink, read, search, write, copy, move, delete, make a folder, change mode, change owner, account and group + lookup, and the trash's list and restore. Each says what it replaces (ADR 0245): `ls`, `stat`, `readlink`, `cat`, + `grep`, `cp`, `mv`, `rm`, `mkdir`, `chmod`, `chown`, `getent passwd`, `getent group`, `id`, and `ssh cp` for a + copy between nodes. - **It may touch every file.** It declares no account of its own: the tool runner starts it as the node's operator account, which has sudo without a password, and it uses `sudo -n` only where that account's own rights do not reach. It keeps each file's owner and modes as well as it can: a copy or a move keeps them, a new file