GNU/Linux >> Linux Esercitazione >  >> Linux

Un ragazzo di Windows in un mondo Linux:utenti e autorizzazioni di file

Se gestisci Windows da un po' di tempo, probabilmente hai esperienza con la gestione dell'account utente, il file system NTFS e l'impostazione delle autorizzazioni. Se è così, preparati per un mondo diverso con i permessi dei file Linux! In Linux, il file system è un animale diverso che devi imparare per essere un amministratore Linux esperto.

Questa è la parte II della nostra serie in quattro parti sull'apprendimento di Linux dal punto di vista dell'amministratore di Windows! Assicurati di leggere la Parte I se non l'hai già fatto.

Lavorare con il file system

Passiamo prima al modo in cui Linux archivia e gestisce i file tramite il file system.

Nota:tutti gli esempi utilizzeranno OpenSUSE Linux.

Niente più lettere di unità

A differenza di Windows, le unità rimovibili e altri dispositivi non ottiene automaticamente una lettera di unità e si apre al riavvio. In Windows, ogni unità viene montata come una lettera di unità:C:\ , D:\ , ecc. Come funzionano le lettere di unità in Linux? Non ce ne sono!

In Linux esiste una cartella chiamata root cartella. Questa cartella si trova nella radice del file system o semplicemente / . La barra in avanti è la prima barra prima che provenga ogni altro file nel sistema. Questa barra in avanti è gentile di come la base C:\ , anche se solo se le altre lettere di unità solo esisteva come sottocartella di C:\ .

La cartella principale è dove si trovano i file di sistema principali. Tutto il resto, compresi gli altri dispositivi, sono una sottocartella di questa cartella centrale.

Linux offusca il confine tra cartelle e filesystem. La directory Linux /home è la radice di tutti i "profili" degli utenti simili a C:\Users cartella in Windows. In questo caso, /home è una directory. Tuttavia, le "directory" in Linux non devono essere effettivamente directory. Possono anche essere partizioni di archiviazione o persino un disco rigido separato. Questo concetto è analogo ai punti di montaggio di Windows.

Puoi saperne di più sulle cartelle radice in questo articolo.

Utenti e cartelle Inizio

Se stai usando OpenSUSE, potresti notare una Home cartella sul desktop come mostrato di seguito. Questa cartella è la versione Linux di C:\users\ cartella o “profilo”. La cartella "utenti" di Linux si trova in /home sul disco di installazione per impostazione predefinita.

Nell'esempio seguente, l'utente è chiamato homelab con un "profilo" che si trova in /home/homelab.

In Linux (e Windows), la cartella home (o il profilo utente in Windows) ha una notazione abbreviata di una tilde ( ~). Se vedi qualcosa come "~/Documents/blah.txt , in realtà si riferisce al tuo /home//Documents/blah.txt file.

La maiuscola è tutto in Linux

Tutto in Linux fa distinzione tra maiuscole e minuscole. Questo concetto è l'esatto opposto di Windows in cui quasi nulla fa distinzione tra maiuscole e minuscole.

Ad esempio, se hai una directory chiamata /home/homelab, una directory completamente diversa può essere chiamata /home/Homelab. Questo concetto si estende anche ai comandi. Esecuzione di cd /home/homelab è diverso da CD /home/homelab (che dovrebbe fallire).

In quanto persona Windows, questo concetto farà ad un certo punto ti inciampa. Stai molto attento alla tua capitalizzazione! Di seguito puoi vedere un esempio di due cartelle separate. L'unica differenza tra i due è la maiuscola:in un ambiente Windows, questo non è possibile.

Account utente

Come Windows, Linux ha il concetto di account utente ma si comportano in modo leggermente diverso. Per prima cosa inizia pensando agli account utente Linux in termini di account utente Windows familiari.

Windows ha alcuni account utente integrati come Amministratore , l'account SYSTEM nascosto, Ospite , ecc. Windows ha anche vari gruppi di sicurezza integrati come Amministratori , Ospiti , ecc.

È possibile visualizzare tutti gli utenti e i gruppi di Windows tramite la MMC Utenti e gruppi locali eseguendo lusrmgr.msc Scatto MMC.

