【Linux】ubantu学习笔记

ubantu学习笔记

  • 记录
    • 突然无法通过ssh进行远程访问服务器
    • ubantu上使用python
      • 调用python
      • 后台运行python
    • 程序端口号冲突

记录

记录一下在使用linux中的小技巧或者问题

突然无法通过ssh进行远程访问服务器

解决办法: 直接重启

ubantu上使用python

使用场景,在ubantu上想运行一个用python写的小网页项目,ubantu自带了python,可以通过命令行查看对应的版本
tips:如果版本刚好是你需要的就不用改了,如果不是那就最好根据项目的推荐去安装对应的python版本,避免依赖问题导致无法正常启动项目

调用python

ubantu自带的是python3.10 和win不同的是如果想调用python不能直接输入python 而需要在后面输入对应的大版本 比如python3.10就输入python3 python2.4则输入python2

后台运行python

使用场景,当我在ssh情况下执行python脚本,项目是可以启动并且通过远程访问的,但是一旦关闭了ssh,python脚本就失效了。
解决办法:nohup python(输入python大版本号) -u 你需要启动的脚本.py > test.log 2>&1 &
nohup可以让脚本在关闭ssh的情况下也能后台运行对应的脚本,test.log是记录该脚本出现的日志内容,最后一个&是保持后台运行
运行之后会弹出一个进程号,就表示运行成功了

  1. nohup 不挂断的意思

  2. -u 代表程序不启用缓存,也就是把输出直接放到log中,没这个参数的话,log文件的生成会有延迟

  3. test.log 将输出日志保存到这个log中

  4. 2>1 2与> 结合代表错误重定向,而1则代表错误重定向到一个文件1,而不代表标准输出;

  5. 2>&1 换成2>&1,&与1结合就代表标准输出了,就变成错误重定向到标准输出.

  6. & 最后一个& ,代表该命令在后台执行

更多细节可以参考下面这个大佬的帖子

https://blog.csdn.net/voke_/article/details/112612719

程序端口号冲突

场景,在重启了ubantu之后,apache2无法正常启动,只有nginx启动成功了
原因:端口号冲突了,apache2和nginx,以及tomcat之类的默认端口号都是80 所以必须保证你访问的网页80端口没有被霸占,如果有的话则需要查看进程获取进程号然后杀掉进程,最后重启对应的服务器工具即可

你可能感兴趣的:(linux,学习,笔记)