
Docker 快速配置深度学习环境 + 基础命令 + 常见报错
从零搭建深度学习 Docker 环境,涵盖镜像拉取、容器运行、GPU 支持配置、基础命令速查及常见报错(权限、网络超时、磁盘不足)解决方案,助你快速上手容器化 AI 开发。
阅读文章ZHY's Blog
A UNIVERSE OF IDEAS · BY ZHANG HAOYI
让好奇心 点亮知识宇宙
在代码、模型与思想之间自由漫游。这里持续记录人工智能、机器学习、软件工程与成长实践,让每次阅读都成为一次新的发现。
ARTICLE NOTE
几乎所有命令都可以通过 man 或 --help 查看帮助信息:
man ls:查看 ls 命令的手册页。ls --help:显示 ls 命令的简易帮助信息。pwd:显示当前工作目录的完整路径。
cd:更改当前工作目录。
cd /path/to/directory:进入指定目录。cd ..:返回上一级目录。cd ~:返回用户主目录。cd -:切换到上一个工作目录,适用于在两个目录间来回切换。ls:列出目录内容。
ls:列出当前目录的文件和文件夹。ls -l:以长格式显示详细信息。常用别名:ll。ls -a:显示所有文件,包括隐藏文件(以.开头)。ls -lh:以人类可读格式显示文件大小(单位如 KB、MB)。mkdir:创建新目录。
mkdir new_directory:创建名为new_directory的目录。mkdir -p /path/to/directory:递归创建目录。对文件夹的操作通常需要递归选项 -r。
touch:创建新文件或更新文件的时间戳。
touch new_file:创建一个名为new_file的空文件。cp:复制文件/目录。
cp source destination:复制文件到目标路径。cp -r source_directory destination_directory:递归复制目录及其内容。mv:移动或重命名文件/目录。
mv source destination:将文件从源路径移动到目标路径。mv old_name new_name:重命名文件或目录。rm:删除文件/目录。
rm file:删除文件。rm -r directory:递归删除目录及其内容。rm -rf directory:强制递归删除目录及其内容,不提示确认。rm操作不可逆,不会将文件移至回收站,使用时需谨慎。cat:连接并显示文件内容。
cat file:显示file的内容。less:分页查看文件内容,其中的指令同 vim。
less file:逐页查看file的内容。head 和 tail:查看文件的开头和结尾部分,-n 指定行数。
head -n 10 file:显示文件的前 10 行。tail -n 10 file:显示文件的后 10 行。chmod:更改文件权限。
chmod 755 file:将file的权限设置为755。chmod +x script.sh:为script.sh添加可执行权限。chown:更改文件所有者,个人并不常用。
chown user:group file:将file的所有者更改为user,组更改为group。export:设置环境变量,使用完只在当前的终端有效,重开就没了。
export VAR=value:设置环境变量VAR。echo $VAR:查看环境变量VAR的值。env:显示当前所有环境变量。
env:列出所有环境变量。永久设置环境变量:编辑~/.bashrc或~/.bash_profile文件,如果你用的是zsh的话,则是 ~/.zshrc。
在文件末尾添加:export VAR=value。
保存后,运行source ~/.bashrc使更改生效,或者重启命令行。
如果不想开文件的话,在命令行执行:echo 'export VAR=value' >> ~/.bashrc + source ~/.bashrc
uname:显示系统信息。
uname -a:显示所有系统信息。df:查看磁盘空间使用情况。
df -h:以人类可读的格式显示磁盘使用情况,在项目进行到后期的时候,你可能会遇到磁盘空间不足。du:查看文件或目录的大小。
du -sh file_or_directory:显示指定文件或目录的大小。du -h --max-depth=1 .:显示当前目录下各文件和子目录的大小。ps:显示当前进程列表。
ps aux:显示所有进程的详细信息。top:实时显示系统资源使用情况。
kill:终止进程。
kill PID:发送SIGTERM信号终止进程。kill -9 PID:发送SIGKILL信号强制终止进程。killall:终止指定名称的所有进程。
killall process_name:终止所有名为process_name的进程。ssh:通过SSH登录远程主机。
ssh user@hostname:连接到远程主机。scp:安全复制文件。
scp file user@hostname:/path:将文件复制到远程主机。scp user@hostname:/path/file ./:从远程主机复制文件到本地。curl:命令行下的HTTP请求工具,适合与 API 交互、发送表单等。
curl http://example.com:获取网页内容并输出到终端。curl -O http://example.com/file:下载文件并保存到本地wget: 和 curl 功能类似,经常用来下载。
wget http://example.com/file:下载并保存文件。ping:测试网络连通性
ping example.com:检查到 example.com 的连通性。grep:在文件中搜索特定文本。
grep 'text' file:在file中搜索包含text的行。grep -r 'text' directory:在目录中递归搜索文本。find:查找文件或目录。
find /path -name "filename":在指定路径下查找名为filename的文件。alias:为命令创建别名。
alias ll='ls -alF':将ll设置为ls -alF。history:显示命令历史记录。
sudo:以超级用户权限执行命令。
sudo command:以 root 权限执行command。注意:使用 sudo 需谨慎。
重定向和管道(非常有用)
command > file:将命令的输出重定向到文件(覆盖)。command >> file:将命令的输出追加到文件。command1 | command2:将command1的输出作为command2的输入。whoami:显示当前用户。
date:显示当前日期和时间。
sudo apt-get update:从软件源更新可用软件包的列表,确保系统使用最新的软件包信息。sudo apt-get upgrade:升级系统中所有已安装的软件包到新版本,但不会移除或添加包。
sudo apt-get dist-upgrade:在执行 upgrade 的同时,处理依赖关系,允许安装或移除包以进行更全面的系统升级。
sudo apt-get install package_name:安装指定的软件包 package_name。
sudo apt-get install vim 安装 Vim 文本编辑器。sudo apt-get remove package_name:卸载软件包,但保留配置文件。
sudo apt-get purge package_name:卸载软件包并删除其配置文件,彻底移除包的所有痕迹。
sudo apt-get autoremove:自动移除不再需要的依赖包,这些包通常是跟随其他包安装但现在不再被使用。
sudo apt-get clean:清理 /var/cache/apt/archives/ 中已下载的软件包,释放硬盘空间。这些包缓存文件就跟曾经手机下载的安装包一样,安装完了就可以选择删掉,不影响已安装的软件包。
sudo apt-get autoclean:只删除已过期的包。
按顺序完成这组文章,循序渐进地掌握主题
发现错误、内容过时或有改进想法?欢迎告诉我
根据本文分类与标签,为你推荐可能感兴趣的内容

从零搭建深度学习 Docker 环境,涵盖镜像拉取、容器运行、GPU 支持配置、基础命令速查及常见报错(权限、网络超时、磁盘不足)解决方案,助你快速上手容器化 AI 开发。
阅读文章
系统梳理 Python 开发中的环境管理(Conda)、包管理(Pip & UV)与版本控制(Git)核心命令与最佳实践,涵盖从虚拟环境配置到项目依赖锁定、从日常提交到分支管理的全流程操作指南。
阅读文章
系统梳理策略梯度、优势函数、重要性采样与KL散度惩罚的核心概念,串联从VPG到PPO的技术演进逻辑,并探讨On-Policy与Off-Policy的权衡及数据漂移问题。
阅读文章请使用微信扫描二维码分享
当前文章会保持在原页面