2019年1月22日 星期二

AWS Ubuntu 的 .pem 檔轉成 .ppk 檔

利用 PuTTYgen 工具
點擊 Load
找到 .pem 檔案
再點擊 Save private key
儲存為 .ppk 檔案


Windows 10 利用 WinSCP 傳輸檔案到 AWS Ubuntu

首先需要 .ppk 憑證檔

點擊 進階


點擊 SSH → 身份核對 → 私鑰檔案 → 開啟 .ppk 憑證檔

點擊 確定

輸入 主機名稱 與 使用者名稱、密碼
點擊 登入
輸入密碼



















點擊 同步 就能開始傳輸檔案。

Windows 10 利用 PuTTY 登入 AWS Ubuntu

首先需要 .ppk 憑證檔

點選 Connection → SSH → Auth → Browse → 開啟 .ppk 憑證檔


點選 Session 輸入 Host Name (or IP address)

































可以在 Save Sessions 取的名字,下次直接點選指定 Session 再 點選 Open 就能直接連線。


































輸入 Ubuntu 的帳號與密碼,就能登入 Ubuntu 了。


supervisor 無法啟動任務的問題解決方法

supervisor 啟動任務
輸入 supervisorctl start task

會出現錯誤:
error: , [Errno 13] Permission denied: file: /usr/lib/python2.7/socket.py line: 22

加上 sudo 權限就能運行
sudo supervisorctl start task

Windows 10 WSL 下 Ubuntu 下安裝 mysql

輸入密碼後 sudo apt-get update 一下

首先執行 mysql 安裝指令:
sudo apt-get install mysql-server

完成後要啟動 mysql 服務,不然會提示:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

使用 sudo service mysql start 啟動 mysql 服務

透過下列指令設定 mysql root 密碼:
mysql -u root -p

Ubuntu 常用命令

特別注意的是指令有分大小寫,一般都是小寫。
而指令後面帶 --help 是顯示指令的說明,例如:ls --help

sudo apt-get install 軟體名 安裝軟體指令
sudo apt-get remove 軟體名 移除軟體指令
sudo apt-get autoremove 軟體名 移除軟體指令,包含相依軟體
sudo apt-get clean && sudo apt-get autoclean 清理無用的包
sudo apt-get check 檢查是否有損壞的依賴
sudo apt-get update 更新源
sudo apt-get upgrade 更新已安裝的包
sudo apt-get dist-upgrade 昇級系統
sudo apt-get dselect-upgrade 使用 dselect 昇級
sudo apt-get clean 清理所有軟體緩存(即緩存在/var/cache/apt/archives目錄裡的deb包 )

dpkg -s 軟體名 檢查軟體是否安裝

把所有已安裝套件清單給匯出
dpkg --get-selections > installed_packages.txt

dpkg -l  > installed_packages.txt (詳細資料)

sudo su 切換到'root'

service 軟體名 start 讓軟體執行於後台
service 軟體名 status 查詢軟體是否執行於後台

find 路徑 -name 「字符串」 搜尋路徑所在範圍內滿足字符串匹配的檔案和目錄

ls 列出當前目錄檔案(不包括隱藏檔案)
ls -a 列出當前目錄檔案(包括隱藏檔案)
ls -l 列出當前目錄下檔案的詳細資訊

cd .. 回當前目錄的上一級目錄
cd - 回上一次所在的目錄
cd ~ 或 cd 回當前使用者的宿主目錄

mkdir 目錄名 建立一個目錄
rmdir 空目錄名 刪除一個空目錄

rm 檔案名 檔案名 刪除一個檔案或多個檔案
rm -rf 非空目錄名 刪除一個非空目錄下的一切

mv 路徑/檔案 /路徑/檔案 移動相對路徑下的檔案到絕對路徑下
mv 檔案名 路徑/目錄名/. 檔案複製到目錄內,最後要加上個 /.
mv 檔案名 新名稱 在當前目錄下改名

lsb_release -a 查看版本訊息

uname -a 查看內核版本
cat /etc/issue 查看ubuntu版本
lsusb 查看usb設備
sudo ethtool eth0 查看網卡狀態
cat /proc/cpuinfo 查看cpu資訊
lshw 查看當前硬體資訊
sudo fdisk -l 查看磁盤資訊
df -h 查看硬碟剩餘空間
free -m 查看當前的記憶體使用情況
ps -A 查看當前有哪些進程
kill 進程號(就是ps -A中的第一列的數字)或者 killall 進程名( 殺死一個進程)
kill -9 進程號 強制殺死一個進程

在 Ubuntu 上 Blazor 為安裝 .NET Core 2.1.503 (ASP.NET Core 2.1.7)

因為 Blazor 只支援到 ASP.NET Core 2.1.7
(PS.試過 AWS EC2 預設 ASP.NET Core 2.1.2 也能正常執行 2.1.302 版)
所以不抓最新版 2.1.504
而是抓 2.1.503 版
先執行 sudo su 換 root 權限(輸入 cd $HOME 是否在要安裝的目錄上,不是才需要換 root)
並且 sudo apt-get install 的安裝方式,隨著版本推進,會有很多錯誤發生。
所以採用抓取 .NET Core Binaries 2.1.503 版的檔案,還進行更新,網址如下:
https://dotnet.microsoft.com/download/thank-you/dotnet-sdk-2.1.503-linux-x64-binaries

需要其他版本可以在這邊下載適合的 .NET Core Binaries 檔案,網址如下:
https://dotnet.microsoft.com/download/dotnet-core/2.1

在 dotnet-sdk-2.1.503-linux-x64.tar.gz 目錄下執行下面的指令:

先執行 sudo su 換 root 權限
mkdir -p $HOME/dotnet && tar zxf dotnet-sdk-2.1.503-linux-x64.tar.gz -C $HOME/dotnet
export DOTNET_ROOT=$HOME/dotnet
export PATH=$PATH:$HOME/dotnet

執行 dotnet  --info 驗證是否安裝成功
關閉 Session 後
下次登入如果因為 export 沒有 DOTNET_ROOT
(目前有遇到 WSL 關閉後前面的 export 會消失)
而無法執行 dotnet

可以用 vim /etc/profile(先執行 sudo su 換 root 權限)

修改系統檔案都要用 root 權限
先執行 sudo su 換 root 權限
然後
按下 i (-- INSERT --)
在 profile 檔案末端加上

export DOTNET_ROOT=$HOME/dotnet
export PATH=$PATH:$HOME/dotnet

如果一樣無法執行 dotnet
可以用指令測試一下是否能直接執行 dotnet
通常是 /usr/share/dotnet/dotnet
如果可執行
就可以改成絕對路徑
export DOTNET_ROOT=/usr/share/dotnet
export PATH=$PATH:/usr/share/dotnet
重新登入後,試試看是否能正常執行 dotnet

輸入 :wq
離開 vim 編輯

輸入 . /etc/profile 重新載入  profile 檔案
就能在任何目錄上呼叫 dotnet 了

Visual Studio 2017/2019 推薦的擴充功能與更新

參考文章: 覺得 Google 的 Blogger 不太順手?透過 HTML 的 iframe 移花接木 HackMD