首页
游戏
影视
直播
广播
听书
音乐
图片
更多
看书
微视
主播
统计
友链
留言
关于
论坛
邮件
推荐
我的硬盘
我的搜索
我的记录
我的文件
我的图书
我的笔记
我的书签
我的微博
Search
1
在IC617中进行xa+vcs数模混仿
84 阅读
2
科普:Memory Compiler生成的Register file和SRAM有何区别?
74 阅读
3
virtuoso和empyrean alps模拟仿真和混仿教程
74 阅读
4
后仿中$setup,$hold与$setuphold
45 阅读
5
文档内容搜索哪家强? 15款文件搜索软件横向评测
35 阅读
默认分类
芯片市场
数字电路
芯片后端
模拟电路
芯片验证
原型与样片验证
算法与架构
DFX与量产封装
PC&Server OS设置
移动OS设置
软件方案
新浪备份
有道备份
登录
Search
标签搜索
python
Docker
vscode
linux
systemverilog
vcs
STM32
PyQT
EDA
FPGA
gvim
cadence
Alist
xilinx
UVM
uos
macos
package
MCU
risc-v
bennyhe
累计撰写
378
篇文章
累计收到
31
条评论
首页
栏目
默认分类
芯片市场
数字电路
芯片后端
模拟电路
芯片验证
原型与样片验证
算法与架构
DFX与量产封装
PC&Server OS设置
移动OS设置
软件方案
新浪备份
有道备份
页面
游戏
影视
直播
广播
听书
音乐
图片
看书
微视
主播
统计
友链
留言
关于
论坛
邮件
推荐
我的硬盘
我的搜索
我的记录
我的文件
我的图书
我的笔记
我的书签
我的微博
搜索到
378
篇与
的结果
2025-06-18
在 Docker 中运行 macOS
Docker-OSX 简介Docker-OSX 是由 Sick.Codes 维护的开源项目,它基于 QEMU 和 KVM 技术,支持在 Docker 容器中运行 macOS。你可以在 macOS 上进行开发、测试应用程序,甚至进行安全研究。Docker-OSX 支持多种 macOS 版本,从 High Sierra(10.13)到最新的 Sonoma(14)。项目特点X11 转发:支持在 Linux 和 Windows 上通过 X11 显示 macOS 界面。iMessage 安全研究:支持在 macOS VM 中进行 iMessage 和 iCloud 的安全研究。iPhone USB 传输支持:可以通过 USB 传输将 iPhone 连接到 Docker 中的 macOS。CI/CD 集成:适用于 macOS 的持续集成和持续部署(CI/CD)工作流。支持多版本 macOS:包括 Catalina、Big Sur、Monterey、Ventura 和 Sonoma 等。快速启动 Docker-OSX2.1 基本环境要求虚拟化支持:确保你的 CPU 支持 KVM,并在 BIOS 中启用虚拟化技术(Intel VT-x 或 AMD-V)。磁盘空间:至少需要 20GB 的磁盘空间,建议预留 50GB 以应对 macOS 和 Xcode 的需求。2.2 安装依赖根据你的操作系统,首先安装必要的依赖项。Arch Linux:sudo pacman -S qemu libvirt dnsmasq virt-manager bridge-utils flex bison iptables-nft edk2-ovmfUbuntu / Debian:sudo apt install qemu qemu-kvm libvirt-clients libvirt-daemon-system bridge-utils virt-manager libguestfs-toolsCentOS / RHEL / Fedora:sudo yum install libvirt qemu-kvm安装完成后,启用 libvirt 并加载 KVM 内核模块:sudo systemctl enable --now libvirtdsudo systemctl enable --now virtlogdecho 1 | sudo tee /sys/module/kvm/parameters/ignore_msrssudo modprobe kvm2.3 运行 Docker-OSX 容器Docker-OSX 提供了多个预构建的 macOS 镜像,下面以 Big Sur 为例启动容器:docker run -it \ --device /dev/kvm \ -p 50922:10022 \ -v /tmp/.X11-unix:/tmp/.X11-unix \ -e "DISPLAY=${DISPLAY:-:0.0}" \ -e SHORTNAME=big-sur \ sickcodes/docker-osx:latest2.4 运行预装的 Catalina 系统如果你希望直接运行预装的 Catalina 系统,执行以下命令:docker pull sickcodes/docker-osx:autodocker run -it \ --device /dev/kvm \ -p 50922:10022 \ -v /tmp/.X11-unix:/tmp/.X11-unix \ -e "DISPLAY=${DISPLAY:-:0.0}" \ -e GENERATE_UNIQUE=true \ sickcodes/docker-osx:auto默认的用户名和密码分别是 user 和 alpine。然后就可以通过VNC连接了本地VNC连接:localhost:10022远程连接:remotehost:10022高级功能3.1 USB 传输和 iPhone 支持Docker-OSX 支持 USB 传输功能,允许你将 iPhone 或 iPad 连接到虚拟机上。你可以使用 usbfluxd 来实现 USB 设备在 macOS 虚拟机中的识别。设置 USB 传输首先,确保在宿主机上安装 usbmuxd、socat 和 usbfluxd:sudo pacman -S libusbmuxd usbmuxd avahi socat启动 usbmuxd 和 usbfluxd:sudo systemctl start usbmuxdsudo avahi-daemonsudo socat tcp-listen:5000,fork unix-connect:/var/run/usbmuxdsudo usbfluxd -f -n然后,在 macOS 虚拟机中安装 usbfluxd 并启动 USB 传输:brew install make automake autoconf libtool pkg-config gcc libimobiledevice usbmuxdgit clone https://github.com/corellium/usbfluxd.gitcd usbfluxd./autogen.shmakesudo make installsudo usbfluxd -f -r 172.17.0.1:5000这样,macOS 系统中的应用(如 Xcode)将可以识别你的 iPhone 或 iPad 设备。3.2 生成 macOS 序列号Docker-OSX 集成了 osx-serial-generator,可以帮助你生成 macOS 序列号、UUID 和主板序列号。这对于 iMessage 和 iCloud 的使用十分重要。生成唯一的序列号你可以在启动容器时自动生成序列号:docker run -it \ --device /dev/kvm \ -p 50922:10022 \ -e GENERATE_UNIQUE=true \ -e SHORTNAME=big-sur \ sickcodes/docker-osx:latest使用特定的序列号如果你已经有特定的序列号,可以使用以下命令:docker run -it \ --device /dev/kvm \ -p 50922:10022 \ -e GENERATE_SPECIFIC=true \ -e DEVICE_MODEL="iMacPro1,1" \ -e SERIAL="C02TW0WAHX87" \ -e BOARD_SERIAL="C027251024NJG36UE" \ -e UUID="5CCB366D-9118-4C61-A00A-E5BAF3BED451" \ sickcodes/docker-osx:latest常见问题与解决方法4.1 Docker 未运行如果遇到 docker: unknown server OS: . 错误,说明 Docker 守护进程未启动。可以通过以下命令启动 Docker:sudo dockerd或者:sudo systemctl --start dockerd4.2 权限问题如果启动时遇到权限相关的错误,请确保你的用户属于 Docker、KVM 和 libvirt 组:sudo usermod -aG docker "${USER}"sudo usermod -aG kvm "${USER}"sudo usermod -aG libvirt "${USER}"4.3 内存不足如果分配的内存比主机上可用的内存多,可能会出现内存分配错误。可以通过清理缓存来释放内存:sudo tee /proc/sys/vm/drop_caches <<< 3总结Docker-OSX 是一个强大的工具,允许你在 Docker 容器中运行 macOS,并且支持多种高级功能,如 USB 传输、序列号生成和 CI/CD 集成等。无论你是开发者、测试人员还是安全研究人员,Docker-OSX 都能为你提供一个高效的 macOS 虚拟化解决方案。
2025年06月18日
4 阅读
0 评论
0 点赞
2025-06-18
几个桌面应用开发框架比较:Electron、Flutter、Tauri、React Native 与 Qt
在当今快速发展的技术环境中,对跨平台桌面应用程序的需求正在不断激增。开发人员面临着选择正确框架之挑战,以便可以高效构建可在 Windows、macOS 和 Linux 上无缝运行的应用程序。在本文中,我们将比较五种流行的桌面应用程序开发框架:Electron、Flutter、Tauri、React Native 和 Qt,可以帮助你根据项目需求做出明智的决策。几个框架之概述1.Electron背景:Electron 由 GitHub 开发,因其使用 HTML、CSS 和 JavaScript 等 Web 技术构建跨平台桌面应用程序的能力而广受欢迎。主要功能:Electron 通过其 Node.js 集成提供对本机 API 的轻松访问,使开发人员能够创建功能丰富的应用程序。它还支持用 C++ 编写的本机插件,尽管构建这些插件可能更复杂且容易出错。2.Flutter背景:Flutter 由 Google 创建,以其在移动应用程序开发中的使用而闻名,但也可用于桌面应用程序。主要特点:Flutter 提供了一组丰富的可定制 UI 小部件,其 Dart 代码被编译为本机机器代码,从而实现快速执行并减少开销。它采用独特的“基于小部件”架构,提供丰富的可定制 UI 小部件。3.Tauri背景:Tauri 是一个较新的框架,旨在创建安全且轻量级的桌面应用程序。它旨在弥合 Rust 和 Web 技术之间的差距。主要功能:Tauri 支持使用 Rust 或 C 构建本机插件,从而可以访问 Web 平台中不可用的本机 API 和功能。4.React Native背景:React Native,同样来自 Facebook,主要以移动应用程序开发而闻名,但也有桌面应用程序开发的扩展。主要特点:React Native 提供了一种访问本机 API 和功能的方法,但与其他框架相比,它可能需要更多的努力。它支持无缝集成第三方库。5.Qt背景:Qt 是一个 C++ 框架,绑定了多种语言,包括 Python 和 JavaScript。这是一个历史悠久、历史悠久的框架。主要特性:Qt 提供出色的本机集成功能,允许开发人员访问本机 API 和功能。它提供了一套用于构建跨平台桌面应用程序的全面工具,并强调本机外观和感觉。跨平台能力在跨平台功能方面,Electron、Flutter、Tauri 和 Qt 足以在多个操作系统上运行应用程序。它们为 Windows、macOS 和 Linux 提供广泛的支持,使其成为需要广泛兼容性的项目的合适选择。React Native 虽然主要是为移动设备设计的,但可以扩展以创建桌面应用程序。然而,它的跨平台支持可能不像其他框架那样无缝,并且可能需要额外的努力才能在所有平台上实现一致的性能和 UI。性能表现性能是桌面应用程序开发的关键因素。以下是这些框架的叠加方式:Electron:以其较高的资源使用率而闻名,Electron 应用程序可能会占用更多内存和 CPU,从而影响较旧或功能较弱的计算机的性能。Flutter:Flutter 的性能值得称赞,这要归功于它的编译代码和 GPU 加速。它提供快速的启动时间和流畅的动画。Tauri:Tauri 因其轻量级特性和低资源消耗而脱颖而出。它是构建快速且响应灵敏的桌面应用程序的绝佳选择。React Native:React Native 桌面应用程序可以节省资源,但跨平台优化性能可能需要额外的工作。Qt:Qt 的性能非常出色,提供类似本机的速度和响应能力。它是资源密集型应用程序的首选。用户界面创建丰富且响应迅速的用户界面是桌面应用程序开发的一个重要指标。以下是这些框架在 UI 功能方面的比较:Electron:Electron 提供了大量预构建的 UI 组件和广泛的主题选项。开发人员可以轻松创建具有视觉吸引力的应用程序。Flutter:Flutter 基于小部件的方法允许高度可定制且具有视觉吸引力的用户界面。它提供了广泛的开箱即用的小部件。Tauri:Tauri 不像其他框架那样提供那么多的 UI 组件,但允许对用户界面进行严格控制,这有利于创建独特的设计。React Native:通过React Native,开发人员可以使用第三方库和组件进行UI设计。可能需要额外的工作才能实现完全定制的外观。Qt:Qt 擅长提供与目标平台无缝集成的类似本机的 UI 元素。它是需要精美原生外观的应用程序的首选。开发经验流畅的开发工作流程对于生产力至关重要。以下是这些框架在开发经验方面的比较:Electron:Electron 提供了一套广泛的开发工具和一个活跃的社区。调试和热重载得到良好支持。Flutter:由于其基于 widget 的架构和强大的文档,Flutter 的开发体验得到了简化。热重载是一个突出的功能。Tauri:Tauri 仍然相对较新,但使用 Rust 和 JavaScript 提供了简化的开发过程。它强调快速发展。React Native:React Native 为 Web 和移动开发人员提供了熟悉的开发体验。然而,过渡到桌面可能需要一个学习曲线。Qt:Qt 提供了一个成熟的开发环境,具有广泛的 IDE 和工具。它以其稳定性和全面的文档而闻名。原生集成访问本机平台功能和 API 对于许多桌面应用程序至关重要。让我们看看这些框架如何处理本机集成:Electron:Electron 通过 Node.js 集成提供对本机 API 的轻松访问。它还支持用 C++ 编写的本机插件,尽管构建这些插件可能更复杂且容易出错。Flutter:Flutter 的 Dart 代码被编译为本机机器代码,从而实现快速执行并减少开销。它采用了一种称为“基于小部件”架构的独特方法,提供了一组丰富的可定制 UI 小部件。Tauri:Tauri 支持使用 Rust 或 C 构建原生插件,可用于访问 Web 平台中不可用的原生 API 和功能。React Native:React Native 提供了一种访问本机 API 和功能的方法,但与其他框架相比可能需要更多的努力。它支持无缝集成第三方库。Qt:Qt 提供出色的本机集成功能。它是一个 C++ 框架,绑定了多种语言,包括 Python 和 JavaScript,可用于访问本机 API 和功能。社区与生态系统开发人员社区的规模和活跃度,可以显着影响框架的成功和第三方库的可用性。这些框架的表现如下:Electron:Electron 拥有一个庞大而活跃的社区,提供大量可用的插件和扩展。Flutter:Flutter 拥有不断增长的社区和越来越多的软件包,主要专注于移动开发,但也有桌面扩展。Tauri:Tauri 仍在成长,但其社区充满热情并致力于其发展。其生态系统正在稳步扩展。React Native:React Native 拥有完善的社区,主要专注于移动开发。桌面扩展社区规模较小,但正在不断增长。Qt:Qt 拥有悠久的历史和强大的生态系统,拥有庞大的工具、小部件和扩展库。框架们的用例和示例让我们探索一些现实世界的用例和使用这些框架构建的应用程序示例,以更好地了解它们在不同场景中的优点和缺点:Electron:广泛用于构建跨平台桌面应用程序,包括代码编辑器(VSCode)、通信工具(Slack)和娱乐应用程序(Spotify)。Flutter:Flutter 逐渐成为富媒体应用程序的选择,已用于 Google Ads、阿里巴巴和 Reflectly 等应用程序。Tauri:Tauri 正在获得轻量级、安全应用程序的青睐,包括密码管理器 (LosePass) 和通信工具 (Mailspring)。React Native:虽然主要是一个移动框架,但 React Native 已扩展到 Discord 和 Microsoft Teams 等应用程序中的桌面使用。Qt:Qt 是一种多功能选择,可用于从工业软件到游戏和汽车信息娱乐系统的广泛应用。开发的挑战虽然每个框架都有其优点,但必须意识到潜在的挑战和限制:Electron:Electron 应用程序可能会占用大量资源,可能会导致旧硬件上出现性能问题。Flutter:如果您主要是移动开发人员,那么使用 Flutter 进行桌面开发可能会涉及一个学习曲线。Tauri:作为一个相对较新的框架,与更成熟的选项相比,Tauri 可能拥有较小的社区和较少的第三方库。React Native:将 React Native 转换到桌面可能需要额外的努力,并且某些特定于平台的功能可能更难访问Qt:Qt 的学习曲线,特别是对于刚接触 C++ 的开发人员来说,可能是一个挑战。结论为桌面应用程序开发选择正确的框架很大程度上取决于项目的具体要求,例如目标平台、性能预期、UI 需求和所需的开发体验。如果正在寻找一个允许你利用 Web 技术的框架,Electron和React Native是不错的选择。Electron 拥有庞大的社区和广泛的预构建组件,而 React Native 提供强大的组件系统,并允许在移动和桌面平台之间重用代码。如果性能和小包大小是优先考虑的,请考虑Flutter或Tauri。Flutter 提供快速的启动时间和流畅的动画,而 Tauri 则以其轻量级和低资源消耗而闻名。如果你需要一个具有出色本机集成和本机外观的框架,Qt是一个可靠的选择。如果你正在开发需要丰富的、可定制的用户界面的复杂应用程序,Flutter可能是最佳选择,因为它基于 widget 的开发方法。还请各位开发者要记住,请考虑与每个框架相关的学习曲线,特别是如果你或团队尚不熟悉所涉及的技术。比如,Tauri 需要 Rust 或 C 的前置知识,而 Flutter 使用 Dart 做为预备知识。
2025年06月18日
0 阅读
0 评论
0 点赞
2025-06-18
打造linux shell操作方式的windows powershell
建立常用的su/find/which/ll/ls 命令profile主要用于个性化常用的函数、别名等等。每次加载powershell的时候,都会执行profile中的内容。查看是否有profile:$profile如果结果是false说明没有。则创建一个。New-Item –Path $Profile –Type File –Force-Force 是强制创建,即使你有了,也创建。使用记事本编辑你自己的profile:notepad $Profilefunction ll { ls }function where ($command) {Get-Command -Name $command -ErrorAction SilentlyContinue | Select-Object -ExpandProperty Path -ErrorAction SilentlyContinue}Remove-Item -Force Alias:wherefunction which ($command) {gcm $command -All}function find {Get-ChildItem -r @args}function su {Start-Process powershell -Verb runAs}如何在 Powershell 中删除常量别名?Remove-Item -Force Alias:wherePowershell函数优先命令,但是别名优先于函数sed编辑器在windows平台上的使用一、写在前面我们经常在linux上使用sed命令去替换文件里面字符,但是我们经常使用的是windows系统,文件太大如果上传到linux上去操作,浪费空间,又浪费上传下载传输的网络带宽。所以能windows系统上使用sed工具是一件多么美妙的事情,终于有开源界的大佬把sed带到了Windows平台,让我们一起来体验其强大的功能。二、sed介绍sed 全名为 stream editor,流编辑器,用程序的方式来编辑文本,功能相当的强大。是贝尔实验室的 Lee E.McMahon 在 1973 年到 1974 年之间开发完成,目前可以在大多数操作系统中使用,sed 的出现作为 grep 的继任者。与vim等编辑器不同,sed 是一种非交互式编辑器(即用户不必参与编辑过程),它使用预先设定好的编辑指令对输入的文本进行编辑,完成之后再输出编辑结构。sed 基本上就是在玩正则模式匹配,所以,玩sed的人,正则表达式一般都比较强。三、安装sed先从sourceforge网站上下载sed win的安装程序https://sourceforge.net/projects/gnuwin32/files/sed/我选择是最新的sed-4.2.1,直接默认安装就行了四、sed使用使用CMD,先进入到sed默认安装路径的bin文件夹 C:\Program Files (x86)\GnuWin32\bin输入下面命令使用就行了sed -i "s/NO_AUTO_CREATE_USER//" d:/Dump20230825.sql我这段命令作用是将D盘的Dump20230825.sql文件中的NO_AUTO_CREATE_USER字符串替换成空。具体使用方法就行sed -i 's/FIND_TEXT/REPLACE_TEXT/' file.txt将 C:\Program Files (x86)\GnuWin32\bin放入环境变量的PATH 路径中去即可在任意路径下时使用
2025年06月18日
0 阅读
0 评论
0 点赞
2025-06-18
常见系统部署(3)
私人笔记部署下载并启动为知笔记服务进入用户目录建立一个wizdata的文件夹。为知笔记服务端会把所有的数据保存在这个目录里面。如果是正式使用,请注意定时备份该目录。如果你的8000端口被占用,请将下面的8000:80更换为xxxx:80,其中xxxx为你空余的端口号。docker run --name wiz --restart=always -it -d -v ~/wizdata:/wiz/storage -v /etc/localtime:/etc/localtime -p 8000:80 -p 9269:9269/udp wiznote/wizserver安装成功之后就可以通过ip:8000访问网页版了。默认管理员账号:admin@wiz.cn密码:123456使用这个账号,登录网页版,然后修改管理员密码。其他用户,请自行注册。免费版本可以注册5个用户(不包含管理员账号)登入效果:设置内网穿透,客户端支持windows、linux、macos、ios、Android。WINDOWS客户端更新docker stop wizdocker rm wizdocker pull wiznote/wizserver:latestdocker run --name wiz --restart=always -it -d -v ~/wizdata:/wiz/storage -v /etc/localtime:/etc/localtime -p 80:80 -p 9269:9269/udp wiznote/wizserver私人iptv 部署一键部署自动更新IPTV源!Docker玩家专属电视频道管家来了兄弟们有没有遇到过这种情况?刚找到的直播源没看两天就失效,半夜想追个球赛却发现频道全挂了。今天二冰给大家带来这个iptv-sources项目,堪称电视频道管家,让你彻底告别手动更新频道的痛苦!项目简介iptv-sources 是一个基于Docker的自动IPTV源管理神器,它能:• 自动抓取全球20+个优质源站• 智能合并去重生成标准化m3u列表• 自带EPG电子节目指南支持• 支持与iptv-checker联动检测可用性最骚的是这个项目每2小时自动更新一次频道源,官方统计可用率长期保持在80%以上!五大核心优势全自动运维:内置定时任务+智能更新脚本,完全解放双手多源聚合:整合了http://iptv.org等知名源站,覆盖国内外2000+频道Docker极简部署:三行命令搞定,支持群晖/威联通等NAS系统智能检测系统:可联动iptv-checker自动过滤失效频道灵活扩展:支持自定义GitHub代理,墙内用户也能畅快更新手把手部署教程(Dockge版)version: '3.8' services: iptv-api: image: guovern/iptv-api container_name: iptv-api ports: - "8755:8000" volumes: - /www/dk_project/dk_app/iptv/config:/iptv-api/config - /www/dk_project/dk_app/iptv/output:/iptv-api/output restart: unless-stopped高级玩法频道可用性检测访问http://127.0.0.1:8755/check/cn即可查看中国区频道存活率强制手动更新执行命令立即刷新源列表:docker exec -it iptv-sources /bin/sh ./update-sources.sh定时任务配置在群晖任务计划中添加:docker exec -d iptv-sources /bin/sh ./update-sources.sh建议每天凌晨3点自动执行接口地址:ip:8755M3u 接口:127.0.0.1:8755/m3uTxt 接口:127.0.0.1:8755/txt接口内容:127.0.0.1:8755/content测速日志:127.0.0.1:8755/log影视仓请使用txt接口,不然会出现好多重复并且无用的频道,例如:http://127.0.0.1:8755/txt避坑指南• 若遇更新失败,尝试更换CUSTOM_GITHUB_RAW_SOURCE_PROXY_URL代理• 频道导入失败时,检查播放器是否支持https协议• 推荐配合iptv-checker使用,过滤失效源效果更佳• 海外用户可删除代理配置提升更新速度总结经过两周实测,二冰的影视库再也没出现过"该频道不可用"的尴尬提示。项目对国内网络环境适配良好,特别是通过代理解决了GitHub源抓取问题。建议搭配2GB以上内存的设备运行,适合:✅ 追剧狂魔✅ 体育赛事爱好者✅ 海外华人看国内台✅ 折腾党想要自建IPTV服务最后奉上我的超级无敌至尊docker库,二冰平时玩过的docker都整理到了这个仓库中了,一直在更新中,希望有github账号的兄弟能去给点个star,不知道玩啥的,都去这里面找,都给你们分好类私人听书系统部署audiobookshelf宝塔桌面docker 部署搜索book,点击安装登入效果:这个需要本地资源。私人资源搜索部署Docker神器!一键部署全网资源搜索神器爱盼兄弟们还在为找资源东奔西跑?今天二冰给大家安利一个能聚合全网资源的搜索神器——Aipan(爱盼)。只要用Docker跑个容器,你就能拥有自己的影视/音乐/网盘资源聚合搜索站!一、项目简介项目地址:https://github.com/unilei/aipan-netdisk-search这个基于Vue+Nuxt.js的开源项目堪称资源党福音:• 豆瓣热映榜单实时追踪• 聚合多个网盘资源搜索接口• 酷我音乐无损音源下载• 支持Alist在线播放• 内置电视直播源• 甚至还能当博客用docker-compose代码(docker-compose.yml 内容如下)version: "3.9" # 设置 Compose 文件的版本 services: aipan-netdisk-search: image: fooololo/aipan-netdisk-search:latest # 使用的镜像 container_name: aipan-netdisk-search # 容器名称 network_mode: bridge # 网络模式 restart: unless-stopped # 重启策略 ports: # 端口映射 - 13000:3000 # 将主机的 13000 端口映射到容器的 3000 端口 logging: # 日志配置 options: max-size: 5m # 日志文件的最大大小 max-file: "5" # 保留的最大日志文件数量配套环境变量文件env.txt配置:ADMIN_USER=adminADMIN_PASSWORD=你的密码JWT_SECRET=XnKZDR7OmPce9SxBjbPOqyMnMKDMdLLWNJP9iqsrYNk=然后运行sudo docker-compose up -d
2025年06月18日
0 阅读
0 评论
0 点赞
2025-06-16
UOS 知识汇总/Linux 知识汇总
UOS创建开机自启程序或脚本通过创建桌面启动程序实现开机自启创建可执行程序或脚本启动文件xx.desktop,文件格式如下[Desktop Entry]Type=ApplicationEncoding=UTF-8Exec=/usr/bin/xx.sh #可执行程序路径Name=xx #程序名称拷贝脚本到/usr/bin目录sudo cp -f xx.sh /usr/bin/chmod a+x /usr/bin/xx.sh设置开机自启动,启动时间为开机输入密码进入桌面的瞬间执行sudo cp -f xx.desktop /etc/xdg/autostart/sudo chmod 644 /etc/xdg/autostart/xx.desktop通过配置rc-local服务实现开机自启uos默认没有开启rc-local服务,所以在创建/etc/rc.local文件,并且向该文件写入开机需要执行的命令是不会生效的,需要先开启并配置rc-local.service服务,以下为配置相关步骤:编辑/lib/systemd/system/rc-local.service文件,在文件结尾添加以下两行代码[Install] WantedBy=multi-user.target lzc@lzc-PC:~$ cat /lib/systemd/system/rc-local.service # SPDX-License-Identifier: LGPL-2.1+ # # This file is part of systemd. # # systemd is free software; you can redistribute it and/or modify it # under the terms of the GNU Lesser General Public License as published by # the Free Software Foundation; either version 2.1 of the License, or # (at your option) any later version. # This unit gets pulled automatically into multi-user.target by # systemd-rc-local-generator if /etc/rc.local is executable. [Unit] Description=/etc/rc.local Compatibility Documentation=man:systemd-rc-local-generator(8) ConditionFileIsExecutable=/etc/rc.local After=network.target [Service] Type=forking ExecStart=/etc/rc.local start TimeoutSec=0 RemainAfterExit=yes GuessMainPID=no [Install] WantedBy=multi-user.target 启动rc-local.service服务并设置开机自启systemctl start rc-local.servicesystemctl enable rc-local.service创建rc.local文件并赋予755的权限,往/etc/rc.local文件中写入开机需要执行的命令即可touch /etc/rc.localchmod 755 /etc/rc.local原文链接:https://blog.csdn.net/zZzZzZ__/article/details/120054678软连接复制在Linux中,使用cp命令复制软链接时,会根据命令行参数的不同而产生不同的结果:如果使用cp -L命令,cp会复制软链接指向的文件,而不是软链接本身。这个选项强制cp遵循软链接指向的路径,而不是复制软链接。如果使用cp -P命令,cp会复制软链接本身,而不是软链接指向的文件。这个选项使cp复制软链接,而不是软链接指向的文件。如果未使用任何选项,cp默认会复制软链接本身,而不是软链接指向的文件。这意味着在复制文件树时,软链接只是简单地被复制到目标目录中,而不会创建新的软链接或复制软链接所指向的文件。总之,如果您要复制软链接指向的文件,使用cp -L命令;如果您要复制软链接本身,请使用cp -P命令。如果您只需要将软链接复制到目标目录中,而不是复制软链接指向的文件,那么默认的cp行为就可以满足您的需求。删除打开的文件比如删除打开的.Makefile_back.swp会产生一个临时文件 .nfs000000007c3595c8000129a0再删除临时文件会提示rm: cannot remove ‘.nfs000000007c3595c8000129a0’: Device or resource busy/usr/sbin/lsof D .nfs000000007c3595c8000129a0lsof: status error on D: No such file or directoryCOMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAMEgvim 98377 bennyhe 12u REG 0,46 12288 2083886536 .nfs000000007c3595c8000129a0查询储打开工具的PID, kill -9 98377 强制关闭关工具就可以了。删除当前路径所以空文件夹find ./ -type d -empty -deletefind ./ -type d -empty 查找所有空文件夹根据进程搜索PID同样地,你可以执行命令 ps 附带额外选项来获取某个指定的进程的 PID。例如,你可以使用以下命令来获得 firefox 的 PID。ps -el | grep -i firefox还有 ps -ef | grep gvim | grep bennyhe通过进程ID查询端口占用以上一步骤的sshd进程为例,进程PID为522(如果没有netstat命令,使用 sudo apt-get install net-tools 进行安装)netstat -nap | grep 522运行项目并下载源码1如果是查看root用户进程需要加sudo 指令应该为 :sudo netstat -nap|grep 522————————————————版权声明:本文为CSDN博主「玩转智能机器人」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/u011198687/article/details/120825794
2025年06月16日
2 阅读
0 评论
0 点赞
1
...
65
66
67
...
76