About 5 min
使用国内镜像源
$ pip3 install pk_name(要安装的包) -i https://pypi.tuna.tsinghua.edu.cn/simple
Channel | URL |
---|---|
阿里云 | https://mirrors.aliyun.com/pypi/simple/ |
中国科技大学 | https://pypi.mirrors.ustc.edu.cn/simple/ |
豆瓣 | https://pypi.douban.com/simple/ |
清华大学 | https://pypi.tuna.tsinghua.edu.cn/simple/ |
中国科学技术大学 | https://pypi.mirrors.ustc.edu.cn/simple/ |
重邮镜像源
重庆邮电大学开源镜像站 | CQUPT OpenSource Mirror
查看显卡占用
$ watch -n 0.1 -d nvidia-smi #每隔0.1秒刷新一次
Linux 文件操作-常用命令
$ du -sh * # 查看占用空间的文件
$ df # 显示磁盘相关信息
$ ls # 列出当前文件夹内容
$ cd YOUR_DIR_PATH # 进入路径
$ mkdir YOUR_DIR_NAME # 创建文件夹
远程查看Tensorboard
$ ssh -L 16006:127.0.0.1:6006 username@remote_server_ip
'or' $ ssh -L 8008:localhost:6006 用户名@远程服务器ip
$ tensorboard --logdir=/path/your/log/directory/
# 测试未成功 2021-0117-
$ tensorboard --host [YOUR IP ADDR] --logdir [YOUR LOG DIR]
Pycharm 自定义变量
# PyCharm -> Preferences -> Live Templates
1. 'add' Template Group then 'add' Live Template
2. Abbreviation: time # 触发词
3. Template: $date$ # 名称
4. Edit variables -> Expression: date("yyyy-MM-dd EEE HH:mm:ss")
5. No applicable contexts. Define -> Applicable in Everywhere
显卡驱动相关
# 开机卡在 /dev/sda3:clean,***files,***blocks,且磁盘未满
$ sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf_backup
$ sudo rm -rf /etc/X11/xorg.conf
# 安装显卡驱动
-> 点击“软件和更新”,进入管理器,选择“附加驱动”选项卡
# 添加环境变量
$ sudo vim ~/.bashrc
$ source ~/.bashrc
if [ $LD_LIBRARY_PATH ]; then
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64
else
export LD_LIBRARY_PATH=/usr/local/cuda/lib64
fi
if [ $PATH ]; then
export PATH=$PATH:/usr/local/cuda/bin
else
export PATH=/usr/local/cuda/bin
fi
if [ $CUDA_HOME ]; then
export CUDA_HOME=$CUDA_HOME:/usr/local/cuda
else
export CUDA_HOME=/usr/local/cuda
fi
7.挂载磁盘
# 查看分区
sudo fdisk -l
# 查询UUID
$ sudo blkid /dev/sda3
# 编辑/etc/fstab
$ sudo gedit /etc/fstab # 或者用vim
# <file system> <mount point> <type> <options> <dump> <pass>
'add' UUID=eb7568d0-fa94-4a1a-9fe6-75ff37faa310 /home/leng/NewDisk ext4 defaults 0 2
# 查看挂载
$ sudo mount -a # 挂载后原来文件夹中的东西覆盖,取消挂载才能看到
$ df -h # 查看挂载
$ du -sh # 查看当前文件夹大小
# 移除挂载
$ sudo umount /dev/sda3
# 复制 /home 至 /
$ mkdir home_bak
$ cp -Rvp /home /home_bak
# 取消/home分区的挂载
$ sudo vim /etc/fstab
'#' UUID=eb7568d0-fa94-4a1a-9fe6-75ff37faa310 /home/leng/NewDisk ext4 defaults 0 2
$ umount /home
$ mv home_bak home
$ umount /home
$ reboot
8.切换CUDA版本
https://blog.csdn.net/u013905398/article/details/103799621
更新软链接
$ cd /usr/local/
$ sudo rm -rf cuda
$ sudo ln -s /usr/local/cuda-11.3 /usr/local/cuda
在home/下修改.bashrc的注释,即环境变量
# # for CUDA 8.0 # export PATH=/usr/local/cuda-8.0/bin:$PATH # export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64/$LD_LIBRARY_PATH # export LD_LIBRARY_PATH=”$LD_LIBRARY_PATH:/usr/local/cuda/lib64” # export CUDA_HOME=/usr/local/cuda # added by cuda 11.3 installer export PATH="/usr/local/cuda-11.3/bin:$PATH" export LD_LIBRARY_PATH="/usr/local/cuda-11.3/lib64:$LD_LIBRARY_PATH" export CUDA_HOME=/usr/local/cuda
然后更新 .bashrc
$ cp /home/gaoxb/.bashrc /home/chentaiyue/.bashrc
$ source .bashrc
遇到的问题:
Failed to initialize NVML: Driver/library version mismatch
重启就好了
创建新用户
$ sudo adduser xxxx
$ sudo usermod -aG sudo username # 添加到 sudo 组
$ sudo deluser username sudo # 从sudo组移除
$ getent group sudo # 查看所有sudo 用户
$ groups user_name # 查看单个用户组
$ cp /home/gaoxb/.bashrc /home/chentaiyue/.bashrc
$ source .bashrc
$ sudo addgroup groupname
$ sudo adduser username groupname
$ sudo chown -R 1000:1012 /opt/anaconda3
$ su - username # 切换用户
$ sudo whoami # 显示当前
$ sudo ls -l /root # 测试权限
$ sudo deluser --remove-home tt
$ sudo deluser --remove-all-files tt # 删除用户所有
Ubuntu更改密码步骤:
1、进入Ubuntu,打开一个终端,输入 sudo su转为root用户。 注意,必须先转为root用户!!!
2、sudo passwd user(user 是对应的用户名)
3、输入新密码,确认密码。
4、修改密码成功,重启,输入新密码进入Ubuntu。
Ubuntu更改用户名步骤:
1、进入Ubuntu,打开一个终端,输入 sudo su转为root用户。 注意,必须先转为root用户!!!
2、gedit /etc/passwd ,找到代表你的那一行,修改用户名为新的用户名。 注意:只修改用户名!后面的全名、目录等不要动!
3、gedit /etc/shadow,找到代表你的那一行,修改用户名为新用户名
4、gedit /etc/group,你应该发现你的用户名在很多个组中,全部修改!
5、修改完,保存,重启。
限制用户
who # 查看当前在线用户
# 限制用户内存
$ sudo vi /etc/security/limits.conf
'add'
* hard core 0
* hard rss 5000000 # 单位为kb
* hard nproc 20
$ sudo vi /etc/pam.d/login
'add'
session required /lib/security/pam_limits.so
# 退出账户在重新登陆,使用下述命令可以查看内存配额
$ ulimit -a
# 限制用户磁盘空间
# touch /home/quota.user
# touch /home/quota.group
# chmod 600 /home/quota.user
# chmod 600 /home/quota.group
# quotacheck -acugvm
Once done, perform the fix quotas script again.
# /scripts/fixquotas –force
https://www.cnblogs.com/GodZhe/p/10911635.html
$ sync # 释放内存
$ free -m # 查看内存
systemctl restart lighdm # 重启显示
ssh gaorui@10.16.125.247
ssh guest@10.16.74.91
put 源文件位置 目标位置
get 源文件位置 目标位置
scp -p 源文件位置 主机名@IP地址:目标位置
RTX A6000
169.254.82.253
0102768
WDcqupt19900910
sudo adduser username
sudo usermod -aG sudo username
docker pull
docker run --name 容器名字 -idt 镜像id
docker restart 容器名字
docker attach 容器名字
docker commit 容器id 新镜像名:tag
docker save 镜像名 -o 压缩包名
vim name.txt 打开文件
lspci | grep -i vga 查看显卡
nvcc -V 查看cuda
nvidia-smi
du -sh * 查看占用空间大小
mkdir -p 创建文件夹
cp -r a.file b.file 复制
mv a.file b.file 移动
echo 内容>>文件
touch 文件名
unzip a.file -d path 解压
tar -xf a.tar 解压
tar -zcvf 新路径 打包目录 压缩
chomd a+u (降低)更改权限
sed -i 's/abs/xxx/g' file 修改文件内容(abs为被替换内容,xxx为替换内容)
source ~/.bashrc
vi ~/.condarc
dos2unix xxx.sh 将windows脚本转化为linux脚本
watch -n 0.5 -d nvidia-smi
tmux new -s roclinux 新窗口
Ctrl+B;C 新窗口
Ctrl+B;d 退出
tmux ls 查看
tmux a -t roclinux 恢复
os.path.dirname() 去掉文件名,返回目录
os.path.abspath() 返回绝对目录
os.listdir() 返回当前文件夹下的子目录
A.endswith('s') 判断文件A的格式是否是s
lambda x: x
np.fromfile(file_path, dtype= , count=-1)读取bin文件
np.setdiff1d([A],[B]) B中没有而A中有的元素
np.squeeze(A, axis=) 删除A的维度等于1的维度
np.expand_dims(A, i) 对矩阵A在i维度上增加一个维度
x[:, np.newaxis, :, :] 增加维度
np.concatenate((a,b,...), axis=) 在维度i上将多个矩阵拼接(注:多个矩阵在维度i上可以不等,但在其他维度上必须一致)
np.hstack() 以列为单位进行拼接
np.vstack() 以行为单位进行拼接
np.split(A, [n,m,k],i) 在维度i上拆分
np.identity() 单位矩阵
np.eye() 类单位阵
np.linalg.norm(A, ord=1/2/np.inf) 矩阵A的ord范式
np.trace(A) 矩阵的迹
np.mgrid[:,:] 生成矩阵
np.ravel() 拉直
np.c_[A,B] 配对
np.random.rand 均匀分布
np.random.randn 正态分布
np.random.randint(1,100,[5,5]) 随机整数
tf.concat([a, b, c], i) 对a,b,c在i维度上拼接
tf.split(A, [n,m,k], i) 对A在i维度上拆分成三块分别为n,m,k的子块
torch.from_numpy()