PostgreSQL 9 installer sur Windows: "impossible d'écrire dans le chemin D'environnement TEMP."
je tente d'installer PostgreSQL 9 (postgresql-9.0.3-1-fenêtres.exe) sur ma machine WinXP et obtenir l'erreur suivante au début:
certaines recherches sur Google ont donné des conseils qui suggéraient Windows Scripting Host peut être désactivé. J'ai vérifié et WSH est définitivement activé, donc ça doit être autre chose. La Question est, que?
je peux voir un fichier appelé prerun_checks.vbs est créé dans %TEMP% et quand j'essaie de l'exécuter manuellement, j'ai le code suivant:
Qui ressemble à une erreur de permission. Cependant, je suis un administrateur, et je me suis donné le plein contrôle du dossier temporaire et il ne fonctionne toujours pas.
Toute aide appréciée.
19 réponses
dans mon cas, la solution était liée à NotePad++
étant l'application par défaut pour l'ouverture .vbs
fichiers. Si vous avez la même situation, voici une solution élaborée:
http://igordcard.blogspot.co.il/2012/03/unable-to-write-inside-temp-environment.html
en bref, dans le registre, vous devez aller à HKEY_CLASSES_ROOT\.vbs
, et réglez l'option (Default)
entrée à la chaîne VBSFile
.
comme je terminais ma question ci-dessus, notre informaticien est apparu et a su immédiatement quel était le problème: c'est McAfee. Il empêche de l'exécution dans un dossier temporaire, y compris Windows Scripting des scripts de L'hôte. Désactiver McAfee pour la durée de l'installation a résolu le problème pour moi.
Donc, si vous voyez ce problème, essayez de désactiver votre anti-virus.
la réponse de la page suivante m'a interpellé. http://forums.enterprisedb.com/posts/list/3040.page
- exécuter-> regedit et prendre de sauvegarde de registre à l'aide de l'exportation
- HKEY_LOCAL_MACHINE - > SOFTWARE - > Classes - >CLSID->B54F3741-5B07-11cf-A4B0-00AA004A55E8} - > InprocServer32
- modifier l'entrée du registre avec la nouvelle valeur comme C:\Windows\System32\vbscript.dll
en fait, j'ai trouvé qu'il y a 3 entrées de HKEY_LOCAL_MACHINE - > SOFTWARE - > Classes - > CLSID->B54F3741-5B07-11cf-A4B0-00AA004A55E8}, and set the first one as above, it works.
Si quelqu'un d'autre est à la recherche d'informations sur ce sujet et n'ont pas de chance ici, vous voudrez peut-être consulter:
http://wiki.postgresql.org/wiki/Troubleshooting_Installation
suivi de la liste de diffusion, veuillez lire:
Eh bien, dans mon cas, rien n'a fonctionné, et la désactivation de McAffee avait besoin d'un billet spécial avec l'équipe de sécurité de ma compagnie pour le faire... donc j'ai installé en utilisant les binaires, en suivant ce guide Guide Utile.
En résumé, téléchargez le binaire ici, dézippez-le, Allez à l'intérieur du pgsql
dossier, créez log
et data
répertoires là-dedans, et puis ouvrir une invite de commande, naviguer à l'endroit où le pgsql\bin
le dossier est, et exécuter initdb -U postgres -A password -E utf8 -W -D POSTGRESQL_ROOT\data
Vous pouvez démarrer et arrêter le serveur en cours d'exécution
"POSTGRESQL_ROOT/bin/pg_ctl" -D "POSTGRESQL_ROOT/data" -l "POSTGRESQL_ROOT/log/pgsql.log" start
et
"POSTGRESQL_ROOT/bin/pg_ctl" -D "POSTGRESQL_ROOT/data" -l "POSTGRESQL_ROOT/log/pgsql.log" stop
où POSTGRESQL_ROOT est le chemin complet vers le pgsql
dossier.
pour éviter d'autres problèmes, vous devriez également exclure le répertoire de données (où Postgres met ses données) d'être scanné par votre virus-scanner
dans mon cas, c'est une autre application qui a causé le problème. Pas De Notepad++. Pour d'autres qui rencontrent ce problème, vous pouvez le diagnostiquer en supprimant d'abord tous les fichiers dans C:\Documents and Settings\UserName\Local Settings\Temp
pour que vous puissiez trouver le bitrock_installer.log
facilement lorsque vous essayez d'installer postgresql à nouveau et afficher les instructions qu'il contient. Changer la touche (par défaut) dans le HKEY_CLASSES_ROOT
, .vbs
section du Registre à VBSFile résolu.
j'ai eu ce problème lorsque j'essaie d'installer la version 32 bits sur Windows 7 64 bits.
essayer le kit d'installation sur 64 bits n'a présenté aucune erreur, mais les solutions présentées par d'autres sont également valables.
dans mon cas, j'ai téléchargé l'outil de suppression McAfee MCPR (McAfee Consumer Product Removal) qui a nettoyé certains résidus après la désinstallation de McAfee.
certaines entrées de Registre qui avaient auparavant InprocServer32
valeurs 'c:\program files\common files\mcafee\systemcore\...'
retour à ses valeurs d'origine:
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{B54F3741-5B07-11cf-A4B0-00AA004A55E8}\InprocServer32\(default) = vbscript.dll
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Wow6432Node\CLSID\{B54F3741-5B07-11cf-A4B0-00AA004A55E8}\InprocServer32\(default) = C:\Windows\SysWow64\vbscript.dll
après cela J'ai installé avec succès PostgreSQL 9.3
Tout ce qui précède n'a pas fonctionné pour moi. J'ai été faire une erreur de ce type:
sortie du Script: Erreur CScript: Windows Script Host access est désactivé sur cette machine. Contactez votre administrateur pour plus de détails.
donc après quelques recherches sur google j'ai trouvé la solution: Accédez à la clé suivante:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows Script Host\Settings
Dans le panneau de droite, vous verrez Activé. Si vous voyez l'entrée 0, cela signifie que L'accès au Script Windows Host est désactivé sur votre machine Windows.
double-cliquez dessus et donnez-lui la valeur donnée 1 pour l'activer.
une valeur de 1 va activer Windows Script Host Une valeur de 0 va désactiver Windows Script Host.
pour windows 10 naviguez vers
HKEY_CURRENT_USER\Software\Microsoft\Windows Script Host\Settings
mon problème était Smad-Av qui empêche les Scripts Windows de fonctionner, Ce n'est qu'après avoir traversé ce fil que je me suis souvenu. J'ai juste cliqué sur L'icône Smad-Av et sélectionné Permettre À Windows Script & Bureau-Macro (Permanent).
j'ai eu le même problème avec l'installation de PostgreSQL (incapable d'écrire dans TEMP environment variable path), le problème était dans Windows Script Host qui a été désactivé (vérifiez le fichier journal pour voir si c'est votre problème). l'activer avec l'éditeur de registre (exécuter-->regedit) à cet endroit Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows Script Host\Settings
en mettant sa valeur à 1
pour plus de détails, consultez le lien suivant: http://1stopit.blogspot.com/2011/01/postgresql-83-and-84-fails-to-install.html
Vérifiez la journalisation dans le répertoire TEMP du système (à condition que l'installateur puisse y écrire). Il y a beaucoup d'informations sur les erreurs.
mon problème était que les fichiers VBS étaient associés à un éditeur de texte (probablement le logiciel anti-virus est le coupable) .
ici vous pouvez trouver quelques scripts d'édition reg pour revenir à la valeur par défaut comportement: http://www.nilpo.com/2009/07/windows-xp/restoring-vbs-vbscript-script-file-file-associations/#more-107
Cheers
cela arrive quand Notepad++ s'associe .types de fichiers vbs. vous pouvez ouvrir notepad++ -> Préférences -> fileAssociation Supprimer la .vbs des ext enregistrés. Fermez le bloc-notes++. Essayez d'installer Postgres à nouveau.
dans mon cas, changer la touche (par défaut) dans le fichier HKEY_CLASSES_ROOT, .la section vbs du Registre à VBSFile l'a résolu. BlueFish est grab .association de fichiers vbs.
ma solution est similaire à #5, avec une explication de comment et pourquoi McAfee ruine votre enregistrement vbscript.
apparemment, quand j'ai eu le logiciel antivirus McAfee sur mon ordinateur, il a frappé le vbscript.enregistrement dll que Windows Scripting Host doit exécuter .Fichiers VBS.
dans les exportations .REG file:
[HKEY_CLASSES_ROOT\CLSID{B54F3741-5B07-11cf-A4B0-00AA004A55E8}\InprocServer32] @="C:\Program Fichiers\Common Files\McAfee\SystemCore\ScriptSn.20120327211246.dll"
qui devrait être changée de nouveau en "C:\Windows\System32\vbscript.dll" maintenant.
McAfee installe apparemment une DLL qui détourne le vbscript.dll pour essayer de protéger les mauvais scripts de l'exécution. Quand j'ai désinstallé McAfee en faveur de Microsoft
sécurité essentielle, McAfee n'a pas restauré les chemins d'enregistrement ("not mon problème"), et le McAfee DLL, bien sûr, a été retiré de l'emplacement pendant désinstaller, de sorte que le vbscript.en fait, l'enregistrement de la dll a pointé vers nulle part et rien.
il doit y avoir une meilleure façon d'écrire un logiciel Antivirus pour qu'il ne désactive pas le système d'exploitation de l'utilisateur quand il est désinstallé, ou quand les fonctionnalités sont désactivés, ou remplacer l'enregistrement. Voir l'exemple suivant:
https://kc.mcafee.com/corporate/index?page=content&id=KB71660
j'ai un système d'exploitation 64 bits. Le chemin d'enregistrement a été modifié dans un certain nombre de emplacement.
l'ID de classe régulier devrait pointer vers le "C:\Windows\System32\vbscript.dll " fichier 64 bits.
les chemins de registre "Wow6432Node" devraient pointer vers le "C:\Windows\SysWOW64\vbscript.dll " fichier 32 bits.
Oui, Les 64 bits sont dans le dossier "32" et les 32 bits sont dans le dossier "SysWOW64". Microsoft ne voulait pas changer le nom du dossier principal D'exécution "System32" quand il a migré vers
Dans le répertoire temp, mon bitrock_installer.le fichier journal avait les caractéristiques suivantes:
Executing cscript //NoLogo "C:\Users\MyUser\Local
Settings\postgresql_installer_1b4eec8be6\prerun_checks.vbs"
Script exit code: 1
Script output:
Input Error: Can not find script file "C:\Users\MyUser\Local
Settings\postgresql_installer_1b4eec8be6\prerun_checks.vbs".
Il S'avère que Windows a un lien symbolique entre les répertoires suivants:
- C:\Users\cpetrie\Local Paramètres \ Temp
- C:\Users\cpetrie\AppData\Local\Temp
pour une raison quelconque, mes variables d'utilisateur" tmp "et" TEMP "faisaient référence au chemin" Local Settings "au lieu du chemin "AppData". Changer cela a corrigé mon problème d'installation.
avant de commencer à jouer avec le registre, vérifiez si WSH est désactivé ou non. Pour ce faire, lancez wscript.exe dans la boîte DOS.
si vous voyez une boîte de dialogue appelée "Windows Script Host Settings", WSH est activé, et votre problème avec L'installation PostgreSQL doit être lié à autre chose. Si vous obtenez une boîte d'erreur qui dit "Windows Script Host accès est désactivé sur cet ordinateur. Contactez votre administrateur pour plus de détails", WSH est désactivé, et votre problème avec PostgreSQL l'installation peut y être liée (ou non).
pour moi, mon problème était lié au script Windows. J'ai résolu cela en cliquant avec le bouton droit de la souris sur l'icône smadav dans les icônes cachées dans la barre des tâches et j'ai coché "Autoriser Windows-script et Office-Macro (Permanent)". Puis double-cliquez à nouveau sur la configuration de PostgreSQL.
d'abord aller à L'Éditeur du Registre, puis choisissez HKEY_CURRENT_USER > software > Microsoft > Windows script host > setting > default > add value data to 1 et cliquez sur Ok. fait!