自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

kaoa000的专栏——非淡泊无以明志,非宁静无以致远

坚持,还是坚持,最难的就是坚持,能坚持两年就算胜利

  • 博客(474)
  • 收藏
  • 关注

原创 Linux入门攻坚——15、进程和作业管理

父子关系:进程都由其父进程创建,父进程调用fork(),创建子进程,子进程与父进程一开始拥有相同的空间,当子进程需要修改数据时,发生写时拷贝(CoW),clone()父进程,然后指向克隆后的起始空间,执行自己的修改操作。最底层是硬件,硬件之上是操作系统,也叫内核(即kernel),操作系统提供的是系统调用,在内核之上,是各种库,提供库函数,在此之上是各种应用程序,应用程序可能是基于库函数实现的,也可能直接使用系统调用。cronie-anacron:cronie的补充程序,用于监控cronie任务执行状况;

2024-02-23 14:48:33 507

原创 Pyhton专项进阶——http协议、cookie、session和认证-3

通过抓包,可以发现,所谓的session就是在cookie中保存了一个key为session,value是加密字符串的东西,而在服务器端,保存了对应的用户信息,就是SecureCookieSession对象,其中保存了user:root这个信息,通过session的值,就能找到这个对象及其相关信息。:显示登录页面,输入用户和密码,后端验证,如果验证通过,则登录成功,响应报文中将用户、密码写入cookie,访问其他页面时,通过cookie获取用户信息,能够获取,则直接访问页面,不能获取,则跳转至登录页面。

2024-02-06 16:59:22 926

原创 Linux入门攻坚——14、实战软件安装-搭建Python3.8环境-2

随后执行: ./configure --prefix=/usr/local/python3.8 --with-openssl=/usr/local/openssl1.1 LDFLAGS="-L/usr/local/lib" CPPFLAGS="-I/usr/local/include",也可以安装成功。第一次没有加LDFLAGS="-L/usr/local/lib" CPPFLAGS="-I/usr/local/include",不成功,随后加上再次执行,成功。3)重新编译安装python3.8。

2024-01-25 14:01:47 434

原创 Linux入门攻坚——13、实战软件安装-搭建Python3.8环境-1

安装的最高层目录是/usr/local,OPENSSLDIR是/usr/local/ssl,即配置文件目录,库文件目录是libdir,即是/usr/local/lib64,引擎目录是/usr/local/lib64/engines-1.1。此时的安装位置为/usr/local/openssl1.1,配置文件在/usr/local/openssl1.1/ssl下,库文件路径是/usr/local/openssl1.1/lib。

2024-01-19 13:55:59 957

原创 Linux入门攻坚——12、Linux网络属性配置相关知识2

3. udev 会根据/etc/udev/udev.conf文件中的udev_rules指定的目录,逐个检查该目录下的文件,这个目录下的文件都是针对某类或某个设备应该施行什么措施的规则文件。udev,辅助工具程序/lib/udev/rename_device,根据 /usr/lib/udev/rules.d/60-net.rules的指示,查找/etc/sysconfig/network-scripts/下的ifcfg-文件,如果HWADDR相同,将其中的DEVICE值作为网卡的名字。

2024-01-09 16:06:49 979

原创 Linux入门攻坚——11、Linux网络属性配置相关知识1

每个网络中的主机数:2^24-2;MAC:Media Access Control,共48bit,前24bit需要机构分配,后24bit自己自由使用。反解:IP --> FQDN, dig -x IP;TARGET:主机路由:IP;BOOTPRORO:激活此设备时使用的地址配置协议,常用的dhcp,static,none,bootp。网络数:2^21个;每个网络中的主机数:2^8-2;每个网络中的主机数:2^16-2;例子:目标:192.168.1.3 网关:172.16.0.1。

2024-01-05 16:42:00 1205

原创 Linux入门攻坚——10、Linux程序包管理-2

