Re: Window2012R2: initdb error: "The current directory is invalid."

Поиск
Список
Период
Сортировка
От Dang Minh Huong
Тема Re: Window2012R2: initdb error: "The current directory is invalid."
Дата
Msg-id EA52AB6F-D548-4F06-A45B-08E6443905BB@gmail.com
обсуждение исходный текст
Ответ на Re: Window2012R2: initdb error: "The current directory is invalid."  (cpolish@surewest.net)
Список pgsql-bugs
Hi,

Thank you all for your advices.

We have simply solved this problem with change the running initdb's folder t=
o not to "c:\windows\temp\something".

Best regards,
bocap.

Ng=C3=A0y 20-01-2016, v=C3=A0o l=C3=BAc 07:28, cpolish@surewest.net vi=E1=BA=
=BFt:

> On 2016-01-19 22:45, Dang Minh Huong wrote:
>>> owner@postgresql.org] On Behalf Of Thomas Kellerer
>>> Huong Dangminh schrieb am 19.01.2016 um 11:49:
>>>> I have failed in execute initdb in "c:\Windows\Temp\dir" folder as
>>>> reproduce logs below. The OS's messages "The current directory is inval=
id."
>>>> was returned.
>>>=20
>>> c:\Windows has special protection and it is not really surprising that a=
 regular
>>> user isn't allowed to write into that directory.
>>>=20
>>> When Postgres is started it drops all "Administrator" privileges for sec=
urity
>>> reasons (older versions would refuse to start as
>>> Administrator) - and I think initdb is doing the same thing.
>>> So it's understandable that it can't write to c:\Windows
>>=20
>> I did not mean, create data cluster in C drive made that error sir.
>> This issue reproduce in all drive specified in -D option.
>> # My reproduce environment is only one (C) drive. So, sorry for the log.
>>=20
>> I mean, it happen when current directory of command line is "c:\Windows\T=
emp\something".
>> It is rare case, and may be a Windows2012's specification, but i don't kn=
ow
>> why only "c:\Windows\Temp\something" and are there another case like that=
?
>>=20
>>> Putting application data into c:\Windows (or "c:\Program Files" for that=

>>> matter) is an extremely bad idea to begin with (c:\Windows being even
>>> worse than "c:\Program Files")
>>>=20
>>> You shouldn't be doing that anyway.
>=20
> As Thomas said, it is undesireable to log into a server as
> administrator. You should create and use a privileged user, for
> example dmhadmin, insert that user into the administrators
> group. Also create an ordinary user, perhaps dmh, and log in
> with that account. Download the postgres installer, run it as
> the ordinary user. You will be prompted for a privileged user
> account, enter the priviledged account (for example, dmhadmin).
> When asked for the location to install the database, create a
> new folder named postgres on a non-system (not C:) disk. If your
> server can only have one disk you might install the database in
> C:\postgres, which you'll have the opportunity to create from
> inside the installer's "browse..." dialog. This folder will be
> owned by the local server's "administrators" group with
> appropriate privileges.=20
>=20
> C:\Windows\Temp is not an appropriate choice for storing
> persistent program data. If you ignore this by manipulating the
> permissions you will eventually be harmed when a privileged
> program clears the entire contents.
>=20
> Hope that helps,
> --=20
> Charles
>=20

В списке pgsql-bugs по дате отправления:

Предыдущее
От: Sandeep Thakkar
Дата:
Сообщение: Re: BUG #13877: Fails to install
Следующее
От: Praveen Prakash
Дата:
Сообщение: Re: BUG #13873: Pg_upgrade problem from 9.4 to 9.5