1.ssh安装 启动 远程连接
安装:sudo apt -y install openssh-server
查看是否开启:ps -e|grep ssh #sshd 表示server开启, ssh-client表示客户端开启
开启ssh: sudo /etc/init.d/ssh start
重启ssh: sudo /etc/init.d/ssh restart
远程连接:sudo ssh cb116@192.168.1.184
1)报错:WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!
原因:.ssh/known_hosts是记录远程主机的公钥的文件,之前重装系统,而保存的公钥还是未重装系统的系统公钥,在ssh链接的时候首先会验证公钥,如果公钥不对,那么就会报错。
方法:将known_hosts文件中的与登录错误的IP的公钥删除即可:ssh-keygen -f "/root/.ssh/known_hosts" -R "192.168.1.184"
2)报错:ssh: connect to host 192.168.1.184 port 22: Connection refused
原因:A想通过ssh连接B,而B未安装server
方法:在B上执行sudo apt -y install openssh-server
3)解决SSH退出登陆后保持进程继续在后台运行(nohup 不挂断地运行命令 无论是否将 nohup 命令的输出重定向到终端,输出都将附加到当前目录的 nohup.out 文件中;如果当前目录的 nohup.out 文件不可写,输出重定向到 $HOME/nohup.out 文件中)
nohup + command + &
文件从服务器下载到本地:scp -r cb116@192.168.1.184:/disk2/wyl/test.txt /home/wyl
2.对进程、GPU进行监测和控制
(1)ps aux|grep python
ps aux输出格式:
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
格式说明:
USER: 行程拥有者
PID: pid
%CPU: 占用的 CPU 使用率
%MEM: 占用的记忆体使用率
VSZ: 占用的虚拟记忆体大小
RSS: 占用的记忆体大小
TTY: 终端的次要装置号码 (minor device number of tty)
STAT: 该行程的状态,linux的进程有5种状态:
D 不可中断 uninterruptible sleep (usually IO)
R 运行 runnable (on run queue)
S 中断 sleeping
T 停止 traced or stopped
Z 僵死 a defunct (”zombie”) process
注: 其它状态还包括W(无驻留页), <(高优先级进程), N(低优先级进程), L(内存锁页).
START: 行程开始时间
TIME: 执行的时间
COMMAND:所执行的指令
(2)top
(3)nvidia-smi
GPU:GPU 编号;
Name:GPU 型号;
Persistence-M:持续模式的状态。持续模式虽然耗能大,但是在新的GPU应用启动时,花费的时间更少,这里显示的是off的状态;
Fan:风扇转速,从0到100%之间变动;
Temp:温度,单位是摄氏度;
Perf:性能状态,从P0到P12,P0表示最大性能,P12表示状态最小性能(即 GPU 未工作时为P0,达到最大工作限度时为P12)。
Pwr:Usage/Cap:能耗;
Memory Usage:显存使用率;
Bus-Id:涉及GPU总线的东西,domain:bus:device.function;
Disp.A:Display Active,表示GPU的显示是否初始化;
Volatile GPU-Util:浮动的GPU利用率;
Uncorr. ECC:Error Correcting Code,错误检查与纠正;
Compute M:compute mode,计算模式。
(4)nvidia-smi -L 用于列出所有可用的 NVIDIA 设备信息。
3.强制删除进程(进程号为pid):kill -s 9 pid
更新配置文件命令:source ~/.bashr #只更新当前终端上的配置
4查看python已安裝的包:python -m pip list
查看磁盘剩余空间:df -hl
改变文件(夹)权限:sudo chmod (-R) 777 文件(夹)名(每个人都有读和写以及执行的权限)
sudo chmod -(代表类型)×××(所有者)×××(组用户)×××(其他用户)
三位数的每一位都表示一个用户类型的权限设置。取值是0~7,即二进制的[000]~[111]。
这个三位的二进制数的每一位分别表示读、写、执行权限
统计当前目录下文件的个数(不包括目录) ls -l | grep "^-" | wc -l
统计当前目录下文件的个数(包括子目录) ls -lR| grep "^-" | wc -l
查看某目录下文件夹(目录)的个数(包括子目录) ls -lR | grep "^d" | wc -l
5 mysql 安装:
apt更新包索引:sudo apt update
安装默认软件包:sudo apt install mysql-server
运行安全脚本:sudo mysql_secure_installation
调整用户认证和权限:ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
FLUSH PRIVILEGES;
exit;
重新登录:mysql -u root -p
创建新用户:CREATE USER 'sammy'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'sammy'@'localhost' WITH GRANT OPTION;
exit
查看mysql的状态:systemctl status mysql.service #enabled则可,若否,需激活sudo systemctl start mysql
登录mysql后,create database acm;show databases;use acm;
导入mysql数据:source csuacm.sql;
show tables;
6 java8
sudo apt-get update sudo
apt-get install openjdk-8-jdk
java -version
7 pip安装时ReadTimeoutError
pip --default-timeout=100 install -U xxx
p.s.
pip install -u 是升级安装
pip install --user 是安装在本用户的目录下
ERROR: Could not find a version that satisfies the requirement XXX
pip install XXX -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
ERROR: Could not install packages due to an EnvironmentError: HTTPSConnection...
pip install --user --index-url https://pypi.douban.com/simple/ XXX
ImportError: cannot import name 'combined_rule_sentence_segmenter'
安装的包版本和代码不匹配
remove scispacy dependency for models:
https://github.com/allenai/scispacy/commit/4827614618cbe42f5d0aba80a6dfebe384a20710
ERROR: Command errored out with exit status 1
安装的包版本和代码不匹配
BrokenPipeError: [Errno 32] Broken pipe
修改调用torch.utils.data.DataLoader()函数时的 num_workers 参数,可以通过修改num_works参数为 0 ,只启用一个主进程加载数据集,避免在windows使用多线程即可。
8 AssertionError:The NVIDIA driver on your system is too old (found version 9000).
pip install torch==1.2.0 torchvision==0.4.0 -f https://download.pytorch.org/whl/torch_stable.html
9 fatal: unable to access 'https://github.com/xxx': OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connection to github.com:443
可能是使用了代理导致的,git config --global --add remote.origin.proxy ""
10 已有conda情况下安装python
conda create -n py36 python=3.6 #创建环境
source activate py36 #激活环境,安装包之前,必须激活环境,否则会安装到root环境下
批量安装python包,可以把想要安装的包放到一个文件t.txt中,e.g.:
numpy
sklearn
...
然后运行命令:cat t.txt|xargs python -m pip install
11 使用rm -rf删除文件夹,提示:rm: cannot remove 'XXX': Directory not empty
进入到文件夹中ls -a,发现有一个.fuse_hidden...文件,删掉后会立刻创建一个新的.fuse_hidden...文件。
lsof .fuse_hidden000bd8c100000*查看占用该文件的进程号为pid,kill -9 pid 随后rm该文件夹。
12当前电脑python的包移植到另一个电脑中
当前电脑下:pip download numpy,tensorflow.... #把whl包下载到当前目录下(会自动下载最适合的版本,如果需要旧版本需要指定)
把这些whl包传输至目标电脑上,
pip install numpy,tensorflow.... -f . --no-index #安装包,若需要依赖文件,在当前目录下搜索(即离线安装)
13高性能计算平台使用,相关的一些命令
conda info -e
conda activate 环境名
sbatch a.sh #提交作业
报错:sbatch: error: Batch script contains DOS line breaks ( )
可先使用dos2unix a.sh 把.sh文件的格式改为适配格式
squeue #查看作业的运行情况
scancel job_id #删除作业
sinfo 查看集群状态,idel
为空闲,mix
为节点部分核心可以使用,alloc
为已被占用
14 git命令相关
sbatch a.sh #提交作业
撤销已push的操作:
先通过git log查看要到达步骤的版本号xxxx,按q退出
然后输入 git reset --hard xxxx
提交操作 git push origin master --force
15 查看操作系统的版本
cat /proc/version
lsb_release -a
16 windows如何改变python包的下载源
cat /proc/version在任一目录地址栏输入%APPDATA%,进入到某一目录下,看里面有没有pip文件夹,若无则创建该文件夹,并在目录中新建pip.ini文件,里面填上:
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-host=mirrors.aliyun.com
17 使用pip安装包时出现“由于目标计算机积极拒绝,无法连接
按Win+R快捷键,输入regedit,进入注册表编辑器,找到HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Internet Settings分支,把它下面以 Proxy 打头的键值对(ProxyEnable,ProxyOverride,ProxyServer等)全部删除
18 windows环境下定时运行一个python脚本
把t.py文件改为t.bat文件中
import os
os.path#查看python.exe所在的路径
控制面板-->管理工具-->任务计划程序-->创建基本任务-->填写脚本的时候,填写python.exe所在的路径,参数填写t.bat文件的路径。
19mysql安装error:the security setting could not be applied
可能是之前安装过,但文件没有删除干净。
1)卸载
2)删除安装目录中的文件夹
3)打开C盘,取消隐藏空驱动器、隐藏文件和文件夹等等。进入ProgramData,搜索mysql,把相关文件(夹)删除。
4)重新安装。
19windows,端口已被占用
netstat -ano 查看占用端口的进程id
taskkill /F /pid 进程id
持续更新ing~~