GNU/Linux >> Belajar Linux >  >> Linux

Pengembangan Web dan Teknik Tingkat Lanjut dengan Linux di Windows (WSL)

Saya telah memposting beberapa kali di Subsistem Windows untuk Linux yang memungkinkan Anda menjalankan Linux di Windows 10 tanpa VM. Lihat YouTube saya tentang Mengedit kode dan file di Subsistem Windows untuk Linux di Windows 10. Hanya ada satu aturan. Anda dapat mengacaukan file Windows dari Linux tetapi Anda tidak dapat mengacaukan file Linux dari Windows. Jika tidak, gila dan nikmatilah. Berikut beberapa posting saya sebelumnya yang harus Anda periksa:

  • Tahun Linux di Desktop (Windows) - Tips dan Trik WSL
  • Menyiapkan Lingkungan Pengembangan yang Mengkilap dalam Linux di Windows 10
  • Menginstal Fish Shell di Ubuntu pada Windows 10
  • Menulis dan men-debug aplikasi Linux C++ dari Visual Studio menggunakan "Subsistem Windows untuk Linux"
  • Ubuntu sekarang ada di Windows Store:Pembaruan untuk Linux di Windows 10 dan Tips Penting

WSL cukup fantastis meskipun akses disknya lebih lambat dari Linux asli, saya menemukan diri saya menggunakannya setiap hari. Jika Anda ingin mengatur Linux di mesin Windows 10 Anda, hidupkan saja, lalu buka Windows Store dan cari "Linux."

Anda dapat mengaktifkan Linux di Windows 10 dengan mengetik "Fitur Windows" dan mencentang "Subsistem Windows untuk Linux". Kemudian dapatkan Linux dari Windows Store.

Jika Anda lebih suka menggunakan PowerShell dan melakukannya dalam satu baris, lakukan saja ini dari prompt Admin PowerShell:

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

Lalu dapatkan salah satu (atau lebih!) dari ini dari Store:

  • Ubuntu
  • OpenSUSE
  • SLES
  • Kali Linux
  • GNU/Linux Debian

Saat Anda berada di shell Windows seperti PowerShell atau CMD, Anda mungkin ingin menjalankan Linux dan/atau melompat dengan nyaman di antara shell. Anda dapat melakukannya dengan beberapa cara. Cara terbaik dan direkomendasikan adalah menjalankan "wsl.exe" karena itu akan memulai distro default Anda. Anda juga bisa mengetikkan nama distro. Jadi saya bisa mengetik "ubuntu" dan langsung masuk ke sana.

Anda dapat mengetik "bash" tetapi itu tidak disarankan jika Anda telah mengganti shell. Jika Anda telah menyiapkan zsh atau fish dan mengetik bash, itu akan tetap mencoba menjalankan bash.

Di sini saya telah mengetik wslconfig dan Anda dapat melihat bahwa saya telah menginstal Ubuntu dan Debian, dengan Ubuntu sebagai default ketika saya mengetik "wsl."

C:\Users\scott>wslconfig /list
Windows Subsystem for Linux Distributions:
Ubuntu-18.04 (Default)
Debian

Sekarang saya tahu cara menjalankan wsl dari mana saja, saya bahkan dapat menyalurkan ke dalam dan keluar Linux dari luar. Misalnya di sini saya di cmd.exe tetapi saya memanggil perintah di Linux, yang keluar, lalu masuk kembali, dll. Anda dapat mencampur dan mencocokkan sesuka Anda!

C:\dev>type hello.sh
echo Hello
C:\dev>wsl cat /mnt/c/dev/hello.sh | wsl fromdos | wsl /bin/sh
Hello

Ini berarti bahkan ketika saya menggunakan CMD atau PowerShell, saya dapat menggunakan perintah Linux yang nyaman atau familiar bagi saya. Sebagai contoh, di sini saya mem-pipe file log Pembaruan Windows ke perintah sha1sum perintah Linux. Perhatikan penggunaan - untuk menerima input standar - meskipun input tersebut dari Windows!

C:\Users\scott\Desktop>type WindowsUpdate.log | wsl sha1sum -
3b48adce8f6c9cb816e8845d824dacc0440ca1b8 -

