Archiv štítku: linux

Jak rozdělit a spojit velký soubor v linuxu

Výchozí situace:
Mám velký soubor, který chci archivovat například na FTP, ale pohodlnější je nahrávat menší soubory, než řešit jeden velký…

Rozdělení tedy provedeme následovně:

admin@NAS:~$ split -b 1G zaloha.zip zaloha_part_ --verbose
admin@NAS:~$

Příkaz split zajistí samotné rozdělení.
Parametr -b 1G určuje, jak velké soubory vytvářím.
Dále je uvedena cesta OD a kam, kde na konci zaloha_part_ říkám, jak se mají jmenovat výsledné soubory.
A konečně parametrem – -verbose sděluji, že má být ukecaný výstup, abych věděl že se něco děje.

Výstup příkazu:

admin@NAS:~$ split -b 1G zaloha.zip zaloha_part_ --verbose
creating file ‘zaloha_part_aa’
creating file ‘zaloha_part_ab’
creating file ‘zaloha_part_ac’
creating file ‘zaloha_part_ad’
creating file ‘zaloha_part_ae’
admin@NAS:~$

Výpis adresáře:

admin@NAS:$ ls -lah
total 5.1G
drwxr-xr-x 2 admin users 4.0K Aug 15 16:19 .
drwxrwxrwx 6 admin users 4.0K Aug 15 16:16 ..
-rw-r--r-- 1 admin users 1.0G Aug 15 16:17 zaloha_part_aa
-rw-r--r-- 1 admin users 1.0G Aug 15 16:18 zaloha_part_ab
-rw-r--r-- 1 admin users 1.0G Aug 15 16:18 zaloha_part_ac
-rw-r--r-- 1 admin users 1.0G Aug 15 16:19 zaloha_part_ad
-rw-r--r-- 1 admin users 1.0G Aug 15 16:20 zaloha_part_ae
admin@NAS:~$

Komu by vadily písmena u rozdělených souborů, může zvolit přepínač -d (- -numeric-suffixes) a mít tak číselné přílohy.

admin@NAS:~$ split -b 1G -d zaloha.zip zaloha_part_ --verbose
creating file ‘zaloha_part_00’
creating file ‘zaloha_part_01’
creating file ‘zaloha_part_02’
creating file ‘zaloha_part_03’
creating file ‘zaloha_part_04’
admin@NAS:~$

Výpis adresáře, pak vypadá:

admin@NAS:$ ls -lah
total 5.1G
drwxr-xr-x 2 admin users 4.0K Aug 15 16:19 .
drwxrwxrwx 6 admin users 4.0K Aug 15 16:16 ..
-rw-r--r-- 1 admin users 1.0G Aug 15 16:17 zaloha_part_00
-rw-r--r-- 1 admin users 1.0G Aug 15 16:18 zaloha_part_01
-rw-r--r-- 1 admin users 1.0G Aug 15 16:18 zaloha_part_02
-rw-r--r-- 1 admin users 1.0G Aug 15 16:19 zaloha_part_03
-rw-r--r-- 1 admin users 1.0G Aug 15 16:20 zaloha_part_04
admin@NAS:~$

Spojení je pak už jednoduché…

admin@NAS:$ cat zaloha_part_* > zaloha_new.zip
admin@NAS:$

Jak vidno bez jakéhokoliv výpisu…

Pro kontrolu, že výchozí a konečný soubor je stejný provedeme kontrolu spočtením MD5 HASHe obou souborů.

admin@NAS:$ md5sum zaloha_new.zip
ac8a22b805cd2078b40222f72b218e87  zaloha_new.zip
admin@NAS:~$
admin@NAS:$ md5sum zaloha.zip
ac8a22b805cd2078b40222f72b218e87  zaloha.zip
admin@NAS:~$

Jak prosté, milý Watsone! :)

Poznámka: Je to celkem přímá cesta k řešení. Pokud byste potřebovali jen trochu něco jiného nebo jinak, tak je třeba si tu svoji cestičku prošlapat či prozkoumat co jsem přesně kde použil a proč.

Zabezpečení WordPress administrace pomocí .htaccess

Jednou mi tak volá hoster, že probíhá cílený útok na tento blog (nechci se nyní zabývat detaily). Nebojím se o sílu svého hesla, ale nadměrně to zatěžuje server.

Řešení je jednoduché!
Do souboru .htacces jsem přidal následující blok:

<IfModule mod_rewrite.c>
	RewriteEngine on
	RewriteCond %{REQUEST_URI} ^(.*)?wp-login\.php(.*)$ [OR]
	RewriteCond %{REQUEST_URI} ^(.*)?wp-admin$
	RewriteCond %{REMOTE_ADDR} !^1\.2\.3\.4$
	RewriteCond %{REMOTE_ADDR} !^4\.3\.2\.1$
	RewriteRule ^(.*)$ - [R=403,L]
</IfModule>

Toto pro IP 1.2.3.4 a 4.3.2.1.

Hotovo!

Jistě jsou i jiná řešení. Například pomocí nějakých pluginů, ale pro mě jako člověka programování znalého toto přijde nejrychlejší… A hlavně! Plugin znamená, že to bude veřejná metoda a bude jen otázka času, než se někomu vyplatí na takový prvek napsat robota, který s ním bude počítat…

Zapomenuté přihlašovací heslo k Windows 7

Tato peripetie mi sebrala 3 hodiny života a kdyby mi to někdo vyprávěl asi bych mu nevěřil.

Prolog – výchozí stav:
Windows mám nastaven tak, aby se mi automaticky přihlašoval bez nutnosti zadat heslo. Pokud vím, tak tam žádné heslo zadané nemám, ale to nakonec nehraje roli…

Akt 1 – pád Windows a nastartování
Trochu jsem koulel očima, když jsem viděl nastartovanou obrazovku a na ní přihlašovací dialog. Samozřejmě žádné z možných (mnou požívaných) hesel nefungovalo. Restart také nepomohl. Koukal tam na mě odkaz „Reset password“ ale po kliknutí to chtělo removable medium, které po připojení zjistilo, že tam není nainstalován nějaký SW a tím jsem tady skončil a dále nepokračoval.

Akt 2 – našel jsem si návod jak „hacknout“ přihlašovací obrazovku
Jedná se o způsob, kdy si na počítači spustím live CD s linuxem a vyměním program „Utilman“ za „cmd“ a pak z přihlašovací obrazovky si změním heslo. Ale jak to udělat, když zrovna nemám po ruce druhý počítač, kde bych si vytvořil live CD/USB. Ale…

Akt 3 – …ale provozuji Windows na MAC mini přes BOOTCAMP, takže se připojím na MAC OSx a bude to…
Než jsem si vzpomněl jak přebootovat což šlo až po výměně klávesnice DELL za Apple a následně jsem se v MAC OSx zorientoval, tak uplynulo pár desítek minut času. Následně jsem si stáhl ISO soubor Ubuntu a dle návodu na stránkách (ubuntu.com) jsem si vytvořil boot USB disk. Samozřejmě, aby to nebylo tak jednoduché, jsem i zde vlastní vinou ztratil pár minut (špatně jsem si přečetl hlášku).

Akt 4 – nabootování Ubuntu
Boot proběhl v pořádku, přejmenování souborů taky (až jsem se divil, že v tomto kroku žádný zádrhel).

Akt 5
Tak nabootuji do Windows a spadne mi úsměv ve chvíli, kdy se přihlašovací dialog nezobrazí a Windows nastartují jako by se celý incident nestal. Ach jo :(

Epilog
Nevím co napsat… …udělejte si obrázek sami.