安装的httpd在/usr/local/apache2下,相关的命令在此路径的bin下,要想直接运行,如直接执行apachectl,是找不到此文件的,查看环境变量$PATH,其值为—— /usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin,要想直接运行,需要将相关路径导出到$PATH变量中。yum服务器,一般有:FTP://或HTTP://,或者本地(光盘)文件,使用file://

2023-12-27 10:06:35 852

原创 Linux入门攻坚——9、Linux程序包管理-1

安装程序包时,一般二进制文件放在/bin、/sbin、/usr/bin、/usr/sbin、/usr/local/bin、/usr/local/sbin下,库文件放在/lib、/lib64、/usr/lib、/usr/lib64、/usr/local/lib、/usr/local/lib64等路径下,配置文件放在/etc或者/usr/etc或者/usr/local/etc下,帮助文件放在/usr/share/man或者/usr/local/share/man等路径下。如果不存在旧版程序包,则“安装”。

2023-12-21 10:21:17 981

原创 Linux入门攻坚——8、磁盘管理——btrfs文件系统及压缩解压缩和归档

挂载的设备可以是btr卷中的任意一个物理卷名,如这里的/dev/dec,也可以使用/dev/sdd,结果一样,mount显示的挂载设备是序列号最小的物理卷。多物理卷支持:btrfs可由多个底层物理卷组成:支持RAID,以联机添加、移除,修改。UUID相同,说明都是同一个btree卷,但是子卷是不同的。修改/mybtr/logs/grub2.cfg,保存,此时在快照中的文件内容不变。归档后文件大小可能变大,归档不是压缩,可以在归档的同时再压缩。压缩后,源文件删除,解压缩后,压缩文件删除,节省空间。

2023-12-15 14:39:24 1028

原创 Linux入门攻坚——7、磁盘管理——文件系统挂载管理及RAID、LVM

创建的lv,有三个路径:/dev/dm-0,实际文件,两个链接路径:/dev/mapper/myvg-mylv和/dev/myvg/mylv。支持的RAID级别:LINEAR,RAID0,RAID1,RAID4,RAID5,RAID6,RAID10。创建一个快照卷,保存某一时刻对应卷的快照,即元数据,并同时监控对应卷的数据,如果数据要改变,则在改变前拷贝其到快照卷。RAID0:条带卷,strip;RAID6:读写性能提升,可用空间(N-2)*min()、有容错能力,2块磁盘,最少磁盘4。

2023-12-04 15:05:59 1075

原创 Linux入门攻坚——6、磁盘管理——分区及文件系统管理

分区完成后,就要对分区安装文件系统,所谓安装文件系统,从我个人的理解,就是对上面分区范围内的扇区中的部分扇区数据进行填充或修改,使之符合一定的数据结构,从底层扇区来讲,并没有什么改变,扇区依然保存的是0101序列,只不过,安装文件系统后,对特定的扇区内容进行了规定,扇区的特定位置保存的是什么数据,所以,文件系统是内核的一个进程,这个进程要使用这个进程能够理解的磁盘扇区数据结构,来进行磁盘的使用。还有一个问题,BIOS 只能找到 MBR 中的启动引导程序,而找不到在分区的引导扇区中的启动引导程序。

2023-11-20 13:49:09 165

原创 Linux入门攻坚——5、find,locate,特殊权限,磁盘管理初识

类比:这可以与在windows上的操作进行比较,用户空间管理工具,类似windows中的format带上文件系统格式参数,如fat32、ntfs等,内核模块就是format去调用的windows内核功能,然后对分区进行格式化。注意:find传递查找到的文件至后面指定的命令时,查找到所有符合条件的文件一次性传递给后面的命令,有些命令不能接受过多参数,此时命令执行可能失败;-j:相当于 -t ext3;Linux文件系统:ext2,ext3,ext4,xfs,btrfs,reiserfs,jfs,swap。

2023-10-26 14:52:32 133

原创 Pyhton专项进阶——http协议、cookie、session和认证-2

