cat root.html funziona:
Perché il file ha permessi r-- per others (chmod 664), quindi l’utente my-name può leggerlo anche se non ne è proprietario.
firefox root.html NON funziona:
Anche se il file è leggibile, Firefox (come altri browser moderni) non si basa solo sui permessi del file, ma anche su:
Proprietà del file
Alcuni browser, per motivi di sicurezza, impediscono l’accesso in file:// a file locali che:
non sono di proprietà dell’utente che esegue il browser,
oppure si trovano in cartelle non sicure (come /root o simili).
Sicurezza "sandbox" dei browser
I browser isolano le pagine file:// per evitare che un file HTML malevolo possa leggere altri file sul disco dell’utente. Se un file locale è proprietà di un altro utente, anche se leggibile, può essere considerato potenzialmente non sicuro.
Come risolvere
Hai diverse opzioni:
1. Cambia proprietario del file
sudo chown my-name:my-name root.html
Ora Firefox potrà leggerlo.
2. Copia il file
Se non vuoi cambiare proprietà:
cp root.html /home/my-name/
3. Servilo via HTTP
Una soluzione molto robusta per testare file HTML localmente è usare un piccolo server web:
python3 -m http.server
Poi visita:
http://localhost:8000/root.html Conclusione
cat non fa alcun controllo extra oltre ai permessi UNIX.
firefox (e chrome) sì, soprattutto con file locali (file://).
Il problema che hai riscontrato non è un bug, ma una misura di sicurezza progettata per proteggere l’utente da accessi non autorizzati.