KALI安装操作及过程
以下是在计算机上安装 Kali Linux 的详细教程:(通常我直接使用虚拟机)
解压虚拟机安装包,直接在虚拟机中打开KALI
(将内存改为4GB)
初始密码账号:kali
一、准备工作
-
下载 Kali Linux 镜像文件
- 访问 Kali Linux 官方网站(Kali Linux | Penetration Testing and Ethical Hacking Linux Distribution),在官网的下载页面选择适合你计算机硬件的镜像文件。Kali 提供了 32 位和 64 位版本,如果你计算机是较新的且支持 64 位操作系统,建议下载 64 位版本,因为它能更好地利用硬件资源。例如,对于基于英特尔或 AMD 64 位处理器的电脑,选择 64 - bit 版本。
- 同时,还可以根据你的安装需求选择不同的镜像类型,如传统的 ISO 镜像用于物理机安装,或者 Vagrant box 等用于虚拟机环境。
-
准备 USB 驱动器(用于制作启动盘)
- 确保 USB 驱动器的容量至少为 2GB(推荐 4GB 或更大),因为 Kali Linux 镜像文件大小以及安装过程中可能需要一些额外的空间来存储临时文件。
- 注意,USB 驱动器中的数据会被格式化清空,所以在制作启动盘之前,备份好 USB 驱动器中的重要数据。
-
制作启动盘工具
- 推荐使用 Rufus(Rufus - The Official Website (Download, New Releases))工具来制作 Kali Linux 启动盘。Rufus 是一款免费且易于使用的工具,支持多种操作系统镜像制作启动盘。下载并安装 Rufus 到你的计算机上。
二、制作启动盘
-
打开 Rufus
- 插入准备好的 USB 驱动器,然后打开 Rufus 软件。Rufus 会自动检测到插入的 USB 驱动器。
-
配置 Rufus 选项
- 在 Rufus 界面中,分区选择 “GPT”(如果你的计算机是 UEFI 启动模式)或 “MBR”(如果是传统的 BIOS 启动模式)。对于大多数较新的计算机,UEFI 模式(GPT 分区)是更好的选择。
- 文件系统选择 “FAT32”,簇大小保持默认即可。
- 在 “开始” 选项处,选择 “写入镜像文件”,然后在下面的 “镜像文件” 框中,通过浏览找到之前下载的 Kali Linux 镜像文件。
-
开始制作启动盘
- 确认设置无误后,点击 “开始” 按钮。Rufus 会提示你 USB 驱动器中的数据将被删除,点击 “确定”。制作过程可能需要几分钟时间,根据你的 USB 驱动器速度和镜像文件大小而定。当制作完成后,Rufus 会显示 “准备就绪”。
三、安装 Kali Linux(以 UEFI 模式为例)
-
进入计算机 BIOS/UEFI 设置
- 将制作好的 Kali Linux 启动盘插入计算机,然后重启计算机。在计算机开机过程中,根据屏幕上的提示(通常是按 Del、F2、F10 等键,不同计算机品牌进入 BIOS/UEFI 的按键不同)进入 BIOS/UEFI 设置界面。
-
设置启动顺序
- 在 BIOS/UEFI 的 “启动” 选项中,将 USB 驱动器设置为第一启动项。这样计算机在启动时会首先从 USB 驱动器加载 Kali Linux 安装程序。
-
启动安装程序
- 保存 BIOS/UEFI 设置并退出后,计算机将从 USB 驱动器启动 Kali Linux 安装程序。在启动界面,你会看到一些选项,选择 “Graphical install”(图形化安装),这样安装过程会更加直观方便。
-
选择语言
- 在安装向导的第一步,选择安装过程中使用的语言,如英语(English)等。这个语言设置也会影响到安装完成后的系统默认语言。
-
选择键盘布局
- 接着选择键盘布局,通常选择默认的键盘布局即可,除非你有特殊的键盘需求,如使用非标准键盘或特定国家的键盘布局。
-
配置网络连接(可选)
- 如果你的计算机在安装过程中有可用的网络连接(如通过以太网或 Wi - Fi),可以在这一步配置网络。对于 Wi - Fi 连接,需要输入 Wi - Fi 密码等信息。网络连接对于安装过程中的软件包更新等操作很有帮助,但如果没有网络连接,也可以先跳过,在安装完成后再配置。
-
配置磁盘分区
- 这是安装过程中的一个关键步骤。Kali Linux 安装程序提供了多种分区方式:
- 自动分区:对于初学者或者不太熟悉磁盘分区的用户,可以选择 “Guided - use entire disk”(使用整个磁盘,自动分区)选项。安装程序会自动为 Kali Linux 分配磁盘空间,包括根分区(/)、交换分区(swap)等。交换分区的大小通常根据你的计算机内存大小来确定,一般建议是内存大小的 1 - 2 倍(如果内存小于 4GB,交换分区可以适当大一些)。
- 手动分区:如果你对磁盘分区有一定的了解并且有特殊的分区需求,如为 /home 目录单独分区、划分多个数据分区等,可以选择 “Manual”(手动分区)选项。在手动分区时,需要先创建分区,然后选择分区类型(如主分区或逻辑分区)、文件系统类型(如 ext4 用于普通数据存储,swap 用于交换空间),并设置分区大小和挂载点。例如,创建一个根分区(/),大小可以根据磁盘空间和个人需求来定,文件系统选择 ext4,挂载点设置为 “/”。
-
设置用户名和密码
- 分区完成后,需要设置用户名和密码。用户名是你登录 Kali Linux 系统时使用的名称,密码需要设置得足够复杂和安全,因为 Kali Linux 可能会用于一些安全测试等操作,确保系统的安全性很重要。
-
配置软件包管理器(可选)
- 在安装过程中,可以选择配置软件包管理器。如果在前面步骤中已经配置了网络连接,可以选择更新软件包列表并安装一些常用的软件包。这一步可以根据个人需求来决定,如果你不确定,也可以先跳过,在安装完成后再通过软件包管理器(如 apt)来安装软件。
-
完成安装
- 安装程序会开始将 Kali Linux 文件系统安装到磁盘分区上,这个过程可能需要一段时间,具体取决于你的计算机性能和磁盘速度。安装完成后,安装程序会提示你移除 USB 驱动器,然后按回车键重新启动计算机,此时计算机将从硬盘启动 Kali Linux 系统,你就可以开始使用安装好的 Kali Linux 了。
放大字体:ctrl+shift+加号/减号进入root权限:sudo su 输入密码
配置好后先【快照】→【拍摄快照】(1-10分钟)
纳特模式为“网络地址转换”
每个网卡对应不同的IP地址
查看ip地址:ifconfig
渗透:攻击漏洞+内网渗透
内网渗透(智能门锁、摄像头、电脑、手机、游戏机PS5/4、小爱童鞋、路由器)
(如果经常移动位置,每换一个位置就更新IP,点复制物理连接)
如果无法点击桥接模式跳转链接
1.解决---设备“VMnet0”上的网桥没有运行。该虚拟机无法与此主机或网络上的其他主机进行通信。 无法连接虚拟设备“Ethernet0”。-CSDN博客
2.VMware如何彻底卸载干净_vm和镜像文件怎么卸载干净-CSDN博客
在 Kali Linux 中,主要有以下几种网络模式,它们各有特点:
-
桥接模式(Bridged Mode)
- 工作原理:在桥接模式下,Kali 虚拟机(如果是在虚拟机环境下)就像是连接在物理网络中的一台独立主机。它的网络接口直接连接到物理网络的桥接设备上,和物理主机处于同一个网段。虚拟机可以直接访问物理网络中的其他设备,物理网络中的其他设备也可以直接访问虚拟机,就好像虚拟机是一个物理网络中的真实独立计算机一样。
- 应用场景:这种模式非常适合用于渗透测试环境中的嗅探(Sniffing)操作,因为它可以捕获到同一网段内的所有网络流量。例如,当需要对局域网内的其他主机进行漏洞扫描或者网络协议分析时,桥接模式能够提供最直接的网络访问方式,使得 Kali 系统能够像真实的局域网主机一样发送和接收数据包。
- 优点:
- 提供完全的网络访问权限,如同物理主机一样。可以方便地与局域网内的其他设备通信,包括访问共享资源、连接网络打印机等。
- 方便进行网络监控和流量分析,能够捕获局域网内的广播包和其他主机之间的通信数据。
- 缺点:
- 安全性风险相对较高。因为虚拟机在网络中的地位和物理主机相同,所以如果虚拟机被入侵,攻击者可能会利用其访问权限对整个局域网造成威胁。
- 需要与物理网络在同一网段,可能会受到物理网络的 IP 地址分配策略的限制,有时候可能会出现 IP 地址冲突等问题。
-
NAT 模式(Network Address Translation)
- 工作原理:NAT 模式下,虚拟机通过宿主机(运行虚拟机的物理主机)的网络连接来访问外部网络。虚拟机的网络流量会被发送到宿主机,宿主机将虚拟机的内部 IP 地址转换为自己的外部 IP 地址,然后将数据包发送到外部网络。外部网络返回的数据包也会经过宿主机的 NAT 转换,再发送回虚拟机。
- 应用场景:这种模式适用于当你希望虚拟机能够访问外部网络(如互联网),但又不希望它直接暴露在外部网络中时。例如,在进行软件测试或者简单的网络工具使用时,NAT 模式可以提供基本的网络连接功能,同时相对较为安全。
- 优点:
- 相对安全,因为虚拟机的内部 IP 地址被隐藏在宿主机之后,外部网络无法直接访问虚拟机,减少了外部攻击的风险。
- 易于配置,在大多数虚拟机软件中,NAT 模式是默认的网络连接方式之一,只需要简单的设置就可以让虚拟机通过宿主机访问外部网络。
- 缺点:
- 虚拟机无法直接被外部网络访问,这对于某些需要对外提供服务(如搭建 Web 服务器进行测试)的场景就不太方便。
- 由于所有的网络流量都要经过宿主机的 NAT 转换,在一些对网络性能要求较高的场景下,可能会出现性能瓶颈。
-
仅主机模式(Host - Only Mode)
- 工作原理:仅主机模式下,虚拟机只能与宿主机进行通信,无法访问外部网络,也不会被外部网络访问。虚拟机和宿主机之间通过一个虚拟的专用网络进行连接,这个网络通常是由虚拟机软件创建的一个内部网络。
- 应用场景:主要用于在一个封闭的环境中进行测试,比如测试本地的网络服务或者开发一些只需要在本地主机和虚拟机之间交互的应用程序。例如,在开发一个数据库应用程序时,开发人员可以在仅主机模式下的虚拟机中安装数据库服务器,在宿主机上安装客户端应用程序,通过内部网络进行测试和调试。
- 优点:
- 安全性高,因为虚拟机与外部网络完全隔离,只有宿主机能够访问虚拟机,降低了来自外部网络的安全风险。
- 可以构建一个独立的、不受外部网络干扰的测试环境,方便进行本地开发和测试工作。
- 缺点:
- 无法访问外部网络,限制了其功能。如果需要更新软件、下载文件或者进行其他需要外部网络连接的操作,就需要先改变网络模式。
- 应用场景相对较为局限,主要用于本地开发和测试等特定场景。
适用于Kali Linux的硬件设备列表
以下是一份适用于 Kali Linux 的硬件设备列表:
一、处理器(CPU)
- 英特尔(Intel)系列
- 酷睿(Core)i3/i5/i7/i9 系列:这些处理器性能强大,能够满足 Kali Linux 在运行各种复杂的渗透测试工具、密码破解程序等对 CPU 有较高要求的操作时的需求。例如,i7 - 12700K,具有较高的单核和多核性能,适合多任务处理。
- 至强(Xeon)系列:常用于服务器环境,如果你的 Kali Linux 系统用于企业级的网络安全检测和分析,至强处理器可以提供稳定且强大的计算能力。例如,Xeon E - 2288G,具有多核心和高频率,适合处理大量数据。
- AMD 系列
- 锐龙(Ryzen)系列:如 Ryzen 5、Ryzen 7 和 Ryzen 9。这些处理器在性能上与英特尔酷睿系列相当,而且在多核性能方面表现出色。例如,Ryzen 7 5800X,能够快速运行多个虚拟机,对于安全研究人员模拟不同网络环境很有帮助。
二、内存(RAM)
- 容量
- 建议至少 8GB 内存。如果要在 Kali Linux 上运行多个虚拟机、大型网络扫描工具或者进行大规模数据处理,16GB 或 32GB 甚至更高容量的内存会更合适。例如,在进行大规模的网络漏洞扫描时,更多的内存可以避免系统因内存不足而卡顿。
- 类型
- DDR4:目前主流的内存类型,具有较高的频率和数据传输速率。例如,DDR4 - 3200MHz 的内存可以快速响应系统的读写请求,提高系统整体运行效率。
- DDR5(如果主板支持):相比 DDR4,DDR5 具有更高的带宽和更低的功耗,能够进一步提升系统性能。
三、存储设备
- 硬盘(HDD)
- 容量较大的机械硬盘(如 2TB、4TB 等)可以用于数据存储,特别是在需要存储大量网络数据包、系统镜像等数据时。例如,西数蓝盘 4TB,可以提供足够的空间来保存长期的网络监控数据。
- 固态硬盘(SSD)
- SATA SSD:适合作为系统盘,能够显著提升 Kali Linux 的启动速度和应用程序的加载速度。例如,三星 870 EVO 500GB,能够让系统在数秒内启动。
- NVMe SSD:如果主板支持,NVMe SSD 具有更快的读写速度,对于需要快速读写大量小文件的操作(如密码破解中的字典文件读取)非常有利。例如,三星 980 PRO 1TB,其读写速度可以达到数千 MB/s。
四、网络设备
- 网卡
- 有线网卡:
- 英特尔(Intel)有线网卡:如 Intel I219 - V,具有稳定的网络连接和较高的数据传输速率,适合高速网络环境下的网络监控和分析。
- 无线网卡:
- 支持 802.11ac 或 802.11ax(Wi - Fi 6)标准的无线网卡:例如,英特尔 AX200,能够提供高速的无线网络连接,对于无线渗透测试和 Wi - Fi 安全分析至关重要。
- 支持监听模式(Monitor Mode)和数据包注入(Packet Injection)的无线网卡:如 Alfa AWUS036ACH,这是进行无线安全测试必备的硬件,能够让 Kali Linux 捕获和发送无线数据包。
- 有线网卡:
五、其他设备
- 显示器
- 建议选择分辨率至少为 1920×1080 的显示器,以确保在运行 Kali Linux 的图形化工具(如 Wireshark、Nmap - Zenmap 等)时能够清晰地查看界面和数据。例如,戴尔 U2417H,具有良好的色彩还原和可视角度,方便长时间查看和分析网络数据。
- 键盘和鼠标
- 对于经常需要输入命令的 Kali Linux 用户,一款手感舒适、按键反应灵敏的机械键盘(如樱桃(Cherry)MX 系列)是不错的选择。鼠标方面,选择具有高精度传感器的鼠标,方便在图形界面操作时精准定位。例如,罗技 G502,其可调节的 DPI 和多个可编程按键对于操作各种安全工具很有帮助。
- 移动存储设备
- 大容量 U 盘(如 64GB、128GB):可以用于保存 Kali Linux 的系统镜像、渗透测试工具包等,方便在不同计算机上快速部署 Kali Linux 环境。例如,闪迪至尊高速 USB 3.0 128GB U 盘。
- 移动硬盘(1TB、2TB):在进行大规模数据采集和存储时,移动硬盘可以作为数据的备份和转移设备。例如,希捷 Backup Plus 移动硬盘 2TB。
拓展:常见LINUX操作系统
商业 Linux 发行版
- Red Hat Enterprise Linux(RHEL):由红帽公司开发并支持的商业级 Linux 发行版,主要用于企业级应用和服务器环境。它提供了高度稳定性、安全性和可扩展性,拥有全面的技术支持和解决方案,适用于对稳定性和可靠性要求极高的企业关键业务系统,如大型数据中心、金融机构的核心业务系统等145.
- SUSE Linux Enterprise Server:德国的 SUSE 公司推出的商业 Linux 发行版,以其稳定性和可靠性在企业级市场中占据重要地位。它提供了强大的系统管理工具和良好的技术支持,适用于企业服务器、云计算平台等场景,尤其在欧洲市场受到广泛欢迎。
社区开源 Linux 发行版
- Ubuntu:基于 Debian 的 Linux 操作系统,界面简洁、易用,拥有大量的软件包和库,方便用户进行开发和应用部署。适用于初学者、普通用户以及开发者,可用于桌面系统、服务器部署等多种场景,是目前最受欢迎的 Linux 发行版之一124.
- Debian:历史悠久、可靠性高的 Linux 发行版,由全球志愿者组成的开源社区开发和维护。它支持多种硬件架构,软件更新频繁,系统安全性高,兼容性好,适合对稳定性要求较高的服务器环境和对自由、开源有追求的用户,也是许多其他 Linux 发行版的基础124.
- Fedora:由红帽公司赞助的社区驱动的 Linux 发行版,专注于提供最新的开源技术和应用程序。它的更新速度较快,适合喜欢尝试新技术和最新软件的开发者和技术爱好者,同时也可作为服务器操作系统使用,具备较好的稳定性和安全性124.
- CentOS:基于 Red Hat Enterprise Linux 源代码编译而成的免费开源的 Linux 发行版,主要用于服务器环境,以稳定性著称,能够提供长期的支持和更新,适合企业级应用的部署,在国内的互联网企业和数据中心中应用广泛124.
- Arch Linux:轻量级、灵活且自定义程度高的 Linux 发行版,适合有一定 Linux 使用经验的用户。它提供了简洁的系统架构和最新的软件版本,用户可以根据自己的需求高度定制系统,但安装和配置过程相对较为复杂,需要用户对 Linux 系统有较深入的了解126.
- Gentoo:一种源码驱动的 Linux 发行版,用户可以根据自身需求定制系统的每一个细节,从内核到软件包都可以进行编译和优化,以达到最佳的性能表现,但对用户的技术水平要求较高,适用于有经验的 Linux 用户和对系统性能有极致追求的场景16.
- Manjaro:基于 Arch Linux 开发的发行版,旨在提供易于使用的桌面环境。它简化了 Arch Linux 的安装过程,提供了易于使用的安装程序和简单的系统配置,同时保留了 Arch Linux 的灵活性和自定义性,适合想要体验 Arch Linux 的优点又不想过于深入了解其复杂安装和配置过程的用户16.
- OpenSUSE:一个稳定、易用、功能丰富的 Linux 发行版,适用于服务器和桌面环境。它具有良好的自动化配置能力和兼容性,提供了丰富的软件包和强大的系统管理工具,适合企业用户和普通桌面用户126.
- Mageia:一个开源的 Linux 发行版,以稳定性和易用性著称,提供了广泛的软件包选择和用户友好的工具,拥有良好的社区支持,适合个人用户和小型企业用户用于桌面和服务器环境
- MX Linux:基于 Debian 的 Linux 发行版,旨在提供快速、稳定和易用的操作系统,提供了许多实用工具和易于使用的界面,支持多个桌面环境,适合对系统稳定性和易用性有要求的用户1.
- Linux Mint:基于 Ubuntu 的 Linux 发行版,以提供易于使用的桌面环境而著名,它对 Ubuntu 的界面进行了优化和定制,使其更加美观和易用,同时还提供了一些额外的实用工具,适合普通用户和从 Windows 系统迁移过来的用户
安全及特定用途 Linux 发行版
- Kali Linux:专门用于网络安全测试和渗透测试的 Linux 发行版,预装了大量的安全工具和软件包,如密码破解工具、漏洞扫描工具等,方便安全专业人员进行安全评估和攻击模拟等工作16.
- BackBox:基于 Ubuntu 的发行版,主要用于渗透测试和安全评估,拥有自己的软件存储库,提供各种系统和网络分析工具包的最新稳定版本以及受欢迎的道德黑客工具.
- Parrot Security OS:面向安全的操作系统,基于 Debian,特色在于 MATE 桌面环境,可用于渗透测试、计算机取证、反向工程等场合,其目标用户是渗透测试人员,为用户提供在线匿名性和加密系统的云友好环境.
- DEFT:Ubuntu 定制版,带有一整套计算机取证程序和文档,其许可证策略决定了软件的选择和安装光盘中的默认内容.
- Pentoo:基于 Gentoo 的、以安全为主要侧重点的 livecd 方案,加入了大量定制化工具以及定制化内核等要素,具备如利用 aufs 补丁强化内核、支持 Cuda/OPENCL 破解等功能.
- Ubuntu Studio:专门为音频、视频、图形和出版工作流程而设计的 Ubuntu Linux 发行版,预装了各种开源应用程序,旨在提供一种稳定而易于使用的多媒体创作平台
其他 Linux 发行版
- Elementary OS:基于 Ubuntu 的 Linux 发行版,以其简洁美观的用户界面和易用性著名,提供了自己独特的应用程序和桌面环境,适合对界面美观和用户体验有要求的用户167.
- zorinos:基于 ubuntu 的 Linux 发行版,其 ui 专为 windows 和 macos 用户量身定制,即使精简版也能提供良好的用户体验.
- kdeneon:基于 ubuntu 的轻量级 linux 发行版,具有 kdeplasma 桌面,外观漂亮,提供了最新最好的 kdeplasma 桌面和 kde 应用程序.
- nitruxos:基于 ubuntu,但不完全基于 ubuntu,着重于为寻找独特设计语言的用户提供良好的用户体验,使用基于 kde 的 nomad 桌面,鼓励将 appimage 用于应用程序.
kali更换源过程
以下是在 Kali Linux 中更换软件源的详细步骤:
一、备份原有源文件
- 打开终端。在 Kali 系统中,你可以通过在桌面环境中找到 “终端” 图标或者使用快捷键(如
Ctrl + Alt + T
)打开终端。 - 备份源列表文件。在终端中输入以下命令:
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
- 这条命令使用
sudo
(以管理员权限运行)来复制/etc/apt/sources.list
(这是存储软件源信息的主要文件)到/etc/apt/sources.list.bak
。这样做的目的是在更换源出现问题时,可以通过这个备份文件恢复原来的设置。
二、选择合适的源
- 官方源:Kali 官方提供了一系列的源,这些源的软件包经过官方测试和验证,比较稳定。官方源的格式一般如下:
deb http://http.kali.org/kali kali - main contrib non - free
deb --src http://http.kali.org/kali kali - main contrib non - free
- 其中
deb
表示二进制软件包的存储位置,deb - src
表示软件源代码的存储位置。http://http.kali.org/kali
是源的基本地址,kali
是发行版名称,main
、contrib
和non - free
是软件包的分类。
- 国内镜像源:
- 阿里云:
- 编辑源文件,将以下内容添加进去:
deb http://mirrors.aliyun.com/kali kali - main non - free contrib
deb -src http://mirrors.aliyun.com/kali kali - main non - free contrib
- 编辑源文件,将以下内容添加进去:
- 清华大学:
deb https://mirrors.tuna.tsinghua.edu.cn/kali kali - main contrib non - free
deb -src https://mirrors.tuna.tsinghua.edu.cn/kali kali - main contrib non - free
- 这些国内镜像源可以提高软件包的下载速度,因为它们在国内有服务器,数据传输速度更快。
- 阿里云:
三、修改源文件
- 编辑
sources.list
文件。在终端中输入命令:sudo nano /etc/apt/sources.list
- 这会使用
nano
文本编辑器打开/etc/apt/sources.list
文件。nano
是一个简单易用的文本编辑器,在终端中操作很方便。
- 替换或添加源。将原来文件中的内容删除(如果要完全更换源)或者在原内容的基础上添加新的源(如果想保留部分原有源并添加新的)。例如,如果你想使用清华大学的源,就把上面提到的清华大学源的内容添加进去。
- 保存并退出。在
nano
编辑器中,按Ctrl + O
(保存文件),然后按Ctrl + X
(退出编辑器)。
四、更新软件源信息
- 在终端中输入以下命令来更新软件源列表:
apt-get update
- 这个命令会从新配置的源服务器上获取软件包的最新信息,包括软件包的版本、依赖关系等。它会检查每个源中的软件包索引文件,并将本地的软件包索引文件更新为最新的版本。
- 升级软件包(可选)。如果想升级系统中已安装的软件包到最新版本,可以使用命令:
apt-get upgrade
- 这个命令会根据更新后的软件源信息,对已经安装的软件包进行升级。它会比较本地已安装软件包的版本和源服务器上软件包的版本,如果源服务器上的版本更新,就会下载并安装新的版本。
apt-get update #更新索引
apt-get upgrade #更新软件
apt-get dist-upgrade #升级
apt-get clean #删除缓存包
apt-get autoclean #删除未安装的deb包
不是root权限,命令前加sudo
通过以上步骤,就可以完成 Kali Linux 软件源的更换,从而更方便地获取软件包和更新系统。
相关文章:
KALI安装操作及过程
以下是在计算机上安装 Kali Linux 的详细教程:(通常我直接使用虚拟机) 解压虚拟机安装包,直接在虚拟机中打开KALI (将内存改为4GB) 初始密码账号:kali 一、准备工作 下载 Kali Linux 镜像文件…...
Scala—“==“和“equals“用法(附与Java对比)
Scala 字符串比较—""和"equals"用法 Scala 的 在 Scala 中, 是一个方法调用,实际上等价于调用 equals 方法。不仅适用于字符串,还可以用于任何类型,并且自动处理 null。 Demo: Java 的 在 J…...
[Flutter] : Clipboard
import package:flutter/material.dart; import package:flutter/services.dart; setData Clipboard.setData(ClipboardData(text: "传入的文字内容")); getData Clipboard.getData(Clipboard.kTextPlain) 记录 | Flutter剪切板-刨根问底做一个可以在后台…...
vue2:v-for实现的el-radio-group选中时显示角标,并自定义选中按钮的字体颜色和背景色
项目中需要实现一组预定义查询,每一个查询按钮在选中时右上角显示一个角标,展示当前查询返回的数据条目。 1、text-color="#3785FF" fill="#E6EAF1" 处理选中时的字体颜色和背景色,如上图,分别为蓝色和浅灰色。 2、badge中:value="selectedRadio…...
Dynamics 365 CRM- 后端
Dynamics 365 CRM 后端插件语法示例 public IPluginExecutionContext context null;//上下文 public IOrganizationServiceFactory serviceFactory null;//组织服务工厂对象 public IOrganizationService service null;//Org服务对象//创建执行上下文 context (IPluginExe…...
电脑显示器选购指南2024
选择显示器是五花八门的显示参数,如何选择,以下给出参数说明,及部分参考: 1. 尺寸和分辨率 尺寸(英寸) 根据使用距离和用途选择合适的屏幕尺寸: 21-24 英寸:适合小桌面空间、日常…...
机器学习-多元线性回归
文章目录 代码什么是回归任务什么是多元什么是回归什么是多元线性回归表达式何时使用多元线性回归注意损失函数 代码 https://github.com/FULLK/AI_Study/tree/main/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0-%E5%A4%9A%E5%85%83%E7%BA%BF%E6%80%A7%E5%9B%9E%E5%BD%92 什么是回归…...
WEB语义化的新探索:浅析LLMs.txt
【引】有人迷恋使用大模型生成各种有趣的内容, 有人沉醉于大模型相关技术的探索,没有对错,只在于你的乐趣所在。 一项名为 llms.txt 的新提案标志了一些非同寻常的东西的出现: 一个Web网站不仅为人类读者服务,而且为人工智能提供服…...
【经典】制造供应链四类策略(MTS、MTO、ATO、ETO)细说
关注作者 制造供应链的牛鞭问题与复杂问题主要是从两个方面解决,一是同步化供应链消减从需求到供应的放大效应,二是供应链细分,针对不同的客户、不同的需求供应的匹配策略来应对复杂性,更好的满足客户并以最低的总成本来实现。 对…...
RabbitMQ中的Publish-Subscribe模式
在现代分布式系统中,消息队列(Message Queue)是实现异步通信和解耦系统的关键组件。RabbitMQ 是一个功能强大且广泛使用的开源消息代理,支持多种消息传递模式。其中,Publish/Subscribe(发布/订阅࿰…...
简单了解一下 Go 语言的构建约束?
构建约束是一种在 Go 语言中控制源文件编译条件的方法,它可以让您指定某些文件只在特定的操作系统、架构、编译器或 Go 版本下编译,而在其他环境中自动忽略。这样可以方便您针对不同的平台或场景编写不同的代码,实现条件编译的功能。 构建…...
图像融合算法笔记2024 CDTNet
目录 ControlCom-Image-Composition CDTNet-High-Resolution-Image-Harmonization 依赖项: trilinear 效果图: 推理代码ok 只支持linux系统: ControlCom-Image-Composition CDTNet-High-Resolution-Image-Harmonization 开源地址: GitHub - bcmi/CDTNet-High-Reso…...
我们来对接蓝凌OA --报文格式
题记 数智化办公专家、国家高新技术企业、知识管理国家标准制定者、信创供应商10强…等等,这些和咱们有关系吗!!不好意思,走错片场了,刚和项目经理在甲方那边吹牛B想想刚刚的大饼,看看支付宝余额ÿ…...
npm、yarn、pnpm三者的异同
这个表格将会说明一切: 特性npmyarnpnpm依赖管理方式扁平化管理,嵌套依赖树,可能重复安装扁平化管理喝符号链接,同版本只能安装一次基于硬链接喝符号链接的内容寻址存储安装速度最慢中等(并行安装)最快(得益于硬链接的复用)磁盘空…...
纯CSS实现文本或表格特效(连续滚动与首尾相连)
纯CSS实现文本连续向左滚动首尾相连 1.效果图: 2.实现代码: <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta name"viewport" content"widthdevice-width, init…...
信号处理:概念、技术、领域
目录 基本概念 主要技术 应用领域 信号处理是一个涉及分析、修改和再生信号的多学科领域。信号可以是各种形式的,例如声音、图像、视频或其他类型的监测数据。信号处理的主要目标是提取有用的信息并增强信号的质量。以下是信号处理的一些基本概念和应用ÿ…...
Android 中 Activity 和 Fragment 的结合使用经典案例
学习笔记 0. 分析 Activity 与 Fragment 的区别,部分使用的差异 上一篇中我们分析了Activity 与 Fragment 的区别,部分使用的差异。 点我跳转上一篇 1. 单个 Activity 中使用多个 Fragment 这是最常见的用法之一,特别是在单屏幕应用中。通…...
Http协议在网站中的体现
文章目录 1. Http协议简介2. 网站中的体现2.1 访问网站2.2 请求2.3 请求头2.4 请求方式2.5 响应 3. 总结 1. Http协议简介 HTTP(超文本传输协议) 是一种广泛应用于互联网上的应用层协议,用于在Web浏览器和Web服务器之间传输数据。HTTP协议定…...
CTF-WEB: php-Session 文件利用 [第一届国城杯 n0ob_un4er 赛后学习笔记]
step 1 搭建容器 教程 A5rZ 题目 github.com Dockerfile 有点问题,手动修复一下 FROM php:7.2-apacheCOPY ./flag /root COPY ./readflag / COPY ./html/ /var/www/html/ COPY ./php.ini /usr/local/etc/php/php.ini COPY ./readflag /readsecretRUN chmod 755 /var/www…...
《计算机视觉:瓶颈之辩与未来之路》
一、计算机视觉的崛起 计算机视觉是使用计算机模仿人类视觉系统的科学,让计算机拥有类似人类提取、处理、理解和分析图像以及图像序列的能力。它是一个多学科交叉的领域,与机器视觉、图像处理、人工智能、机器学习等领域密切相关。 计算机视觉行业可分为…...
黑皮书-计算机科学导论02
目录 第二部分:计算机硬件 第5章计算机组成 5.1中央处理单元 Ⅰ.算数逻辑单元 Ⅱ.控制单元 Ⅲ.寄存器 5.2主存储器 Ⅰ.随机存取存储器(RAM) Ⅱ.只读存储器(ROM) 高速缓冲存储器(Cache) 5.3输入/输出子系统 Ⅰ.非存储设备 Ⅱ.存储设备(辅助存…...
React--》如何高效管理前端环境变量:开发与生产环境配置详解
在前端开发中,如何让项目在不同环境下表现得更为灵活与高效,是每个开发者必须面对的挑战,从开发阶段的调试到生产环境的优化,环境变量配置无疑是其中的关键。 env配置文件:通常用于管理项目的环境变量,环境…...
初始Python篇(6)—— 字符串
找往期文章包括但不限于本期文章中不懂的知识点: 个人主页:我要学编程(ಥ_ಥ)-CSDN博客 所属专栏: Python 目录 字符串的常见操作 格式化字符串 占位符 f-string 字符串的 format 方法 字符串的编码与解码 与数据验证相关的方法 …...
【数字花园】个人知识库网站搭建:⑤本地构建+云服务器部署数字花园plus
目录 写在前面:数字花园的定义[[数字花园]]网站的构建原理包括三个步骤:[[我的数字花园搭建笔记]] 现在的部署流程一、本地操作详细教程-2.前置步骤(前面的文章都提过)-1.创建github中转库0. 本地环境配置基础环境:git…...
力扣题目 - 3264.K 次乘运算后的最终数组I
题目 还需要你前往力扣官网查看详细的题目要求 地址 1.给你一个整数数组 nums ,一个整数 k 和一个整数 multiplier 。2.你需要对 nums 执行 k 次操作,每次操作中:找到 nums 中的 最小 值 x ,如果存在多个最小值,选择最…...
Java常用 Date 时间格式化、Calender日历、正则表达式的用法
目录 1. SimpleDateFormat 日期格式化类 1.1 Date 类型转 String 1.2 String 类型转 Date 2. Calendar 日历类 3. 正则表达式 3.1 正则表达式的组成部分 3.2 手机号正则表达式 3.3 常用密码校验正则表达式 1. SimpleDateFormat 日期格式化类 SimpleDateFormat 是Java中…...
网页爬虫技术全解析:从基础到实战
引言 在当今信息爆炸的时代,互联网上的数据量每天都在以惊人的速度增长。网页爬虫(Web Scraping),作为数据采集的重要手段之一,已经成为数据科学家、研究人员和开发者不可或缺的工具。本文将全面解析网页爬虫技术&…...
细说STM32F407单片机SPI基础知识
目录 一、 SPI接口和通信协议 1、 SPI硬件接口 (1)MOSI(Master Output Slave Input) (2)MISO(Master Input Slave Output) (3)SCK 2、SPI传输协议 (1)CPHA0时的数据传输时序 …...
【OJ题解】面试题三步问题
个人主页: 起名字真南的CSDN博客 个人专栏: 【数据结构初阶】 📘 基础数据结构【C语言】 💻 C语言编程技巧【C】 🚀 进阶C【OJ题解】 📝 题解精讲 目录 **题目链接****解题思路****1. 问题分析****2. 递归思路****3. 优化方案&a…...
Linux vi/vim 编辑器使用教程
Linux vi/vim 编辑器使用教程 引言 Linux 系统中的 vi 和 vim 是非常强大的文本编辑器,它们以其高效性和灵活性而闻名。vim 是 vi 的增强版,提供了更多的功能和改进的用户界面。本文将详细介绍 vi/vim 的基本用法,包括打开文件、编辑文本、…...
长安大学《2024年812自动控制原理真题》 (完整版)
本文内容,全部选自自动化考研联盟的:《长安大学812自控考研资料》的真题篇。后续会持续更新更多学校,更多年份的真题,记得关注哦~ 目录 2024年真题 Part1:2024年完整版真题 2024年真题...
服务器一般装什么系统?
在服务器管理中,操作系统的选择是一个关键因素,它直接影响到服务器的稳定性、性能和可维护性。那么为什么有些服务器选择Linux,而不是Windows?选择合适的操作系统对服务器的性能和安全性有多么重要? 在众多操作系统中…...
Gitlab ci/cd 从0-1持续集成持续发布前端
关于gitlab ci/cd,就是实现DevOps的能力,即Development &Operations的缩写,也就是开发&运维。CI/CD 指的是软件开发的持续集成方法,我们可以持续构建、测试和部署软件。通过持续方法的迭代能使得我们减少在错误代码或者错…...
#GC4049. GC.2017---. GC.2016.六年级
这套题包含了历年真题,包含了前面我写的博客中的题目,十分重要!!!!要考试的同学可以参考一下!! 此套题限时3小时。 #GC4049. GC.2017.六年级.01.更多闰年 题目描述 在 smoj 网站上…...
UE5中实现Billboard公告板渲染
公告板(Billboard)通常指永远面向摄像机的面片,游戏中许多技术都基于公告板,例如提示拾取图标、敌人血槽信息等,本文将使用UE5和材质节点制作一个公告板。 Gif效果: 网格效果: 1.思路 通过…...
Android系统(android app和系统架构)
文章目录 AndroidAndroid Apps四大组件 Android系统Platform API之下:一个微笑内核adb(Android Debug Bridge) Android包管理机制Android的Intent机制参考 Android LinuxFrameworkJVM 在Linux/Java上做了个二次开发?并不完全是:Android定义…...
docker设置容器自动启动
说起开机自动启动应该很多人都遇到过,我们公司做的系统很多的中间件都没有设置开机自动启动然后中间修改问题又设置了一些临时生效的文件,开始的时候大家都不以为意,知道公司陆续有人离职入职管理交接一塌糊涂,项目成了历史遗留问…...
在 React 中,创建和嵌套组件、添加标签和样式、显示数据、渲染条件和列表、对事件做出响应并更新界面以及在组件间共享数据是常见的任务
文章目录 1. 创建和嵌套组件创建组件嵌套组件 2. 添加标签和样式添加标签添加样式 3. 显示数据显示静态数据显示动态数据 4. 渲染条件和列表条件渲染列表渲染 5. 对事件做出响应并更新界面处理事件 6. 在组件间共享数据使用 Context API react 如何创建和嵌套组件 如何添加标签…...
Android命令行工具--dumpsys
dumpsys 是一种在 Android 设备上运行的工具,可提供有关系统服务的信息。可以使用 Android 调试桥 (adb) 从命令行调用 dumpsys,获取在连接的设备上运行的所有系统服务的诊断输出。 此输出通常比您想要的更详细,因此请使用此页面上的命令行选…...
设计模式-访问者模式
背景 做一个对歌手的评价系统,观众分为男人和女人,分别对歌手做出自己的评价。 传统思路: 做一个person父类,Man 和 Woman分别继承自这个父类,在这两个类中执行各自操作。 问题: 可拓展性差࿰…...
Vue集成阿里云点播实现视频上传
实现方式有多种,如下是我的实现方式: 一、下载点播插件,在 public 下的 index.html 中引入阿里云点播需要的 js 插件,js 文件最好放在 cdn 上,,这里以放在 public 文件夹下的 static 文件夹中为例: <s…...
ByteByteGo-Forward/Reverse Proxy正/反向代理
原文链接 EP137: Proxy Vs Reverse proxy - ByteByteGo Newsletter 参考链接 Forward proxy vs. reverse proxy: Whats the difference? | TheServerSide 正向代理 (Forward Proxy) 位置:用户设备 和 互联网 之间 用途:保护客…...
[论文阅读] |智能体长期记忆与反思
写在前面:10月份的时候,联发科天玑9400发布,搭载这款旗舰 5G 智能体 AI 芯片的荣耀MagicOS9.0实现了一句话让手机自动操作美团点咖啡。很快商场实体店里便能看到很多品牌手机已经升级为智能体语音助手。下一步,这些智能体或许便能…...
Elasticsearch Kibana (windows版本) 安装和启动
目录 1.安装 2.启动 elasticsearch 3.启动 kibana 1.安装 elasticsearch下载,官网链接: Download Elasticsearch | Elastichttps://www.elastic.co/downloads/elasticsearch kibana下载,官网链接: Download Kibana Free | G…...
CSS系列(9)-- Transform 变换详解
前端技术探索系列:CSS Transform 变换详解 🔄 致读者:探索 CSS 变换的魔力 👋 前端开发者们, 今天我们将深入探讨 CSS Transform,学习如何创建引人注目的 2D 和 3D 变换效果。 2D 变换基础 Ὠ…...
bs4基本运用
1. bs4基本使用 1.1. 简介 bs4的全称为 BeautifulSoup。和lxml一样,是一个html的解析器,主要功能也是解析数据和提取数据 。 本模块作为了解模块,实际开发中很少用这个模块去解析数据,大家可能会想为什么这个模块会逐渐被淘汰&…...
skywalking 搭建 备忘录
基础环境 apache-skywalking-apm-9.6.0.tar.gz apache-skywalking-java-agent-9.1.0.tgz elasticsearch 7.14.1 采用dockers搭建 或者手动部署 kibana 可视化 应用 微服务版 consumer.jar eureka.jar 注册中心 provider.jar skywalking 地址 https://skywalkin…...
C# 和 go 关于can通信得 整理
在C#中开发CAN(Controller Area Network)通信接口时,确实有一些现成的NuGet包可以简化你的开发工作。这些库通常提供了与CAN硬件接口通信所需的基本功能,如发送和接收CAN消息。下面是一些常用的NuGet包: PCANBasic.NET…...
Unity类银河战士恶魔城学习总结(P179 Enemy Archer 弓箭手)
教程源地址:https://www.udemy.com/course/2d-rpg-alexdev/ 本章节实现了敌人弓箭手的制作 Enemy_Archer.cs 核心功能 状态机管理敌人的行为 定义了多个状态对象(如 idleState、moveState、attackState 等),通过状态机管理敌人的…...
一、LRU缓存
LRU缓存 1.LRU缓存介绍2.LRU缓存实现3.LRU缓存总结3.1 LRU 缓存的应用3.2 LRU 缓存的优缺点 1.LRU缓存介绍 LRU是Least Recently Used 的缩写,意为“最近最少使用”。它是一种常见的缓存淘汰策略,用于在缓存容量有限时,决定哪些数据需要被删…...