![問題](https://rvso.com/image/89173/%E5%95%8F%E9%A1%8C.png)
raspberry pi 3
我在我的linux上安裝了 samba 服務: Jessie (Debian 8)
。
smb設定檔
[global]
netbios name = medicalexporter
workgroup = WORKGROUP
public = yes
# Run a WINS server
wins support = yes
local master = yes
preferred master = yes
os level = 65
log level = 10
log file = /home/pi/logs/samba.log.%m
[SambaTest]
comment = Samba-Test-Freigabe
path = /home/pi/shares/test
read only = no
[pdfCreatorLinux]
path = /tmp
printable = yes
guest ok = yes
print command = /usr/bin/printpdf %s
lpq command =
lprm command =
/usr/bin/printpdf
#!/bin/sh
LOG_FILE=/home/pi/logs/pdf.log
exec 3>&1 1>>${LOG_FILE} 2>&1
DATE="date +%b%d-%H%M%S"
OUTDIR=/home/pi/shr/pdfdropbox
"hello" >> /home/pi/logs/2.log
ps2pdf $1 \$OUTDIR/\$DATE.temp
mv \$OUTDIR/\$DATE.temp \$OUTDIR/\$DATE.pdf
rm \$1
出於測試目的,我授予此腳本777
權限sudo chmod 777 /usr/bin/printpdf
桑巴資料夾
mkdir -p ~/shr/pdfdropbox
chown root:root ~/shr/pdfdropbox
chmod u+rwx ~/shr/pdfdropbox
samba 服務有一個使用者且smbd
&nmbd
正在運作。我可以在我的 mac 下看到 samba 服務sharing
並存取共用資料夾。我在網路印表機下方看到了印表機。當我透過 samba 印表機列印文件時,它顯示它正在連接、發送資料並且資料已正確接收。
但/usr/bin/printpdf
似乎沒有被執行。/home/pi/logs
除了來自 samba 本身的日誌(兩個日誌,一個帶有我的電腦名稱,一個帶有 IP)之外,沒有任何內容。
當我手動啟動 pdf 腳本時,會建立日誌。
PS:我主要堅持那個教學: http://www.tldp.org/LDP/LG/issue72/bright.html
問題
為什麼腳本沒有執行?
答案1
我相信這一行有個錯誤:
"hello" >> /home/pi/logs/2.log
你可能想嘗試
echo "hello" >> /home/pi/logs/2.log
並且您$
在腳本的其餘部分中引用了 s 。我會嘗試刪除\
s。並引用完整的檔名。
結束於:
echo "hello" >> /home/pi/logs/2.log
ps2pdf "$1" "$OUTDIR/$DATE.temp"
mv "$OUTDIR/$DATE.temp" "$OUTDIR/$DATE.pdf"
rm "$1"
在腳本的後半部分
答案2
所以我發現了很多東西。首先我需要添加printing = BSD
也許否則使用 CUPS覆蓋設定.然後我需要進行設置printcap name = /dev/null
,否則 Ghostscript 檔案會在我訪問它們之前消失。和lpq
命令lpr
在不需要的地方。
[pdfCreatorLinux2]
# load printers = no
printcap name = /dev/null
path = /tmp/
printable = yes
printing = BSD
print command = /usr/bin/printpdf %s
# lpq command =
# lprm command =
其次,所有腳本和資料夾必須可供 samba 服務的使用者存取。
PS:我還調整了pdf腳本,但這不是它沒有執行的原因。
#!/bin/sh
LOG_FILE=/home/pi/logs/pdf.log
exec 3>&1 1>${LOG_FILE} 2>>&1
DATE=$(date +"%m_%d_%Y")
OUTDIR="/home/pi/shr/pdfdropbox"
ps2pdf $1 "$OUTDIR/$DATE.temp"
mv $OUTDIR/$DATE.temp $OUTDIR/$DATE.pdf
rm $1