Często zdarza się, że sterownik urządzenia w systemie instaluje się wraz z innymi dodatkami które nie są potrzebne. Dzieje się tak ponieważ jest dostarczany przez producenta w postaci pliku EXE, gdzie nie nie ma możliwości wskazania konkretnego pliku *.inf.
Bardzo dobrym programem, pozwalającym wypakować „czysty” sterownik ze skompresowanego pliku *.EXE lub innego skompresowanego archiwum jest Universal Extractor (https://www.legroom.net/software/uniextract)
Category Archives: Microsoft
Windows 7 – wyłączenie hibernacji systemu
powercfg -h off
Uprawnienia do usług systemu Windows
Czasem zachodzi potrzeba aby dodać zwykłemu użytkownikowi pełny dostęp do usługi (np. możliwość restartu). Świetnym narzędziem, które umożliwia modyfikację uprawnień usług jest narzędzie Microsoftu – SubInACL.
Oto przykładowa składnia polecenia, które nadaje użytkownikowi „gość” pełną kontrolę nad buforem wydruku oraz drukarką HP LJ 1020.
SUBINACL /verbose=1 /service spooler /GRANT=gość=f SUBINACL /verbose=1 /printer "HP LJ 1020" /GRANT=gość=f
Oto inne opcje:
F : Pełna kontrola (Full Control)
R : Prawo odczytu (Read) (użytkownik widzi tą usługę, ale nie może jej modyfikować)
W : Prawo do modyfikowania (Write)
X : Prawo do uruchomienia (eXecute)
Q : Odczytanie szczegółowych informacji (Query Service Configuration)
S : Odczytanie statusu (Query Service Status)
E : Wylistowanie usług zależnych (Enumerate Dependent Services)
C : Zmiana w konfiguracji usługi (Service Change Configuration)
T : Uruchamianie usługi (Start)
O : Zatrzymywanie usługi (Stop)
P : Pauza/wznowienie
Źródło:
http://www.robvanderwoude.com/subinacl.php
https://michlstechblog.info/blog/windows-set-permissions-on-a-service/
https://social.technet.microsoft.com/Forums/windows/en-US/1038ba2f-5366-4d33-9a52-479dc1280729/how-do-i-edit-the-registry-to-permanently-disable-windows-updates?forum=win10itprosetup
https://blogs.msmvps.com/erikr/2007/09/26/set-permissions-on-a-specific-service-windows/
https://www.coretechnologies.com/blog/windows-services/essential-tools-windows-services-sc-exe/
Pakowanie logów przy pomocy programu 7-zip
Poniższy skrypt pozwala na skompresowanie za pomocą programy 7-zip każdego pliku .txt znajdującego się w katalogu Logs osobno.
FOR %%i IN ("C:\Program Files (x86)\Syslogd\Logs\*.txt") DO ( "C:\Program Files (x86)\Syslogd\Logs\%%i.7z" %systemroot%\7zip\x64\7za.exe a -t7z "C:\Program Files (x86)\Syslogd\Logs\%%~ni.7z" -mx9 -aoa "%%i" )
Windows command line ( CMD ) – data , data wczorajsza
Poniższy skrypt pozwala w systemie Windows wyświetlić bieżącą datę za pomocą linii poleceń (CMD):
for /f "tokens=1 delims=^/ " %%i in ('date /t') do set DWEEK=%%i for /f "tokens=2 delims=^/ " %%i in ('date /t') do set DMDAY=%%i for /f "tokens=3 delims=^/ " %%i in ('date /t') do set DMONT=%%i for /f "tokens=4 delims=^/ " %%i in ('date /t') do set DYEAR=%%i for /f "tokens=1 delims=^/^: " %%i in ('time /t') do set DHOUR=%%i for /f "tokens=2 delims=^/^: " %%i in ('time /t') do set DMINU=%%i rem for /f "tokens=1 delims=^/^: pa" %%i in ('time /t') do set DHOUR=%%i rem for /f "tokens=2 delims=^/^: pa" %%i in ('time /t') do set DMINU=%%i set DATE=%DYEAR%%DMONT%%DMDAY%%DWEEK%_%DHOUR%%DMINU% ECHO %DATE% pause
Poniższy skrypt pozwala w systemie Windows wyświetlić wczorajszą datę za pomocą linii poleceń (CMD):
@echo off set yyyy= set $tok=1-3 for /f "tokens=1 delims=.:/-, " %%u in ('date /t') do set $d1=%%u if "%$d1:~0,1%" GTR "9" set $tok=2-4 for /f "tokens=%$tok% delims=.:/-, " %%u in ('date /t') do ( for /f "skip=1 tokens=2-4 delims=/-,()." %%x in ('echo.^|date') do ( set %%x=%%u set %%y=%%v set %%z=%%w set $d1= set $tok=)) if "%yyyy%"=="" set yyyy=%yy% if /I %yyyy% LSS 100 set /A yyyy=2000 + 1%yyyy% - 100 set CurDate=%mm%/%dd%/%yyyy% set dayCnt=%1 if "%dayCnt%"=="" set dayCnt=1 REM Substract your days here set /A dd=1%dd% - 100 - %dayCnt% set /A mm=1%mm% - 100 :CHKDAY if /I %dd% GTR 0 goto DONE set /A mm=%mm% - 1 if /I %mm% GTR 0 goto ADJUSTDAY set /A mm=12 set /A yyyy=%yyyy% - 1 :ADJUSTDAY if %mm%==1 goto SET31 if %mm%==2 goto LEAPCHK if %mm%==3 goto SET31 if %mm%==4 goto SET30 if %mm%==5 goto SET31 if %mm%==6 goto SET30 if %mm%==7 goto SET31 if %mm%==8 goto SET31 if %mm%==9 goto SET30 if %mm%==10 goto SET31 if %mm%==11 goto SET30 REM ** Month 12 falls through :SET31 set /A dd=31 + %dd% goto CHKDAY :SET30 set /A dd=30 + %dd% goto CHKDAY :LEAPCHK set /A tt=%yyyy% %% 4 if not %tt%==0 goto SET28 set /A tt=%yyyy% %% 100 if not %tt%==0 goto SET29 set /A tt=%yyyy% %% 400 if %tt%==0 goto SET29 :SET28 set /A dd=28 + %dd% goto CHKDAY :SET29 set /A dd=29 + %dd% goto CHKDAY :DONE if /I %mm% LSS 10 set mm=0%mm% if /I %dd% LSS 10 set dd=0%dd% REM Set IIS and AWS date variables set IISDT=%yyyy:~2,2%%mm%%dd% set AWSDT=%yyyy%-%mm%-%dd% ECHO %AWSDT%
Wysyłanie kopii bezpieczeństwa ( logów ) na e-mail ( backup2email )
Program sendEmail autorstwa Brandona Zehm (http://caspian.dotconf.net/) jest prostym klientem SMTP dla systemów Windows oraz Linux, obsługiwanym wyłącznie przez linię komend. Idealnie nadaje się do wysyłania logów, kopii plików (np. baz danych) itp.
Oto przykładowa składnia:
c:\\programy_portable\sendEmail.exe -o tls=yes -f nadawca@wp.pl -t odbiorca@gmail.com -s smtp.wp.pl:587 -xu nadawca@wp.pl -xp haslo_nadawcy -u "TEMAT" -m "TRESC WIADOMOSCI" -a "d:\test\attached_file.txt"
Zmiana klucza pakietu Office 2016 w Windows 10 x64 – aktywacja
Tu znajduje się strona do logowania do konta Office, z którego można skopiować klucz produktu:
https://www.office.com/setupkey
lub
https://www.ofice.com/setup
lub
https://account.microsoft.com/services/?lang=pl-PL
Aby wyświetlić klucz produktu zainstalowanego pakietu Office należy wydać polecenie:
C:\>cscript "Program Files (x86)\Microsoft Office\Office16\OSPP.vbs" /dstatus
lub
cscript slmgr.vbs /dlv all
Zamiast /dlv all można wpisać /dlv oraz numer Activation ID, np: cscript slmgr.vbs /dlv 70512834-47B4-44DB-A233-BE5E803B914C
Aby zmienić klucz produktu zainstalowanego pakietu Office należy wydać polecenie:
C:\>cscript "Program Files (x86)\Microsoft Office\Office16\OSPP.vbs" /dstatus /inpkey:XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
Więcej informacji na stronie:
https://docs.microsoft.com/en-us/deployoffice/vlactivation/configure-a-kms-host-computer-for-office
Veeam Endpoint Backup Free – reset ustawień ( usunięcie zadania )
Aby anulować zadanie w programie Veeam Endpoint Backup Free należy:
- wyłączyć program w Tray-u;
- Zatrzymać usługę Veeam Endpoint Backup;
- Zmodyfikować klucz rejestru:
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Veeam\Veeam Endpoint Backup] "RecreateDatabase"=dword:00000001
- Zrestartować komputer;
Płatnik – automatyczna kopia bezpieczeństwa
W artykule przedstawione są dwie metody wykonywania automatycznych kopii bezpieczeństwa programu Płatnik. Pierwsza metoda dotyczy tworzenia kopii Płatnika, który używa bazy danych programu Access (w formacie .mdb). Druga metoda opisuje tworzenie kopii bezpieczeństwa Płatnika, który korzysta z bazy danych MS SQL Server 2008 R2 Express Edition.
W końcowej części artykułu przedstawione są sposoby przenoszenia wykonanych kopii na dysk sieciowy.
I Metoda – tworzenia kopii Płatnika, który używa bazy danych programu Access (w formacie .mdb).
Należy utworzyć plik .cmd o następującej zawartości:
chcp 1250 date /T >> D:\kopie\kopiaPlatnik.log copy "C:\ProgramData\Asseco Poland SA\Płatnik\Baza\platnik.mdb" D:\kopie
Komenda chcp 1250 jest bardzo istotna, ponieważ zmienia domyślną stronę kodową systemu Windows z 852 na 1250. Bez niej polecenie copy nie rozpoznałoby ścieżki dostępowej kopiowanego pliku, która zawiera polski znak „ł”.
II Metoda – tworzenie kopii bezpieczeństwa Płatnika, który korzysta z bazy danych MS SQL Server 2008 R2 Express Edition.
W tym celu należy utworzyć dwa pliki ze skryptami: jeden .cmd, który z odpowiednimi parametrami będzie uruchamiał drugi – właściwy skrypt SQL, wykonujący kopię bazy.
Należy utworzyć plik .cmd o następującej zawartości:
date /T >> D:\kopie\kopiaPlatnik.log SQLCMD.EXE -S nazwaKomputera\nazwaInstalacjiSerweraSQL -U uzytkownik -P haslo -i D:\kopie\kopiaPlatnik.sql >> d:\kopie\kopiaPlatnik.log
Następnie należy utworzyć plik z rozszerzenie SQL np. D:\kopie\kopiaPlatnik.sql z zawartością:
DECLARE @name VARCHAR(50) -- database name DECLARE @path VARCHAR(256) -- path for backup files DECLARE @fileName VARCHAR(256) -- filename for backup DECLARE @fileDate VARCHAR(20) -- used for file name -- specify database backup directory SET @path = 'D:\kopie\' -- specify filename format -- data w formacie nazwy dnia tygodnia: Monday, Tuesday itd.... -- jeśli chcemy uzyskać nazwę miesiąca zmieniamy dw na mm SELECT @fileDate = datename (dw, getdate()) -- data w formacie: RokMiesiącDzien_godzMinSek, np. platnik_20170309_134003.BAK -- SELECT @fileDate = CONVERT(VARCHAR(20),GETDATE(),112) + '_' + REPLACE(CONVERT(VARCHAR(20),GETDATE(),108),':','') DECLARE db_cursor CURSOR FOR SELECT name FROM master.dbo.sysdatabases WHERE name NOT IN ('master','model','msdb','tempdb') -- exclude these databases AND DATABASEPROPERTYEX(name, 'status') = 'ONLINE' OPEN db_cursor FETCH NEXT FROM db_cursor INTO @name WHILE @@FETCH_STATUS = 0 BEGIN SET @fileName = @path + @name + '_' + @fileDate + '.BAK' BACKUP DATABASE @name TO DISK = @fileName FETCH NEXT FROM db_cursor INTO @name END CLOSE db_cursor DEALLOCATE db_cursor
Tak powstanie plik o rozszerzeniu .BAK, zawierający w nazwie nazwę bazy, podkreślenie oraz dzień tygodnia. Skrypt można modyfikować tak, aby wygenerowany plik .BAK w nazwie zawierał datę i godzinę powstania (fragment kodu jest w powyższym skrypcie w komentarzu).
Sposoby przenoszenia wykonanych kopii na dysk sieciowy.
I Metoda – za pomocą programu WinSCP z wykorzystaniem protokołu SFTP.
Należy ściągnąć do np. c:\winscp program WinSCP w wersji portable z oficjalnej strony: https://winscp.net/
W zmiennych systemowych zmiennej Patch (po średniku) należy wpisać ścieżkę do programu WinSCP:
;c:\winscp;
Należy otworzyć program WinSCP. exe i połączyć się z dyskiem sieciowym przy pomocy protokołu SFTP, zapamiętując klucz rsa2 serwera.
Następnie należy utworzyć plik .cmd o następującej zawartości:
winscp.com /log=c:\WINSCP\winscp.log /command "open sftp://uzytkownikFTP:haslo@IPserweraFTP/" "synchronize remote d:\kopie/ /kopie/platnik/" "exit"
Aby kopie wykonywały się automatycznie, skrypty .cmd należy uruchamiać za pomocą harmonogramu zadań.
II Metoda – za pomocą programu Veeam Endpoint Backup FREE
https://www.veeam.com/endpoint-backup-resources.html
Jest to najlepsze rozwiązanie ponieważ:
- jest to darmowy program firmy Veeam specjalizującej się w oprogramowaniu przeznaczonym do tworzenia kopii bezpieczeństwa;
- każda kopia bezpieczeństwa posiada przeglądarkę plików. Program kopiuje pliki z nadmiarowością (sumami kontrolnymi), przez co kopia „jest pewniejsza”
- posiada swój scheduler;
- może przechowywać poświadczenia do zasobu. Program podmontowuje zasób tylko na czas tworzenia kopii. Po wykonaniu zadania zasób odłącza. Jest to bardzo dobre zabezpieczenie przez Cryptolockerami, które to często w pierwszym ruchu szyfrują zamontowane zasoby. Dobrą zasadą jest unikanie zapamiętywania poświadczeń w systemie Windows;
- można ustawić liczbę kopii zapasowych (punktów przywracania);
ŻRÓDŁO:
https://www.mssqltips.com/sqlservertip/1070/simple-script-to-backup-all-sql-server-databases/
http://www.elektroda.pl/rtvforum/topic1198503.html
http://searchengines.pl/topic/105137-brak-polskich-liter-w-cmd/
Windows 10 – skrót do blokowania stacji ( sesji )
Windows 10 nie posiada klawisza „Zablokuj” w Menu -> Start. W celu utworzenia klawisza (w tym przypadku ikonki) „Zablokuj” należy kliknąć prawym przyciskiem myszy na pulpicie, wybrać Nowy i Skrót. W polu „Wpisz lokalizację elementu” umieść następujący wpis:
rundll32.exe user32.dll, LockWorkStation