PC

Come funziona Linux Bash Shell su Windows 10

Come funziona Linux Bash Shell su Windows 10

Con il rilascio dell'aggiornamento dell'anniversario per Windows 10, Microsoft ha annunciato il Sottosistema Windows per Linux (WSL): un modo per eseguire Bash reale e nativo su Windows 10, che supporta l'esecuzione di binari Linux nativi. Lo fa eseguendo un'immagine Ubuntu Linux in modalità utente su Windows.

Ciò significa che puoi eseguire strumenti della riga di comando di Linux come ls, grep, superiore e chmod. Dal momento che stai eseguendo Ubuntu autentico sotto, in esecuzione lsb-release -a ti darà il seguente output:

Puoi usare apt-get e amici per installare utilità come vim, idiota, schermo, tmux, o anche giocare a nethack:

Tieni presente, tuttavia, che questo sistema è in beta e non destinato ai carichi di lavoro del server. È solo uno strumento per sviluppatori (e appassionati) per testare le loro applicazioni incentrate su Linux su Windows senza modifiche. Anche questo non è uno strumento progettato per eseguire applicazioni o ambienti GUI Linux come Gnome o KDE, sebbene ciò sia possibile anche con alcuni hack. Dopo averlo chiarito, diamo un'occhiata a come funziona la shell di Linux in Windows 10.

Sottosistema Windows per Linux (WSL)

Secondo la documentazione ufficiale, "WSL è una raccolta di componenti che consente l'esecuzione su Windows dei file binari ELF64 nativi di Linux". Lo fa implementando un'interfaccia del kernel Linux virtualizzata sopra il kernel di Windows NT. Cioè, non utilizza alcun codice dal kernel Linux effettivo: ogni volta che un'applicazione effettua una chiamata di sistema specifica per Linux (syscall), WSL la traduce nell'equivalente syscall di Windows, che quindi fa tutto il lavoro pesante.

Differenze da macchine virtuali e Cygwin

Ora diamo un'occhiata a come Linux Bash Shell su Windows 10 è diverso rispetto a macchine virtuali e Cygwin.

Macchine virtuali

Potresti pensare: "Bene, perché usarlo? Perché non utilizzare semplicemente una VM Linux in Windows? "

Rispetto a una macchina virtuale, WSL utilizza meno risorse. Ti consente anche di lavorare con i tuoi file come faresti su Linux, dandoti accesso completo al filesystem Windows sottostante senza dover fare affidamento su cartelle condivise o condivisioni di rete.

Cygwin

Un altro metodo popolare per eseguire strumenti simili a Linux / Unix su Windows è Cygwin. La più grande differenza tra i due approcci è questa Cygwin non è un modo per eseguire binari Linux nativi Su Windows. Fornisce solo un set di strumenti GNU e Open Source che forniscono funzionalità simile a una distribuzione Linux su Windows.

D'altro canto, Gli strumenti WSL sono nativi di Linux Binari compilati ELF-64 in esecuzione su Windows. Ad esempio, l'esecuzione di un file apt-get install emacs Il comando in WSL scaricherà e installerà gli stessi file di un'installazione di Ubuntu 14.04, dai repository ufficiali di Ubuntu.

Utenti, autorizzazioni e file system in WSL

Gerarchia del file system

WSL viene installato sotto l'utente corrente % LocalAppData% \ lxss \ rootfs directory. Questo è noto come Ambiente WSL e funge da Linux "/"(root directory. Ad esempio, se il tuo nome utente su Windows è beebom, La directory principale di Linux si troverà in C: \ Users \ beebom \ AppData \ Local \ lxss \ rootfs. Ciò significa che ogni utente Windows può avere il proprio ambiente WSL e può apportare modifiche come apt-get install pacchetti software, senza influire sugli altri utenti Windows.

È possibile accedere al file system Windows sottostante in WSL. Tutte le unità sono montate sotto / mnt. Per esempio, C: \ è montato sotto / mnt / c, D: \ è montato sotto / mnt / d, eccetera.

Utenti e autorizzazioni

Quando installi per la prima volta WSL, ti verrà chiesto di creare un nuovo utente Linux predefinito. Questo utente non deve necessariamente avere lo stesso nome dell'utente corrente di Windows e in generale viene considerato come un'entità separata. Puoi persino creare più utenti Linux, controllati da un singolo utente Windows.

È possibile ottenere radice privilegi utilizzando il sudo comando. Tieni a mente quell'essere radice in WSL influisce solo sui diritti dell'utente all'interno dell'ambiente e del file system Linux: non hanno alcun impatto sui privilegi di Windows concessi. Ad esempio, una sessione WSL con privilegi di amministratore di Windows potrebbe cd / mnt / c / Users / Administrator mentre una sessione Bash senza privilegi di amministratore vedrebbe Autorizzazione negata. Digitando sudo cd / mnt / c / Users / Administrator non concederà l'accesso alla directory dell'amministratore poiché le autorizzazioni sono limitate da Windows.

Caratteristiche del file system specifiche per Linux

Linux è un file maiuscole e minuscole sistema. Ciò significa che photo.png e Photo.png vengono trattati come due file diversi. Mentre Windows non è il caso sensibile per impostazione predefinita, è ancora maiuscolo / minuscolo consapevole. Il che significa che mentre photo.png e Photo.png non vengono trattati come due file distinti, certamente lo è consapevole della differenza nel caso.

WSL gestisce la distinzione tra maiuscole e minuscole proprio come su Linux. È anche possibile creare due file il cui nome differisce solo in base al caso al di fuori dell'ambiente WSL. Tieni presente, tuttavia, che molte applicazioni Windows non sono in grado di gestire tali situazioni e potrebbero non essere in grado di aprire uno o entrambi i file.

Allo stesso modo, collegamenti simbolici sono supportati, a condizione che tu stia eseguendo un file system NTFS. Tuttavia, i collegamenti simbolici funzioneranno solo all'interno di WSL e non possono essere risolti da altre applicazioni Windows.

Linux supporta anche quasi tutti personaggi speciali all'interno dei nomi dei file, mentre Windows è più restrittivo. WSL, tuttavia, consente l'utilizzo di tali caratteri speciali, a condizione che siano limitati all'ambiente del sistema Linux.

VEDERE ANCHE: Come sincronizzare l'account OneDrive su un computer Linux

Pronto per eseguire la riga di comando di Linux su Windows?

Quindi, è così che Ubuntu Bash o Linux Bash Shell, noto anche come sottosistema Windows per Linux, funziona su Windows 10 (con l'aggiornamento Anniversary). Insieme al suo funzionamento, abbiamo anche imparato in che modo è diverso e migliore rispetto ai metodi tradizionali di esecuzione di comandi specifici di Linux su Windows. Quindi, se hai sempre desiderato utilizzare i comandi di Linux, inizia e se hai domande, commenti o suggerimenti, assicurati di farcelo sapere nella sezione dei commenti.

La ricondivisione di Google+ ora contiene il backlink al post originale
Un fatto meno notato ma molto importante sulla condivisione di Google Plus è che, in precedenza non forniva un backlink al post originale che era stat...
L'ultimo aggiornamento di SwiftKey per Android Beta (5.1) porta altre 13 lingue indiane
Ogni giorno che passa il significato dei telefoni cellulari nelle nostre vite aumenta. La tecnologia è sempre stata un'agenda che l'India vuole assicu...
Come creare moduli e sondaggi online utilizzando Moduli Google (Guida)
Moduli e sondaggi sono uno dei modi migliori per raccogliere dati e, grazie ai moduli online, ora possiamo raccogliere facilmente dati da centinaia e ...