在login.html中设置一个链接:href=“tt1/”,这是一个相对地址,从当前页面跳转,就是相对当前页面,当前的url是http://127.0.0.1:8090/login/,它就是相对这个地址,所以其地址就是http://127.0.0.1:8090/login/tt1/,而请求首部的referer就是http://127.0.0.1:8090/login/,意思是从这个地址跳转过来的。cookie罐:客户端的状态。虽然他们指的都是同一个站点,但是在首部中是不同的域,cookie的携带也不同。

2023-10-23 16:25:32 126

原创 Linux入门攻坚——4、shell编程初步、grep及正则表达式

因为并没有当前目录,我的当前目录是~/myscripts/,所以要给定明确的路径,如:./firsht.sh或绝对路径:~/myscripts/first.sh。也可以不为文件赋执行权限,而是手动启动,即执行:bash first.sh,即不使用shebang,而是我们手动指定了解释器。编程语言:强类型---定义变量时必须指定类型、弱类型---shell是弱类型,类型隐式转换,变量无需事先定义可直接调用。上一篇学过文件权限时,提到过,创建的文件权限默认是没有执行权限x的,所以这里提示没有权限执行。

2023-10-20 08:22:01 425

原创 Linux入门攻坚——3、基础命令学习-文件管理、别名、glob、重定向、管道、用户及组管理、权限管理

U : 解锁指定用户;>,>>,>|,2>,2>>,&>,&>>,2>&1,2>>&1,< :输出覆盖重定向,输出追加重定向,输出强制覆盖重定向,错误覆盖输出重定向,错误追加输出重定向,标准输出和错误输出覆盖重定向,标准输出和错误输出追加重定向,错误覆盖输出到标准输出中,错误追加输出到标准输出中,标准输入重定向。useradd [options] LOGIN : 添加用户,选项:-u,指定UID,-g,指定GID(基本组),-c,注释,-d,家目录,-s,默认shell,-G,附加组,-D,修改默认值。

2023-10-16 15:38:25 206

原创 Pyhton专项进阶——http协议、cookie、session和认证-1

这就是浏览器做的工作,按照HTTP协议的规定,有效的请求或响应报文中必须包含特定的首部,然后各个浏览器在根据自己的需要,添加一些首部,于是就有了我们现在看到的请求报文。3、这里的请求资源,即请求URL,就不是一个静态文件,而是一个函数,函数生成对应的响应报文,响应报文的响应实体,也不是login.html,(虽然在这里二者完全一致),而是经过模板渲染后的内容,就是以login.html为模板,进行渲染,即按模板语言格式对变量等替换为值的过程后的结果,作为响应实体,返回给客户端。但资源不一定非得是静态文件。

2023-10-11 16:39:51 112

原创 Linux入门攻坚——2、基础命令学习

帮助文件 : /usr/share/man, /usr/share/doc, /usr/local/share/man, /usr/local/share/doc。-rw-r--r-- :最左侧的第一位:文件类型,有 -,d,l,b,c,p,s;二进制程序:/bin, /sbin, /usr/bin, /usr/sbin, /usr/local/bin, /usr/local/sbin。MM:月, DD:日, hh:小时, mm:分钟,YY:两位年, CCYY:四位年, .ss:秒。

2023-10-08 16:08:27 111

原创 Linux入门攻坚——1、入门基础知识初识

硬件之上,是操作系统,linux中一般叫内核,内核对硬件进行抽象,对上层提供使用接口,这个接口叫做系统调用(system call),这个调用还是太底层,即使用还是不太方便,便有了对系统调用的再次封装,形成库,应用程序可以基于库文件进行编程,也可以直接基于系统调用编程。绝对路径:从根目录起始的路径,Linux是从/,即根开始的路径,windows是从c:\或d:\等开始的路径,所以Linux的根只有一个,而windows有很多。物理终端:直接接入本机的显示器和键盘设备,也叫:console,控制台。

2023-09-28 10:30:44 102

