IronPDF在Ubuntu 24.04上的依賴問題於.NET 9和.NET 10
在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)
在第一次render調用之前設置true:
IronPdf.Installation.LinuxAndDockerDependenciesAutoConfig = true;
IronPdf.Installation.LinuxAndDockerDependenciesAutoConfig = true;
IronPdf.Installation.LinuxAndDockerDependenciesAutoConfig = True
為了在啟動期間捕獲診斷輸出,啟用文件記錄:
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"
選項2:首次啟動使用提升的權限(非Docker Linux)
對於非Docker Linux環境,應用程式運行一次時以提升的權限運行,以便IronPDF能夠安裝所需的包:
sudo -E dotnet run
sudo -E dotnet run
如果sudo下找不到dotnet,請使用完整路徑:
sudo -E ~/.dotnet/dotnet run
sudo -E ~/.dotnet/dotnet run
首次啟動安裝依賴後,後續運行不再需要提升的權限。 有關Ubuntu 24.04上所需包的完整列表,請參閱Linux 部署指南。

