---
# System prepended metadata

title: 使用者手冊

---

# 使用者手冊
底下介紹在 `Linux 初始安裝及設定手冊` 中安裝過的套件相關使用說明

建議搭配以下內容

[Linux 初始安裝及設定手冊 Part 1（說明及前置）](https://hackmd.io/@JoeYang/HkXUyrBAel)
[Linux 初始安裝及設定手冊 Part 2 ( 基礎安裝 )](https://hackmd.io/@JoeYang/S1klXnDRlx)
[Linux 初始安裝及設定手冊 Part 3  ( 一般開發相關 )](https://hackmd.io/@JoeYang/ByKPf2v0gg)
[Linux 初始安裝及設定手冊 Part 4 ( 容器相關開發環境 )](https://hackmd.io/@JoeYang/Sk2N6sP0el)
[Linux 初始安裝及設定手冊 part 5 ( 常用工具 )](https://hackmd.io/@JoeYang/ByyMCsPCll)

## pyenv
這是一個 python 的多版本管理器
預設會裝給每個使用者，新帳號建立完即可使用
用於安裝多個版本的 python 環境，方便管理各版本
尤其是很多時候機器學習等需求，對於 python 版本有要求
以下是使用方法

### 相關指令

#### 檢查安裝
使用以下指令檢查版本
```bash
pyenv --version
```

### 安裝指定 python 版本
使用以下指令
```bash
pyenv install 3.11
```

`3.11` 可以換成任何你想要安裝的版本
請注意，預設會安裝該版本最新的

例如說 `3.11` 可能有 `3.11.14`、`3.11.13`、`3.11.12` 等版本
若沒有指定就是安裝 `3.11.14`

等他跑完即可

### 列出已安裝的所有版本
使用以下指令

```bash
pyenv versions
```

會列出所有已安裝的版本，`*` 表示預設使用版本
例如
```bash
* 3.11.14
3.9.25
```

### 設定預設使用的版本
pyenv 設定預設的方式有三種等級，分別為 `shell`、`local`、`global` 這三種

`shell` 設定的是你當前的 shell session 中使用的 python 版本
`local` 設定的是你在當前的目錄中或其子目錄中要使用的 python 版本
`global` 設定的是對整個使用者帳號預設的 python 版本

當你在使用時，預設的優先度是
`shell > local > global`
也就是說你如果 global 設定 `3.11.14`，但是後來設定 `shell` 是 `3.9.25`，則在目前的 shell 中優先使用 `3.9.25`

指令如下

```bash
pyenv global 3.11.14
```

`3.11.14` 可以換成你想要設定的版本

### 建立虛擬環境

在使用 python 時很重要的就是使用虛擬環境，因為若是沒有使用，則你在安裝套件時很容易混在一起
尤其對於機器學習或是深度學習，對於套件依賴極其敏感時，就更要使用了
建立方法如下

```bash
pyenv virtualenv 3.11.14 testenv
```

`3.11.14` 可以換成你要使用的版本，若是沒有指定，則不用填寫，會依當前設定的預設版本去使用
`testenv` 是你的虛擬環境名稱，可自行命名

### 列出所有虛擬環境
使用以下指令可以列出所有已建立的虛擬環境

```bash
pyenv virtualenvs
```

輸出範例如下
```bash
2.7.10/envs/my-virtual-env-2.7.10 (created from /home/yyuu/.pyenv/versions/2.7.10)
3.4.3/envs/venv34 (created from /home/yyuu/.pyenv/versions/3.4.3)
my-virtual-env-2.7.10 (created from /home/yyuu/.pyenv/versions/2.7.10)
* venv34 (created from /home/yyuu/.pyenv/versions/3.4.3)
```

### 進入或是離開虛擬環境

使用以下指令進入虛擬環境

```bash
pyenv activate testenv
```

`testenv` 換成你要進入的虛擬環境的名稱

若要離開當前虛擬環境

```bash
pyenv deactivate
```

### 刪除虛擬環境
若要刪除指定名稱的虛擬環境
使用以下指令

```bash
pyenv virtualenv-delete testenv
```

`testenv` 可以換成你指定的名稱

pyenv 說明至此結束
其餘說明可至以下網址觀看

https://github.com/pyenv/pyenv


## powerlevel10k

此工具為終端機外觀工具
目的在於讓你的終端機變好看，對，就是變好看，沒了

預設情況是你建立使用者帳號後，首次進入終端機會要求你設定，若不想用可以按 `q` 離開

以下是設定過程
基本上照著指示就好
我有空再補




## SSH
### 使用密碼登入
使用 SSH 前，請確定你有安裝 SSH-Client，雖然現在大部分電腦（包括 Windows）都有預裝
步驟如下

1. 開啟 PowerShell 或 CMD

2. 輸入：

   ```bash
   ssh <使用者名稱>@<伺服器IP>
   ```

   範例如下：

   ```bash
   ssh testuser@192.168.1.10
   ```

3. 第一次連線會顯示伺服器指紋。
   與剛剛在 Linux 那邊查到的指紋比對，若正確，輸入 `yes`。

4. 系統會要求輸入密碼 → 登入成功即完成。

### 使用金鑰登入
請按照以下步驟設定


除了密碼登入 SSH 以外，我們也可以使用金鑰登入
金鑰登入比密碼更安全。流程為「Windows 產生金鑰 > 上傳公鑰到 Server > 登入」。

1. 在 Server 啟用金鑰登入功能
 
    此步驟請聯絡網管處理

2. 在 Windows 產生金鑰

    ```bash
    ssh-keygen -t ed25519 -C "my key"
    ```

    -C 為註解

    > 建議使用 `ed25519`（速度快、強度高）。
    > 預設儲存在 `C:\Users\<你的帳號>\.ssh\`。
    > 可選擇設定 passphrase（建議設定，增加安全性）。

    完成後會生成兩個檔案：

    ```text
    id_ed25519      私鑰（保存在本機）
    id_ed25519.pub  公鑰（要傳給伺服器）
    ```

3. 將公鑰上傳至 Server

    在 PowerShell 輸入以下指令
    將公鑰複製到指定使用者的家目錄

    ```bash
    cd C:\Users\<你的帳號>\.ssh
    scp id_ed25519.pub user@<server_ip>:~
    ```

4. 在 Server 佈署公鑰
此步驟請聯絡網管執行

5. 測試免密碼登入

    在 Windows：

    ```bash
    ssh user@<server_ip>
    ```

    若成功登入而不需輸入密碼（或只要求輸入 passphrase），代表金鑰設定成功。


## WSL + WSLG + waypipe
此套件是可以讓你使用 SSH 的同時，也可以得到圖形化介面來做使用
需要注意的是，這個僅有堪用的程度，請不要期待它有什麼性能
只能臨時應急用

1. 首先，請先確定相關功能有啟用，確認方法如下
    至 `開啟或關閉 Windwos 功能` 中，找到 `Windows 子系統 Linux 版` 與 `Virtual Machine Platform`，
    將這兩者開啟
2. 在 Windows 安裝 WSL
    至終端機中輸入以下指令
    
    ```bash
    wsl --install
    ```
    
    安裝應會自動完成
3. 確認安裝
    使用以下指令確認安裝完成及版本
    
    ```bash
    wsl --version

    # 預期結果
    WSL 版本： 2.3.24.0
    核心版本： 5.15.153.1-2
    WSLg 版本： 1.0.65
    MSRDC 版本： 1.2.5620
    Direct3D 版本： 1.611.1-81528511
    DXCore 版本： 10.0.26100.1-240331-1435.ge-release
    Windows 版本： 10.0.26100.7171
    ```

4. 確認可安裝的 Linux 發行版
    使用以下指令
    
    ```bash
    wsl --list --online

    # 預期結果
    以下是可安裝的有效發佈的清單。
    使用 'wsl.exe --install <Distro>' 安裝。
    NAME                            FRIENDLY NAME
    Ubuntu                          Ubuntu
    Debian                          Debian GNU/Linux
    kali-linux                      Kali Linux Rolling
    Ubuntu-20.04                    Ubuntu 20.04 LTS
    Ubuntu-22.04                    Ubuntu 22.04 LTS
    Ubuntu-24.04                    Ubuntu 24.04 LTS
    OracleLinux_7_9                 Oracle Linux 7.9
    OracleLinux_8_10                Oracle Linux 8.10
    OracleLinux_9_5                 Oracle Linux 9.5
    openSUSE-Leap-15.6              openSUSE Leap 15.6
    SUSE-Linux-Enterprise-15-SP6    SUSE Linux Enterprise 15 SP6
    openSUSE-Tumbleweed             openSUSE Tumbleweed
    ```

5. 安裝指定發行版
    使用以下指令安裝指定發行版
    
    ```bash
    wsl --install <Distro>
    ```

    `<Distro>` 替換為上面的 `NAME` 即可

6. 安裝後動作
    基本上就是要你設定使用者名稱及密碼
    照指示設定即可
    接著進行更新
    這裡我預設使用 Ubuntu
    因此
    
    ```bash
    sudo apt update
    sudo apt upgrade
    ```
    
    執行完後進入下一步

7. 安裝 waypipe

    ```bash
    sudo apt install waypipe
    ```

    之後讓他自己裝就好了

8. 使用 waypipe
    使用以下指令使用
    
    ```bash
    waypipe ssh -C user@xxx.xxx.xxx.xxx firefox
    ```

    `-C` 代表的是啟用壓縮，可選
    `user` 請換成你的使用者帳號，後面的換成你要連線的 IP
    `firefox` 為你要連線的應用程式，請注意，waypipe 預設是只能連應用程式的


## sunsgine+moonlight
暫無