原创 Python入门自学进阶-Web框架——42、Web框架了解-bottle、flask

我们可以将这个wsgi_app换成我们自定义的类,在__call__方法中添加我们自己的代码,最后在调用原来的wsgi_app,这样就在请求处理前,先经过了我们自己的处理,像Django的中间件就是这种机制实现的。TEMPLATE_PATH = ['./', './views/'],即默认模板查找顺序是先在项目根目录,然后是views目录,我们可以添加自己定义的目录。放置在session中,使用flash(value),取用,get_flashed_message(),取完就删除了。

2023-09-22 14:39:44 524

原创 Python入门自学进阶-Web框架——41、初步了解Celery 分布式队列、识堡垒机、自动发布、配置管理系统

调用原生的ssh,很可能需要进行交互,而我们的需求是中间不能有交互,所以使用sshpass软件来进行ssh登录,这样,用户、密码都可以在参数中带入,无需交互,ssh的 -o "StrictHostKeyChecking no" 参数,跳过rsa等认证交互。用户登录堡垒机,就使用Django的用户管理,即Web用户验证,登录成功后,找到此用户关联的可登陆主机、登录用户和密码,然后以此用户、密码远程登录主机,将登录连接返回给用户,使其可以使用主机。jumpserver,一个基于paramiko的类似系统。

2023-09-19 17:12:57 417

原创 Python入门自学进阶-Web框架——40、redis、rabbitmq、git——3

就是说,一开始,每台电脑上都有一个一样的版本库,然后每个人不需要联网,就可以做自己的版本控制,添加、修改、删除文件等操作,操作保存在自己本地的版本库中,经过一段时间后,再指定一个统一的地方,大家都把本地的版本库合并到这个统一的地方,实际上就是集中式版本系统的中央服务器,合并中有可能出现各种问题,如冲突等,解决完这些冲突,就形成一个大家都认可的版本,每个人再将这个版本的库下载到本地,再次基础上再次进行开发,循环往复,做到版本控制。添加后,远程库的名字就是origin,这是Git默认的叫法,也可以改成别的。

2023-08-30 15:31:24 741

原创 Python入门自学进阶-Web框架——39、redis、rabbitmq、git——2

六种模式分别为Hello world、Work queues(工作队列)、Publish/Subscribe(发布订阅)、Routing(路由)、Topics(主题)、RPC(远程调用),除了RPC模式外,其余的模式都是从简单的使用到更为灵活的使用,基本的代码框架都是差不多的,只是在不同的模式下达到的效果不同,它们各有各的特点,在实际使用中应该根据需求来选择具体的模式,而不是简单粗暴的选择最“高端”的模式。如果不先启动订阅者,则发布者发布的消息订阅者是无法事后接收到的。

2023-08-08 16:19:29 548

原创 Python入门自学进阶-Web框架——38、redis、rabbitmq、git

上面的生产者存在一个问题,就是在我们的消费者还没开始消费完队列里的消息,如果这时rabbitmq服务挂了,那么消息队列里的消息将会全部丢失,解决方法是在声明队列时,声明队列为可持久化存储队列,并且在生产者在将消息插入到消息队列时,设置消息持久化存储,具体如下。是分布式系统中重要的组件,主要解决应用耦合,异步消息,流量削锋等问题实现高性能,高可用,可伸缩和最终一致性。它是应用层协议的一个开放标准,为面向消息的中间件设计,基于此协议的客户端与消息中间件可传递消息,并不受产品、开发语言等条件的限制。

2023-08-04 17:29:05 1000

原创 Python入门自学进阶-Web框架——37、异步IO与scrapy

在请求google时,停顿很长时间后出错(国内google不可访问了),并且后面的请求也没有执行,这就是同步请求,请求,有结果后,再下一个,亦步亦趋。当线程池中的所有任务都执行完成后,该线程池中的所有线程都会死亡。这就是多线程,一个请求发出后,如果结果没有马上返回,就切换到其他线程,即执行其他请求,因为IO请求时间很长,所以,四个请求都进行了线程切换,都发送了请求。异步操作在完成await操作后,会发出完成通知,并释放占用的线程,之后系统调用线程池中空余的线程来进行await之后的操作,减少了线程负担。

