journalctl -u micro
93 subscribers
2.17K photos
210 videos
287 files
1.44K links
Esperienze e consigli di uno sviluppatore tech−unenthusiast

creation — 2021-04-29
owner — @Microeinstein

networks
@sigma_hub Σ
@ageiroumena
Download Telegram
Ho installato su Docker qBittorrent con interfaccia web e volevo fargli scaricare i files sull'HDD.

Per ogni servizio docker utilizzo un UID inventato giusto per non eseguirli come root nel namespace e isolare maggiormente i files tra container. Inoltre i files dell'HDD hanno tutti UID+GID = 1000. Come posso quindi far consentire letture e scritture mantenendo gli UID diversi, anche con nuovi files?

Welcome to Access Control Lists & special bits
Se il filesystem lo supporta (ext4 e btrfs sì) tramite ACL è possibile definire permessi aggiuntivi sui singoli files che estendono i normali user-group-other. Per le cartelle esistono anche permessi default che andranno applicati sui nuovi files.

Non bisogna dimenticarsi di impostare il bit eseguibile alle cartelle, altrimenti non si potrà navigarle. Con il carattere X maiuscolo questo viene impostato solo per le cartelle.

setfacl -R -m 'u:231107:rwX,d:u:231107:rwX,g::rwX,d:g::rwX,m::rwx,d:m::rwx' \
/mnt/Carbon/Risorse

= ricorsivo, modifica, imposta rwX all'utente custom, imposta rwX al gruppo attuale, resetta maschera globale, uguale per i nuovi files

Incredibilmente questi permessi funzionano con i volumi Docker. Manca solo una cosa: il servizio che crea nuovi files imposterà il proprio UID+GID. Come mantenere almeno uno dei due senza specificarlo nel file di compose?

Tramite bit speciale setgid.
find /mnt/Carbon/Risorse -type d -exec chmod g+s '{}' \+

Così facendo ai nuovi files viene sempre forzato lo stesso GID della cartella padre.
👀2
Se su Docker il comando ls -al vi stampa
total 0
d????????? ? ? ? ? ?
d????????? ? ? ? ? ?
-????????? ? ? ? ? ?
d????????? ? ? ? ? ?
d????????? ? ? ? ? ?
-????????? ? ? ? ? ?

vi siete dimenticati il bit eseguibile
Schema permessi unix
-r-- leggi file
--w- scrivi file
---x esegui file
---s speciale

dr-- leggi nomi files (e solo quelli)
d-w- modifica lista files (crea, rinomina, elimina) (solo con x)
d--x consenti workdir e accedi ai files (leggi e scrivi), se da solo permette di interagire alla cieca
d--s speciale

Speciali
u+s setuid (senza x mostrato come S)
• su binari eseguiti (niente script) il nuovo processo avrà lo stesso uid dell'owner, usato da sudo per diventare root

g+s setgid (senza x mostrato come S)
• su binari eseguiti (niente script) il nuovo processo avrà lo stesso gid dell'owner
• su file non eseguibili, storicamente usato per locking
• su cartelle forza lo stesso gid a nuovi files della stessa, viene ereditato su nuove cartelle

o+t sticky (senza x mostrato come T)
• su files eseguibili, storicamente usato per mantenerli nella swap
• su cartelle, solo l'owner può rinominare ed eliminare i propri files
Forwarded from Hacker News
OnePlus update blocks downgrades and custom ROMs by blowing a fuse (🔥 Score: 160+ in 1 hour)

Link: https://readhacker.news/s/6Lg5i
Comments: https://readhacker.news/c/6Lg5i
journalctl -u micro
Faccio per aprire firefox con un nuovo profilo e di base ha già un refresh rate di 120Hz. Come?? Sto confrontando prefs.js dei due profili ma non trovo niente...
> copio il profilo per sperimentare
> cancello chrome/ (Firefox-UI-Fix) e user.js, niente
> cancello prop personalizzate, niente
> cancello prefs.js, niente
> cancello blocchi di files dello stesso tipo, niente
> cancello tutto lo storage, niente
> cancello tutte le estensioni, niente
> CANCELLO TUTTO, NIENTE
COSA DIAVOLO PERMETTE ALL'ALTRO PROFILO DI ANDARE A 120HZ????
È QUI DENTRO
privacy.resistFingerprinting = false
privacy.fingerprintingProtection.overrides = (unset)
browser.privateWindowSeparation.enabled = true

Servono almeno queste opzioni perché firefox funzioni a 120Hz senza alcun altro override

L'ultima opzione fa incazzare perché se disattivata, altro non fa che nascondere l'icona della navigazione anonima nelle finestre anonime. CHE NON USO PER LA NAVIGAZIONE NORMALE

E non è ancora finita