Linux (Ubuntu)
Các Lệnh Cơ Bản
Cập nhật danh sách gói phần mềm: sudo apt update
Nâng cấp gói phần mềm: sudo apt upgrade
Xem nhật ký hệ thống: journalctl -xe
Kiểm tra sử dụng phân vùng đĩa: df -h hoặc chỉ phân vùng hiện tại df -h .
Xem thông tin card NVIDIA theo thời gian thực: watch -n 1 nvidia-smi (số 1 là thời gian làm mới, đơn vị giây)
Kết Nối Server Từ Xa
Lệnh kết nối: ssh ten_dang_nhap@dia_chi_ip -p cong (ssh username@server_ip -p port)
Lần đầu kết nối, hệ thống sẽ yêu cầu xác thực vân tay server, nhập "yes" để xác nhận.
Đăng nhập không cần mật khẩu
Tạo khóa: ssh-keygen -t rsa
Để đăng nhập không cần mật khẩu vào myserver, sao chép nội dung khóa công khai vào tệp ~/.ssh/authorized_keys trên myserver.
Hoặc dùng lệnh: ssh-copy-id -i ~/.ssh/id_rsa.pub ten_dang_nhap@dia_chi_ip
Ngắt kết nối: exit
Tải lên tệp: scp /duong/dan/toi/tap_tin_local ten_dang_nhap@dia_chi_ip:/duong/dan/toi/thu_muc_distant
Tải xuống tệp: scp ten_dang_nhap@dia_chi_ip:/duong/dan/toi/tap_tin_distant /duong/dan/toi/thu_muc_local
Biên Dịch C++
Lệnh biên dịch C++: g++ (-E/S/c/) tap_tin_nguon.cpp -o tap_tin_dau_ra
- -c: Biên dịch tạo tệp đối tượng mà không liên kết thành tệp thực thi
- -E: Chỉ thực hiện đến giai đoạn tiền biên dịch, xuất kết quả trực tiếp
- -S: Chỉ thực hiện đến chuyển đổi mã nguồn sang mã assembly, xuất mã assembly
- -o: Chỉ định tên tệp đầu ra
- -g: Tạo thông tin gỡ lỗi trong đầu ra
- -L: Chỉ định thư mục tìm kiếm thư viện, -l (chữ L thường) chỉ định tên thư viện
Vim
Các thao tác thường dùng
Sao chép dán: Trong chế độ Normal (nhấn esc), chọn văn bản rồi nhấn y để sao chép, sau đó nhấn p để dán
:set paste Chuyển sang chế độ dán, tắt tự động thụt lề mã
:set nopaste Tắt chế độ dán, bật tự động thụt lề mã
gg=G Định dạng toàn bộ mã
Cài Đặt
pwd (toàn cục): /etc/vim/vimrc
Mẹo: Sau khi vào /etc/vim/vimrc, các văn bản giải thích có thể dùng " để chú thích, hoặc thêm/bỏ " trước các cài đặt để tắt/bật
Tắt chế độ tương thích vi cũ
set nocompatible
Hiển thị chế độ hiện tại ở đáy
set showmode
Hiển thị lệnh đã nhập trong chế độ lệnh
set showcmd
Hỗ trợ chuột
set mouse=a
Sử dụng mã hóa utf-8
set encoding=utf-8
Bật 256 màu
set t_Co=256
Bật kiểm tra loại tệp và tải quy tắc thụt lề tương ứng
filetype indent on
Số dòng lịch sử
set history=1000
Nền đen
set background=dark
Bật đánh dấu cú pháp
syntax on
Thụt lề tự động
set autoindent
Thụt lề thông minh
set smartindent
Tab thành 4 khoảng trắng
set tabstop=4
Số khoảng trắng cho thụt lề
set shiftwidth=4
Chế độ khớp cặp
set showmatch
Tắt âm thanh khi lỗi
set vb t_vb=
Hiển thị số dòng
set number
Hiển thị vị trí con trỏ (dòng, cột)
set ruler
Thụt lề: >> (thêm), << (bớt), == (bỏ hết)
set expandtab
Tab thành bao nhiêu khoảng trắng
set softtabstop=2
Hiển thị số dòng tương đối
set relativenumber
Tô sáng dòng hiện tại
set cursorline
Độ rộng dòng
set textwidth=80
Tự động ngắt dòng
set wrap
Ngắt dòng khi gặp ký tự nhất định
set linebreak
Khoảng cách giữa ngắt dòng và mép cửa sổ
set wrapmargin=2
Khoảng cách con trỏ đến mép trên/dưới khi cuộn dọc
set scrolloff=15
Khoảng cách con trỏ đến đầu/cuối dòng khi cuộn ngang
set sidescrolloff=5
Hiển thị thanh trạng thái
set laststatus=2
Tìm kiếm: tô sáng kết quả
set hlsearch
Tìm kiếm tăng dần
set incsearch
Bỏ qua chữ hoa chữ thường
set smartcase
Bật kiểm tra chính tả tiếng Anh
set spell spelllang=en_us
Gợi thị thị giác khi lỗi
set visualbell
tmux
Tạo phiên mới: tmux new -s ten_phien
Kết nối phiên: tmux attach -t ten_phien
Xem các phiên: tmux ls hoặc Ctrl+b
Tách phiên: tmux detach hoặc Ctrl+b d
Thoát: exit hoặc Ctrl+d
conda (Ubuntu)
Tăng Tốc Tải Xuống
Tải chậm hoặc không tải được
- Đổi nguồn (Nguồn Tsinghua)
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple/ - Tạm thời tăng tốc
pip install xxx --no-cache-dir -i https://pypi.tuna.tsinghua.edu.cn/simple
Cài Đặt Anaconda
Tải: wget https://repo.anaconda.com/archive/Anaconda3-2024.02-1-Linux-x86_64.sh
Cài đặt: bash Anaconda3-2024.02-1-Linux-x86_64.sh
Thêm biến môi trường: export PATH="/root/anaconda3/bin:$PATH"
source ~/.bashrc
Các Thao Tác
Tự động kích hoạt base: conda config --set auto_activate_base False
Xem môi trường: conda info --envs
Tạo môi trường mới: conda create -n ten_moi python=version
Đổi tên môi trường:
conda create --name ten_moi --clone ten_cu
conda remove -n ten_cu --all
Kích hoạt: conda activate ten_moi hoặc source activate ten_moi
Thoát: conda deactivate
Xóa môi trường:
conda env remove -n ten_moi
conda remove --name ten_moi --all --force
Cài Đặt PyTorch
Lưu ý: PyTorch có phiên bản CPU và GPU. pip install torch có thể cài CPU.
Nếu cài PyTorch nhưng không tìm thấy CUDA, kiểm tra lại phiên bản.
Lệnh từ trang chủ: PyTorch-Get-Start
# Cài theo phiên bản
pip install torch==1.10.0+cu113 torchvision==0.11.1+cu113 torchaudio==0.10.0+cu113 -f https://download.pytorch.org/whl/torch_stable.html
# Cài CUDA 12.4
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu124
pip install torch torchvision torchaudio --index-url https://mirrors.nju.edu.cn/pytorch/whl/cu124
# Chỉ định CUDA
pip install torch torchvision torchaudio -f https://download.pytorch.org/whl/cu122/torch_stable.html
# Cài qua conda
conda install pytorch==1.6.0 torchvision==0.7.0 cudatoolkit=10.2 -c pytorch
conda install pytorch torchvision torchaudio pytorch-cuda=12.4 -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch -c defaults
conda install pytorch==2.5.1 torchvision==0.20.1 torchaudio==2.5.1 pytorch-cuda=12.4 -c pytorch -c nvidia
Cấu Hình Môi Trường
Nếu PyTorch đã cài nhưng pip install xxx báo lỗi không thấy torch, thử:
pip install xxx --no-build-isolation
Cài Đặt D4RL
Cài các gói này với Python 3.8:
conda install pytorch==1.10.1 torchvision==0.11.2 torchaudio==0.10.1 cudatoolkit=11.1 -c pytorch -c conda-forge
Nếu báo lỗi thiếu trình biên dịch C++, cài đặt hoặc tạo liên kết mềm.
Git
Khái Niệm Git
- Khu vực làm việc: Thư mục repository
- Khu vực tạm: Vùng chứa tạm
- Repository: Chứa các phiên bản đã commit
- Cấu trúc: Cây
Lệnh Git Cơ Bản
-
Lệnh thường dùng
git status- Xem trạng tháigit add file- Thêm file vào khu vực tạmgit commit -m "ghi chú"- Commit từ khu vực tạmgit push -u- Đẩy lên remote (lần đầu cần -u)git pull- Kéo remote vềgit clone url- Clone repositorygit log- Xem lịch sử commitgit branch- Xem các nhánh -
Cài đặt toàn cục
git config --global user.name "ten"git config --global user.email "email"git init- Khởi tạo repository -
Lệnh xem
git diff file- Xem thay đổi so với khu vực tạmgit status- Xem trạng tháigit log- Xem lịch sử commitgit log --pretty=oneline- Hiển thị trên một dònggit reflog- Xem lịch sử HEADgit branch- Xem các nhánh -
Lệnh xóa
git rm --cached file- Xóa file khỏi indexgit restore --staged file- Bỏ file khỏi khu vực tạmgit restore file- Hoàn tác thay đổi chưa add -
Quay lại
git reset --hard HEAD^- Quay về commit trướcgit reset --hard HEAD~2- Quay về 2 commit trướcgit reset --hard ma_commit- Quay về commit cụ thể -
Remote repository
git remote add origin url- Liên kết remotegit push -u- Đẩy lên remotegit push origin nhánh- Đẩy nhánh cụ thểgit push -d origin nhánh- Xóa nhánh remotegit checkout -t origin/nhánh- Lấy nhánh remote về localgit pull- Kéo remote vềgit pull origin nhánh- Kéo nhánh cụ thể về -
Lệnh nhánh
git branch tên_nhanh- Tạo nhánh mớigit branch- Xem các nhánhgit checkout -b tên_nhanh- Tạo và chuyển nhánhgit checkout tên_nhanh- Chuyển nhánhgit merge tên_nhanh- Hợp nhất nhánhgit branch -d tên_nhanh- Xóa nhánh localgit push --set-upstream origin tên_nhanh- Liên kết nhánh local với remotegit push -d origin tên_nhanh- Xóa nhánh remotegit checkout -t origin/tên_nhanh- Lấy nhánh remote về localgit pull origin tên_nhanh- Kéo nhánh remote vềgit branch --set-upstream-to=origin/tên1 tên2- Liên kết nhánh remote với local -
Stash
git stash- Cất thay đổigit stash apply- Khôi phục nhưng giữ stashgit stash drop- Xóa stashgit stash pop- Khôi phục và xóa stashgit stash list- Xem các stash
Các Thủ Thuật Khác
Markdown:
Khoảng trắng nửa rộng:  
Khoảng trắng đầy đủ:  
Alibaba Cloud
Thử dùng Alibaba Cloud miễn phí
Xem tài liệu chính thức để giải quyết vấn đề
Nếu không có tab hoàn thành: bash