IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    love 0
    Teacher Du
    发表于
    2024-11-01 03:51:26

    Kickstart 无人值守原理及简介

    机房近期进来大批量的新服务器,装机成了最大烦恼,因为总是遇到一些机械式的重复工作。如何进行一次大批量部署服务器安装成了现在必须要解决的问题。今天杜老师讲解下 Kickstart 无人值守的原理!简介原理客户机需通过网卡「即 PXE」启动,发现 DHCP 服务器,从而自动获得 IP 及相关网络配置。同时也能获取 TFTP 服务器地址,通过 TFTP 提供 BootLoader,从而使客户端可以通过此 BootLoader 指定的 FTP/HTTP/NFS 服务器加载 vmlinuz 和 initrd.img 等安装系统所需包,进而安装系统。搭建无人值守步骤搭建 DHCP 服务器;搭建 TFTP 服务器;搭建 FTP/HTTP/NFS 服务器。PXE 的介绍PXE 预启动执行环境,由 Intel 公司开发,工作于 C/S 网络模式,支持电脑通过网络从远端服务器下载映像,由此支持通过网络启动操作系统,在启动过程中,终端要求服务器分配 IP 地址,再用 TFTP 协议下载一个启动软件包到本机内存中执行,由这个启动软件包完成终端基本软件设置,从而引导预先安装在服务器中的终端操作系统。严格来说,PXE 并不是一种安装方式,而是一种引导方式:Kickstart 的简介Kickstart 是种无人值守的安装方式。它的工作原理是在安装过程中记录需要人工干预填写的各种参数,生成一个名为 ks.cfg ...继续阅读 (49)


    love 0
    Teacher Du
    发表于
    2024-11-01 03:51:26

    Git 与 SVN 的区别

    Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大项目。Git 是 Linus Torvalds 为帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。Git 与常用的版本控制工具 CVS、Subversion 等不同,它采用分布式版本库的方式,不必服务器端软件支持。Git 与 SVN 区别点Git 是分布式的,而 SVN 不是。这是 Git 和其它非分布式版本控制系统,如 SVN、CVS 等,最核心的区别;Git 把内容按元数据方式存储,而 SVN 是按文件。所有的资源控制系统都是把文件的元信息隐藏在一个类似.svn/.CVS 等的文件夹里;Git 分支和 SVN 的分支不同。分支在 SVN 中一点不特别,其实它就是版本库中的另外一个目录;Git 没有一个全局版本号,SVN 有。目前为止这是跟 SVN 相比 Git 缺少最大的一个特征;Git 内容完整性要优于 SVN。Git 的内容存储用的是 SHA-1 哈希算法。这能确保代码内容的完整性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏。区别图示Git 与 SVN 区别如下图: ...继续阅读 (43)


    love 0
    Teacher Du
    发表于
    2024-11-01 03:51:26

    YAML 入门篇教程

    YAML 的语法和其它的高级语言类似,并且可以简单表达清单、散列表等数据形态。使用空白符号缩进和大量依赖外观的特色,特别适合用来表达或者编辑数据结构、各种配置文件、倾印调试内容、文件大纲。基本语法大小写较敏感;使用缩进表示层级关系;缩进不允许使用 tab,仅限空格;缩进空格数不重要,只要相同层级的元素左对齐即可;井号表示注释。对象对象:键值对的集合,又称映射、哈希、字典。对象键值对使用冒号结构表示 key: value,冒号后面要加一个空格。也可以使用 key:{key1: value1, key2: value2}。还可使用缩进表示层级关系;123key:child-key:valuechild-key2:value2较复杂的对象格式,可使用问号加一个空格代表一个复杂的 key,配合一个冒号加一个空格代表一个 value:123456?-complexkey1-complexkey2:-complexvalue1-complexvalue2意思即对象的属性是一个数组[complexkey1,complexkey2],对应值也是一个数组[complexvalue1,complexvalue2]。数组数组:一组按照次序排列的值,又称序列、列表。以横杠开头的行表构成一个数组:123-A-B-C支持多维数组,可以使用行内表示:1key:[value1, value2]数据结构子成员是一个 ...继续阅读 (52)


    love 0
    Teacher Du
    发表于
    2024-11-01 03:51:26

    Ansible Playbook 实战案例篇

    Playbook 是一个不同于使用 Ansible 命令行执行方式的模式,其功能更强大灵活。Playbook 可定制配置,可按照指定的操作步骤有序执行,支持同步、异步方式。值得注意的是 Playbook 通过 YAML 格式来进行描述定义的。案例拓扑实战案例拓扑如下:环境规划网络环境规划如下:角色NAT 外网 IPNAT 外网 IP部署软件m01eth0:10.0.0.61eth1:172.16.1.61Ansiblebackupeth0:10.0.0.41eth1:172.16.1.41rsyncnfseth0:10.0.0.31eth1:172.16.1.31NFS、sersyncweb01eth0:10.0.0.7eth1:172.16.1.7httpd配置 Ansible 对应的主机1234567[root@m01 ~]# vim /etc/ansible/hosts[web]172.16.1.7[nfs]172.16.1.31[backup]172.16.1.41注意:上面为 Ansible 主机清单列表。检查对应主机组和规划的 IP 是否一致1234567891011121314[root@m01~]# ansible web--list-hosthosts (1):172.16.1.7[root@m01~]# ansible backup--list-hosthost ...继续阅读 (45)


    love 0
    Teacher Du
    发表于
    2024-11-01 03:51:26

    Apache 的三种工作模式介绍「event 篇」

    Apache 目前一共有三种稳定的 MPM 模式。它们分别是 prefork/worker 和 event,它们同时也代表 Apache 的演变和发展。今天杜老师就聊下 event 模式!event 模式的工作原理event 是 Apache 最新的工作模式,和 worker 模式很像,不同的是在于它解决了 keep-alive 长连接时候占用线程资源被浪费的问题。event 工作模式中,会有一些专门的线程用来管理这些 keep-alive 类型线程,当真实请求过来的时候,将请求传递给服务器的线程,执行完毕之,又允许它释放。这样,一个线程就可以几个请求了,实现了异步非阻塞。这增强了在高并发场景下的请求处理。event 工作模式在遇到某些不兼容模块时,如果,将会回退到 worker 模式,一个工作线程处理一个请求。官方自带模块全部支持 event 工作模式的。event 工作模式需要 Linux 系统对 epoll 支持,才能启用。需要补充的是 HTTPS 的连接,它的运行模式仍然类似 worker 的方式,线程会被一直占用,知道连接关闭。event 模式的装方法在编译安装 Apache 的过程中,加入参数–with-mpm=event 即进行编译安装。也可以使用–enable-mpms-shared=all,这样在编译的时候会在 modules 目录下自动编译出三个 MPM 文件的 ...继续阅读 (44)


    love 0
    Teacher Du
    发表于
    2024-11-01 03:51:26

    Apache 的三种工作模式介绍「worker 篇」

    Apache 目前一共有三种稳定的 MPM 模式。它们分别是 prefork/worker 和 event,它们同时也代表 Apache 的演变和发展。今天杜老师就聊下 worker 模式!worker 模式的工作原理worker 模式和 prefork 模式相比较,worker 模式使用了多进程和多线程的混合模式,worker 模式也同样会先预派生一些子进程,然后每一个子进程创建一些线程,同时包括一个监听线程,每个请求过来会被分配到一个线程来服务。线程比起进程会更轻量,因为线程是通过共享父进程内存空间,因此,内存的占用会减少一些,在高并发场景下会比 prefork 有更多可用的线程,表现会更优秀一些。另外,如果一个线程出现问题也会导致同一进程下的线程出现问题,如果是多个线程出现了问题,也只是影响 Apache 的一部分,而不是全部的。由于用到多进程多线程,需要考虑到线程的安全,在使用 keep-alive 长连接的时候,某个线程会一直被占用,即使中间没有请求,需要等待到超时才会被释放。Apache 总是试图维持一个备用或空闲的服务线程池。这样,客户端无须等待新线程或者新进程的建立即可得到处理。在 Unix 中为了能够绑定 80 端口,父进程一般都是以 root 的身份启动,随后,Apache 会以较低权限的用户建立子进程和线程。User 和 Group 指令用于配置 Apache ...继续阅读 (42)


    love 0
    Teacher Du
    发表于
    2024-11-01 03:51:26

    natapp 树莓派开机启动脚本

    natapp 是基于 ngrok 的反向代理软件,通过在公网和本地运行的 Web 服务器之间建立一个安全的通道。natapp 可捕获和分析所有通道上流量,以便于后期分析和重放。运行 natapp 客户端1chmoda+x /usr/natapp/natapp注意:在官网下载客户端,放在目录/usr/natapp 中运行上面命令。创建配置文件12[default]authtoken=注意:根据官网提供的 authtoken 将配置写入 config.ini,放置在/usr/natapp 目录。测试运行情况1./natapp注意:在/usr/natapp 目录执行上面命令,测试穿透应用,确保无误后关闭客户端。服务运行脚本将下面的代码保存名为 natapp 放在/etc/init.d 目录:12345678910111213141516171819202122232425262728293031323334353637383940414243#!/bin/sh -e### BEGIN INIT INFO# Provides: natapp.cn# Required-Start: $network $remote_fs $local_fs# Required-Stop: $network $remote_fs $local_fs# Default-Start ...继续阅读 (55)


    love 0
    Teacher Du
    发表于
    2024-11-01 03:51:26

    Apache 的三种工作模式介绍「prefork 篇」

    Apache 目前一共有三种稳定的 MPM 模式。它们分别是 prefork/worker 和 event,它们同时也代表 Apache 的演变和发展。今天杜老师就聊下 prefork 模式!prefork 模式的工作原理prefork 模式是很古老但是非常稳定的模式。用的是多个子进程,Apache 在启动之初,控制进程会建立若干子进程,然后等待请求进来,并且总是视图保持一些备用的子进程。为不在请求到来时再生成子进程,所以需要根据需求不断的创建新的子进程,最大可以达到每秒 32 个直到满足需求为止。之所以这样做,是为减少频繁创建和销毁进程的开销。每个子进程中只有一个线程,在一个时间点,只能处理一个请求。在 Unix 系统,父进程通常以 root 身份运行以便绑定 80 端口,而 Apache 产生的子进程通常以一个低特权用户运行。User 和 Group 指令用于配置子进程的低特权用户。运行子进程的用户必须要对它所服务的内容有读取权限,但对服务内容之外的其它资源必须拥有尽可能少的权限。prefork 模式的安装方法在编译安装 Apache 的过程中,加参数–with-mpm=prefork 即可,如不加也可以,因为 Apache 默认采用 prefork 模式进行编译安装。也可以使用–enable-mpms-shared=all,这样在编译的时候会在 modules 目录下自动编译 ...继续阅读 (44)


    love 0
    Teacher Du
    发表于
    2024-11-01 03:51:26

    MySQL 主键和唯一索引区别

    主键的完整称呼是主键约束,是 MySQL 中使用最为频繁的约束。一般情况为了便于 DBMS 更快的查找到表中的记录,都会在表中设一个主键。MYSQL 索引用来快速地寻找那些具有特定值的记录,如果没有索引,执行查询时 MySQL 必须从第一个记录开始扫描整个表的所有记录,直至找到符合要求记录。两者区别主键是种约束,唯一索引是种索引,两者在本质上是不同的。主键创建后一定包含一个唯一性索引,唯一性索引并不一定是主键。唯一性索引列允许空值,而主键列不允许为空值。主键列创建时,已经默认为非空值加唯一索引了。主键可被其他表引用为外键,唯一索引不能。一个表最多能创建一个主键,但可创建多个唯一索引。主键和唯一索引都可有多列。主键适合那些不容易更改的唯一标识,如自动递增列、身份证等。在 RBO 模式,主键的执行计划优先级高于唯一索引。两者都可以提高查询的速度。索引是一种特殊的文件,它们包含对数据表里所有记录的引用指针。总体来说主键相当于一本书籍的页码,索引相当于书籍的目录。其实主键和索引都是键,不过主键是逻辑键,索引是物理键,意思是主键不实际存在,而索引实际存在在数据库中,主键一般都要创建,主要用来避免一张表中有相同的记录,索引一般可以不建,但如果需要对该表进行查询操作,则最好建,这样可以加快检索速度。 ...继续阅读 (65)


    love 0
    Teacher Du
    发表于
    2024-11-01 03:51:26

    何为内网穿透

    前两天杜老师提到在家里搭建了一台 NAS 服务器,并做了内网穿透可实现随时访问。有小伙伴问我何为内网穿透,今天就跟大家简单说说!技术介绍内网穿透简单来说就是将内网外网通过外网服务器隧道打通,内网的数据让外网可以获取。如常用的办公室软件等,一般在办公室或着家里,通过宽带上网,这样办公软件只在本地的局域网之内才能访问,那么问题来了,如果是手机上,或公司外地的办公人员,如何访问到办公软件呢?这时就需要内网穿透工具了。运行隧道之后,绑定一个专属域名、端口,办公软件就已经在公网上了,在外地的办公人员可在任何地方愉快的访问办公软件了!能做什么外网可访问上文举例的办公软件;放在家里的树莓派,服务器等,需远程 SSH 管理,这样打通服务器的 22 端口即可远程通过 SSH 操作服务器了;微信、支付宝等本地开发。现在微信、支付宝等应用,需服务器接收微信、支付宝发送的回调信息,而在本地开发程序的话,还得实时上传到服务器,以便支持微信、支付宝的回调信息,如果用了内网穿透软件,将回调地址设置成绑定域名,回调数据可立即传递回本地,这样很方便的在本地就可以实时调试程序,无须再不断上传服务器等繁琐且无意义的步骤;一些企业的内部数据库,由于安全性等原因,不愿意放到云服务器上,可将数据库放到办公室本地,然后通过内网穿透隧道映射,这样既可保证安全,又保证公网可正常访问;一些开发板做的监控等信息,每台设备运行一条隧道, ...继续阅读 (43)


    love 0
    Teacher Du
    发表于
    2024-11-01 03:51:26

    新一代多系统启动 U 盘解决方案

    Ventoy 是一个制作可启动 U 盘的开源工具。有了 Ventoy 就无需反复地格式化 U 盘,只需要把 ISO 文件拷贝到 U 盘里面就可以启动了,无需其他操作。工具特点完全开源;使用简单;无需跟随操作系统升级而升级 Ventoy;直接从 ISO 文件启动,无需解开;无差异支持 Legacy+UEFI 模式;UEFI 模式支持安全启动 Secure Boot;不会影响 U 盘日常普通使用;支持直接启动 WIM 文件 Legacy+UEFI;可支持 MBR 和 GPT 分区格式;支持自动安装部署;可支持超过 4GB 的 ISO 文件;保留 ISO 原始的启动菜单风格;可支持大部分常见操作系统;不仅仅是启动,而是完整安装过程;ISO 文件可支持列表模式或目录树模式显示;版本升级时数据不丢失;支持插件扩展;启动过程中支持 U 盘设置写保护。工具截图看看启动页面: ...继续阅读 (44)


    love 0
    Teacher Du
    发表于
    2024-11-01 03:51:26

    DevTools failed to load SourceMap 问题的解决

    有时我们会压缩 JavaScript 文件后再调用,压缩过程中可能会破坏掉 JavaScript 文件中的部分代码导致调用失败,浏览器则会通过 SourceMap 找到原来的 JavaScript 文件!当找不到 SourceMap 则弹出警告提示。问题表现打开浏览器检查器会看到警告的提示:解决方法点击检查器配置项,取消 Enable tab moves focus 项勾选即可: ...继续阅读 (46)


    love 0
    Teacher Du
    发表于
    2024-11-01 03:51:26

    如何关闭浏览器 SameSite 警告

    作为强迫症的完美患者,杜老师绝对不允许浏览器的调试工具中出现任何错误的提示,今天遇到了 SameSite 警告,记录一下解决方法!问题原因杜老师说新添加了说说页面,为了避免垃圾内容,设置了登录后才可发表,而登录信息会以 Cookie 的形式存放在本地。而说说模块的调用是另一个域名,也就是说 Cookie 是属于另一个域名。当网站出现这种情况时,浏览器就会发出 SameSite 警告。解决方法Chrome 浏览器地址栏输入 chrome://flags,搜索框输入 Cookie deprecation messages,禁用,重启浏览器就行了: ...继续阅读 (39)


    love 0
    Teacher Du
    发表于
    2024-11-01 03:51:26

    Hexo 指定不进行渲染的文件或目录

    有时候需要放一些已经做好的页面到博客上去,而默认情况下,Hexo 也会将这些页面进行处理,导致这些页面渲染上了博客主题,如何不处理这些页面呢?设置方法1skip_render:DIRNAME/FILENAME.html注意:假设 source 里面有个 DIRNAME 目录,要忽略该目录下的 FILENAME.html 页面,可以通过在_config.yml 设置 skip_render 来忽略,具体如上。设置扩展单个文件夹下全部文件:1skip_render:DIRNAME/*单个文件夹下指定类型文件:1skip_render:DIRNAME/*.html单个文件夹下全部文件及子目录:1skip_render:DIRNAME/**多个文件夹及各种复杂情况:123skip_render:-"DIRNAME/*.html"-"DIRNAME/**/*" ...继续阅读 (41)


    love 0
    Teacher Du
    发表于
    2024-11-01 03:51:26

    Hexo 生成页面出现问题 WARN No layout

    今天杜老师在更新本站的主题时,遇到了空白页面的问题,并弹出 WARN No layout 错误提示。记录一下以本站主题为例如何解决该问题!问题原因Hexo 本地测试运行重启后页面空白,终端上提示 WARN No layout。使用hexo clean然后重新hexo g再次运行还是空白。运行 git clone 指令获得主题后,在 theme 主题下保存目录的名称为 volantis-x,如果在_config.yml 里设置的是 volantis,就会出现这样的 WARN,页面显示的是空白。解决方法把 theme 下的文件夹名称改为 volantis;将_config.yml 里设置改为 volantis-x。 ...继续阅读 (43)


    love 0
    Teacher Du
    发表于
    2024-11-01 03:51:26

    为 Nextcloud 添加 Markdown 编辑器

    杜老师平时写博客都是用 Markdown,为了方便随时编写,特地将 md 文件存放在 NAS,而作为 NAS 程序的 Nextcloud,如果有 Markdown 编辑功能,岂不美哉?添加功能点击右上角的头像图标,选择应用,在 Office&text; 一项中找到 Markdown Editor,点击下载并启用就行了:注意问题安装完 Markdown 编辑器后发现,打开 md 后缀的文件,用的依然是 Nextcloud 自带的编辑器,后来在官网中找到解决办法。点击右上角的头像图标,选择应用,在您的应用一项中找到 Text 点禁用,则关闭 extcloud 自带的编辑器。如果不想影响 txt 后缀文件的编辑,还可以在 Office&text; 一项中找到 Plain text editor,点击下载并启用就行了。 ...继续阅读 (44)


    love 0
    Teacher Du
    发表于
    2024-11-01 03:51:26

    解决 Nextcloud 出现 trusted_domains 问题

    最近买了个树莓派,在家里搭建 NAS,因为移动办公需求,做了一个内网穿透,为 NAS 绑定域名,而通过域名访问时,出现了 trusted_domains 问题,说下是如何解决的!问题截图当 Nextcloud 出现 trusted_domains 问题时,页面会显示如下的内容:解决方法1234567'trusted_domains'=>array(0=>'localhost',1=>'server1.example.com',2=>'192.168.1.50',3=>'[fe80::1:50]',),编辑 Nextcloud 目录下的 config.php 文件,找到 trusted_domains 项,安装上面格式添加域名即可! ...继续阅读 (68)


    love 0
    Teacher Du
    发表于
    2024-11-01 03:51:26

    Node.js 的安装

    Node.js 是一个开源与跨平台的 JavaScript 运行环境。它是一个可用于几乎任何项目的流行工具!关于它的介绍,杜老师是想说这些,如果想要更深入的探索,可以自行查找资料,或者在评论区与我交流!下载地址版本为 v14.6.0-x64,后期如有版本更新,大家可以自行关注,或者在评论区留言咨询最新版本:下载地址安装过程这个官网下载页面,速度不是很快,建议使用杜老师提供的下载地址:Next 下一步:同意协议并下一步:选择安装路径,建议不要放在系统盘内,且不要使用含中文路径:安装组件,如果没有特殊需求,建议默认即可:是否自动安装必要组件?个人建议不要安装,因为耗时不说,还会出现一些错误,故不勾选:设置完成,开始安装:安装完成: ...继续阅读 (65)


    love 0
    Teacher Du
    发表于
    2024-11-01 03:51:26

    去不图床 PicGo 上传插件的使用

    PicGo 可以通过插件支持第三方图床平台,而去不图床支持 API 上传,今天杜老师就说说如何通过 PicGo 将图片上传到去不图床!图床特点开源程序搭建,可二次开发提供更多需要的功能;底层阿里云香港 ECS 主机保障稳定运行,图片存放于又拍云 USS,提供近 5TB 超大容量存储空间;国内通过又拍云 CDN 做节点加速,支持每月至少 2TB 的外链流量;账号付费,保障域名及服务器长久运营。安装步骤首先打开 PicGo 主面板,点击插件设置,在搜索框内输入 lskypro,在结果中点击安装:如果提示需安装 Node.js,可按下篇教程操作:安装过程是自动的,等待即可:安装完成后建议重启 PicGo:该插件需要 Token,打开浏览器输入 7bu.top/api/token?email=EMAIL&password;=PASSWORD,注意 EMAIL 是您在去不图床注册邮箱,PASSWORD 是注册密码,回车后即可看到 Token,复制其值稍候使用:回到 PicGo 主面板,点击图床设置,找到最下面 LskyPro Uploader,Url 输入https://7bu.top/api/upload:Token 位置输入刚复制的值:最后点击确定即可,建议设置默认图床: ...继续阅读 (44)


    love 0
    Teacher Du
    发表于
    2024-11-01 03:51:26

    PicGo 的安装

    所谓图床工具,是自动把本地图片转换成链接的一款工具,网络上有很多图床工具,今天为大家介绍的 PicGo 算上一款比较优秀的图床工具,可以支持多种常用图床,功能强大,简单易用!工具特点支持拖拽图片上传;支持快捷键上传剪贴板里第一张图片;Windows 和 macOS 可支持右键图片文件通过菜单上传;上传图片后可自动复制链接到剪贴板;支持自定义复制到剪贴板的链接格式;可修改快捷键;支持插件系统,已有插件可支持第三方图床;支持通过发送 HTTP 请求调用 PicGo 上传。下载安装版本为 2.3.0-beta.3,后期如有版本更新,大家可以自行关注,或者在评论区留言咨询最新版本:下载地址下载后在本地双击安装即可,如果您的电脑为多用户,而且 TA 也需要使用这款工具,可以选第一个选项,否则推荐选仅为我安装:安装目标地址可以随意修改,建议不要安装到系统盘,同时进来不要使用中文安装路径:安装过程十分简单,稍等片刻即可看到完成界面,点击完成即可:PicGo 会自动运行,可以在桌面右下角找到运行图标:双击图标即可打开 PicGo 主页面,根据上面提示即可快速上手: ...继续阅读 (42)


    love 0
    Teacher Du
    发表于
    2024-11-01 03:51:26

    Win10 的 S 模式是什么

    大部分用户可能不知道 Win10 系统下有一个 S 模式,什么是 S 模式?S 模式中的 Win10 是一个受限制的锁定 Windows 操作系统。如果想了解更多 S 模式,不妨看看下面的详细内容吧!模式介绍微软在这里投入安全性,速度和稳定性。由于 Win10 只能从商店运行应用程序,因此来自网络的恶意软件将无法运行。您无法从网上安装应用程序,因此它们无法安装启动任务,更不会减慢启动过程或隐藏在后台并侦察您的垃圾文件。S 模式也推动了 Bing 搜索引擎。在 S 模式下 Edge 网络浏览器使用 Bing 作为默认搜索引擎。您无法将 Edge 的默认搜索引擎更改为 Baidu 或其他任何不首先离开 S 模式的搜索引擎。S 模式下的 Win10 无法通过注册表编辑器直接访问 Windows 注册表。不能使用像 PowerShell 这样的命令行。但其它各种开发工具不会受限制。如果要运行的所有应用程序在 Microsoft Store 中均可用,那么 S 模式是更安全的体验。这就是为何微软最初为学校推出了 S 模式。可运行 Microsoft Edge、Microsoft Office 和 Store 中其它产品,包括 QQ 以及微信等应用。这有点像 iPad 上的 iPadOS 操作系统,它只允许从 App Store 安装应用程序。而 S 模式是限制在 Microsoft 商店中提 ...继续阅读 (38)


    love 0
    Teacher Du
    发表于
    2024-11-01 03:51:26

    Hexo 页面源代码压缩脚本

    通过 Hexo 程序生成的页面,其源代码会产生大量的空行,不仅影响排错,且会占用本地、网络资源。今天杜老师为大家分享一段 Python 的代码,可以对其进行压缩!压缩脚本123456789101112131415161718192021222324252627#!/usr/bin/env python3# coding: UTF-8importre,osdefminify_html(filename):withopen(filename,'r',encoding='utf-8')asp:withopen(filename+'.tmp','w',encoding='utf-8')ast:whileTrue:l = p.readline()ifnotl:breakelse:ifre.search('\S',l):t.write(l)os.remove(filename)os.rename(filename+'.tmp',filename)print('%s 已压缩!'%filename)defyasuo(dir_path):ifdir_path[len(dir_path)-1] =='/':dir_path ...继续阅读 (43)


    love 0
    Teacher Du
    发表于
    2024-11-01 03:51:26

    Linux 服务器大量向外发包问题排查

    最近杜老师的一台云服务器,向外大量发送流量,不断的建立 TCP 连接,目标地址是美国一个 IP,估计被当成肉鸡了,比较悲惨,今天杜老师聊一下如何处理这个问题!问题排查1sar-n DEV210注意:在服务器运行上面命令,确认了出现大量发包的问题。问题处理开始之前,先清除 eth0 所有队列规则:1tc qdisc deldeveth0 root2> /dev/null> /dev/null定义顶层队列规则,指定 default 类别编号:12tc qdisc add dev eth0 root handle1: htbdefault20tcclassadddeveth0parent1:classid1:20htbrate2000kbit查看状态:12yuminstall-y tcpdumptcpdump -nn找到大量的 IP 地址,可以将异常 IP 加入到/etc/hosts.deny,或者防火墙设置下。之后安装个 nethogs:12345yum -yinstallepel-releaseyum clean allyum makecacheyum -yinstallnethogsnethogs处理结果找到大量发包进程,之后 kill 掉,排查下这个进程是什么程序,文件路径在哪,删除掉异常的文件。目前的问题解决了,观察一段时间,看看问题是否还会发生,防火墙将公网 IP 进行了访问 ...继续阅读 (65)


    love 0
    Teacher Du
    发表于
    2024-11-01 03:51:26

    Ubuntu 如何挂载 OSS

    对象存储 OSS 是阿里云提供的海量、安全、可靠的云存储服务。OSS 具有与平台无关的 API 接口,可在任何应用、任何时间、任何地点存储和访问任意类型的数据。挂载步骤12345678wget http://gosspublic.alicdn.com/ossfs/ossfs_1.80.6_ubuntu18.04_amd64.debapt update && apt -y install gdebi-coregdebi ossfs_1.80.6_ubuntu18.04_amd64.debechoBucket:AccessKey ID:AccessKey Secret > /etc/passwd-ossfschmod640 /etc/passwd-ossfsmkdir/OSSDIRossfs Bucket /OSSDIR -ourl=EndPointecho'ossfs Bucket /OSSDIR -ourl=EndPoint'>> /etc/rc.local注意:第一步的下载地址可以自行搜索,或者在评论去留言找杜老师索取,文中的版本支持 Ubuntu18.04+。命令注释第三步的 Bucket/AccessKey ID/AccessKey Secret 需要根据实际值修改;第五步的目录名称可自定义;第六步的 EndPoint 需要根据实际值修改;使用开机自启脚本 ...继续阅读 (61)


    love 0
    Teacher Du
    发表于
    2024-11-01 03:51:26

    思科策略路由

    两点之间直线最短,故图中 R1 如果与 R4 通信,只通过 R2 路由是最快的。但今天我们任性下,让数据包经过 R3 路由器,再发往 R4。实验拓扑实验拓扑如图:数据走向我们需要数据包的发送走向:192.168.1.2192.168.2.2192.168.3.2192.168.4.2我们需要数据包的接受走向:192.168.3.1192.168.1.1操作命令1234567891011R4#configureterminalR4(config)#interfacelo0R4(config-if)#ipaddress2.2.2.2255.255.255.0R4(config-if)#exitR4(config)#interfacefastEthernet0/0R4(config-if)#ipaddress192.168.4.2255.255.255.0R4(config-if)#noshutdownR4(config-if)#exitR4(config)#routerripR4(config-router)#network2.2.2.0R4(config-router)#network192.168.4.0注意:首先我们需要配置基础网络环境,实现全网连通。「仅以 R4 路由器为例」配置如上。连通测试然后我们测试一下网络的连通性,通过 traceroute 命令可以看得出,路由先通过 ...继续阅读 (90)


    love 0
    Teacher Du
    发表于
    2024-11-01 03:51:26

    IP/PV/UV 是什么

    做服务器运维,亦或者网站运营时,经常会听到 IP/PV/UV,这些东东到底是什么呢?它们又有什么作用,今天杜老师为大家简单讲解一下!IP 是什么关于 IP 有很多解释,它是网络地址,通过它可以定位服务器;也是流量的代名词,我们常常听到某某明显自带 IP 的说法,说明 TA 代言或参演的作品会有很多人支持。今天我们要说的 IP 是偏前者,指的是一个真实的地址。我们都知道在上网前需到服务商办理业务,就是租用宽带。上网时服务商会提供一个临时 IP,我们就是通过这个 IP 获得一个可通过互联网获取数据的身份。这里需要知道的是,即便家里的网络设备比较多,在使用时对外都是一样的 IP。PV 是什么PV 全称 Page View,中文译为页面浏览,指代网站中的一个页面被浏览的次数。为了让大家更容易理解,我们举个简单例子。杜老师说中的两篇文章,当有访客去分别访问时,就会产生 2 个 PV 了。而且其中一个页面被访客刷新页面后,也会额外产生 1 个 PV 的。UV 是什么UV 全称 User View,中文译为用户浏览,指代有几个用户访问了你的网站。这个统计与 IP/PV 不同,为了让大家更好的理解,我们对比说明一下。PV 的数值一般最大,因为不论浏览还是刷新,都会增加 PV 值;IP 的数值一般最小,因为同一网络内的访问,只算作 1 个 IP。比如同一网吧所有人都登录一个网站,对于该网站来说只进量 ...继续阅读 (44)


    love 0
    Teacher Du
    发表于
    2024-11-01 03:51:26

    Firefox 火狐浏览器关闭缓存

    为了给访客带来更好的体验,杜老师说经常需要升级网站,对页面的细节进行调整。而修改页面代码后,往往需要清空浏览器的缓存,才能看到更新后的内容,有什么办法能让火狐浏览器关闭缓存,今天杜老师就来说一下!问题表现最近做项目的时候,在 Firefox 火狐浏览器发现缓存难清理,用CTRL+F5或者CTRL+R等在谷歌和 IE 浏览器的快捷键没用,搜了一下,发现火狐清理缓存比较麻烦,默认快捷键CTRL+SHIFT+DEL。而且是弹窗选择性清理,还要点击按钮选择,在 Web 开发调试中非常的不方便不科学,然后问度娘发现火狐是要进入它的参数设置里设置本地不缓存的。解决方案Firefox 火狐浏览器地址栏输入about:config:找到browser.cache.check_doc_frequency选项双击将3改成1:找到browser.cache.disk.enable选项把true改为false:找到browser.cache.memory.enable选项把true改为false: ...继续阅读 (46)


    love 0
    Teacher Du
    发表于
    2024-11-01 03:51:26

    端口网络地址转换

    通过动态网络地址转换,我们可以实现多台终端同时访问外网,但是我们可以发现,随着终端数量增加,外网 IP 的需求也会增加。在现实中,一个外网的 IP 是相当昂贵的,也就是说,当使用动态网络地址转换时,成本很高。那如何低成本解决外网访问问题?我们学习一下端口网络地址转换。实验拓扑实验拓扑如图:实验步骤第一步当然是配置网络环境,因为我们使用的拓扑与《动态网络地址转换》相同,所以可以参考那篇教程方法配置。接下来我们开始配置基于端口的网络地址转换,在 R1 路由上面:1234567R1(config)#access-list1permit192.168.1.00.0.0.255R1(config)#ipnat inside source list1interface fastEthernet1/0overloadR1(config)#interfacefastEthernet0/0R1(config-if)#ipnat insideR1(config-if)#exitR1(config)#interfacefastEthernet1/0R1(config-if)#ipnat outside方案测试我们再来测试一下:同样我们在 R2 上增加一条 ACL,然后测试下 C2 可否 Ping 通:最后我们查看一下 R1 路由器的 NAT 转换列表,可以看出多台终端使用一个外网 IP 转发出,但是后面 ...继续阅读 (50)


    love 0
    Teacher Du
    发表于
    2024-11-01 03:51:26

    动态网络地址转换

    在之前的教程中我们学习了网络地址转换。我们可以发现,这种转换是一对一转换形式,如果内网中有多个终端如何解决?今天我们学习一下动态网络地址转换。实验拓扑实验拓扑如图:基本配置首先我们需要配置一下网络环境,如图配置好每台设备的网络地址,其中 R1 路由器的 f1/0 端口需要设置多 IP,还需在此端口设置默认路由:1234567891011R1#configureterminalR1(config)#interfacefastEthernet0/0R1(config-if)#ipaddress192.168.1.1255.255.255.0R1(config-if)#noshutdownR1(config-if)#exitR1(config)#interfacefastEthernet1/0R1(config-if)#ipaddress1.1.1.2255.255.255.0R1(config-if)#ipaddress1.1.1.3255.255.255.0secondaryR1(config-if)#noshutdownR1(config-if)#exitR1(config)#iproute0.0.0.00.0.0.0fastEthernet1/0接下来我们设置 R2 路由,无需过多设置,简单配置各端口 IP 即可:12345678R2#configureterminalR2(co ...继续阅读 (57)


    love 0
    Teacher Du
    发表于
    2024-11-01 03:51:26

    RIP 如何实现与 OSPF 的通信

    之前我们学习了思科的动态路由,这种路由协议,一般应用于中小型架构。后来,我们又了解 OSPF 路由协议,这种协议一般用于大型网络。那么如何让这两种网络通信!实验前提相比 OSPF 的区域宣告,动态路由使用全网宣告,这两个矛盾体如何实现通信?今天我们就来学习下路由重定向。首先需要对照《思科动态路由》以及《简单聊OSPF》教程配置下图,Router0 和 Router1 使用的动态路由,剩下路由使用的 OSPF 协议,其中 Router2 和 Router3 的 Fa0/0 都是 area 0,Router3 的 Fa0/1 口、Router4 和 Router5 都是 area 1。实验拓扑实验拓扑如图:方案步骤12345678910111213141516171819202122Continue with configuration dialog? [yes/no]: noRouter>enableRouter#configure terminalRouter(config)#interface FastEthernet0/0Router(config-if)#no shutdownRouter(config-if)#ip address 192.168.2.2 255.255.255.0Router(config-if)#exitRouter(config)#interface ...继续阅读 (43)

上一页 227/4404 下一页
沪ICP备19023445号-2号
友情链接