【系統】WSL 下優雅地 Coding

cnguu發表於2019-03-16

WSL 簡介

WSL:Windows Subsystem for Linux,Windows 系統下的 Linux 子系統

WSL 安裝

開啟 控制皮膚 => 解除安裝程式 => 啟用或關閉 Windows 功能

【系統】WSL 下優雅地 coding

勾選 適用於 Linux 的 Windows 子系統,確定後等待安裝並重啟電腦

【系統】WSL 下優雅地 coding

重啟後,開啟 Microsoft Store ,找到 Ubuntu 18.04 LTS 並安裝

【系統】WSL 下優雅地 coding

Ubuntu 初始化

安裝成功後開啟

【系統】WSL 下優雅地 coding

等待幾十秒後,即可設定使用者名稱和密碼,建議設定 root 密碼

$ sudo passwd root

sudo 每次都需要輸入密碼,過於麻煩,去掉(任性.jpg)

$ sudo visudo

修改如下內容,Ctrl+o 後回車儲存,Ctrl+x 退出編輯即可

·
·
·
# %admin ALL=(ALL) ALL 這裡註釋掉,新增下面一條
%admin ALL=(ALL) NOPASSWD:ALL
·
·
·
# %sudo ALL=(ALL:ALL) ALL 這裡註釋掉,新增下面一條
%sudo ALL=(ALL:ALL) NOPASSWD:ALL
·
·
·

更換 apt 源和 pip 源(阿里雲)

apt 源

備份 apt 原檔案

$ sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak

檢視系統代號

$ lsb_release -c
Codename:       bionic

編輯源列表檔案

$ sudo vim /etc/apt/sources.list

輸入 dG 清空內容,複製儲存為以下內容

deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse

更新軟體列表

$ sudo apt-get update

更新軟體包

$ sudo apt-get upgrade

pip 源

建立 pip 配置檔案

$ mkdir ~/.pip && vim ~/.pip/pip.conf

複製儲存以下內容

[global]
trusted-host=mirrors.aliyun.com
index-url=http://mirrors.aliyun.com/pypi/simple/

安裝寶塔皮膚

懶人必備

$ wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh

安裝成功後,方便管理軟體(Nginx / PHP / Tomcat / Docker / MongoDB / Memcached / Redis / GitLab / ...)

【系統】WSL 下優雅地 coding

建立專案

新建網站

【系統】WSL 下優雅地 coding

修改配置(偽靜態 / 執行目錄 / 等等)

【系統】WSL 下優雅地 coding

修改 hosts

【系統】WSL 下優雅地 coding

訪問結果

【系統】WSL 下優雅地 coding

簡單的 Swoole 例子

在寶塔中快速安裝 swoole

【系統】WSL 下優雅地 coding

C:\workspace\work_man 目錄下新建檔案 server.php

【系統】WSL 下優雅地 coding

使用 putty 連線 ubuntu,開啟兩個連線

【系統】WSL 下優雅地 coding

連線 ①,執行 server.php,建立一個 TCP 伺服器

$ cd /mnt/c/workspace/work_man/
$ php server.php

【系統】WSL 下優雅地 coding

連線 ②,傳送訊息

$ telnet 127.0.0.1 9501

【系統】WSL 下優雅地 coding

開機自啟

ubuntu 中新增指令碼

$ sudo vim /etc/init.wsl

內容如下:

#! /bin/sh
service ssh $1
service mysqld $1
service bt $1

新增執行許可權

$ sudo chmod +x /etc/init.wsl

Windows 中新增指令碼

開啟 開機自啟目錄%AppData%\Microsoft\Windows\Start Menu\Programs\Startup

快捷開啟:Win+R,輸入 shell:startup 回車

新增指令碼檔案 wsl.vbs,內容如下:

Set ws = CreateObject("Wscript.Shell")
ws.run "ubuntu1804 run sudo /etc/init.wsl start", vbhide

允許該指令碼開機自啟,防毒軟體中新增信任

PHPstorm 配置

Terminal 配置

FileSettingsToolsTerminalShell path

C:\Windows\System32\wsl.exe
// 或者 Ubuntu 18.04

【系統】WSL 下優雅地 coding

Node 配置

FileSettingsLanguages & FrameworksTypescript

Ubuntu 18.04 /usr/local/bin/node

【系統】WSL 下優雅地 coding

【系統】WSL 下優雅地 coding

Yarn 的安裝

配置下載倉庫

$ curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
$ echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list

安裝

$ sudo apt-get update && sudo apt-get install yarn

更換映象源

$ yarn config set registry "https://registry.npm.taobao.org"

一點坑

Unix Socket

WSL 中的 Unix Socket 似乎有點問題,修改 Nginx 配置

·
·
·
fastcgi_buffering off;
·
·
·

莫名其妙的 502

原因未知,求大佬告知,臨時解決方法:寶塔中安裝 PHP 守護

【系統】WSL 下優雅地 coding

還是不行的話,只能重啟 php-fpm 服務了

許可權爭奪

  • 不要在編輯器中 刪除 檔案或資料夾!!!兩個系統會出現爭權行為,導致檔案或資料夾出現不可訪問問題(實際已經刪除,只是電腦還會顯示,重啟電腦可解決)
  • 正確刪除操作:在 我的電腦 裡刪除

更多

拼命地學習中,偶爾更新 ...


愛護牙齒

相關文章