WSL 下優(yōu)雅地 Coding

# WSL 簡(jiǎn)介

wsl:windows subsystem for linuxwindows 系統(tǒng)下的 linux 子系統(tǒng)

# WSL 安裝

打開(kāi) 控制面板 => 卸載程序 => 啟用或關(guān)閉 Windows 功能

WSL 下優(yōu)雅地 Coding

勾選 適用于 Linux 的 Windows 子系統(tǒng),確定后等待安裝并重啟電腦

WSL 下優(yōu)雅地 Coding

重啟后,打開(kāi) microsoft Store ,找到 ubuntu 18.04 LTS 并安裝

WSL 下優(yōu)雅地 Coding

# Ubuntu 初始化

安裝成功后打開(kāi)

WSL 下優(yōu)雅地 Coding

等待幾十秒后,即可設(shè)置用戶(hù)名和密碼,建議設(shè)置 root 密碼

代碼語(yǔ)言:JavaScript代碼運(yùn)行次數(shù):0運(yùn)行復(fù)制

$ sudo passwd root

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

代碼語(yǔ)言:javascript代碼運(yùn)行次數(shù):0運(yùn)行復(fù)制

$ sudo visudo

修改如下內(nèi)容,Ctrl+o 后回車(chē)保存,Ctrl+x 退出編輯即可

代碼語(yǔ)言:javascript代碼運(yùn)行次數(shù):0運(yùn)行復(fù)制

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

# 默認(rèn)使用 root 賬號(hào)登入代碼語(yǔ)言:javascript代碼運(yùn)行次數(shù):0運(yùn)行復(fù)制

ubuntu1804.exe config --default-user root

# 使用密鑰登入

應(yīng)該存在的 3 個(gè)文件

authorized_keysid_rsa.pubid_rsa

WSL 下優(yōu)雅地 Coding

編輯 sshd_config 配置

代碼語(yǔ)言:javascript代碼運(yùn)行次數(shù):0運(yùn)行復(fù)制

$ sudo vim /etc/ssh/sshd_config

內(nèi)容如下:

代碼語(yǔ)言:javascript代碼運(yùn)行次數(shù):0運(yùn)行復(fù)制

···# SSH 端口Port 8022·PubkeyAuthentication yes·AuthorizedKeysFile .ssh/authorized_keys·# 禁止密碼登入PasswordAuthentication no·ChallengeResponseAuthentication no···

# 更換 apt 源和 pip 源(阿里云)# apt 源

備份 apt 原文件

代碼語(yǔ)言:javascript代碼運(yùn)行次數(shù):0運(yùn)行復(fù)制

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

查看系統(tǒng)代號(hào)

代碼語(yǔ)言:javascript代碼運(yùn)行次數(shù):0運(yùn)行復(fù)制

$ lsb_release -cCodename:       bionic

編輯源列表文件

代碼語(yǔ)言:javascript代碼運(yùn)行次數(shù):0運(yùn)行復(fù)制

$ sudo vim /etc/apt/sources.list

輸入 dG 清空內(nèi)容,復(fù)制保存為以下內(nèi)容

代碼語(yǔ)言:javascript代碼運(yùn)行次數(shù):0運(yùn)行復(fù)制

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

更新軟件列表

代碼語(yǔ)言:javascript代碼運(yùn)行次數(shù):0運(yùn)行復(fù)制

$ sudo apt-get update

更新軟件包

代碼語(yǔ)言:javascript代碼運(yùn)行次數(shù):0運(yùn)行復(fù)制

$ sudo apt-get upgrade

# pip 源

創(chuàng)建 pip 配置文件

代碼語(yǔ)言:javascript代碼運(yùn)行次數(shù):0運(yùn)行復(fù)制

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

復(fù)制保存以下內(nèi)容

代碼語(yǔ)言:javascript代碼運(yùn)行次數(shù):0運(yùn)行復(fù)制

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

# 安裝寶塔面板

懶人必備

代碼語(yǔ)言:javascript代碼運(yùn)行次數(shù):0運(yùn)行復(fù)制

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

1

安裝成功后,方便管理軟件(nginx / php / tomcat / docker / mongodb / memcached / redis / gitLab / …)

WSL 下優(yōu)雅地 Coding

# 創(chuàng)建項(xiàng)目

新建網(wǎng)站

WSL 下優(yōu)雅地 Coding

修改配置(偽靜態(tài) / 運(yùn)行目錄 / 等等)

