【start: 250715】
文章目錄
- ubuntu與深度學習
- 安裝cuda
- 查看顯卡信息(nvidia-smi)
- 升級驅動
- 下載cuda
- 安裝conda
- 安裝anaconda
- 默認指向自己的conda
- 初始化conda
- 確認 conda.sh 被加載
- 安裝cuda-toolkit
- 直接安裝cuda-toolkit(高級的)
- 安裝高于cuda等級的cuda-toolkit
- 無sudo權限安裝CUDA
- 驗證nvcc(nvcc --version)
- 遷移env到新conda
- 配置環境
- 創建conda env(conda環境)
- 創建.venv(標準的 Python 虛擬環境)
- 安裝加速源
- 安裝torch
- 下載torch(wget whl)
- 安裝torch(pip whl)
- 安裝torchvision和torchaudio
- 查看torch
- 打印torch
- ubuntu 18下載 pytorch 2.7
- 安裝其他庫
- 安裝cmake工具
- xformers
- 查看安裝的庫的位置
- 兼容分布式訓練
- PyTorch 分布式訓練加載權重
- Singularity
- ShardedTensor
- 存儲數據集
- 存儲位置
- 查看磁盤空間
- 修改權限
- ubuntu終端的基本操作
- 打開終端
- 復制粘貼
- 基本命令
- 退出終端
- 特殊功能
- ubuntu的用戶注冊
- 登錄
- 創建與刪除
- 進入與退出
- 賦予權限
- ubuntu的文件處理
- 解壓文件
- 打印文件目錄
- 打印一級目錄
- 打印所有目錄
- 打印目錄樹狀結構(在根目錄)
- 打印目錄樹結構(進入某一個文件夾后)
- 查看文件內容
- 查找文件或目錄
- ubuntu的文件傳輸
- ubuntu與todesk
- ubuntu與百度云
- ubuntu與遠程連接
- apt工具
- ssh協議
- OpenSSH
- 生成公私鑰
- vscode
- rdp協議
- todesk
ubuntu與深度學習
安裝cuda
查看顯卡信息(nvidia-smi)
(base) ubuntu@ubun:~$ lspci | grep -i vga
03:00.0 VGA compatible controller: ASPEED Technology, Inc. ASPEED Graphics Family (rev 52)
31:00.0 VGA compatible controller: NVIDIA Corporation AD102 [GeForce RTX 4090 D] (rev a1)
4b:00.0 VGA compatible controller: NVIDIA Corporation AD102 [GeForce RTX 4090 D] (rev a1)
b1:00.0 VGA compatible controller: NVIDIA Corporation AD102 [GeForce RTX 4090 D] (rev a1)
ca:00.0 VGA compatible controller: NVIDIA Corporation AD102 [GeForce RTX 4090 D] (rev a1)
ubuntu查看顯存的使用情況:
nvidia-smi
或者,實時監控:
watch -n 2 nvidia-smi
效果如下:
(base) xqlin@adc-SYS-4028GR-TR:/$ nvidia-smi
Fri Jul 18 11:42:06 2025
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 470.161.03 Driver Version: 470.161.03 CUDA Version: 11.4 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 NVIDIA GeForce ... On | 00000000:04:00.0 Off | N/A |
| 16% 27C P8 18W / 250W | 1MiB / 11019MiB | 0% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
| 1 NVIDIA GeForce ... On | 00000000:05:00.0 Off | N/A |
| 16% 28C P8 13W / 250W | 1MiB / 11019MiB | 0% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
| 2 NVIDIA GeForce ... On | 00000000:08:00.0 Off | N/A |
| 16% 29C P8 15W / 250W | 1MiB / 11019MiB | 0% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
| 3 NVIDIA GeForce ... On | 00000000:09:00.0 Off | N/A |
| 17% 28C P8 3W / 250W | 1MiB / 11019MiB | 0% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
| 4 NVIDIA GeForce ... On | 00000000:84:00.0 Off | N/A |
| 16% 29C P8 8W / 250W | 1MiB / 11019MiB | 0% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
| 5 NVIDIA GeForce ... On | 00000000:85:00.0 Off | N/A |
| 16% 27C P8 1W / 250W | 1MiB / 11019MiB | 0% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
| 6 NVIDIA GeForce ... On | 00000000:88:00.0 Off | N/A |
| 16% 27C P8 20W / 250W | 1MiB / 11019MiB | 0% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
| 7 NVIDIA GeForce ... On | 00000000:89:00.0 Off | N/A |
| 16% 28C P8 8W / 250W | 1MiB / 11019MiB | 0% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------++-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| No running processes found |
+-----------------------------------------------------------------------------+
和
(lxq_env) ubuntu@ubun:~/lxq$ nvidia-smi
Sat Jul 19 21:18:34 2025
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 550.144.03 Driver Version: 550.144.03 CUDA Version: 12.4 |
|-----------------------------------------+------------------------+----------------------+
| GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|=========================================+========================+======================|
| 0 NVIDIA GeForce RTX 4090 D Off | 00000000:31:00.0 Off | Off |
| 30% 25C P8 14W / 425W | 36MiB / 24564MiB | 0% Default |
| | | N/A |
+-----------------------------------------+------------------------+----------------------+
| 1 NVIDIA GeForce RTX 4090 D Off | 00000000:4B:00.0 Off | Off |
| 30% 24C P8 18W / 425W | 36MiB / 24564MiB | 0% Default |
| | | N/A |
+-----------------------------------------+------------------------+----------------------+
| 2 NVIDIA GeForce RTX 4090 D Off | 00000000:B1:00.0 Off | Off |
| 30% 25C P8 12W / 425W | 36MiB / 24564MiB | 0% Default |
| | | N/A |
+-----------------------------------------+------------------------+----------------------+
| 3 NVIDIA GeForce RTX 4090 D Off | 00000000:CA:00.0 Off | Off |
| 30% 25C P8 14W / 425W | 36MiB / 24564MiB | 0% Default |
| | | N/A |
+-----------------------------------------+------------------------+----------------------++-----------------------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=========================================================================================|
| 0 N/A N/A 4501 G /usr/lib/xorg/Xorg 4MiB |
| 0 N/A N/A 166331 G /usr/lib/xorg/Xorg 4MiB |
| 0 N/A N/A 276933 G /usr/lib/xorg/Xorg 4MiB |
| 0 N/A N/A 374940 G /usr/lib/xorg/Xorg 4MiB |
| 1 N/A N/A 4501 G /usr/lib/xorg/Xorg 4MiB |
| 1 N/A N/A 166331 G /usr/lib/xorg/Xorg 4MiB |
| 1 N/A N/A 276933 G /usr/lib/xorg/Xorg 4MiB |
| 1 N/A N/A 374940 G /usr/lib/xorg/Xorg 4MiB |
| 2 N/A N/A 4501 G /usr/lib/xorg/Xorg 4MiB |
| 2 N/A N/A 166331 G /usr/lib/xorg/Xorg 4MiB |
| 2 N/A N/A 276933 G /usr/lib/xorg/Xorg 4MiB |
| 2 N/A N/A 374940 G /usr/lib/xorg/Xorg 4MiB |
| 3 N/A N/A 4501 G /usr/lib/xorg/Xorg 4MiB |
| 3 N/A N/A 166331 G /usr/lib/xorg/Xorg 4MiB |
| 3 N/A N/A 276933 G /usr/lib/xorg/Xorg 4MiB |
| 3 N/A N/A 374940 G /usr/lib/xorg/Xorg 4MiB |
+-----------------------------------------------------------------------------------------+
升級驅動
NVIDIA-SMI 470.161.03 Driver Version: 470.161.03
驅動與 CUDA 版本的兼容性限制
驅動版本 470.161.03 的 CUDA 支持上限為 11.4(可通過 NVIDIA 官方文檔或 nvidia-smi 輸出確認)。
若強行安裝 CUDA 11.8,會因驅動不兼容導致以下問題:
nvcc --version
可能顯示 CUDA 11.8,但實際運行時(如nvidia-smi
或深度學習框架)會報錯。 可能出- 現類似 CUDA driver version is insufficient for CUDA runtime version 的錯誤。
升級目標版本:
推薦選擇 525.xx.xx 或 535.xx.xx(LTS 版本),穩定性更高。
避免選擇測試版驅動(如 545.xx.xx 的 RC 版本)
下載cuda
https://developer.nvidia.com/cuda-11-8-0-download-archive
安裝conda
安裝anaconda
# 下載 Miniconda 安裝腳本
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh# 運行安裝腳本
bash Miniconda3-latest-Linux-x86_64.sh
默認指向自己的conda
修改 .bashrc 文件
打開 ~/.bashrc 文件,確保 Conda 環境路徑指向 Miniconda 的安裝路徑:
/home/xqlin/.bashrc
# >>> conda initialize for local miniconda >>>
export PATH="$HOME/miniconda3/condabin:$PATH"
__conda_setup="$($HOME/miniconda3/bin/conda 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; theneval "$__conda_setup"
elseif [ -f "$HOME/miniconda3/etc/profile.d/conda.sh" ]; then. "$HOME/miniconda3/etc/profile.d/conda.sh"fi
fi
unset __conda_setup
# <<< end initialize >>>
檢查:
conda info --envs
(base) xqlin2@adc-SYS-4028GR-TR:~/studio/code/Cell/Virtual_Cell/mine$ conda info --envs# conda environments:
#
cell310 /home/xqlin2/.conda/envs/cell310
base * /home/xqlin2/miniconda3
初始化conda
在 Miniconda 安裝完后,需要初始化 Conda,使其自動配置 shell 環境。
conda init bash
這條命令會更新你的 .bashrc 文件,使 Conda 在每次打開終端時自動激活。
確認 conda.sh 被加載
source /home/lxq/miniconda3/etc/profile.d/conda.sh
安裝cuda-toolkit
直接安裝cuda-toolkit(高級的)
sudo apt install nvidia-cuda-toolkit
conda install cuda -c nvidia/label/cuda-11.8.0 -y
conda install cuda -c nvidia/label/cuda-12.8.0 -y
安裝高于cuda等級的cuda-toolkit
(medai310) xqlin@adc-SYS-4028GR-TR:~/studio$ conda install cuda -c nvidia/label/cuda-11.8.0 -y
...(medai310) xqlin@adc-SYS-4028GR-TR:~/studio$ nvidia-smi
Sat Jul 19 21:58:36 2025
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 470.161.03 Driver Version: 470.161.03 CUDA Version: 11.4 |
|-------------------------------+----------------------+----------------------+
驅動限制:由于驅動版本為 470.161.03,系統僅能識別到 CUDA 11.4 作為最高兼容版本,因此 nvidia-smi
顯示為 11.4。
Toolkit 安裝:Conda 安裝的 CUDA 11.8 Toolkit 可能已存在于環境中(可通過 nvcc --version
或 conda list
驗證),但受限于驅動,其高級功能(如新架構支持)無法生效。
無sudo權限安裝CUDA
不能sudo,可以安裝 cuda 11.8嗎?
【ref】linux 服務器無 sudo 權限非 root 用戶安裝特定版本 cuda——https://blog.csdn.net/qq_35831906/article/details/138415615
驗證nvcc(nvcc --version)
nvcc 是 NVIDIA CUDA Compiler(CUDA 編譯器)的簡稱。它是 CUDA Toolkit 中的一個核心工具,用于把 CUDA 源碼(.cu 文件)編譯成 GPU 可以執行的二進制代碼。
nvcc --version
(medai310) xqlin@adc-SYS-4028GR-TR:~/studio$ nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2022 NVIDIA Corporation
Built on Wed_Sep_21_10:33:58_PDT_2022
Cuda compilation tools, release 11.8, V11.8.89
Build cuda_11.8.r11.8/compiler.31833905_0
conda list | grep cuda
(ai310) xqlin@adc-SYS-4028GR-TR:~$ conda list | grep cuda
cuda 12.4.1 hb982923_0
cuda-cccl 12.4.127 h06a4308_2
cuda-cccl_linux-64 12.4.127 h06a4308_2
遷移env到新conda
把env復制粘貼到新的地方時,要做如此操作:
python -m ensurepip --upgrade
python -m pip install --upgrade pipconda activate env_namepip install ipykernelpython -m ipykernel install --user --name env_name --display-name "Python (env_name)"
配置環境
創建conda env(conda環境)
查看環境:
conda env list
創建環境:
conda create -n myenv python=3.8
conda activate myenv
創建.venv(標準的 Python 虛擬環境)
創建環境:
python3 -m venv .venv
# 或者指定版本
/usr/bin/python3.10 -m venv .venv
激活環境:
cd ~/studio/code/Cell/Virtual_Cell/state
source .venv/bin/activate
把.venv添加到vscode的jupyter中:
pip install ipykernel
python -m ipykernel install --user --name=venv --display-name "venv"
安裝加速源
pip添加鏡像源:
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
conda添加鏡像源:
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes
安裝torch
2.0.0+cu118
下載torch(wget whl)
常用的版本:cu118
torch-2.0.0+cu118-cp310-cp310-linux_x86_64.whl
torch-2.6.0+cu118-cp310-cp310-linux_x86_64.whl
torch-2.7.0+cu118-cp310-cp310-manylinux_2_28_x86_64.whl
在 bash 中下載 whl 文件(網址:https://download.pytorch.org/whl/torch/):
wget https://download.pytorch.org/whl/cu118/torch-2.0.0%2Bcu118-cp310-cp310-linux_x86_64.whl#sha256=4b690e2b77f21073500c65d8bb9ea9656b8cb4e969f357370bbc992a3b074764
wget https://download.pytorch.org/whl/cu118/torch-2.6.0%2Bcu118-cp310-cp310-linux_x86_64.whl#sha256=715d3b039a629881f263c40d1fb65edac6786da13bfba221b353ef2371c4da86
wget https://download.pytorch.org/whl/cu118/torch-2.7.0%2Bcu118-cp310-cp310-manylinux_2_28_x86_64.whl#sha256=8c25f2641ef57d55aeeb56f5d616186400119a400b0232281f963218ac1bc92b
然后 pip install
這個whl文件
安裝torch(pip whl)
或者,還可以直接用代碼安裝torch(下載 torch 的 whl 文件的官網:https://pytorch.org/get-started/previous-versions/):
pip install torch==2.6.0 --index-url https://download.pytorch.org/whl/cu118
安裝torchvision和torchaudio
安裝torchvision或torchaudio時,可以去掉torch,并且加上--no-deps
,防止重復下載
pip install torchvision==0.21.0 torchaudio==2.6.0 --no-deps --index-url https://download.pytorch.org/whl/cu118
查看torch
pip list | grep torch
(medai310) xqlin@adc-SYS-4028GR-TR:/disk4/lxq_data/whl$ pip list | grep torch
torch 2.0.0+cu118
torchaudio 2.0.1+cu118
torchvision 0.15.1+cu118
打印torch
import subprocess
# 檢查 nvcc 版本
try:nvcc_output = subprocess.check_output(["nvcc", "--version"], text=True)print("🛠? nvcc 信息:\n", nvcc_output)
except FileNotFoundError:print("? 未檢測到 nvcc(CUDA Toolkit 可能未安裝)")import torch
import torchvision
import torchaudioprint("🧠 PyTorch 版本:", torch.__version__)
print("🎨 Torchvision 版本:", torchvision.__version__)
print("🎵 Torchaudio 版本:", torchaudio.__version__)# 檢查 CUDA
if torch.cuda.is_available():print("? CUDA 可用: True")print(f"🎯 GPU 數量: {torch.cuda.device_count()}")for i in range(torch.cuda.device_count()):print(f" └─ GPU {i}: {torch.cuda.get_device_name(i)}")
else:print("? CUDA 可用: False")print("? 當前環境未檢測到 GPU,將使用 CPU")
🛠? nvcc 信息:
nvcc: NVIDIA ? Cuda compiler driver
Copyright ? 2005-2022 NVIDIA Corporation
Built on Wed_Sep_21_10:33:58_PDT_2022
Cuda compilation tools, release 11.8, V11.8.89
Build cuda_11.8.r11.8/compiler.31833905_0
🧠 PyTorch 版本: 2.6.0+cu118
🎨 Torchvision 版本: 0.21.0+cu118
🎵 Torchaudio 版本: 2.6.0+cu118
? CUDA 可用: True
🎯 GPU 數量: 8
└─ GPU 0: NVIDIA GeForce RTX 2080 Ti
└─ GPU 1: NVIDIA GeForce RTX 2080 Ti
└─ GPU 2: NVIDIA GeForce RTX 2080 Ti
└─ GPU 3: NVIDIA GeForce RTX 2080 Ti
└─ GPU 4: NVIDIA GeForce RTX 2080 Ti
└─ GPU 5: NVIDIA GeForce RTX 2080 Ti
└─ GPU 6: NVIDIA GeForce RTX 2080 Ti
└─ GPU 7: NVIDIA GeForce RTX 2080 Ti
ubuntu 18下載 pytorch 2.7
安裝其他庫
安裝cmake工具
這個錯誤提示 cmake: command not found
,說明系統缺少 cmake
工具。pyarrow
依賴 cmake
來構建它的 C++ 代碼,因此你需要先安裝 cmake
。
從源碼編譯安裝更高版本的 CMake
-
下載 CMake 3.25 或更高版本源碼
你可以從 CMake 的官網下載最新版本的源碼:- CMake 官方下載鏈接
-
解壓源碼并進入目錄
假設你下載的文件是cmake-3.25.0.tar.gz
,使用以下命令:tar -zxvf cmake-3.25.0.tar.gz cd cmake-3.25.0
-
編譯并安裝到用戶目錄
安裝到用戶目錄(如$HOME/cmake
),避免需要sudo
權限:./bootstrap --prefix=$HOME/cmake make make install
-
更新環境變量
安裝完成后,你需要確保新的cmake
路徑在PATH
中:export PATH=$HOME/cmake/bin:$PATH
-
驗證安裝
確保cmake
安裝成功且版本正確:cmake --version
然后再試著安裝 pyarrow
,這應該能解決版本問題。如果有任何問題,隨時告知我!
xformers
pip install -U --no-deps xformers --index-url https://download.pytorch.org/whl/cu118
查看安裝的庫的位置
可以通過 pip install -e .
或等效命令(如 uv tool install -e .
)把項目安裝為 editable 模式
import state; print(state.__file__)
(cell310) xqlin@adc-SYS-4028GR-TR:~/studio/code/Cell/Virtual_Cell/state$ python -c "import state; print(state.__file__)"
/home/xqlin/studio/code/Cell/Virtual_Cell/state/src/state/__init__.py
此外,為了在 PyPI 上避免包名沖突,同時保持用戶導入時模塊名簡潔清晰,開發者常常使用 安裝名 ≠ 導入名 (arc-state ≠ state) 的做法。這是 Python 社區廣泛采用的一種慣例。
兼容分布式訓練
PyTorch 分布式訓練加載權重
Singularity
你這邊是在一個 GPU服務器環境下運行,有多個 GPU,且不屬于 Slurm 或 HPC 集群,說明你是自己可以控制的服務器(或者至少管理員權限較高、不強制要求使用 Singularity)——
🔔 結論:你 ? 完全可以不使用 Singularity,直接用 Anaconda 虛擬環境 或者 pip 環境運行你的 DINOv2 微調和分類任務即可。
ShardedTensor
PyTorch DistributedTensor (DTensor) 是一種使用分布式張量原語進行原型設計的 API,可以更簡單的在 SPMD(單程序多設備)范例中創作分布式計算。 當使用 shard 和 replicate 策略來表達張量分布時,這些原語很簡單但功能強大。 PyTorch DTensor 支持 PyTorch Tensor Parallelism 以及其他高級并行性策略。 此外,它還提供了一種統一的方式來保存/加載 state_dict 以用于分布式模型狀態保存。支持多個分布式策略相結合,例如結合張量并行與參數分片,即 2D-Parallel(DP+TP)。關于這部分的內容 PyTorch 在 2021 年的 RFC 中 ShardedTensor 已經開始了設計,ShardedTensor 被初始化并以類似 SPMD 的方式使用。 基本上每個節點都有一個 ShardedTensor 實例,它保存本地分片以及整個 Tensor 的全局信息(例如:所有分片及其遠程設備)。
存儲數據集
存儲位置
一般存在disk盤中
(base) xqlin@adc-SYS-4028GR-TR:/$ ls
bin cdrom disk1 disk3 etc initrd.img lib lost+found mnt old_home proc run snap swapfile tmp var vmlinuz.old
boot dev disk2 disk4 home initrd.img.old lib64 media NAS opt root sbin srv sys usr vmlinuz
查看磁盤空間
df -h
du -sh /disk4/heyan_miccai_survival
修改權限
chmod
讀(r)、寫(w)、執行(x)
chmod:修改文件或目錄權限的命令(Change Mode)。
770:三位八進制數字,分別定義 所有者(Owner)、所屬組(Group) 和 其他用戶(Others) 的權限。
/disk4/lxq_data:目標目錄路徑。
(base) xqlin@adc-SYS-4028GR-TR:/$ ls -ld /disk4/lxq_data
drwxrwxr-x 4 xqlin xqlin 4096 7月 17 19:06 /disk4/lxq_data
(base) xqlin@adc-SYS-4028GR-TR:/$ chmod 770 /disk4/lxq_data
(base) xqlin@adc-SYS-4028GR-TR:/$ ls -ld /disk4/lxq_data
drwxrwx--- 4 xqlin xqlin 4096 7月 17 19:06 /disk4/lxq_data
ubuntu終端的基本操作
在Ubuntu終端中進行基本操作是Ubuntu系統使用的基礎。以下是一些基本的操作步驟,幫助你開始使用Ubuntu終端:
打開終端
通過圖形界面:你可以通過在Ubuntu桌面的搜索欄中輸入“Terminal”或“終端”,然后點擊打開。
快捷鍵:你也可以通過快捷鍵Ctrl + Alt + T快速打開終端。
復制粘貼
?圖形界面下的快捷鍵?:
?復制?:Ctrl + C
?粘貼?:Ctrl + V
適用于大多數圖形應用程序(如文本編輯器、瀏覽器等)。??
?終端環境下的快捷鍵?:
?復制?:Ctrl + Shift + C
?粘貼?:Ctrl + Shift + V
基本命令
查看當前目錄內容:輸入ls命令,按回車。這會列出當前目錄下的所有文件和文件夾。
改變目錄:使用cd命令后跟目錄的路徑來改變當前工作目錄。例如,cd Documents會將你帶到Documents文件夾。使用cd ~可以回到你的主目錄,而cd …可以讓你回到上一級目錄。
創建目錄:使用mkdir命令后跟目錄名來創建一個新目錄。例如,mkdir newfolder會創建一個名為newfolder的目錄。
創建文件:你可以使用touch命令后跟文件名來創建一個空文件。例如,touch newfile.txt會創建一個名為newfile.txt的文件。
刪除文件:使用rm命令后跟文件名來刪除文件。例如,rm newfile.txt會刪除名為newfile.txt的文件。注意,這會永久刪除文件,沒有回收站。
刪除目錄:使用rmdir命令后跟目錄名來刪除空目錄。如果要刪除非空目錄,可以使用rm -r 目錄名。例如,rm -r newfolder會刪除名為newfolder的目錄及其內容。
復制文件或目錄:使用cp命令,例如,cp source.txt destination.txt會將文件從源位置復制到目標位置。如果是復制整個目錄,可以使用cp -r 目錄名 目標目錄名。
移動或重命名文件/目錄:使用mv命令,例如,mv oldname.txt newname.txt會將文件重命名或移動到新位置。
退出終端
輸入exit或按Ctrl + D可以退出終端會話。
以上是一些Ubuntu終端的基本操作。隨著你對命令行的熟悉,你可以探索更多高級功能和工具,如管道(pipe)、文本處理工具(如grep, awk, sed)等。這些工具可以幫助你更高效地處理文本和文件。
特殊功能
- 終端自動補全(Tab 補全)
終端支持 Tab 鍵自動補全 命令、文件名、路徑等,提高輸入效率。
示例:
輸入 cd /usr/lo 后按 Tab,會自動補全為 cd /usr/local/。
輸入 apt inst 后按 Tab,會自動補全為 apt install。
ubuntu的用戶注冊
登錄
(base) PS C:\Users\lenovo> ssh xqlin@59.77.5.136 -p 8001
Enter passphrase for key ‘C:\Users\lenovo.ssh\id_rsa’:…
創建與刪除
Ubuntu創建新用戶
https://blog.csdn.net/winycg/article/details/134428846
(1)在Ubuntu中創建新用戶需要以管理員身份進行操作。因此,我們需要運行以下命令將當前用戶提升為管理員:
sudo su
(2)在管理員身份下,使用以下命令創建一個新用戶:
adduser username
其中,username代表你要創建的新用戶的用戶名,按照提示輸入新用戶的密碼即可。如果需要在新用戶創建過程中添加更多信息,如全名、電話號碼等,也可以按照提示進行輸入。
(3)為新用戶設置sudo權限:
創建用戶后,可以將其添加到 sudo 組,就可以將其轉為 sudo 用戶。要將用戶添加到 sudo 組,需要使用 -aG 組合選項。使用 -a 選項是為了確保向組中“追加”。
sudo usermod -aG sudo <username>
在上面的命令中:
usermod 更改用戶的屬性和權限;
-a 選項表示將用戶追加到給定組,但是不將其從現有組中刪除。如果沒有 -a 選項,該用戶將會被從其現有組中刪除;
-G 選項列明要添加用戶的組,在我們的例子中,它是 “sudo”。
(4)刪除用戶:
刪除用戶但是保留用戶文件:
sudo userdel <username>
刪除用戶及用戶所有文件(/home/username/路徑下的所有文件):
sudo userdel -r <username>
進入與退出
su - newuser
(我的用戶)
su - ubuntu
(主用戶)
賦予權限
在ubuntu賬戶中使用lxq賬戶
sudo chown ubuntu /home/lxq
返還權限給lxq賬戶
sudo chown lxq /home/lxq
ubuntu的文件處理
解壓文件
驗證 ZIP 內部結構(可選)
如果不確定 ZIP 文件內部結構,可以先查看:
unzip -l /disk4/lxq_data/dataset/Colorectal/CRC100K/NCT-CRC-HE-100K.zip | head -n 10
這會列出 ZIP 文件的前10個條目,幫助你判斷是否需要創建頂層目錄。
unzip /disk4/lxq_data/dataset/Colorectal/CRC100K/NCT-CRC-HE-100K.zip -d /disk4/lxq_data/dataset/Colorectal/CRC100K/
-d 指定解壓目標目錄(如果不指定,默認解壓到當前目錄)
unzip /disk4/lxq_data/dataset/Colorectal/CRC100K/NCT-CRC-HE-100K.zip
打印文件目錄
打印一級目錄
ls -ld /disk4/lxq_data/dataset/Colorectal/CRC100K/NCT-CRC-HE-100K/*/
打印所有目錄
find /home/xqlin/studio/pth/Colorectal -type f
find /disk4/lxq_data/dataset/Colorectal/CRC100K/NCT-CRC-HE-100K -type f
打印目錄樹狀結構(在根目錄)
find /disk4/lxq_data/dataset/WSI/TCGA/clinical/00b9eb65-04c6-4d62-9cf6-6b77d75ab79b | sed 's|[^/]*/|│ |g;s|│ \([^│]\)|├── \1|'
temp:
find "H:\千佛山CRC總" | sed 's|[^/]*/|│ |g;s|│ \([^│]\)|├── \1|'
打印目錄樹結構(進入某一個文件夾后)
cd /home/xqlin/studio/code/Cell/Virtual_Cell/state/src
find . -print | sed -e "s;[^/]*/;|----;g" -e "s;^\./;;" | sed '/^\s*$/d'
查看文件內容
查看文本文件內容:使用cat 文件名命令可以查看文本文件的內容。例如,cat example.txt。
查看大文件的開頭部分:使用head 文件名可以查看文件的開頭幾行(默認是前10行)。
查看大文件的末尾部分:使用tail 文件名可以查看文件的末尾幾行(默認是最后10行)。
查找文件或目錄
使用find命令:使用find 路徑 -name "文件名"可以搜索指定路徑下的文件或目錄。例如,find /home -name "example.txt"會在用戶的主目錄下搜索名為example.txt的文件。
ubuntu的文件傳輸
window如何快速向ubuntu傳文件
ubuntu與todesk
直接傳到內網很慢
ubuntu與百度云
先傳到公網,再直接下載到內網可能比較快
ubuntu命令行方式下載百度網盤文件 - 正經學社的文章 - 知乎——https://zhuanlan.zhihu.com/p/715462573
(medai310) xqlin@adc-SYS-4028GR-TR:/disk2/lxq/dataset/IHC$ bypy info
Please visit:
https://openapi.baidu.com/oauth/2.0/authorize?client_id......
And authorize this app
Paste the Authorization Code here within 10 minutes.
Press [Enter] when you are done
先把文件上傳到“我的應用數據/bypy”
bypy list
#查看目錄下列表
bypy downfile data_IHC
bypy downfile “dinov2_CKPT.zip” ./
bypy downfile “NCT-CRC-HE-100K.zip” ./
ubuntu與遠程連接
apt工具
apt 是 Ubuntu 及其衍生 Linux 發行版中的核心包管理工具,用于安裝、更新、卸載和管理軟件包,其全稱為 Advanced Packaging Tool(高級包管理工具)。以下是關于 apt 的詳細介紹:
一、apt 的核心功能
安裝軟件包
使用 sudo apt install <package_name> 安裝指定軟件包及其依賴項。
示例:安裝 Firefox 瀏覽器
bash
sudo apt install firefox
檢查占用鎖文件的進程
如果系統提示 /var/lib/dpkg/lock-frontend 被占用,直接查找鎖文件的使用情況:
bash
sudo lsof /var/lib/dpkg/lock-frontend 2>/dev/null
(base) ubuntu@ubun:~$ sudo lsof /var/lib/dpkg/lock-frontend 2> /dev/null
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
aptd 2843154 root 26u REG 259,3 0 90702343 /var/lib/dpkg/lock-frontend
aptd 2843154 root 32u REG 259,3 0 90702343 /var/lib/dpkg/lock-frontend
apt 4153478 root 4uW REG 259,3 0 90702343 /var/lib/dpkg/lock-frontend
sudo kill -9 2843154 4153478
總結
終止占用進程:
bash
sudo kill -9 2843154 4153478
刪除鎖文件:
bash
sudo rm /var/lib/dpkg/lock*
修復包管理器:
bash
sudo dpkg --configure -a
sudo apt --fix-broken install
重新嘗試 apt 命令:
bash
sudo apt update # 或其他你原本想執行的命令
執行后,你的 apt 命令應該可以正常運行! 🚀
ssh協議
OpenSSH
生成公私鑰
生成公私鑰:希望重新生成一對公私鑰并發送公鑰,以下是針對“怎么生成公私鑰”的常見方法說明(以Windows系統下使用OpenSSH為例,也可用于其他支持場景):
一、生成公私鑰步驟
打開命令提示符(CMD)或PowerShell
按下 Win + R,輸入 cmd 或 powershell,回車。
生成密鑰對
輸入以下命令,按提示操作:
bash
ssh-keygen -t rsa -b 4096 -C “your_email@example.com”
-t rsa:指定使用RSA算法(也可用 ed25519 等更現代的算法)。
-b 4096:密鑰長度(RSA推薦4096位)。
-C “注釋”:可選注釋(如郵箱),方便識別。
設置保存路徑和密碼(可選)
系統會提示輸入保存路徑,默認在 C:\Users\你的用戶名.ssh\id_rsa(私鑰)和 id_rsa.pub(公鑰)。
可設置密碼(Passphrase),增加安全性(直接回車則不設置)。
確認生成
生成完成后,會顯示密鑰指紋和隨機藝術圖。
二、獲取公鑰內容
查看公鑰文件
打開 id_rsa.pub 文件(用記事本或其他文本編輯器)。
或通過命令顯示內容:
bash
type ~/.ssh/id_rsa.pub
復制公鑰
全選內容并復制,發送給幸(如通過聊天工具粘貼)。
vscode
vscode連接ubuntu服務器(圖形化的)
Vscode連接VM Ubuntu ssh配置
https://zhuanlan.zhihu.com/p/703021988
注意,很多服務器只能兼容1.85以下的版本的vscode,如果版本過高,將無法聯通ssh!
Version: 1.85.2
Commit: 8b3775030ed1a69b13e4f4c628c612102e30a681
Date: 2024-01-18T06:40:10.514Z
Electron: 25.9.7
ElectronBuildId: 26354273
Chromium: 114.0.5735.289
Node.js: 18.15.0
V8: 11.4.183.29-electron.0
OS: Windows_NT x64 10.0.26100
rdp協議
todesk
直接連接