文|Seraph
01 | Linux通用命令
命令 | 含义 |
---|---|
which | 查找命令的目录位置(仅限于PATH环境变量包含的目录中),如我们需要知道g++配置环境位置,就可以使用which g++。 |
whereis | 查找命令、源文件、man文件,这里是通过文件索引数据库来查找的。 |
pwd | 当前目录路径 |
passwd | 修改用户密码,例子:passwd root |
hostname | 查询本机名 |
find | 查询文件find / -name cude* 表示从根目录开始查询,查到所有文件名前缀为cuda的文件 |
basename | 显示路径最后一个目录或文件名 |
dirname | 显示目录父目录 |
uname -r | 查询内核版本信息 |
reboot | 重启系统 |
top | 性能分析工具 |
02 | 包管理
-
yum
安装g++命令:yum install gcc-c++
-
apt-get
安装g+±4.8命令:apt-get install g++-4.8
移除g+±4.8命令:apt-get remove g++-4.8
更新可用软件包命令:apt-get update
更新已安装软件包命令:apt-get upgrade
apt-get -f install 是修复损坏的软件包,尝试卸载出错的包,重新安装正确版本的。
查询已安装的软件包命令:apt list --installed
注:apt和apt-get都是ubuntu下最常用的安装软件命令,早期使用apt-get,从Ubuntu16开始官方建议使用apt。
03 | 文件下载
wget
curl
scp
需要知道IP与账户,以及密码,scp
下载和上传文件,scp file_source file_target
。sz
rz
需要XShell工具支持sftp
04 | Ubuntu
命令 | 含义 |
---|---|
dpkg | 包管理 |
grep | 在结果中进行搜索,示例:查询g++安装情况:dpkg -l | grep g++* |
uname -a | 查询系统信息,包含Linux内核版本号 |
ps | 查询系统运行的进程情况,ps -u username 查询当前系统username用户运行的所有进程 |
kill | 关闭相应进程 |
nvidia-smi | 查询GPU此时的使用情况,watch nvidia-smi实时返回GPU使用情况 |
- 查询Ubuntu发行版本号:
cat /etc/issue
问题解决
-
没有ping指令
解决:apt-get install inetutils-ping
-
将其他终端主机名映射到其对应的IP地址,使能用主机名访问到终端
解决:打开/etc/hosts
配置文件,按如下格式增加映射关系
#IP地址 主机名
192.168.1.1 seraph
-
没有ifconfig指令
解决:apt install net-tools
-
SSH设成无密码模式
解决:详见SSH login without password -
使用
tar -zxvf
解压时出现“cannot change ownership”
解决:使用df -T
查看分区格式,应该不是ext格式的,所以才会报错。可以将文件拷贝出来再解压。 -
使用apt安装应用包时提示
The following packages have unmet dependencies?
解决:更新需要的依赖包版本,或者更新需要依赖包的应用使与依赖一致。
05 | CentOS
- lspci
06 | 命令常用参数含义
参数 | 含义 |
---|---|
r | 递归 |
v | 版本 |
07 | 网桥相关
一、工具bridge-utile
- brctl show:显示网桥配置。
二、IP
ip r
查看路由表
三、tcpdump
08 | 解压缩
一、zip工具
- 文件夹压缩:
zip -q -r demo.zip /home/demo
。 - 解压:
unzip demo.zip
。
09 | 后台运行
有时候我们ssh连接不是很稳定,但我们又想长时间运行神经网络训练,可以使用后台虚拟终端screen,
这样即使关闭ssh连接,训练也能继续执行。
一、screen
- screen -S SessionName
- Ctrl+a,然后d,deatached
- screen -ls查看后台运行的终端
- screen -r SessionName 进入终端
- exit关闭会话
- screen -X -S [session # you want to kill] quit
- screen -wipe 移除被标记为dead的会话
关闭会话 可以使用id
二、nohup &
10 | 重定向终端输出
命令 | 含义 |
---|---|
ls > ls.txt | > 表示把输出重定向到指定文件,如果文件存在,会覆盖 |
ls >> ls.txt | >> 表示把输出重定向至指定文件,如果文件存在,会在末尾添加 |
ls | tee ls.txt | tee 表示将执行结果以覆盖的形式输出到ls.txt文件中 |
ls | tee -a ls.txt | tee -a 表示将执行结果以添加的形式输出到ls.txt文件中 |