Other

windows 下安装nginx-1.20.2

1.下载windows下的包 http://nginx.org/en/download.html   2.打开cmd命令行cd 到解压目录 我的是 cd D:\tool\nginx-1.20.2> 然后 运行 nginx.exe 3.在浏览器中打开 http://localhost 然后就可以看见如下 说明安装成功:  

【Linux】教学视频推荐以及一些经验分享

​  ​  好的教学视频和工具真的可以让你学习的很舒服很透彻,就如古人云:工欲善其事必先利其器。 一、Linux视频推荐 1、没错又是韩老师的视频,韩保姆的视频真的可以放一万个心去看,而且内容也很新拿来入门真的绰绰有余。 ​ 2、千锋云的Linux视频只能说非常全面,这个教程是用来精通Linux的。 ​  二、虚拟机推荐 1、VMware Workstation ​   首先在资源占用上,无论是操作系统在其上的安装还是使用的时候,VMware的CPU占用率相比其他虚拟机软件占用不是很多。以我个人电脑而言,VMware的CPU占用率最高在60%左右,平均在30%。而其他虚拟机占用率可以达到100%。 其次在网络设置上,VMware的网络类型设置相比其他软件种类更加齐全。 但是,VMware的缺点就是不是免费的,价格太高,并且还在一年一年上涨。 2、VMware各种问题的解决方法:可以看我的博客,我把VMware大部分问题都碰了个遍而且也解决了  ​ 3、VirtualBox ​  这是Oracle出的一款虚拟机功能没有VMware花哨,但是该有的都有了,没有的话就装一个增强包,最重要的是他是免费的。  小结:有能力就搞VMware因为它比较齐全而且大部分教学视频就是用VMware的教学的,包括博客也是基于VMware来教你骚操作的。  三、Linux学习网站 1、蓝桥云课网站:连接高校和企业 - 蓝桥云课 (lanqiao.cn) ​ 它大部分Linux教学都是免费的用来入门真的是绰绰有余,而且你在上面练习也不用开虚拟机因为它网站自带一个虚拟机。  2、Linux命令查询网站:Linux命令大全(手册) – 真正好用的Linux命令在线查询网站 (linuxcool.com) ​ 你不记得命令的时候可以来这里直接搜索,命令真的是非常全面。 3、鸟哥Liunx的私房菜 ​  这个网站可以当一本书来看,不过确实有鸟哥Linux私房菜这本书.  四、虚拟机获取途径 VMware这种软件是要钱的,如果你是学生可以用VirtualBox,可是VirtualBox的功能很少到后面要跟着老师配置东西什么的就很免费,因此我在这里分享出免费白嫖的方法和一些常用软件。 1、软件管家 这是一个微信公众号里面资源非常丰富,而且都是免费的。 ​ 里面有百度链接,还有一些你懂得教程会教你如何配置好。 ​ 2、果核剥壳 ​ 它里面有教程和链接 ​  后面就靠你们探索了 ​ ​

windows(九)中nacos启动报错java.io.IOException: java.lang.IllegalArgumentException: db.num is null

项目场景:在启动下载好nacos后,尝试直接启动报错,无法启动。 问题描述java.io.IOException: java.lang.IllegalArgumentException: db.num is null原因分析:nacos默认要求是使用集群的方式启动,集群要求至少有三台nacos服务器。所以直接启动nacos的话是会报错的。需要转换为单机模式启动,才能正常启动运行。 解决方案:使用单机的模式启动 startup.cmd -m startdalone 

samba的安装和使用(Centos8)

1.下载安装 两种方式: ①yum安装 yum install samba ②编译安装 wget https://download.samba.org/pub/samba/stable/samba-4.16.1.tar.gz 2.配置启动 ①添加用户 useradd pm pdbedit -a pm 此处输入两次密码(samba密码,和用户系统密码无关) ②查看用户 pdbedit -L (详细信息)pdbedit -Lv (删除用户)pdbedit -x pm ③检查错误 testparm ④修改配置文件 # vim /etc/samba/smb.conf [global] workgroup = SAMBA security = user passdb backend = tdbsam printing = cups printcap name = cups load printers = yes cups options = raw[pm] comment = Home Directories path = /test valid users = pm browsable = yes writable = yes

ubuntu 禁用笔记本触摸屏

本文通过 xinput + shell 脚本来解决,参考文献中还有其他方法。 使用环境 matebook 14 Ubuntu 20.04 终端输入 xinput 命令 我的设备的触摸屏是 SYNA7813:00 06CB:1A1A,对应 ID 是 12 设置触摸屏的 enable 属性为 0,禁用触摸屏 # 可以将设备名`SYNA7813:00 06CB:1A1A`改成 ID 12,不过据说 ID 会变动,未验证 xinput set-prop SYNA7813:00 06CB:1A1A 'Device Enabled' 0 查看触摸屏属性列表验证 xinput list-props 12 Device Enabled (163): 0 配置 shell 脚本 #!/bin/bash DESKTOP_DEV=SYNA7813:00 06CB:1A1A HAVE_DISKTOP_TOUCH=`xinput list | grep $DESKTOP_DEV` echo $HAVE_DISKTOP_TOUCH if [ $HAVE_DISKTOP_TOUCH !

