Ubuntu22.04 加入AD域
Ubuntu22.04 加入AD域
要在Ubuntu 22.04上加入Active Directory (AD) 域,你可以使用realmd和sssd服务。以下是加入AD域的步骤和示例配置:
更新系统软件包列表:
sudo apt update
下载安装必要的软件包:
sudo apt install realmd libnss-sss libpam-sss sssd sssd-tools adcli krb5-user packagekit
root@mail:/var/cache/apt/archives# apt-get install --download-only realmd libnss-sss libpam-sss sssd sssd-tools adcli krb5-user packagekit
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
packagekit is already the newest version (1.2.5-2ubuntu2).
The following additional packages will be installed:cracklib-runtime krb5-config ldap-utils libavahi-client3 libavahi-common-data libavahi-common3 libbasicobjects0libc-ares2 libcollection4 libcrack2 libcups2 libdhash1 libgssrpc4 libini-config5 libipa-hbac0 libkadm5clnt-mit12libkadm5srv-mit12 libkdb5-10 libldb2 libnfsidmap1 libnl-route-3-200 libpam-pwquality libpath-utils1libpwquality-common libpwquality1 libref-array1 libsasl2-modules-gssapi-mit libsmbclient libsss-certmap0libsss-idmap0 libsss-nss-idmap0 libtalloc2 libtdb1 libtevent0 libwbclient0 python3-ldb python3-sss python3-tallocsamba-libs sssd-ad sssd-ad-common sssd-common sssd-dbus sssd-ipa sssd-krb5 sssd-krb5-common sssd-ldap sssd-proxywamerican
Suggested packages:krb5-k5tls cups-common krb5-doc libsss-sudo libsasl2-modules-ldap
The following NEW packages will be installed:adcli cracklib-runtime krb5-config krb5-user ldap-utils libavahi-client3 libavahi-common-data libavahi-common3libbasicobjects0 libc-ares2 libcollection4 libcrack2 libcups2 libdhash1 libgssrpc4 libini-config5 libipa-hbac0libkadm5clnt-mit12 libkadm5srv-mit12 libkdb5-10 libldb2 libnfsidmap1 libnl-route-3-200 libnss-sss libpam-pwqualitylibpam-sss libpath-utils1 libpwquality-common libpwquality1 libref-array1 libsasl2-modules-gssapi-mit libsmbclientlibsss-certmap0 libsss-idmap0 libsss-nss-idmap0 libtalloc2 libtdb1 libtevent0 libwbclient0 python3-ldb python3-ssspython3-talloc realmd samba-libs sssd sssd-ad sssd-ad-common sssd-common sssd-dbus sssd-ipa sssd-krb5sssd-krb5-common sssd-ldap sssd-proxy sssd-tools wamerican
0 upgraded, 56 newly installed, 0 to remove and 12 not upgraded.
Need to get 11.0 MB of archives.
After this operation, 44.4 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy/main amd64 libtalloc2 amd64 2.3.3-2build1 [25.6 kB]
Get:2 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy/main amd64 libtevent0 amd64 0.11.0-1build1 [39.2 kB]
Get:3 http://cn.archive.ubuntu.com/ubuntu jammy-updates/main amd64 libwbclient0 amd64 2:4.15.13+dfsg-0ubuntu1.6 [266 kB]
Get:4 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy-updates/main amd64 libavahi-common-data amd64 0.8-5ubuntu5.2 [23.8 kB]
Get:5 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy-updates/main amd64 libavahi-common3 amd64 0.8-5ubuntu5.2 [23.9 kB]
Get:6 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy-updates/main amd64 libavahi-client3 amd64 0.8-5ubuntu5.2 [28.0 kB]
Get:7 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy-updates/main amd64 libcups2 amd64 2.4.1op1-1ubuntu4.11 [263 kB]
Get:8 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy/main amd64 libtdb1 amd64 1.4.5-2build1 [46.4 kB]
Get:9 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy-updates/main amd64 libldb2 amd64 2:2.4.4-0ubuntu0.22.04.2 [154 kB]
Get:10 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy-updates/main amd64 python3-ldb amd64 2:2.4.4-0ubuntu0.22.04.2 [41.7 kB]
Get:11 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy/main amd64 python3-talloc amd64 2.3.3-2build1 [13.0 kB]
Get:12 http://cn.archive.ubuntu.com/ubuntu jammy-updates/main amd64 samba-libs amd64 2:4.15.13+dfsg-0ubuntu1.6 [6,276 kB]
Get:13 http://cn.archive.ubuntu.com/ubuntu jammy-updates/main amd64 libsmbclient amd64 2:4.15.13+dfsg-0ubuntu1.6 [65.9 kB]
Get:14 http://cn.archive.ubuntu.com/ubuntu jammy-updates/main amd64 libsasl2-modules-gssapi-mit amd64 2.1.27+dfsg2-3ubuntu1.2 [31.5 kB]
Get:15 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy/main amd64 adcli amd64 0.9.1-1ubuntu2 [98.1 kB]
Get:16 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy/main amd64 libcrack2 amd64 2.9.6-3.4build4 [29.6 kB]
Get:17 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy/main amd64 cracklib-runtime amd64 2.9.6-3.4build4 [149 kB]
Get:18 http://cn.archive.ubuntu.com/ubuntu jammy/main amd64 krb5-config all 2.6+nmu1ubuntu1 [21.7 kB]
Get:19 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy-updates/main amd64 libgssrpc4 amd64 1.19.2-2ubuntu0.4 [58.7 kB]
Get:20 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy-updates/main amd64 libkadm5clnt-mit12 amd64 1.19.2-2ubuntu0.4 [41.9 kB]
Get:21 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy-updates/main amd64 libkdb5-10 amd64 1.19.2-2ubuntu0.4 [40.4 kB]
Get:22 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy-updates/main amd64 libkadm5srv-mit12 amd64 1.19.2-2ubuntu0.4 [54.7 kB]
Get:23 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy-updates/universe amd64 krb5-user amd64 1.19.2-2ubuntu0.4 [110 kB]
Get:24 http://cn.archive.ubuntu.com/ubuntu jammy-updates/main amd64 ldap-utils amd64 2.5.18+dfsg-0ubuntu0.22.04.2 [147 kB]
Get:25 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy-updates/main amd64 libnfsidmap1 amd64 1:2.6.1-1ubuntu1.2 [42.9 kB]
Get:26 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy/main amd64 libnl-route-3-200 amd64 3.5.0-0.1 [180 kB]
Get:27 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy/main amd64 libpwquality-common all 1.4.4-1build2 [7,642 B]
Get:28 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy/main amd64 libpwquality1 amd64 1.4.4-1build2 [13.4 kB]
Get:29 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy/main amd64 libpam-pwquality amd64 1.4.4-1build2 [11.8 kB]
Get:30 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy/main amd64 realmd amd64 0.17.0-1ubuntu2 [170 kB]
Get:31 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy/main amd64 wamerican all 2020.12.07-2 [236 kB]
Get:32 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy/main amd64 libbasicobjects0 amd64 0.6.2-1 [6,160 B]
Get:33 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy-updates/main amd64 libc-ares2 amd64 1.18.1-1ubuntu0.22.04.3 [45.1 kB]
Get:34 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy/main amd64 libcollection4 amd64 0.6.2-1 [23.9 kB]
Get:35 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy/main amd64 libdhash1 amd64 0.6.2-1 [9,150 B]
Get:36 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy/main amd64 libpath-utils1 amd64 0.6.2-1 [9,254 B]
Get:37 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy/main amd64 libref-array1 amd64 0.6.2-1 [7,720 B]
Get:38 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy/main amd64 libini-config5 amd64 0.6.2-1 [44.5 kB]
Get:39 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy-updates/main amd64 libipa-hbac0 amd64 2.6.3-1ubuntu3.3 [11.2 kB]
Get:40 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy-updates/main amd64 libnss-sss amd64 2.6.3-1ubuntu3.3 [23.7 kB]
Get:41 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy-updates/main amd64 libpam-sss amd64 2.6.3-1ubuntu3.3 [40.6 kB]
Get:42 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy-updates/main amd64 libsss-certmap0 amd64 2.6.3-1ubuntu3.3 [34.8 kB]
Get:43 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy-updates/main amd64 libsss-idmap0 amd64 2.6.3-1ubuntu3.3 [15.9 kB]
Get:44 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy-updates/main amd64 libsss-nss-idmap0 amd64 2.6.3-1ubuntu3.3 [21.8 kB]
Get:45 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy-updates/main amd64 python3-sss amd64 2.6.3-1ubuntu3.3 [41.2 kB]
Get:46 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy-updates/main amd64 sssd-common amd64 2.6.3-1ubuntu3.3 [1,131 kB]
Get:47 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy-updates/main amd64 sssd-ad-common amd64 2.6.3-1ubuntu3.3 [76.0 kB]
Get:48 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy-updates/main amd64 sssd-krb5-common amd64 2.6.3-1ubuntu3.3 [80.5 kB]
Get:49 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy-updates/main amd64 sssd-ad amd64 2.6.3-1ubuntu3.3 [137 kB]
Get:50 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy-updates/main amd64 sssd-ipa amd64 2.6.3-1ubuntu3.3 [221 kB]
Get:51 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy-updates/main amd64 sssd-krb5 amd64 2.6.3-1ubuntu3.3 [14.0 kB]
Get:52 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy-updates/main amd64 sssd-ldap amd64 2.6.3-1ubuntu3.3 [32.5 kB]
Get:53 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy-updates/main amd64 sssd-proxy amd64 2.6.3-1ubuntu3.3 [43.2 kB]
Get:54 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy-updates/main amd64 sssd amd64 2.6.3-1ubuntu3.3 [4,112 B]
Get:55 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy-updates/main amd64 sssd-dbus amd64 2.6.3-1ubuntu3.3 [106 kB]
Get:56 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy-updates/main amd64 sssd-tools amd64 2.6.3-1ubuntu3.3 [92.4 kB]
Fetched 11.0 MB in 4s (2,817 kB/s)
Download complete and in download only mode
root@mail:/var/cache/apt/archives#
发现并加入域:
sudo realm discover YOUR.DOMAIN.COM
sudo realm join --user=AdminUser YOUR.DOMAIN.COM
替换YOUR.DOMAIN.COM为你的AD域名,并用一个有权加入新计算机到域的用户代替AdminUser。
配置SSSD:
编辑/etc/sssd/sssd.conf文件,确保有以下配置:
[sssd]
services = nss, pam
config_file_version = 2
domains = YOUR.DOMAIN.COM
[domain/YOUR.DOMAIN.COM]
ad_domain = YOUR.DOMAIN.COM
krb5_realm = YOUR.DOMAIN.COM
realmd_tags = manages-system joined-with-adcli
cache_credentials = True
id_provider = ad
krb5_store_password_if_offline = True
default_shell = /bin/bash
ldap_id_mapping = True
use_fully_qualified_names = False
fallback_homedir = /home/%u
access_provider = ad
再次替换YOUR.DOMAIN.COM为你的AD域名。
重启SSSD服务:
sudo systemctl restart sssd
配置Kerberos:
编辑/etc/krb5.conf,添加以下配置:
[logging]
default = FILE:/var/log/krb5libs.log
kdc = FILE:/var/log/krb5kdc.log
admin_server = FILE:/var/log/kadmind.log
[libdefaults]
default_realm = YOUR.DOMAIN.COM
dns_lookup_realm = false
dns_lookup_kdc = false
ticket_lifetime = 24h
renew_lifetime = 7d
forwardable = true
[realms]
YOUR.DOMAIN.COM = {
kdc = YOUR.KDC.SERVER
admin_server = YOUR.KDC.SERVER
}
[domain_realm]
.YOUR.DOMAIN.COM = YOUR.DOMAIN.COM
YOUR.DOMAIN.COM = YOUR.DOMAIN.COM
[appdefaults]
替换YOUR.DOMAIN.COM和YOUR.KDC.SERVER为你的AD域名和KDC服务器地址。
更新你的DNS服务器设置,确保你的系统可以解析AD域控制器。
测试登录:
sudo authconfig-gtk
在图形界面中选择你的域,输入你的域账号和密码进行测试。
以上步骤可能需要根据你的网络环境和特定配置进行适当调整。如果遇到问题,检查日志文件以获取更多信息,如/var/log/auth.log。
相关文章:
Ubuntu22.04 加入AD域
Ubuntu22.04 加入AD域 要在Ubuntu 22.04上加入Active Directory (AD) 域,你可以使用realmd和sssd服务。以下是加入AD域的步骤和示例配置: 更新系统软件包列表: sudo apt update 下载安装必要的软件包: sudo apt install realm…...
Docker 构建 Miniconda3 Python 运行环境实战指南
Docker 构建 Miniconda3 Python 运行环境实战指南 文章目录 Docker 构建 Miniconda3 Python 运行环境实战指南一 准备 environment.yml二 获取项目 pip 信息三 Dockerfile 编写四 构建多平台镜像1 准备组件2 构建镜像3 导出镜像4 导入镜像 五 注意事项 本文详细介绍了如何通过 …...
029 elasticsearch文档管理(ElasticsearchRepository、ElasticsearchRestTemplate)
文章目录 BlogRepository.javaBlogRepositoryTest.javaBulkTest.java 文档的管理 ElasticSearchRepository接口 使用方法: 创建一个接口,继承于ElasticSearchRepository,指定使用的Entity类及对应主键数据类型 Springboot自动扫描接口并创建代…...
【Flutter】Dart:Isolate
在 Dart 和 Flutter 中,所有的代码默认都运行在单一的线程(即主线程)上,这个线程也叫做 UI 线程。当进行耗时操作(如复杂计算或网络请求)时,如果不使用多线程处理,主线程会被阻塞&am…...
微信小程序 页面间传递数据
在小程序中,给页面传递参数通常有以下几种方法: 通过URL传递参数: 在小程序中,可以在页面的路径后面添加参数,然后在页面的 onLoad 函数中获取这些参数。 // 在app.json中配置页面路径 "pages": [{"pat…...
前端_005_Nodejs
文章目录 npm包管理器cjs和mjsYarn包管理器 1.Node.js 是js的一个运行环境,从nodejs诞生后js代码不局限于只在浏览器中执行,此外还能再nodejs里写服务端,用js可以前后端全栈开发 2.Node.js不跟浏览器一样默认含有document,window对象…...
SpringCache缓存介绍
1.为什么需要缓存 前台请求,后台先从缓存中取数据,取到直接返回结果,取不到时从数据库中取,数据库取到更新缓存,并返回结果,数据库也没取到,那直接返回空结果: 使用缓存是一个很…...
python实战(一)——iris鸢尾花数据集分类
一、任务背景 本文是python实战系列专栏的第一篇文章,我们将从分类开始由浅入深逐步学习如何使用python完成常规的机器学习/深度学习任务。iris数据集是经典的机器学习入门数据集,许多分类任务教程都会以这个数据集作为示例,它的数据量是150条…...
k8s-对命名空间资源配额
对k8s命名空间限制的方法有很多种,今天来演示一下很常用的一种 用的k8s对象就是ResourceQuota 一:创建命名空间 kubectl create ns test #namespace命名空间可以简写成ns 二: 对命名空间进行限制 创建resourcequota vim resourcequ…...
Failed to connect to github.com port 443
git push无法连接443端口 **问题1****方法一:取消代理设置**git命令 其他解决方案1. **设置 Git 使用 HTTP 而不是 HTTPS**2. **检查证书**3. **配置 Git 忽略 SSL 验证(不推荐)**4. **检查代理设置** 问题1 Failed to connect to github.com…...
【设计模式系列】简单工厂模式
一、什么是简单工厂模式 简单工厂模式(Simple Factory Pattern)是一种设计模式,其中包含一个工厂类,根据传入的参数不同,返回不同类的实例。这个工厂类封装了对象的创建逻辑,使得客户端代码可以从直接创建…...
给定一个正整数n随机生成n个字节即生成2n个十六进制数将其组成字符串返回secrets.token_hex(n)
【小白从小学Python、C、Java】 【考研初试复试毕业设计】 【Python基础AI数据分析】 给定一个正整数n 随机生成n个字节 即生成2n个十六进制数 将其组成字符串返回 secrets.token_hex(n) [太阳]选择题 根据题目代码,执行的结果错误的是? import secrets …...
[Gtk] 工程
MediaPlayer 可执行文件工程 结构 . ├── BUILD ├── ButtonHelper.cpp ├── ButtonHelper.h ├── CMakeLists.txt ├── DrawingAreaHelper.cpp ├── DrawingAreaHelper.h ├── layout.ui └── main.cpp CMakeLists.txt # 1) cmake basic cmake_minimum_r…...
基于Multisim的汽车尾灯控制电路设计与仿真
假设汽车尾部左右量测各有3个指示灯(用发光二极管模拟)1. 汽车正常运行时指示灯全灭;2.右转弯时,右侧3个指示灯按右循环顺序点亮;.3. 左转弯时,左侧3个指示灯按左循环顺序点亮;4.临时刹车时所有…...
Leetcode 3326. Minimum Division Operations to Make Array Non Decreasing
Leetcode 3326. Minimum Division Operations to Make Array Non Decreasing 1. 解题思路2. 代码实现 题目链接:3326. Minimum Division Operations to Make Array Non Decreasing 1. 解题思路 这一题的话就是要看出来题中给出的operation的本质事实上就是将任意…...
redo文件误删除后通过逻辑备份进行恢复
问题描述 开发同事让在一个服务器上查找下先前库的备份文件是否存在,如果存在进行下恢复。翻了服务器发现备份文件存在,多愁了一眼竟翻到了该备份文件于2024.6.17日恢复过的日志,赶紧和开发沟通说2024.6.17号已经恢复过了为啥还要恢复&#x…...
7805的输出电压如何调整?
7805稳压集成电路的输出电压通常是固定的,标称为5V。然而,在实际应用中,可以通过一些方法调整其输出电压,尽管这些调整方法可能会使电路变得更加复杂或需要额外的元件。以下是几种可能的调整方法: 1. 使用不同型号的稳…...
git命令使用一览【自用】
git常见操作: git initgit remote add master【分支名字】 gitgits.xxxxx【仓库中获取的ssh链接或者http协议的链接】检查远程仓库是否链接成功。 git remote -v出现以下画面就可以git pull,git push了...
MES系列-报表和分析
MES系列-报表和分析 MES系列文章目录 ISA-95制造业中企业和控制系统的集成的国际标准-(1) ISA-95制造业中企业和控制系统的集成的国际标准-(2) ISA-95制造业中企业和控制系统的集成的国际标准-(3) ISA-95制造业中企业和控制系统的集成的国际标准-(4) ISA-95制造业中企业和控制…...
如何在分布式环境中实现高可靠性分布式锁
目录 一、简单了解分布式锁 (一)分布式锁:应对分布式环境的同步挑战 (二)分布式锁的实现方式 (三)分布式锁的使用场景 (四)分布式锁需满足的特点 二、Redis 实现分…...
【Python】 -- 趣味代码 - 小恐龙游戏
文章目录 文章目录 00 小恐龙游戏程序设计框架代码结构和功能游戏流程总结01 小恐龙游戏程序设计02 百度网盘地址00 小恐龙游戏程序设计框架 这段代码是一个基于 Pygame 的简易跑酷游戏的完整实现,玩家控制一个角色(龙)躲避障碍物(仙人掌和乌鸦)。以下是代码的详细介绍:…...
利用ngx_stream_return_module构建简易 TCP/UDP 响应网关
一、模块概述 ngx_stream_return_module 提供了一个极简的指令: return <value>;在收到客户端连接后,立即将 <value> 写回并关闭连接。<value> 支持内嵌文本和内置变量(如 $time_iso8601、$remote_addr 等)&a…...
关于nvm与node.js
1 安装nvm 安装过程中手动修改 nvm的安装路径, 以及修改 通过nvm安装node后正在使用的node的存放目录【这句话可能难以理解,但接着往下看你就了然了】 2 修改nvm中settings.txt文件配置 nvm安装成功后,通常在该文件中会出现以下配置&…...
Matlab | matlab常用命令总结
常用命令 一、 基础操作与环境二、 矩阵与数组操作(核心)三、 绘图与可视化四、 编程与控制流五、 符号计算 (Symbolic Math Toolbox)六、 文件与数据 I/O七、 常用函数类别重要提示这是一份 MATLAB 常用命令和功能的总结,涵盖了基础操作、矩阵运算、绘图、编程和文件处理等…...
华硕a豆14 Air香氛版,美学与科技的馨香融合
在快节奏的现代生活中,我们渴望一个能激发创想、愉悦感官的工作与生活伙伴,它不仅是冰冷的科技工具,更能触动我们内心深处的细腻情感。正是在这样的期许下,华硕a豆14 Air香氛版翩然而至,它以一种前所未有的方式&#x…...
Linux nano命令的基本使用
参考资料 GNU nanoを使いこなすnano基础 目录 一. 简介二. 文件打开2.1 普通方式打开文件2.2 只读方式打开文件 三. 文件查看3.1 打开文件时,显示行号3.2 翻页查看 四. 文件编辑4.1 Ctrl K 复制 和 Ctrl U 粘贴4.2 Alt/Esc U 撤回 五. 文件保存与退出5.1 Ctrl …...
关于easyexcel动态下拉选问题处理
前些日子突然碰到一个问题,说是客户的导入文件模版想支持部分导入内容的下拉选,于是我就找了easyexcel官网寻找解决方案,并没有找到合适的方案,没办法只能自己动手并分享出来,针对Java生成Excel下拉菜单时因选项过多导…...
实战三:开发网页端界面完成黑白视频转为彩色视频
一、需求描述 设计一个简单的视频上色应用,用户可以通过网页界面上传黑白视频,系统会自动将其转换为彩色视频。整个过程对用户来说非常简单直观,不需要了解技术细节。 效果图 二、实现思路 总体思路: 用户通过Gradio界面上…...
图解JavaScript原型:原型链及其分析 | JavaScript图解
忽略该图的细节(如内存地址值没有用二进制) 以下是对该图进一步的理解和总结 1. JS 对象概念的辨析 对象是什么:保存在堆中一块区域,同时在栈中有一块区域保存其在堆中的地址(也就是我们通常说的该变量指向谁&…...
【HarmonyOS 5】鸿蒙中Stage模型与FA模型详解
一、前言 在HarmonyOS 5的应用开发模型中,featureAbility是旧版FA模型(Feature Ability)的用法,Stage模型已采用全新的应用架构,推荐使用组件化的上下文获取方式,而非依赖featureAbility。 FA大概是API7之…...