SID di Windows

Per identificare in modo univoco utenti e gruppi, Windows fa riferimento a utenti e gruppi tramite qualcosa chiamato SID. In Windows, puoi trovare il SID di ciascun utente e gruppo eseguendo un paio di comandi PowerShell di seguito.

Get-LocalUser | select name, sid
Get-LocalGroup | select name,sid

Ogni SID di gruppo di Windows è lo stesso su tutti i computer Windows. L'utente integrato SID s per Windows sono unici. Quel SID amministratore che vedi nello screenshot sopra dovrebbe essere diverso su ogni computer Windows. Qualsiasi utente o gruppo futuro creato in Windows sarà univoco. Avviso sotto il test gruppo. Se vuoi creare un test gruppo sul tuo computer Windows, il SID sarebbe diverso.

ID utente Linux

D'altra parte, Linux gestisce utenti e gruppi in modo simile solo che questa volta Linux non utilizza SID ma ID utente (UID) e ID gruppo (GID). Inoltre, a differenza di Windows, Utenti e gruppi sono unici per il computer ma non per tutti computer. Ciò significa che il tuo UID sul Computer A potrebbe essere esattamente lo stesso UID sul Computer B, anche se non è lo stesso utente.

Sia gli UID che i GID seguono una semplice convenzione numerica; ogni UID e GUID inizia da 0 e aumenta di uno che va da 1 a 999 per gli account di sistema interni e 1000+ per gli account utente personalizzati.

L'utente root integrato sempre ha un UID di 0 e un GID di 0. Inoltre, come l'account SYSTEM nascosto di Windows, questo account root è generalmente (a seconda della distribuzione Linux) impedito l'accesso.

L'utente root integrato è simile agli account integrati di SISTEMA e amministratore di Windows, un po' raggruppati in uno. Anche se stai lavorando come amministratore in Windows, ci sono ancora alcune protezioni integrate per impedirti di distruggere completamente Windows.

L'utente root, invece, è un'autorità assoluta. Se accedi di proposito all'utente root (puoi farlo dalla riga di comando usando il comando sudo su ) e prova a eliminare l'intero sistema operativo, root lo farà felicemente fino alla morte del sistema.

Supponiamo che tu abbia creato un utente chiamato homelab . L'UID per homelab potrebbe quindi essere referenziato da 1000 o da homelab . L'utente diventerà automaticamente un membro del gruppo interno utenti a cui puoi fare riferimento con l'ID gruppo di 100. Puoi trovare un elenco di queste mappature eseguendo il getent passwd comando come mostrato di seguito:

Puoi anche trovare le stesse informazioni di cui sopra per i gruppi con getent group comando.

Autorizzazioni file Linux

In un mondo Windows, i permessi del filesystem non sono divertenti. L'impostazione e la gestione delle autorizzazioni in NTFS a volte può trasformarsi in un incubo con ACE, ACL, ereditarietà, propagazione, ecc. Fortunatamente, in Linux i permessi del filesystem sono molto più semplici.

In Linux, hai tre tipi di diritti che puoi assegnare a un file:lettura, scrittura ed esecuzione con tre categorie di accesso:proprietario, gruppo, altri.

  • proprietario è l'utente che possiede il file/la cartella. Ogni file o cartella ha un proprietario designato.
  • gruppo è il gruppo che possiede il file/la cartella. Questo non deve essere lo stesso gruppo a cui appartiene il proprietario. Ogni file o cartella può appartenere a un solo gruppo.
  • altri è... beh... altri. Sono le persone che non fanno parte del gruppo proprietario o non sono il proprietario designato.

Puoi consentire o negare ogni opzione per ogni categoria. Ad esempio:puoi fornire opzioni di lettura, scrittura, esecuzione per il proprietario e opzioni di lettura/esecuzione per il gruppo e altri. Puoi vederlo nello screenshot qui sotto. Ciò significa che chiunque oltre l'utente proprietario della cartella non può modificarla.