WSL 下優(yōu)雅地 Coding

修改 hosts

WSL 下優(yōu)雅地 Coding

訪問(wèn)結(jié)果

WSL 下優(yōu)雅地 Coding

# 簡(jiǎn)單的 swoole 例子

在寶塔中快速安裝 swoole

WSL 下優(yōu)雅地 Coding

在 C:workspacework_man 目錄下新建文件 server.php

WSL 下優(yōu)雅地 Coding

使用 putty 連接 ubuntu,打開(kāi)兩個(gè)連接

WSL 下優(yōu)雅地 Coding

連接 ①,執(zhí)行 server.php,創(chuàng)建一個(gè) TCP 服務(wù)器

代碼語(yǔ)言:javascript代碼運(yùn)行次數(shù):0運(yùn)行復(fù)制

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

12

WSL 下優(yōu)雅地 Coding

連接 ②,發(fā)送消息

代碼語(yǔ)言:javascript代碼運(yùn)行次數(shù):0運(yùn)行復(fù)制

$ telnet 127.0.0.1 9501

1

WSL 下優(yōu)雅地 Coding

# 開(kāi)機(jī)自啟# ubuntu 中新增腳本代碼語(yǔ)言:javascript代碼運(yùn)行次數(shù):0運(yùn)行復(fù)制

$ sudo vim /etc/init.wsl

內(nèi)容如下:

代碼語(yǔ)言:javascript代碼運(yùn)行次數(shù):0運(yùn)行復(fù)制

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

添加執(zhí)行權(quán)限

代碼語(yǔ)言:javascript代碼運(yùn)行次數(shù):0運(yùn)行復(fù)制

$ sudo chmod +x /etc/init.wsl

# Windows 中新增腳本

打開(kāi) 開(kāi)機(jī)自啟目錄 :%AppData%MicrosoftWindowsStart MenuProgramsStartup

新增腳本文件 wsl.vbs,內(nèi)容如下:

代碼語(yǔ)言:javascript代碼運(yùn)行次數(shù):0運(yùn)行復(fù)制

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

# phpstorm 配置# Terminal 配置

File→Settings→Tools→Terminal→Shell path

代碼語(yǔ)言:javascript代碼運(yùn)行次數(shù):0運(yùn)行復(fù)制

C:WindowsSystem32wsl.exe// 或者 Ubuntu 18.04
WSL 下優(yōu)雅地 Coding

# Node 配置

File→Settings→Languages & Frameworks→typescript

代碼語(yǔ)言:javascript代碼運(yùn)行次數(shù):0運(yùn)行復(fù)制

Ubuntu 18.04 /usr/local/bin/node
WSL 下優(yōu)雅地 Coding
WSL 下優(yōu)雅地 Coding

# yarn 的安裝

配置下載倉(cāng)庫(kù)

代碼語(yǔ)言:javascript代碼運(yùn)行次數(shù):0運(yùn)行復(fù)制

$ 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

安裝(更新至最新版本)

代碼語(yǔ)言:javascript代碼運(yùn)行次數(shù):0運(yùn)行復(fù)制

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

更換鏡像源

代碼語(yǔ)言:javascript代碼運(yùn)行次數(shù):0運(yùn)行復(fù)制

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

# 已踩的坑# 死活連不上的 SSH

重裝 openssh-server

代碼語(yǔ)言:javascript代碼運(yùn)行次數(shù):0運(yùn)行復(fù)制

$ sudo apt-get purge openssh-server$ sudo apt-get install openssh-server

# unix Socket

WSL 中的 Unix Socket 似乎有點(diǎn)問(wèn)題,修改 Nginx 配置

代碼語(yǔ)言:javascript代碼運(yùn)行次數(shù):0運(yùn)行復(fù)制

···fastcgi_buffering off;···

# 莫名其妙的 502

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

WSL 下優(yōu)雅地 Coding

還是不行的話(huà),只能重啟 php-fpm 服務(wù)了

# 權(quán)限爭(zhēng)奪不要在編輯器中 刪除 文件或文件夾!!!兩個(gè)系統(tǒng)會(huì)出現(xiàn)爭(zhēng)權(quán)行為,導(dǎo)致文件或文件夾出現(xiàn)不可訪問(wèn)問(wèn)題(實(shí)際已經(jīng)刪除,只是電腦還會(huì)顯示,重啟電腦可解決)正確刪除操作:在 我的電腦 里刪除

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點(diǎn)贊9 分享