====== Čerstvá Windows každé ráno ======
Zazálohování a obnova jsou dva jednoduché příkazy. Vše ostatní je jen omáčka okolo, aby tyto dva příkazy byli bezchybně a pohodlně schopni používat BFU. Obnovu Windows lze automatizovat a iniciovat přímo z Windows.
Příklady použití a zpětná vazba viz naše fórum. http://forum.odorik.cz/viewtopic.php?f=12&t=3803&p=29887
===== Z příkazové řádky =====
Zálohu provedu
ntfsclone -s -o - /dev/sda3 |gzip -c > /backup/win$(date +%Y_%m_%d-%H-%M-%S).gz
Obnovení provedu
gunzip -c $FILE | ntfsclone --restore-image --overwrite /dev/sda3 -
===== Minimalistický skript pro pokročilé =====
#!/bin/bash
read -p " a - obnovit ze zálohy, b - udělat novou zálohu, x - konec, jinak reboot"
if [ "$REPLY" = "a" ]; then #obnoveni defaultni zálohy
LIST=$(ls /backup/*.gz)
select FILE in $LIST
do
gunzip -c $FILE | ntfsclone --restore-image --overwrite /dev/sda1 -
#read -p "reboot"
reboot
done
elif [ "$REPLY" = "b" ]; then #vytvoreni nove zalohy
ntfsclone -s -o - /dev/sda1 |gzip -c > /backups/win$(date +%Y_%m_%d-%H-%M-%S).gz
reboot
elif [ "$REPLY" = "x" ]; then #pro administraci
exit
else
echo "tak nic"
reboot
fi
===== Skript odolný proti BFU s možností automatické obnovi =====
#!/bin/bash
#
# Instalace skriptu:
# -----------------
# Proveďte základní instalaci Linuxu bez grafického prostředí. (nechceme správce přihlášení ala gdm)
# Klíčový příkaz ntfsclone je v balíčku ntfs-3g, který tedy nainstalujte.
# Vytvořte adresář /backup/ a umístěte do něj tento skript.
# Povolte skriptu práva pro spouštění "chomd +x /backup/backup.sh"
#
# Dále (postup platí pokud používáte systemd):
#
# 1) Automatické přihlášení uživatele root:
# Editujte soubor /lib/systemd/system/getty@.service
# řádek ExecStart=-/sbin/agetty --noclear %I $TERM
# nahraďte ExecStart=-/sbin/agetty --noclear -a root %I $TERM
#
# 2) Automatické spuštění tohoto skriptu pod uživatelem root docílíme přidáním na konec souboru /root/.profile
# následující: "/backup/backup.sh"
#
# Výsledek: Po startu počítače dojde k automatickému přihlášení uživatele root a spuštění tohoto skriptu na všech terminálech.
#
# Pokud Systemd nepoužíváte, stačí do /etc/rc.local přidat "openvt -s -w bash /backup/backup.sh"
# zdroj informací viz http://superuser.com/questions/584931/howto-start-an-interactive-script-at-ubuntu-startup
# Tento jednoduchý způsob se Systemd nefunguje, protože systemd vypisuje nekončící otravnou hlášku o startující službě.
#
# Jiný alternativní způsob pro systemd: https://alan-mushi.github.io/2014/10/26/execute-an-interactive-script-at-boot-with-systemd.html
# v mém případě ale vůbec nefungoval.
#
# Konfigurák grubu /boot/grub/grub.cfg aktualizujete editací souboru /etc/default/grub a příkazem update-grub.
# Uděláte dvě kopie, soubor /boot/grub/grub.linux je jeho kopie nastavená na bootování Linuxu,
# koie /boot/grub/grub.windows je pro bootování do Windows.
# Pokud mám monitor na výšku, do /etc/default/grub přidám GRUB_CMDLINE_LINUX="video=efifb fbcon=rotate:1"
#
#
# Licence: použij a modifikuj si to jak chceš, pokud ale přijde na něco co podstatného, poděl se s tím na fóru http://forum.odorik.cz/viewtopic.php?f=12&p=29887#p29887
# Rovněž zanech ve skriptu odkaz na původní zdroj http://www.odorik.cz/w/windows:windows_backup_and_restore_scripts_using_linux_ntfsclone
#
#
c_c()
{
echo
echo reboot
reboot
}
trap c_c SIGINT # odchytneme signál vyvolaný zmáčknutím CTRL + C,
# aby tak nebylo možné získat přístup do linuxové konzole s právy ROOTa bez zahdání hesla
WIN_PART=/dev/sda3
HESLO_PRISTUP_DO_SYSTEMU=moje24heslo
setfont /usr/share/consolefonts/Lat2-Fixed13.psf.gz
setleds -D +num # při vybírání souboru zálohy se numrecká klávesnice hodí
setterm -blank 0 -powersave off # Nechť je vždy vidět, že na tomto počítači zrovna nejsou jen uspaná Windows
if [[ `tty` =~ ^/dev/pts/ ]] ; then
echo "Přihlášení přes ssh, necháme projít"
exit 0
fi
clear # začneme prázdnou obrazovkou
if [ "`tty`" != "/dev/tty1" ] ; then
echo "Jste v $(tty) zálohovací skript běží jen v tty1, nechceme, aby běžel vícekrát paralelně"
PASS_COUNTER=1
while true; do
echo
echo "Pro vstup do systému, můžete zadat heslo (pokus číslo $PASS_COUNTER/3 ). Pro restart počítače zmáčkněte jen ENTER."
read
if [ "$REPLY" == "$HESLO_PRISTUP_DO_SYSTEMU" ] ; then
clear
echo
echo "Vítejte v linuxové konzoli."
echo 'Pokud Vám konzole nestačí, spusťte si "grafiku" příkazem startx.'
echo '(Jestli startx nefunguje nainstalujte si ji příkazem "aptitude install xorg lxde-core", pak bude startx fungovat)'
echo
exit 0
else
clear
echo
echo "Chybné heslo"
echo
fi
PASS_COUNTER=$[ $PASS_COUNTER + 1 ]
if [ $PASS_COUNTER -gt 3 ] || [ "$REPLY" == "" ] ; then
echo reboot
reboot
fi
done
fi
# pro potřeby BFU chceme pěkné volké čitelné fonty
setfont /usr/share/consolefonts/Lat2-TerminusBold32x16.psf.gz
# font by mělo jít změnit i pomocí dpkg-reconfigure console-setup, ale je tam možná 5 let starý bug
# nastavení klávesnice pro konzoli mohu změnit: dpkg-reconfigure keyboard-configuration
if cmp --silent /boot/grub/grub.cfg /boot/grub/grub.linux && [ -e /backup/opravdu_obnovit ] ; then # pokud soubory jsou stejné - bootování nastaveno na Linux
# je nastaveno automatické bootování do Linuxu máme úkol - automaticky provést obnovu a vypnout počítač
# Nastavil to skript z Windows
FILE=`ls -tr /backup/*.gz | tail -1` #vybere nejmladší soubor gz
echo
echo
echo "-------------------------------------------------------------------------------------------------------------"
echo -e "\n\e[31m Chystáme se obnovit Windows z poslední zálohy $FILE, obnova začne za 10 vteřin.\e[39m \n"
echo "-------------------------------------------------------------------------------------------------------------"
echo
echo -e "\e[93m Pokud si obnovu nepřejete, zmáčkněte ENTER\e[39m"
echo
if ! read -t 10; then # došlo k timeoutu - jdeme obnovovat
cp /boot/grub/grub.windows /boot/grub/grub.cfg # příště bude automaticky bootovat Windows
rm /backup/opravdu_obnovit # odděláme značku
echo 'Obnovení počítače ze zálohy začalo v ' $(date +%Y_%m_%d-%H-%M-%S)
echo "NEVYPÍNEJTE POČÍTAČ !!!!!!!!!!!!"
echo "Počítač bude automaticky vypnut po dokončení zálohy."
echo
FILE=`ls -tr /backup/*.gz | tail -1` #vybere nejmladsi soubor gz
echo "obnovujeme ze souboru $FILE"
gunzip -c $FILE | ntfsclone --restore-image --overwrite $WIN_PART -
poweroff -p
fi
fi
PASS_COUNTER=1
while [ "$REPLY" != "$HESLO_PRISTUP_DO_SYSTEMU" ] ; do
if [ $PASS_COUNTER -gt 1 ] ; then
clear
echo
echo " Špatné heslo "
echo
fi
echo
echo "Pro vstup do systému pro zálohu/obnovu, zadejte heslo (pokus číslo $PASS_COUNTER/3 )."
echo "Pro restart počítače zmáčkněte jen ENTER."
read
PASS_COUNTER=$[ $PASS_COUNTER + 1]
if [ $PASS_COUNTER -gt 3 ] || [ "$REPLY" == "" ] ; then
echo reboot
reboot
fi
done
clear # aby nebylo vidět napsané heslo po celou dobu
echo "Ip adresa tohoto počítače je:" $(ip route get 1 | awk '{print $NF;exit}')
while true; do
echo "-----------------------------------------------------------------------"
echo -e "\e[36mVolné místo na disku:\e[39m"
df -h /
echo -e "\e[36mExistující zálohy - z názvu poznáte datum a čas vytvoření.\e[39m"
ls -lh /backup/*.gz| awk '{print $9 " velikost zálohy:"$5}'
echo
echo
echo -e "\e[36mHLAVNÍ MENU:\e[39m"
echo
echo " a - obnovit ze zálohy. Soubor zálohy budete moci zvolit v následujícím kroku."
echo " b - vytvořit zálohu. Pozor před zvolením se ujistěte, že máte dostatek místa na disku,"
echo " viz přehled výše. Nová záloha může být o něco větší."
echo " c - smazání zálohy, uvolnění místa - konkrétní zálohu ke smazanání budete moci zvolit "
echo " d - restart počítače "
echo
echo 'Možnost "aa" a "bb" je stejná jako "a" a "b", počítač ale nebude po dokončení restartován.'
echo "Pro vstup na konzoli zadejte heslo."
echo
echo -e "\e[93mZvolte písmeno a potvrďte klávesou ENTER:\e[39m"
read
case $REPLY in
a | aa)
echo
echo "Provádíme obnovení zálohy z vybraného souboru."
echo "Zvolte číslo a zmáčkněte ENTER"
echo
LIST=$(ls -t /backup/*.gz)
PUV_REPLY=$REPLY # select nám totiž REPLY přemaže nově vybranou hodnotou
NIC="nic_neprovádět_a_vrátit_se_zpět"
select FILE in $LIST $NIC
do
if [ "$FILE" != "$NIC" ] && [ "$FILE" != "" ] ; then
echo
echo 'Obnovení začalo v ' $(date +%Y_%m_%d-%H-%M-%S)
echo "NEVYPÍNEJTE POČÍTAČ !!!!!!!!!!!!"
echo
gunzip -c $FILE | ntfsclone --restore-image --overwrite $WIN_PART -
echo -e "\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a" # pípneme si že je hotovo
if [ "$PUV_REPLY" != "aa" ] ; then
reboot
fi
fi
break # se zeslect
done;;
b | bb)
echo 'Vytváření zálohy započalo v ' $(date +%Y_%m_%d-%H-%M-%S)
echo "NEVYPÍNEJTE POČÍTAČ !!!!!!!!!!!!"
echo
ntfsclone -s -o - $WIN_PART |gzip -c > /backup/win$(date +%Y_%m_%d-%H-%M-%S).gz
echo -e "\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a" # pípneme si že je hotovo
echo $REPLY
if [ "$REPLY" != "bb" ] ; then
echo reboot
reboot
fi
;;
c) #smazání zálohy
echo
echo "Mažeme soubor zálohy, zadejte číslo a ENTER"
echo
LIST=$(ls -t /backup/*.gz)
NIC="nic_neprovádět_a_vrátit_se_zpět"
select FILE in $LIST $NIC
do
if [ "$FILE" != "$NIC" ] && [ "$FILE" != "" ] ; then
echo "mažu soubor zálohy $FILE"
rm -i "$FILE"
fi
break # ruším select smyčku
done;;
d) # restart počítače
echo "restartujeme"
reboot;;
$HESLO_PRISTUP_DO_SYSTEMU) # administrace - tajná volba
clear
exit 0;;
*)
echo "nerozpoznaná volba";;
esac
done # konec cyklu
===== Instalace skriptu =====
Viz poznámky na začátku samotného skriptu.
===== Skript na Windows =====
:: Připojíme linuxový oddíl pod písmeno z
mount 0 1 z:
:: změníme obsah souboru /boot/grub/brub.cfg, tak aby příště nabootoval Linux
copy /V /Y z:\boot\grub\grub.linux z:\boot\grub\grub.cfg
:: vytvoříme "značku", pro bash skript v Linuxu, že chceme obnovovat
echo true > z:\backup\opravdu_obnovit
Mount.exe /umount z:
:: restartujeme počítač - naběhne Linux, který provede obnovu
shutdown.exe /r /t 00
::set /p temp="podivejte se co to vypsalo a zmacknete ENTER"
I když to nevypadá pěkně, poznámky ve skriptu všechno vysvětlí.
Program Mount.exe je součástí projektu [[http://www.ext2fsd.com/?page_id=16|ext2fsd]], ext2fsd je třeba nainstalovat a Mount.exe umístit do cesty (nebo změnit skript výše aby obsahoval plnou cestu).
==== Jak skript "obnovy" pohodlně spouštět? AutoHotKey! ====
Jako způsobe pro aktivaci čerstvých Windows jsem vymyslel hodně obskurní klávesovou zkratkou, kterou jen tak někdo neuhádne, nevymyslí, nebo nezmáčkne nechtěně. Je totiž většinou žádoucí, aby obnovu prováděla jen osoba pověřená ale zato to nejednodušším možným způsobem. Suprový, nenápadný a malý program co dovede mimo jiné spustit skript na základě zmáčknuté kombinace kláves se jmenuje [[https://autohotkey.com/|AutoHotKey]].
Důležitým obsahem ahk skriptu jsou jen dva řádky.
; skript nize rika, ze pokud zmacknu shirt(+) alt (!) a CTRL (^) + klávesu F12
; bude spusten winbatch soubor restorem.bat
+!^F12::
run, restorem.bat
Aby se skript vždy při startu Windows aktivoval, je třeba udělat tomuto skriptu zástupce a ten umístit do speciální startovací složky. Tahle speciální složka hodně šílenou cestu, ale lze se tam jednodušeji dostat tak, že zmáčknete tlačítko Windows + r (r jako run - dialog spustit), a necháte "spustit" podivný řetězec "shell:common startup".
===== Vypnutí aktualizace =====
Pokud Windows automatizovaně obnovujeme jednou za den nebo častěji, je zbytečné, aby se pak pokaždé snažily o aktualizaci, když je večer zase vrátíme zpět.
Všechny aktualizace je tedy dobré zakázat a provést ručně jednou za čas.
Pamatujte i kdyby se na Vaše Windows nějaký vir dostal, nepřežije do dalšího dne.
==== Vypnutí Windows Update ====
{{:windows:zakazat_windows_update.png?nolink|}}
Bohužel tímto krokem znefunkčníme i ruční aktualizaci. Aby ale fungovala ruční aktualizace, kterou je dobré čas od času udělat, musíte onu službu opět povolit. Vypnutím aktualizací tímto způsobem může způsobit např. potíže aktivací Windows 7/8/8.1 klíče, proto proveďte až jako poslední operaci.
==== Vypnutí update Firefoxu ====
{{:windows:firefox_zakazeme_update.png|}}
==== Libre office ====
Zde stačí vypnout jen upozorňování.
{{:windows:libreoffice_online_aktualizace.png?nolink|}}
==== Google Chrome ====
Na Google chrome vyloženě neplatí nic jiného než přejmenovat adresář Update na nějaký nesmysl. Go to "C:\Program Files (x86)\Google\ and find the folder "update".
http://stackoverflow.com/questions/18483087/how-can-i-disable-google-chrome-auto-update
(k tomu jsem si přiinstaloval Double commander)
==== Acrobat reader ====
U Acrabat readeru je vypnutí aktualizací nezkutečně složité, je dobré se tomu programu vyhnout. Alternativa je třeba Foxit.
Na jeho fóru si spousta lidí stěžuje, že vypnutí je moc složité hrabání se v registrech.
Lidé co potřebují vypnout aktualizace obvykle používají placenou obdobu našeho skriptu, co se jmenuje [[http://www.faronics.com/en-uk/products/deep-freeze/enterprise/|DeepFreeze]].
DeepFreeze tvrdí, že se tímto způsobem dá předejít až 63% problémům s Windows (trouble ticketů). DeepFreeze se chlubí, že prodali 9 miliónů licencí ve 150 zemích.
===== Ruční aktualizace Windows a aplikací =====
Aktualizace je třeba dělat čas od času ručně. Tedy když je systém čerstvý, ručně provedu veškeré aktualizace, případně přidám či opravím nastavení aplikací podle požadavků uživatele - např. přidám další tiskárnu. Následně restartuji systém do Linuxu a vytvořím zálohu již aktualizovaného systému. K tomu je právě to textové menu na obrázku. Od toho dne se bude obnovovat již aktualizovaná verze všech aplikací. Nemusím být žádný linuxový ani počítačový guru, abych tohle zvládl - tedy úkol lze zadat kdekomu, kdo se umí držet pár jednoduchých zásad, jako aktualizovat výhradně a pouze jen čerstvě obnovený systém.
{{:windows:windows_backup.jpg?nolink|}}
====== Windows 10 lze snadno klonovat - přenášet z počítače na počítač bez nové instalace ======
Pokud si nainstalujete Windows 10 na jednom počítači, lze onen disk přenést na jiný počítač. Ovladače, je-li třeba, se automaticky doinstalují.
Pokud na novým počítači ještě Windows 10 nebylo nikdy předtím aktivováno, bude to ukazovat neplatnou licenci. Mám ale možnost zadat licenční kódy svého Windows 7/8/8.1 toho počítače na kterém Windows 10 momentálně běží a provést aktivaci. Pokud na daném počítači byl už někdy v minulosti Windows 10 nainstalován a aktivován, ověření a aktivace stávající licence proběhne automaticky. Potřebuji k tomu jen připojení k internetu a nemít zakázaný proces Windows update. Viz návod výše.
{{:windows:windows10_zmenit_product_key.png?nolink|}}
{{:windows:windows10_zmenit_product_key2.png?nolink|Pokud se Váš windows automaticky neaktivoval, můžete změnou Product key na platný pro daný počítač provést aktivaci. }}
K čemu je to dobré? Konečně stejná svoboda jak v Linuxu. Mohu klonovat disky. Mám třeba učebnu/pracovnu s deseti počítači. Udělám instalaci jen jednou včetně všech nastavení a programů a pak mohu Windows rozkopírovat na všechny disky bez toho, abych musel dělat nové instalace a nastavování pro jednotlivé počítače...
Ideální je klonovat stejně velké disky. Nabootuji z živé distribuce a spustím příkaz.
dd if=/dev/sdX of=/dev/sdX
Kde if = input file (zdrojový disk), of = output file (cílový dísk). Pozor neprohoďte to, nebo si prázdným diskem přepíšete zaplněný !
====== Přehledné informace o nepřehledném operačním systému ======
Lze zjistit hlavně informace od Hardwaru Windows a registrační klíče Windows a dalších aplikací.
http://www.belarc.com/free_download.html
http://pcsupport.about.com/od/system-security/fr/belarc-advisor-review.htm