Я хочу скрыть текстовый файл, переместив его в $Extend
(What is this directory?). Так я бегу cmd
, как Администратор и запустить следующий код:
C:\Windows\system32>copy I:\ToHide.txt I:\$Extend
Access is denied.
0 file(s) copied.
C:\Windows\system32>
Как вы видите, я не мог, и я получил Access Denied ошибку. Так что я попытался takeown каталог назначения ($Extend
) и изменить его ACLs
, как показано ниже:
C:\Windows\system32>takeown /f I:\$Extend
SUCCESS: The file (or folder): "I:\$Extend" now owned by user "Abraham-VAIO\Abra
ham".
C:\Windows\system32>cacls I:\$Extend /G Abraham:F
Are you sure (Y/N)?Y
The system cannot find the file specified.
C:\Windows\system32>
Q1: Почему CACLS не мог видеть этот каталог, в то время как takeown мог !?
После этого я использую следующий код Python:
import win32api
import win32con
import win32security
FILENAME = "I:\\$Extend"
open (FILENAME, "w").close()
print "I am", win32api.GetUserNameEx (win32con.NameSamCompatible)
sd = win32security.GetFileSecurity (FILENAME, win32security.OWNER_SECURITY_INFORMATION)
owner_sid = sd.GetSecurityDescriptorOwner()
name, domain, type = win32security.LookupAccountSid (None, owner_sid)
print "File owned by %s\\%s" % (domain, name)
И я получаю Access Denied снова:
>>> ================================ RESTART ================================
>>>
Traceback (most recent call last):
File "C:\Users\Abraham\Desktop\teste.py", line 6, in <module>
open (FILENAME, "w").close()
IOError: [Errno 13] Permission denied: 'I:\\$Extend'
>>>
Q2: Является ли этот питон код равен takeown
или ему является альтернативой для cacls
?
Q3: Почему я получаю доступ запрещен, в то время как я запускаю idle (и после этого python в командной строке) в качестве администратора?
Последние вопросы:
Q4: Почему я не могу открыть этот каталог с помощью проводника Windows, в то время я могу открыть его с помощью WinRAR? Ограничивает ли Windows некоторые API для Explorer, но они доступны для других программ?
Кстати, Есть ли способ, чтобы я достиг своей цели с помощью Python или C++ или ...? (Скрытие чего-то в каталоге $ Extend)
ИМХО , это плохая практика, пытающаяся скрыть что-то в каталоге * system *, если вы точно не знаете, как система ее использует. Я бы посоветовал вам взглянуть на отличную утилиту truecrypt, и вы действительно хотите скрыть что-то в скрытых томах truecrypt. И таким образом вы будете уверены, что ничего не сломаете. –
Does'nt OS с новыми файлами в системных каталогах, как и другие файлы и каталоги? Я имею в виду, не поддерживает ли ОС содержимое $ Extend так же, как и другие файлы? – TheGoodUser
Я не знаю, но вопрос только в том, что вы ** знаете это ... Я знаю только, что такое MFT, и знаю, что это очень ** особенный. –