Manis. Ada sejumlah teknik lanjutan yang bagus jika Anda ingin membuat instalasi WSL Anda lebih cerdas DAN dikonfigurasi secara otomatis. Anda dapat membuat file di /etc/wsl.conf untuk memengaruhi DNS, metadata, dan pemasangan mengemudi Anda.

Saat Anda berada di shell WSL, drive Windows Anda (drive utama Anda) berada di /mnt/c. Jadi inilah desktop Windows saya dilihat dari WSL:

Saya sebagian besar dev saya bekerja di /mnt/d/github misalnya. Dengan begitu saya dapat menggunakan Kode VS dari Windows tetapi menjalankan Node/Ruby/Go/Whatever dari WSL.

Saya menyimpan file saya di drive Windows saya, mengeditnya dalam Kode VS, tetapi menjalankan berbagai hal di WSL. Sekali lagi, jangan pernah menggunakan utilitas Windows untuk menjangkau dan/atau mengedit file pada subsistem WSL/Linux. Selain itu, selalu waspada dengan situasi CR/LF Anda, dan berhati-hatilah jika Anda akan menjalankan git di Windows dan WSL.

Berikut Kode VS di bagian atas, WSL/Ubuntu menjalankan Node di bagian bawah, dan aplikasi node lokal berjalan di Edge pada Windows di kanan bawah. Kami berbagi sistem file dan ruang port jaringan:

Anda bahkan dapat berbagi variabel lingkungan antara WSL dan Windows dengan variabel lingkungan khusus yang disebut WSLENV. Ini cukup canggih tetapi sangat kuat. Baca ini dengan seksama. Anda membuat variabel lingkungan yang merupakan daftar nama variabel lain yang Anda ingin terjemahkan antar lingkungan .

Itu berarti Anda dapat melakukan sesuatu seperti ini. Saya di WSL dan saya memiliki variabel lingkungan yang menunjuk ke lokasi di sistem file. Saya membutuhkannya untuk benar di kedua dunia.

scott@IRONHEART:/mnt/d$ export MYLINUXPATH=/mnt/d/github/expresstest
scott@IRONHEART:/mnt/d$ export WSLENV=MYLINUXPATH/p
scott@IRONHEART:/mnt/d$ cmd.exe
D:\>echo %MYLINUXPATH%
D:\github\expresstest

Baca itu dengan cermat. Ini luar biasa dan sangat dapat dikonfigurasi.

Ada banyak pengguna WSL dan banyak yang telah mengumpulkan daftar sumber daya yang hebat seperti Awesome-WSL oleh Hayden.

Penting juga untuk menunjukkan bahwa WSL baru saja menjadi salah satu konsol yang dapat Anda pilih. Ada PowerShell, CMD.exe, dan setengah lusin Linux. Anda bahkan dapat membuat Distro Linux kustom Anda sendiri untuk perusahaan Anda jika Anda mau. Dan ada seluruh dunia Konsol pihak ke-3 yang duduk di atas/mengganti conhost.exe sehingga Anda dapat memiliki konsol dengan tab, font keren, yang berbasis teknologi web, apa pun! Anda bahkan dapat memilih WSL/bash sebagai shell default Anda di Visual Studio Code jika Anda mau dengan Ctrl+~.

Semoga ini membantu Anda memulai dengan Linux di Windows. Apa yang saya lewatkan? Suarakan di komentar.

Sponsor :Pratinjau JetBrains Rider terbaru dengan Assembly Explorer, Submodul Git, injeksi bahasa SQL, profiler kinerja terintegrasi, dan dukungan Unity yang lebih canggih.


Linux
  1. Cara Mengakses Sistem File Linux di Windows 10 dan WSL 2

  2. HDD Format Lanjutan, penutup USB, dan kompatibilitas Windows / Linux

  3. Enkripsi hard drive eksternal dengan akses baca+tulis di Windows dan Linux

  1. Instal Linux Mint dengan Windows 8 | Dual Boot Windows 8 dan Linux Mint 12

  2. Interoperabilitas Windows dan Linux:Sekilas tentang Samba

  3. Cara menangkap Ctrl+C di Windows dan Linux dengan Qt

  1. Cara dual-boot Linux dan Windows

  2. Memantau host Linux dan Windows dengan Glances

  3. Cara mereset kata sandi Windows dengan Linux