Proprio come Windows Explorer, in Ubuntu puoi vedere queste informazioni procedendo come segue:

  1. Apri la tua cartella Inizio sul desktop.
  2. Vai al file/cartella in questione.
  3. Fai clic con il pulsante destro del mouse sul file/cartella e fai clic su Proprietà .
  4. Fai clic su Autorizzazioni tab.
  5. Fai clic su Autorizzazioni avanzate .

Una volta che sei nelle Autorizzazioni avanzate box, puoi vedere graficamente tutti i permessi assegnati a quel file o cartella.

Di seguito sono elencate le Autorizzazioni avanzate la tabella rappresenta.

Proprietà del file

Come Windows, ogni file e cartella ha un proprietario. In Windows, puoi assumere la proprietà di un file nella GUI o tramite takeown comando. In Linux, prendi la proprietà eseguendo chown : sulla riga di comando.

Come Windows, in genere è necessaria l'autorizzazione amministrativa per modificare la proprietà dei file utilizzando sudo. sudo è l'equivalente Linux del controllo dell'account utente (UAC) di Windows. Invece di aprire una finestra della riga di comando amministrativa, prefazione dei comandi con sudo per eseguirla come amministratore.

Creiamo una cartella che sia solo di proprietà di root per dimostrare alcuni di questi concetti.

  1. Apri la tua cartella Inizio e vai a Documenti
  2. Apri un prompt dei comandi fai clic con il pulsante destro del mouse —> Azioni —> Apri terminale qui ed esegui quanto segue:
sudo mkdir owned-by-root
sudo chmod 700 owned-by-root

Questa cartella ha solo autorizzazioni di lettura/scrittura/esecuzione per il proprietario. Poiché hai creato la cartella con diritti di amministratore, quel proprietario è attualmente root.

Hai anche modificato le autorizzazioni in modo solo il proprietario ha accesso. Il gruppo proprietario e altri utenti non possono accedere a questa cartella. In effetti, noterai che la cartella ha un grande blocco che indica che non hai accesso.

Di seguito puoi vedere come acquisire la proprietà di questa cartella.

  1. Apri un altro terminale nella stessa cartella (o usa quello che già avevi)
  2. Esegui sudo chown homelab:users ./owned-by-root

Ora che ne hai la proprietà, puoi anche modificare i permessi dei file all'interno della GUI di Explorer utilizzando la finestra delle proprietà.

Tu (di solito) vuoi solo cambiare le proprietà, non i permessi dei file. Linux è abbastanza bravo a sapere quali autorizzazioni dovrebbero avere le cose per impostazione predefinita. Puoi davvero rovinare le cose con "chmoding" senza conoscerne le implicazioni.

Notazione numerica per autorizzazioni file

Se ne hai fatto qualsiasi Risoluzione dei problemi di Linux, potresti aver visto persone online spiegare i permessi dei file usando uno schema numerico. Puoi vederlo evidenziato nello screenshot qui sotto:

Linux usa una notazione abbreviata per questo sistema di accesso usando numeri, come 0600 . Il primo numero è per alcune proprietà speciali che puoi aggiungere, quali persone generalmente ignorare. In effetti, la maggior parte delle persone usa solo tre cifre per la notazione e ignora la quarta iniziale.

Per ulteriori informazioni sulla notazione numerica per i permessi dei file, consulta questo articolo.

Concludi

Questo è tutto per la parte II della nostra serie di post sul blog A Windows Guy in a Linux World! Assicurati di mantenere lo slancio con la Parte III!


Linux
  1. Linux – Solo per l'esecuzione di autorizzazioni file?

  2. Suggerimenti e trucchi per Linux .htaccess

  3. Concetti di autorizzazione dei file Linux

  4. Tabella delle autorizzazioni per tipi di utenti di file/directory e file system

  5. copiare il file da Windows a Linux

Permessi e proprietà dei file Linux spiegati con esempi

Comprendere i permessi dei file Linux

Un ragazzo Windows in un mondo Linux:VS Code e SSH remoto

Un ragazzo Windows in un mondo Linux:configurazione del comando SSH in Linux

Un ragazzo Windows in un mondo Linux:YaST e il desktop

Come convertire un file .pem in un file .ppk su Windows e Linux