进程管理

进程管理 进程概述 # 什么是进程 进程就是一个正在运行的程序 # 程序与进程的区别 进程是动态概念,具有生命属性,无法长期存放在系统中 程序是静态概念,代码的集合,可以长期存放在系统中 # 进程的生命周期 接收任务-fork子进程处理任务-父进程等待 正常结束 非正常结束 产生僵尸进程 产生孤儿进程 # 什么是僵尸进程 子进程先结束,父进程没有及时回收子进程的占用资源 # 什么是孤儿进程 父进程先结束,子进程没有父进程的管理 流程的生命周期 1.用户发起请求 2.父进程会fork出子进程,子进程会继承父进程的大部分属性,如:文件描述等,处理任务 3.子进程在处理任务的过程中,父进程是一个wait状态,等待子进程 4.正常结束 5.非正常结束 僵尸进程 孤儿进程 僵尸进程及产生原因 # 僵尸进程 子进程比父进程先结束 父进程没有回收子进程的资源 此时子进程就被称为僵尸进程 # 产生原因 子进程的结束和父进程的运行时异步的 父进程永远不知道子进程什么时候结束 子进程在结束时,父进程繁忙来不及wait子进程就会导致子进程变成僵尸进程 孤儿进程及产生的原因 # 孤儿进程 父进程比子进程先结束 子进程还在执行任务,没有父进程管理 此时的子进程被称为孤儿进程 # 产生原因 子进程的结束与父进程的运行是异步的 父进程永远不知道子进程什么时候结束 当父进程正常完成工作或其他原因被终止 则会导致子进程变成孤儿进程 监控进程状态 进程状态管理命令-ps ps [选项] [参数] # 常见参数 ps -ef ps aux a :查看所有与终端相关的进程,由终端发起的进程 u :显示进程的管理用户 x :查看所有与终端无关的进程 USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND USER : 该进程的管理用户 PID :进程号 %CPU :该进程占用CPU的百分比 %MEM :该进程占用内存的百分比 VSZ :该进程占用虚拟内存大小 RSS :该进程占用的物理内存大小 TTY : ?:由终端发起的进程 tty :机器上的终端 pts/n :远程连接工具的终端进程 STAT :进程运行状态 D :无法中断的休眠状态 (通ID的进程)'''' R :正在运行的状态 '''' S :处于休眠状态的进程 '''' T : 暂停或者被追责的状态 W :进入交换内存的进程 (swap,centos7见不到) X :死掉的进程 (少见) Z :僵尸进程 '''' < :优先级高的进程 N :优先级低的进程 L :有些数据页被锁进内存的进程 s :父进程,在它下面有子进程 l :以线程的方式运行 | :存在多进程的进程 + :在前台运行 '''' START : 进程开启的时间 TIME :该进程占用CPU时间 COMMAND :进程的名字或进程的命令 [] : 内核态进程 没有[] : 用户态进程 # 查看所有被暂停的进程 jobs bg :让暂停的程序运行起来,后面加数字,就可以运行第几个被暂停的进程 (默认是最后一个) fg : 把后台暂停的程序调到前台运行,后面加数字,可以将的n个进程调到前台运行 (默认是最后一个) ps命令用法 # 根据%cpu进行排序 ps aux | sort -k 3 ps aux --sort %cpu # 自定义显示字段 o :自定义显示字段 ps axo user,%cpu # 显示子进程 f :查看子进程和父进程 ps auxf |grep nginx # 查看指定进程的pid pgrep :竖向排列 pidof :横向排列 -l 查看该进程的启动命令 -a 显示该进程的完整描述信息

Linux中安装tomcat(OS6)

