AS: open for access file myLogFile fungerar bara lokalt

Tråden skapades och har fått 8 svar. Det senaste inlägget skrevs .
1
  • Medlem
  • 2012-03-26 22:17

Jag försöker skriva till en loggfil på en filyta men får bara fel om att jag inte kan öppna filen, "File not open with write permission", fast den absolut borde vara det.
I den första try satsen får jag ett förväntat "fel" varje gång: "file not open", så filen är inte öppen.
Vad kan detta bero på? Det går hur bra som helst om jag skriver lokalt.
Och jag kan skapa loggfilen på det här sättet, men inte skriva i den en andra gång.

try
	close access file myLogFile
end try
-- Skriv logg:
try
	set fileRef to (open for access file myLogFile with write permission)
	write myLog & return to fileRef starting at eof as «class utf8»
	close access fileRef
on error err
	display dialog err
end try
[B]

[/B]

  • Medlem
  • 2012-03-26 22:21

Jag kan öppna filen i TextWrangler och skriva i den.

Jag får det också att fungera lokalt. Och på den enda "filyta" jag kommer åt just nu: Time Capsule.

Din filserver kanske inte automatiskt ger de förväntade rättigheterna till en fil som skapas med AS (ren gissning)

Kanske det funkar att stoppa in något i stil med

do shell script "sudo chmod -R u+rwX,go+rX " & "POSIX path of myLogFile" password myAdminPassword

  • Medlem
  • 2012-03-26 22:53

Jag har använt samma kod tidigare. Nu har vi en macserver med ett SAN, och kopplingen däremellan har trasslat tidigare, så jag gissar att problemet ligger där nånstans.
Jag ska testa mot en winserver i morgon.

Jag kan inte använda någon annan autentisering än den man ansluter mot servern med eftersom det är en rad användare som ska göra detta, och ingen är admin eller har speciella rättigheter på servern. Alla får däremot läsa, skriva och radera på den aktuella platsen.

Ha, ha! Dina krusidullfria frågor är alltid en rolig utmaning och man lär ofta alltid något nytt. Men här var förutsättningarna inte lätta att läsa sig till mellan raderna.

Filservrar kan vara ett elände att felsöka. Sitter själv som macklient i Novellträsket och det finns många mysterier som jag inte rått på. En mac mot mac-server torde dock inte vara omöjligt. Lycka till.

Nu är jag inte säker på att det är ett rättighetsproblem, av det slaget, men rent principiellt kan du köra script med admin-rättigheter, fast användaren som kör scriptet inte själv är admin.

  • Medlem
  • 2012-03-27 09:35

Det är jag gärna intresserad av, men jag tror inte heller att det hjälper i det här fallet. Jag tror inte ens att jag vill använda metoden.

  • Medlem
  • 2012-03-27 11:31

Jag kan inte mata ut volymen heller, så nån process är det som inte släpper.
Det fungerar på windowsservern.

Vilka andra metoder för att skriva logfiler kan man börja titta på?

Eller hur tar man reda på vilken process det är som inte släpper taget?

  • Medlem
  • 2012-03-27 11:56

Nya bud. Det verkar som att Console lägger rabarber på filen om den inte är lokal. Stänger jag av Console fungerar det. Det fungerar alltid på lokala filer.
Det måste väl bara en bugg i Systemmeddelanden?

1
Bevaka tråden