Category: Uncategorized

  • 重置Django 4.2.x 项目的管理员和密码

    本文讲述如何重置Django 4.2.x 项目的superuser/管理员和密码。 Django环境 Xubuntu 22.04最小安装 / FreeBSD 13.2默认安装,python3-pip 22.0.2 (python 3.10) / py39-pip-23.1.2 (python 3.9) + py39-sqlite3-3.9.18_7已安装,virtualenv 20.24.3 / 20.24.5已安装,虚拟环境myEnv已创建,Django 4.2.4/4.2.5已经安装,项目myProject已在myEnv中创建。 查看superuser(管理员)名称及重置其密码 进入myEnv目录并激活虚拟环境source bin/activate # Xubuntu 22.04source bin/activate.csh # FreeBSD 13.2切换当前目录(myEnv):~/myEnv # cd myProject查看superuser(管理员)名称(myEnv):~/myEnv/myProject # python manage.py shell>>> from django.contrib.auth.models import User>>> user=User.objects.filter(is_superuser=True)>>> print(user)<QuerySet [<User: admin>]>得到管理员名称为admin重置superuser密码>>> user=User.objects.get(username=’admin’)>>> user.set_password(‘123456’)>>> user.save()>>> exit()管理员密码重置为123456

  • Django-Admin 4.2.5 on FreeBSD 13.2

    Django(发音:[`dʒæŋɡəʊ],D不发音)是一个开源Web应用框架,由Python写成,遵循MVC/MTV模式,在BSD许可证下发行。MIS(信息管理系统)的基础数据维护(CURD增改查删)重复且繁琐,Django-Admin读取元数据自动生成相应的管理界面,管理者可以通过Django-Admin维护基础数据以及设置权限。Django-Admin模块具有很强的可扩展性,可以基于原框架做定制化开发。本文讲述如何在FreeBSD 13.2中安装Django-Admin,并实际创建一个MIS项目。 硬件环境 Lenovo ThinkPad T14 Gen2 20W1S3H811: Intel i5-1145G7 + DDR4 16GB + NVMe 512GB 虚拟机宿主环境 Win11 x64 Build 22621.2134 英文专业版 + VirtualBox v7.0.8 r156879 虚拟机客户机软件环境 FreeBSD 13.2默认安装,pkg已换国内源,pkg update已完成,pkg upgrade已完成,Screen 4.09.00已安装,openssh-server允许root远程登录。 安装Django框架于Python虚拟环境 安装py39-pippkg search python3python310-3.10.13 Interpreted object-oriented programming languagepython311-3.11.5 Interpreted object-oriented programming languagepython38-3.8.18 Interpreted object-oriented programming languagepython39-3.9.18 Interpreted object-oriented programming language可以看到FreeBSD中可用的Python3有3.8/3.9/3.10/3.11等版本pkg search py311-pip无结果pkg search…

  • Install FreeBSD 13.2 with ZFS Root on UEFI Multi-System

    UEFI多系统中的FreeBSD要使用ZFS并与同一块磁盘上的其他OS共存,安装时必须选择进入Shell手动分区。选择Auto(ZFS)就必须覆盖整个磁盘,无法与其他OS共存。FreeBSD在这一点上不如Linux灵活。本文通过实例讲述如何在(VirtualBox虚拟机中的)FreeBSD 13.2安装时进入Shell手动分区实现UEFI多系统中的FreeBSD使用ZFS并与同一块磁盘上的其他OS共存。 硬件环境 Lenovo ThinkPad T14 Gen2 20W1S3H811: Intel i5-1145G7 + DDR4 16GB + NVMe 512GB 软件环境 Win11 x64 Build 22621.2134 英文专业版 + VirtualBox v7.0.8 r156879 VirtualBox环境 VM Type = BSDVersion = FreeBSD (64bit)Base Memory = 4GBProcessor = 4 CoresVirtualDisk:Size = 128GBPartition1 = EFI 300MBPartition2 = NTFS 32GB, Win11 InstalledPartition3 = Ext4 32GB, Xubuntu 22.04…

  • VirtualBox v7.0 VM mount Host’s Physical Disk

    VirtualBox的虚拟机通常使用虚拟磁盘,但实际上也可以直接挂载宿主机的物理磁盘使用。本文讲述如何为VirtualBox v7.0中的虚拟机挂载宿主机的物理磁盘。 硬件环境 Lenovo ThinkPad T14 Gen2 20W1S3H811: Intel i5-1145G7 + DDR4 16GB + NVMe 512GB 软件环境 Win11 x64 Build 22621.2134 英文专业版 + VirtualBox v7.0.8 r156879 写在前面 VirtualBox v7.0 与之前版本用的命令不一样。v6.1 及以前版本是用VBoxManage internalcommands createrawvmdk命令来将物理盘创建成虚拟盘。官网说明:https://docs.oracle.com/en/virtualization/virtualbox/6.1/admin/AdvancedTopics.html#rawdiskv7.0 开始用VBoxManage createmedium创建。官网说明:https://docs.oracle.com/en/virtualization/virtualbox/7.0/admin/AdvancedTopics.html#adv-storage-config另外,7.0 版本的官网说明遗漏了指定磁盘大小,如果直接使用它的示例去做盘,是无法使用的(虚拟分配空间为0),使用 [–size=megabytes | –sizebyte=bytes] 指定磁盘的实际大小即可。 在Windows中为VirtualBox虚拟机挂载宿主机物理盘 以管理员权限打开命令行CMD或是PowerShell窗口,切换当前目录到VirtualBox安装目录中。cd “C:\Program Files\Oracle\VirtualBox>”列举宿主机的磁盘C:\Program Files\Oracle\VirtualBox>VBoxManage list hostdrives –longDrive: \.\PhysicalDrive0Model: “WDC PC SN730 SDBQNTY-512G-1001″UUID: 742e6ad3-bd6f-4e1e-a268-c150c25481abSize: 512110190592…

  • *nux/*BSD系统Shell命令cp、mv配合花括号{}用法

    {}并没有实际含义,但是可以作为Brace expansion(大括号扩展)产生各种组合。本文以*nux/*BSD系统Shell命令cp、mv配合花括号{}的用法实例讲解其使用。 花括号模式是以一个可选的前导字符,后面跟着一系列以逗号分隔的字符串或者是以点号分隔的字符串。前导字符被添加到字符串前面,后面的字符串被附加到每个结果之后。在*nux系统中,还可以用点号生成序列。 例:(*nux系统)echo {1..10}输出1 2 3 4 5 6 7 8 9 10 例:echo foo{1,2,3}.txt输出foo1.txt foo2.txt foo3.txt 例:(*nux系统)echo foo-{a..d}.txt输出foo-a.txt foo-b.txt foo-c.txt foo-d.txt 例:cp /etc/http/httpd.conf{,.bak}等效于cp /etc/http/httpd.conf /etc/http/httpd.conf.bak 可以看出,cp、mv命令配合{}花括号使用,不但简化命令长度,而且不易出错。常用于备份、重命名文件、创建目录等。 将httpd.conf复制备份为httpd.conf.bak:cp /etc/http/httpd.conf{,.bak} 将httpd.conf重命名为httpd.conf.bak:mv /etc/http/httpd.conf{,.bak} 将httpd.conf.bak重命名为httpd.conf:mv /etc/http/httpd.conf{.bak,} 将config.sample.inc.php复制为config.inc.php:cp config{.sample,}.inc.php

  • phpMyAdmin on FNMP

    phpMyAdmin是用PHP语言编写的用于管理MySQL和MariaDB数据库的Web客户端。本文描述如何在FreeBSD 13.2的FNMP环境中安装和配置phpMyAdmin。 硬件环境 Lenovo ThinkPad T14 Gen2 20W1S3H811: Intel i5-1145G7 + DDR4 16GB + NVMe 512GB 虚拟机宿主环境 Win11 x64 Build 22621.2134 英文专业版 + VirtualBox v7.0.8 r156879 虚拟机客户机软件环境 FreeBSD默认安装,pkg已换国内源,pkg update已完成,Screen 4.09.00已安装,openssh-server允许root远程登录,Nginx 1.24.0已安装,PHP php80-8.0.29已安装,Nginx与php-fpm已集成,MariaDB 10.11.4 / MySQL 8.0.32_3已安装,MariaDB/MySQL安全安装已完成,MariaDB/MySQL认证方式已修改为需要密码。 补充说明:截止本文发布时,FreeBSD 13.2可用的PHP版本有php83-8.3.0.a2/php82-8.2.7/php81-8.1.20/php80-8.0.29。但php83-8.3.0.a2 + phpMyAdmin5-php83-5.2.1_1组合在输入MariaDB/MySQL账户密码登录phpMyAdmin时提示”Failed to set session cookie. Maybe you are using HTTP instead of HTTPS to access phpMyAdmin”而无法登录,尚未找到解决办法;php82-8.2.7…

  • FNMP on FreeBSD 13.2

    FNMP是FreeBSD+Nginx+MariaDB/MySQL+PHP环境的缩写,按照发音,也写作FEMP环境。本文讲述如何在FreeBSD 13.2中安装和配置Nginx+MariaDB/MySQL+PHP。 硬件环境 Lenovo ThinkPad T14 Gen2 20W1S3H811: Intel i5-1145G7 + DDR4 16GB + NVMe 512GB 软件环境 Win11 x64 Build 22621.2134 英文专业版 + VirtualBox v7.0.8 r156879 VirtualBox安装FreeBSD 13.2 默认安装即可 FreeBSD 13.2准备工作 允许root用户通过ssh远程登录编辑/etc/rc.conf文件启用sshd服务vi /etc/rc.conf,如果没有就加入一行sshd_enable= “YES”FreeBSD默认不允许root账号以ssh远程登录,编辑sshd配置文件以允许vi /etc/ssh/sshd_config,找到#PermitRootLogin no改成PermitRootLogin yes重启ssh服务service sshd restart FreeBSD仓库换国内源FreeBSD有4类源:pkg、ports、portsnap、update。对于失去安全支持的版本,如 FreeBSD 9.0 是没有 pkg 源可用的,只能使用当时的 ports 编译安装软件。FreeBSD的仓库默认源在国外,从国内访问速度很慢。为方便使用,有必要为FreeBSD仓库换国内源。常用的有北京交大源、中科大源、南京大学源、网易163源、China FreeBSD源等。目前境内没有官方镜像站,这些均非官方镜像站。有些国外pkg源速度还行,官网 https://pkg.freebsd.org/ 可以查看源清单。下文仅介绍最常用的pkg换源方法。对于一个源列出多个镜像站,无需全部配置,只需选择其一即可。pkg源提供二进制安装包。pkg下载路径是/var/cache/pkg/。FreeBSD中pkg源分为系统级和用户级两个源,不建议直接修改/etc/pkg/FreeBSD.conf,因为该文件会随着基本系统的更新而发生改变。创建用户级源目录mkdir -p /usr/local/etc/pkg/repos创建用户级源文件vi /usr/local/etc/pkg/repos/cn.conf,写入以下内容:cn: { #…

  • UEFI Multi-System: Win + Linux + BSD + macOS(Hackintosh)

    本文讲述如何在UEFI环境中安装Win+Linux+BSD+macOS(Hackintosh)多系统。具体版本为:Windows 11 Pro 英文版 OS Build 22621.1992Xubuntu 22.04FreeBSD 13.2macOS Big Sur 11.5.2 20G95 with Clover5138 and OC 0.7.2 MF以上均为x64版本 写在前面 在UEFI环境中安装多系统难度并不大,但是Hackintosh黑苹果不是任何PC都能成功安装的,目前Hackintosh还不支持Intel 11代或更新的CPU。关于哪些机型支持黑苹果,有诸多网站可以参考。比较知名的有:黑苹果动力 – https://www.mfpud.com/黑果小兵的部落阁 – https://blog.daliansky.net/黑苹果 – https://heipg.cn/黑果魏叔 – https://www.imacosx.cn/老吴黑苹果工作室 – https://hpglw.com/ 本文直接使用支持黑苹果的Lenovo ThinkPad T14 Gen1以避免麻烦。2020年8月27日出厂的T14G1(型号20S1S1C21Z)内置SSD是Samsung PM981a 256GB / MZVLB256HBHQ-000L7,PM981/PM981a不支持黑苹果,会卡在16分钟,且目前没有解决办法。正巧有台T14G1的SSD发生故障,于2023年9月7日保修更换成了UMIS忆联 RPIRJ256VME2MWD,这个SSD支持黑苹果。 为方便截图,本文混合使用实体电脑和虚拟电脑截图。 硬件环境 Lenovo ThinkPad T14 Gen1 20S1S1C21Z: Intel i5-10310U + DDR4 16GB + NVMe…

  • 使用EEUpdate更改DEV_ID,让I219-V、I219-LM等Intel网卡可以在Win7中工作

    Intel有些网卡芯片相同,却故意设置成不同的DEV_ID,就区分成普通版和服务器版。例如I219-V、I219LM,普通PC主板设定DEV_ID为15B8,网卡就是I219-V;而服务器主板则将DEV_ID为15B7,网卡型号就变成了I219-LM。这样在集成I219-V网卡的普通PC主板安装Windows Server会因为没有网卡驱动而无法联网。另外,同样的I219-V和I219-LM,也是通过不同的DEV_ID,又分成了以数字命名的不同版本。如Intel® Ethernet Connection (4) I219-V和Intel® Ethernet Connection (16) I219-V,至少已经有从1到19的诸多版本。Intel在OS上对不同版本做了相应的限制,比如某些版本不提供Win7或Windows Server 2016 系统的驱动,已知的有:I219-LM的版本1-6以前的ESXi可以识别并驱动,版本6之后的就无法驱动;I219-V版本1-7,官方提供Win7驱动,大于版本7之后就只提供Win10以后系统的驱动了。本文讲述如何使用Intel官方工具EEUpdate更改DEV_ID,让I219-V、I219-LM等Intel网卡可以在Win7中工作。 已知的I219-V、I219-LM网卡版本和DEV_ID值如下: 网卡 DEV_ID Intel® Ethernet Connection I219-LM 156F Intel® Ethernet Connection I219-VI219-V 1570 Intel® Ethernet Connection (2) I219-LM 15B7 Intel® Ethernet Connection (2) I219-V 15B8 Intel® Ethernet Connection (3) I219-LM 15B9 Intel® Ethernet Connection (4) I219-LM 15D7 Intel® Ethernet Connection (4) I219-V 15D8 Intel® Ethernet Connection (5) I219-LM 15E3 Intel® Ethernet Connection (5) I219-V 15D6 Intel® Ethernet Connection (6) I219-LM 15BD Intel® Ethernet Connection (6) I219-V…

  • (TBC)Wi-Fi PIN Crack on Ubuntu 22.04

    考虑到普通用户面对WPA/WPA2等加密技术往往觉得无线安全设置太麻烦,Wi-Fi联盟(https://www.wi-fi.org/)推出了名为Wi-Fi Protected Setup(Wi-Fi保护设置,简称WPS)的认证程序,主要致力于简化无线网络的安全加密设置。在传统方式下,用户新建一个无线网络时,必须在接入点手动设置网络名(SSID)和安全密钥,然后在客户端验证密钥以阻止“不速之客”的闯入。WPS能帮助用户自动设置网络名(SSID)、配置最高级别的WPA2安全密钥,具备这一功能的无线产品往往在机身上设计有一个功能键,称为WPS按钮,用户只需轻轻按下该按钮或输入PIN码,再经过两三步简单操作即可完成无线加密设置,同时在客户端和路由器之间建立起一个安全的连接。WPS能够为用户提供两种实现方式:按钮配置(Push Button Configuration,PBC)和输入PIN码(Pin Input Configuration,PIN)本文讲述如何在Ubuntu 22.04中通过猜解PIN码破解Wi-Fi密码。 Wi-Fi PIN破解原理 PIN码是8位数字,分为前4位+后3位+最后1位校验用。WPS先验证前4位数是否正确,正确的话才会验证后3位,所以总共11000种可能,假设网络情况良好3秒钟猜测一个PIN码,只需9.17个小时即可遍历。 注意,现在不少无线路由器有防暴力猜测PIN码的功能,连续若干次PIN码尝试失败后,路由器会暂停PIN码连接功能一段时间;还有些无线路由器被PIN的频率太高,比如超过每秒钟1次,可能会死机。这会导致猜解PIN码的速度大幅下降。 有些品牌的无线路由器PIN码与其MAC地址有对应关系,这可以大范围提高猜解PIN码的速度。 用CDLinux实战PIN破解 (未完待续)