兼职单 001-安装 python3.7 导致桌面 Terminal 无法使用
系统环境
OS: Ubuntu 20.04.4 LTS
Kernel: 5.15.0-79-generic
桌面环境: GNOME Shell 3.36.9
终端: gnome-terminal 3.36.2
问题描述用户用 python 开发,由于系统自带 python 版本(2.7)过低,需要升级高版本(>=3.0)。此时,用户安装 python3.7 之后,发现 gnome-terminal 无法正常打开,也没有任何提示。
问题分析1.远程协助前,询问了用户有哪些操作(执行过哪些命令),用户告知,只是用 apt install -y python3.7 安装了下新版本的python, 然后配置了当前用户 ~/.bash_proc 文件中的 python 环境:
2.远程协助,使用 vscode 打开终端命令行工具,查看系统日志,发现报:
12345678Traceback (most recent call last): File "/usr/bin/add-apt-repository", line 11, in <mod ...
gitlab-ee 系列-修改备份目录
gitlab 默认备份目录:/var/opt/gitlab/backups/
1.编辑 /etc/gitlab/gitlab.rb 文件,找到 backup_path 配置项,修改备份目录
12345...gitlab_rails['backup_path'] = "/data/gitlab/backups" ...
2.创建备份目录:
1sudo mkdir -p /data/gitlab/backups
django-small 系列002-项目开发环境配置
创建 python 虚拟开发环境由于我们是在 Linux 环境下开发,而 Linux 系统一般都侑 python2 和 python3 两个 python 环境,所以,我们在创建 python 开发环境时需要使用参数 -p 指定 python 版本,否则可能会出现版本不兼容的问题。
执行下面的命令创建虚拟环境:
1234567891011leazhi@ubuntuhome:~$ mkvirtualenv -p python3 haoke_smallcreated virtual environment CPython3.10.12.final.0-64 in 342ms creator CPython3Posix(dest=/home/leazhi/.env/haoke_small, clear=False, no_vcs_ignore=False, global=False) seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir= ...
django-small 系列003-项目搭建及设置
项目说明1.项目采用前后端分离的方式;2.前端采用 vue3 + axios;3.后端采用 django3.1.10 + djangorestframework;
创建项目1.进入指定目录,打开终端命令行工具,执行以下命令创建 django 项目:
12345678# 进入指定目录:┌──(leazhi㉿localhost)-[~]└─$ cd ~/Desktop/python3/Django/项目/small # 创建 django 项目: ┌──(leazhi㉿localhost)-[~/…/python3/Django/项目/small]└─$ django-admin startproject haoke
2.项目创建完成后,使用 linux 下的命令 tree 查看下创建的 django 目录结构:
123456789101112┌──(leazhi㉿localhost)-[~/…/python3/Django/项目/small]└─$ tree haoke haoke├── haoke│ ├── asgi.py│ ├── _ ...
《自由》系列 - 使用 cloudflare 搭建高速免费机场
本文出自:视频教程:2023最佳科学上网,墙内福音永久免费vless节点,超10w+速度观看YT 8k视频,轻松跑满千兆宽带,无需域名也能稳域ip降低海外账号风控,保姆级详细教程博主博客:2023最佳免费vpn方式
前提条件1.注册一个 cloudflare 账户,这里推荐使用临时邮箱 进行注册;
2.域名一个免费域名注册 或 收费域名注册 namesilo ,并添加到了 cloudflare;
开始搭建开始之前,确保你的域名已经正确添加到了 cloudflare
1.登录 cloudflare ,点击左侧的导航栏中的 Workers 和 Pages,如图:
2.进入 Workers 和 Pages 概述页面后,点击 创建应用程序,如图:
3.进入创建应用程序页面后,点击下面的创建 Workers:
4.进入创建 “Hello World” 脚本页面后,名称属性自定义下,然后点击右下角的部署:
5.进入恭喜!您的Workers 已部署到以下区域:全球。页面后,点击配置 Workers:
6.进入 Workers 页面后,点击右上角的快速编辑:
7.进入 Workers 编辑页面后,将 ...
django 系列-基类中的扩展类和子类
5 大扩展类扩展类:就是在基类上进行了封装,使用前,都需要集成 GenericAPIView 基类
列表视图 ListModelMixin 和 CreateModelMixin1.在Django Rest Framework (DRF) 中,ListModelMixin是一个非常有用的类,它封装了列出查询集合的常逻辑。
ListModelMixin的主要作用有:
提供list()方法,用来返回一个查询集合。
提供paginate_queryset()方法进行分页。
提供get_queryset()钩子方法,用于定制查询集。
提供filter_queryset()方法进行过滤。
提供get_serializer_class()方法,用于指定序列化类。
提供get_serializer()方法,用于序列化查询集。
使用ListModelMixin的主要步骤:
继承ListModelMixin
指定queryset属性,或重写get_queryset()方法
可选重写get_serializer_class()和get_serializer()
在list()方法中调用sel ...
《自由》系列 - Caddy2 + Vmess 部署
===== 本教程更新于 2024-01-25 =====
系统环境
系统版本:22.04.3 LTS (Jammy Jellyfish)
内核版本:5.15.0-88-generic #98-Ubuntu SMP Mon Oct 2 15:18:56 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
v2ray 版本:v5.13.0
caddy 版本:v2.7.6 h1
v2ray 安装1.点击这里下载 v2ray 到服务器的 /usr/local/src 目录下:
2.将下载下来的 v2ray 压缩文件 解压到 /usr/local/v2ray 目录:
1# unzip v2ray-linux-64.zip -d /usr/local/v2ray
3.在解压目录下创建以下目录,分别用于存储 v2ray 日志,v2ray 配置文件 以及 v2ray 可执行文件:
1# mkdir /usr/local/v2ray/{conf,l ...
myql 备份脚本
一个 MySQL 数据库备份脚本,该脚本将只保留最近7天的备份记录:
12345678910111213141516#!/bin/bash# 设置备份目录和文件名backup_dir="/data/backup/db_mysql"backup_file="db_backup_$(date +%Y%m%d).sql"# 如果目录不存在,则创建目录:if [ ! -f "$backup_dir" ]; then mkdir -p $backup_dirfi# 执行备份命令mysqldump -u your_username -p your_database > "$backup_dir/$backup_file"# 删除超过7天的备份记录find "$backup_dir" -name "db_backup_*" -type f -mtime +7 -delete
django 系列-DRF 基类(一) ViewAPI
APIView是Django REST framework中一个非常重要的抽象基类视图,它提供了一些功能:
1.继承自Django的View类,保留了View原有的属性和方法。2.提供了更多针对API的方法,比如定义各个请求方法的响应(get, post等)。3.对请求进行身份认证、权限校验、流量控制等。4.内容协商,选择合适的renderer来序列化输出。5.处理常见的异常,提供统一的错误响应。6.请求解析,包括验证、转换请求内容。7.模型对象和queryset的处理。
要实现一个API视图,我们需要:
1.继承APIView2.指定renderer_classes、parser_classes等设置3.实现get、post等方法,编写视图逻辑4.加入认证、权限、限流等特性
这样就可以快速构建一个功能完备的API视图了。
相比普通的Django View,APIView提供了更多面向API的特性,可以大大简化视图的编写。如果需要的话,还可以进一步继承GenericAPIView等基类,获得更多功能。所以APIView是一个非常有用的基类,是构建API不可或缺的部分。
APIView ...
django 系列-序列化与反序列化
使用 Django shell 进行序列化调试1234567(web12) leazhi@ubuntuhome:~$ cd web12/(web12) leazhi@ubuntuhome:~/web12$ python manage.py shellPython 3.10.12 (main, Jun 11 2023, 05:26:28) [GCC 11.4.0] on linuxType "help", "copyright", "credits" or "license" for more information.(InteractiveConsole)>>> from users.serializer import BookInfoSerializers,PeopleInfoSerializers>>> from users.models import BookInfo
单个数据序列化12345678910# 实例化, 模型类对象,构造查询集>>> ...