简单总结下,tomcat是一个中间件,在B/S架构中,浏览器发出的http请求经过tomcat中间件,转发到最终的目的服务器上,响应消息再通过tomcat返回给浏览器。 tomcat所做的事情主要有:开启监听端口监听用户的请求,解析用户发来的http请求然后访问到你指定的应用系统,然后你返回的页面经过tomcat返回给用户。 1、下载tomcat安装包: https://tomcat.apache.org/download-80.cgi (tomcat官网) 2、在Linux中创建tomcat的安装路径; 3、使用SSH上传tomcat的压缩包到tomcat;  4、使用解压命令进行解压;   结果:    进行端口号的修改,8080端口很容易被占用; netstat -ntlp //查看当前所有tcp端口; netstat -ntulp | grep 80 //查看所有80端口的使用情况; netstat -an | grep 3306 //查看所有3306端口的使用情况; Tomcat端口号可以不修改,不修改的话默认是8080 启动tomcat,查看一下;注意:启动tomcat是进入到apache-tomcat里的bin目录下输入 ./startup.sh 才可以启动;    在浏览器中测试tomcat,出现以下界面就是正确的; 注意:ip是自己的ip;   注意:如果8080端口号被占用了,则要修改端口号; 修改tomcat的端口号: 进入tomcat的apache-tomcat-8.5.50目录下的conf目录,找到server.xml文件并编辑,端口号我改为8081,并添加了一个URIEncoding=UTF-8,也可以自定义端口号.  重启tomcat;  因为Linux的防火墙默认只对外开放了一个22的端口,其他的端口都没打开。所以需要把它的防火墙设置一下,让它对tomcat的8889端口号放行。使用 cd ~命令切换到当前用户主目录(即root),然后使用如下命令来设置Linux的防火墙,使其对tomcat的8889端口号放行。 /sbin/iptables -I INPUT -p tcp --dport 8081 -j ACCEPT/etc/rc.d/init.d/iptables save  /etc/rc.d/init.d/iptables save 命令是将这个设置永久地保存到Linux的防火墙中。

centos解决 pip is configured with locations that require TLS/SSL, however the ssl module in Python is

一、下载 openssl 编译安装 openssl 官方下载地址:https://www.openssl.org/source/ wget https://github.com/openssl/openssl/archive/OpenSSL_1_1_1d.tar.gz 解压 tar -zxvf OpenSSL_1_1_1d.tar.gz 二、编译安装 进入openssl-OpenSSL_1_1_1d cd openssl-OpenSSL_1_1_1d  指定安装路径并编译 ./config --prefix=/usr/local/openssl // 指定安装路径 make && make install 三、替换当前系统的旧版本 openssl 「先保存原来的」 mv /usr/bin/openssl /usr/bin/openssl.old mv /usr/lib64/openssl /usr/lib64/openssl.old mv /usr/lib64/libssl.so /usr/lib64/libssl.so.old ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl ln -s /usr/local/openssl/include/openssl /usr/include/openssl ln -s /usr/local/openssl/lib/libssl.so /usr/lib64/libssl.so echo /usr/local/openssl/lib >> /etc/ld.so.conf ldconfig -v // 建立动态链接 四、最后查看当前系统 openssl 版本 openssl version 五、重新编译Python3.7 进入解压后的Python目录 cd Python-3.7.1 ./configure --prefix=/usr/local/python3 --with-openssl=/usr/local/openssl make make install ln -sf /usr/local/python3/bin/python3 /usr/bin/python3 ln -sf /usr/local/python3/bin/pip3 /usr/bin/pip3 六、查看是否安装成功 python3 -V pip3 -V

centos python3虚拟环境

为什么需要虚拟环境? 在使用 Python 语言时,通过 pip(pip3)来安装第三方包,但是由于 pip 的特性,系统中只能安装每个包的一个版本。但是在实际项目开发中,不同项目可能需要第三方包的不同版本,迫使我们需要根据实际需求不断进行更新或卸载相应的包,而如果我们直接使用本地的 Python 环境,会导致整体的开发环境相当混乱而不易管理,这时候我们就需要开辟一个独立干净的空间进行开发和部署,虚拟环境就孕育而生。 venv 模块 venv 模块支持使用自己的站点目录创建轻量级“虚拟环境”,可选择与系统站点目录隔离。每个虚拟环境都有自己的 Python 二进制文件(与用于创建此环境的二进制文件的版本相匹配),并且可以在其站点目录中拥有自己独立的已安装 Python 软件包集。 创建虚拟环境 通过执行 venv 指令来创建一个 虚拟环境: python3 -m venv /path/to/new/virtual/environment 运行此命令将创建目标目录,并放置一个 pyvenv.cfg 文件在其中,文件中有一个 home 键,它的值指向运行此命令的 Python 安装(目标目录的常用名称是 .venv)。 它还会创建一个 bin 子目录(在 Windows 上是 Scripts),其中包含 Python 二进制文件的副本或符号链接(视创建环境时使用的平台或参数而定)。 它还会创建一个(初始为空的)lib/pythonX.Y/site-packages 子目录(在 Windows 上是 Lib\site-packages)。如果指定了一个现有的目录,这个目录就将被重新使用。 激活虚拟环境 在开始在虚拟环境中安装或使用包之前,需要激活它。激活虚拟环境将把特定于虚拟环境的 python 和 pip 可执行文件放入 shell 的 PATH 中。 source env/bin/activate 通过检查 Python 解释器的位置来确认你在虚拟环境中: $ which python .../env/bin/python 退出虚拟环境 如果想切换项目或者退出当前虚拟环境,可以运行: deactivate