我正在使用centos 6 - 最近我收到此錯誤任何我想在伺服器上安裝任何東西的東西,例如使用varnish - var/tmp 是空的並且具有root:root 作為所有者我已經檢查了var/tmp 目錄的777 權限但是仍然是相同的錯誤 -
也使用以下命令檢查它是否與 systemd 相關 - 但結果顯示其他
pidof systemd && echo "systemd" || echo "other"
錯誤如下
Total download size: 2.2 M
Installed size: 8.1 M
Is this ok [y/N]: y
Downloading Packages:
varnish-5.2.1-1.el6.x86_64.rpm
| 2.2 MB 00:00
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
error: error creating temporary file /var/tmp/rpm-tmp.cNUXgY: No such file or directory
error: Couldn't create temporary file for %pre(varnish-5.2.1-1.el6.x86_64): No such file or directory
Error in PREIN scriptlet in rpm package varnish-5.2.1-1.el6.x86_64
error: install: %pre scriptlet failed (2), skipping varnish-5.2.1-1.el6
Verifying : varnish-5.2.1-1.el6.x86_64
1/1
Failed:
varnish.x86_64 0:5.2.1-1.el6
答案1
/var/tmp 的正確權限是「1777」。只有“777”沒有設定黏滯位,這可能是問題的一部分。
您可以檢查“mktemp -d --tmpdir=/var/tmp rpm-tmp.XXXXXX”是否正常運作嗎?這是為了測試建立臨時目錄是否有效。其次,您可以嘗試暫時停用 SELinux。也許 RPM 正在內部更改某些上下文,因此不允許建立目錄。
如果這沒有幫助,我們將需要更多資訊:
- 你如何安裝這個套件?
- 它適用於其他軟體包嗎?
- 系統設定
- 最近的變化,在這些變化之前它有效嗎?