2023-07-12 16:57:55 186

原创 Python入门自学进阶-Web框架——36、Web微信类实现初步

Web微信类的登录原理

2023-06-21 16:59:35 159

原创 Python入门自学进阶-Web框架——35、网络爬虫使用

网络爬虫

2023-04-01 19:14:05 462 1

原创 Python入门自学进阶-Web框架——34、富文本编辑器KindEditor、爬虫初步

KindEditor富文本编辑器使用,爬虫初步

2023-03-10 10:11:49 1147

原创 Python入门自学进阶-Web框架——33、瀑布流布局与组合查询

瀑布流布局、组合查询

2023-03-03 15:47:41 416

原创 Python入门自学进阶-Web框架——32、上课、作业流程开发

学生作业管理,班级、上课、作业的显示和管理

2023-02-22 16:16:41 399

原创 Python入门自学进阶-Web框架——31、开发客户报名流程

报名业务流程实现

2023-02-16 15:05:19 484

原创 Python入门自学进阶-Web框架——30、DjangoAdmin项目应用-自定义用户认证续

自定义登录认证,登录即退出

2023-01-17 15:53:05 360

原创 Python入门自学进阶-Web框架——29、DjangoAdmin项目应用-整表只读、自定义用户认证

只读表设置、自定义用户认证

2022-12-16 16:48:13 551

原创 Python入门自学进阶-Web框架——28、DjangoAdmin项目应用-只读字段与后端表单验证

只读字段与后端验证

2022-12-08 10:31:39 688

原创 Python入门自学进阶-Web框架——27、DjangoAdmin项目应用-数据记录操作2

删除表记录,先将关联数据提出显示

2022-11-25 15:50:15 589

原创 Python入门自学进阶-Web框架——26、DjangoAdmin项目应用-数据记录操作

数据的增删改

2022-11-18 15:22:56 530

原创 Python入门自学进阶-Web框架——25、DjangoAdmin项目应用-分页与过滤

有过滤项后,显示的数据是过滤后的数据,页码也应该是过滤后的记录的页码,而上一步生成页码,默认是全部数据进行分页。前的部分,filter_url就是过滤部分,p也是过滤条件,但不是输入框输入的,是页码值,通过这个几个部分,共同组成页码对应的访问地址。当配置文件中配置了过滤条件,那就要在显示表信息的时候,显示过滤条件选择项,选择后进行过滤,然后下面显示过滤后的数据,如果数据过多,则分页显示。二、实现过滤功能,就是增加查询项,将上面显示页面的测试,换成下列选择框,然后提交,后端做条件查询。

2022-11-10 16:13:24 872

原创 Python入门自学进阶-Web框架——24、DjangoAdmin项目应用-定制页面2

model类的使用,自定义标签

2022-10-28 08:46:34 712

原创 Python入门自学进阶-Web框架——23、DjangoAdmin项目应用-定制页面

类似DjangoAdmin的首页及明细管理页面的实现

2022-10-21 08:12:06 521

原创 Python入门自学进阶-Web框架——22、DjangoAdmin项目应用-定制页面

用户、角色、权限设置

2022-10-13 15:23:46 518

原创 Python入门自学进阶-Web框架——21、DjangoAdmin项目应用

可以看到,Authentication and Authorization项目下有两个表,组和用户,这是Django的用户及组管理,即权限管理。username就是登录的用户名,is_staff是否是正式职员,只有正式职员才能登录,is_active,只有激活才能使用。只显示一列,显示的值是Customer的__str__()的返回值,即这里显示QQ号。可以看到,注册的model出现在对应应用的下面,名称默认就是类名称。五、创建models类,创建数据库表,在admin中注册以进行管理。...

2022-08-09 08:47:30 724 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除