IronPDF在.NET 9和.NET 10上的Ubuntu 24.04依赖问题
This article was translated from English: Does it need improvement?
Translated
View the article in English
在Ubuntu 24.04上运行.NET 9或.NET 10时,IronPDF无法在启动时安装所需的系统依赖项。这会影响Azure Linux映像和在没有root权限的非Docker Linux环境中应用程序无法运行。
E: Could not open lock file /var/lib/apt/lists/lock - open (13: Permission denied)
E: Unable to lock directory /var/lib/apt/lists/
Ubuntu 24.04将音频库从libasound2重命名为libasound2t64。IronPDF的自动依赖项安装程序针对原始libasound2包名称,并且在作为非root用户运行时无法获取APT锁,产生如上所示的权限错误。
解决方案
选项1:启用自动依赖配置(Docker和Azure Linux)
在第一次渲染调用之前,将true:
IronPdf.Installation.LinuxAndDockerDependenciesAutoConfig = true;
IronPdf.Installation.LinuxAndDockerDependenciesAutoConfig = true;
IronPdf.Installation.LinuxAndDockerDependenciesAutoConfig = True
$vbLabelText
$csharpLabel
为在启动期间捕获诊断输出,启用文件日志:
IronSoftware.Logger.LoggingMode = IronSoftware.Logger.LoggingModes.File;
IronSoftware.Logger.LogFilePath = "ironpdf.log";
IronSoftware.Logger.LoggingMode = IronSoftware.Logger.LoggingModes.File;
IronSoftware.Logger.LogFilePath = "ironpdf.log";
IronSoftware.Logger.LoggingMode = IronSoftware.Logger.LoggingModes.File
IronSoftware.Logger.LogFilePath = "ironpdf.log"
$vbLabelText
$csharpLabel
选项2:以提升的权限首次启动(非Docker Linux)
对于非Docker Linux环境,以提升的权限运行一次应用程序,以便IronPDF可以安装所需的包:
sudo -E dotnet run
sudo -E dotnet run
SHELL
如果在sudo下找不到dotnet,请使用完整路径:
sudo -E ~/.dotnet/dotnet run
sudo -E ~/.dotnet/dotnet run
SHELL
首次启动安装依赖项后,后续运行无需提升权限。 有关Ubuntu 24.04所需包的完整列表,请参阅Linux部署指南。
重要此问题在IronPDF 2026.3.x中得到解决。 升级到该版本或更高版本意味着无需手动配置即可自动检测到libasound2t64库重命名。)]
准备开始了吗?
Nuget 下载 20,088,359 | 版本: 2026.7 刚刚发布

