DIY рд╕рдордп рдорд╢реАрди

рдпрд╣ рдкрд╕рдВрдж рд╣реИ рдпрд╛ рдирд╣реАрдВ, рд▓реЗрдХрд┐рди рдирдП рд╕рд╛рд▓ рдХреА рдЫреБрдЯреНрдЯрд┐рдпреЛрдВ рдкрд░, рдлрд╝рд╛рдЗрд▓ рднреНрд░рд╖реНрдЯрд╛рдЪрд╛рд░ рдХрд╛ рдЦрддрд░рд╛ рдХрд╛рдлреА рдмрдврд╝ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕ рдореБрд╕реАрдмрдд рдиреЗ рдореБрдЭреЗ рдкрд╛рд╕ рдирд╣реАрдВ рдХрд┐рдпрд╛ред рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдирд╛ рдХрдард┐рди рдирд╣реАрдВ рд╣реИ, рдореИрдВрдиреЗ рдкреНрд░рд╛рд░реВрдкрдг рдХреЗ рджреМрд░рд╛рди рдбрд┐рд╕реНрдХ рдХреЛ рдорд┐рд▓рд╛рдпрд╛ рдФрд░ ... рд╣рд╛рдБ, рд╣рд╛рдБ, рднрд╛рд░реА рд╢реНрд░рдо рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЕрдзрд░реНрдореА рддрд░реАрдХреЗ рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХреА рдЧрдИ рд╣рд░ рдЪреАрдЬ рдПрдХ рдкрд▓ рдореЗрдВ рдирд╖реНрдЯ рд╣реЛ рдЧрдИред

рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдХреЗ рд╕рдВрдЧреНрд░рд╣ рдФрд░ рд╕реНрдХреИрди рдХреА рдЧрдИ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдХреЗ рд╕рдВрдЧреНрд░рд╣ рдХреЛ рдпрд╛рдж рдХрд░рддреЗ рд╣реБрдП, рдореИрдВрдиреЗ рдмреИрдХрдЕрдк рдХреЗ рдореБрджреНрджреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрд╛ред рдФрд░ ... рдореИрдВ рдЗрд╕ рдирддреАрдЬреЗ рдкрд░ рдкрд╣реБрдВрдЪрд╛ рдХрд┐ рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЬреЛ рдЪрд╛рд╣рд┐рдП рд╡рд╣ рдирд╣реАрдВ рд╣реИред рдЕрдзрд┐рдХ рд╕рдЯреАрдХ, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╡рд╣рд╛рдБ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдпрд╛ рддреЛ рдорд╣рдВрдЧрд╛ рд╣реИ, рдпрд╛ рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВ рдЪрд╛рд╣реВрдВрдЧрд╛ред

рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ Google рдХреА рдпрд╛рддрдирд╛ рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж: "рдореБрдЭреЗ рдЕрдЪреНрдЫрд╛ рдХрд░реЛ," рдореИрдВрдиреЗ рдПрдХ рд╕рдЪреНрдЪреЗ рдпреВрдирд┐рдХреНрд╕ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рд░реНрдп рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рд╡рд┐рдВрдбреЛрдЬрд╝ рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдЕрд░реНрдерд╛рддреН: рджрд┐рдЦрд╛рд╡рд╛ рдордд рдХрд░реЛ, рдЖрд╕рд╛рди - рдмреЗрд╣рддрд░ред

рдлрд┐рд░ рдореБрдЭреЗ MacOS рдкреНрд░реЗрдЬреЗрдВрдЯреЗрд╢рди рдпрд╛рдж рдЖрдпрд╛, рдЬрд┐рд╕рдореЗрдВ рдЙрдирдХреЗ рдЯрд╛рдЗрдо рдорд╢реАрди рдХрд╛ рдкреНрд░рджрд░реНрд╢рди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЖрдЦрд┐рд░рдХрд╛рд░, рдпрджрд┐ рдЖрдк рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрддреЗ рд╣реИрдВ, рддреЛ рдХрд┐рд╕реА рднреА рджрд┐рди рдХрд┐рд╕реА рднреА рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдмрд╣реБрдд рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИред рд▓реЗрдХрд┐рди ... рдпрджрд┐ рдЖрдк рдЕрднрд┐рд▓реЗрдЦрд╛рдЧрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рдкреВрд░реНрдг рдкреНрд░рддрд┐рдпрд╛рдВ рдмрдирд╛рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рд╕рднреА рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдорд╛рддреНрд░рд╛ рдореЗрдВ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╡реГрджреНрдзрд┐рд╢реАрд▓ рдмреИрдХрдЕрдк рдкрд░ рд╡рд┐рдЪрд╛рд░ рдкрдХрдбрд╝рд╛ рдЧрдпрд╛ред рдпрд╣реА рд╣реИ, рдкрд╣рд▓реА рдмрд╛рд░ рдЬрдм рдЖрдк рдПрдХ рдкреВрд░реНрдг рд╕рдВрдЧреНрд░рд╣ рдмрдирд╛рддреЗ рд╣реИрдВ, рдФрд░ рддрдм рдХреЗрд╡рд▓ рд╡рд╣реА рд╕рдВрдЧреНрд░рд╣ рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдмрджрд▓ рдЧрдпрд╛ рд╣реИред

рдФрд░ ... рдореИрдВрдиреЗ рдЗрд╕ рд╡рд┐рдХрд▓реНрдк рдХреЛ рднреА рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХрд░ рджрд┐рдпрд╛, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдирд╣реАрдВ рдерд╛ред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, "рджрд┐рди" рдордирдорд╛рдиреЗ рдврдВрдЧ рд╕реЗ рд╣рдЯрд╛рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдФрд░ рджреВрд╕рд░реА рдмрд╛рдд, рдореИрдВ рдЕрдХреНрд╕рд░ рдЕрдкрдиреА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рдирд╛рдо рдмрджрд▓ рджреЗрддрд╛ рд╣реВрдВ рдФрд░ рд╕рдордп-рд╕рдордп рдкрд░ рдПрдХ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕реЗ рджреВрд╕рд░реА рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рддрд╛ рд░рд╣рддрд╛ рд╣реВрдВред рдФрд░ рдпрд╣, рдмрджрд▓реЗ рдореЗрдВ, рдореЗрд░реЗ рдЖрд╢реНрдЪрд░реНрдп рдХреЗ рд▓рд┐рдП, "рдмреИрдХрдЕрдк" рдХреЗ рд▓рд┐рдП рд▓рдЧрднрдЧ рд╕рднреА рдЙрдореНрдореАрджрд╡рд╛рд░реЛрдВ рдХреЛ рдХрд╛рдЯ рджрд┐рдпрд╛ред рдЕрд░реНрдерд╛рддреН, рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдиреЗ рдореВрд░реНрдЦрддрд╛ рд╕реЗ рдлрд╝рд╛рдЗрд▓ рдирд╛рдо, рдЗрд╕рдХреЗ рдкрд░рд┐рд╡рд░реНрддрди рдХреА рддрд╛рд░реАрдЦ рдФрд░ ... рдФрд░ рдпрд╣ рджреЗрдЦрд╛ рд╣реИред рдирддреАрдЬрддрди, рдмреИрдХрдЕрдк рдкреНрд░рдлреБрд▓реНрд▓рд┐рдд рд╣реЛ рдЧрдпрд╛ред

рдЗрд╕рд▓рд┐рдП, рджреЛ рд╡рд┐рдЪрд╛рд░реЛрдВ рдиреЗ рдореБрдЭреЗ рдмрдЪрд╛рдпрд╛:
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ рдХрд┐ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо рдХреНрдпрд╛ рд╣реИ, рд╕рд╛рдордЧреНрд░реА рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдкреНрд░рддреНрдпреЗрдХ рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдХрдИ рд╣реИрд╢ рдХреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рдЗрд╕ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЖрдк рдХрд╛рдлреА рд╕рдЯреАрдХ рд░реВрдк рд╕реЗ рдпрд╣ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдХрд┐рд╕ рдкреНрд░рдХрд╛рд░ рдХреА рдлрд╝рд╛рдЗрд▓ рд╣реИред рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдореИрдВрдиреЗ рдЦреБрдж рдХреЛ md5 рдпреЛрдЧ рдФрд░ рдлрд╝рд╛рдЗрд▓ рдЖрдХрд╛рд░ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реАрдорд┐рдд рдХрд░ рджрд┐рдпрд╛ рд╣реИред рдЪреБрдирд╛рд╡ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╡рд┐рд╡рд╛рджрд╛рд╕реНрдкрдж рд╣реИ, рд▓реЗрдХрд┐рди рд╕реНрдХреИрди рдХреЗ рд▓рд┐рдП рдпрд╣ рдХрд╛рдлреА рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред
рджреВрд╕рд░реЗ, рдпрджрд┐ рдлрд╝рд╛рдЗрд▓ рдирд╣реАрдВ рдмрджрд▓реА рдЧрдИ рд╣реИ рдпрд╛ рдХреЗрд╡рд▓ рдЙрд╕рдХрд╛ рдирд╛рдо рдмрджрд▓ рдЧрдпрд╛ рд╣реИ, рддреЛ рдкреВрд░реА рдлрд╝рд╛рдЗрд▓ рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдирд╛ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рдХрдбрд╝реА рдмрдирд╛рдПрдВ, рдХреНрдпреЛрдВрдХрд┐ NTFS рдореЗрдВ рдРрд╕реА рдлрд╛рдЗрд▓реЗрдВ рд╣реИрдВред

рдЕрдЧрд░ рдХрд┐рд╕реА рдХреЛ рдирд╣реАрдВ рдкрддрд╛ рд╣реИ, рддреЛ рдХрдорд╛рдВрдб рдХрд╛ рдзрдиреНрдпрд╡рд╛рдж:
fsutil hardlink create <> <>
рдЦрд┐рдбрд╝рдХрд┐рдпреЛрдВ рдореЗрдВ рдЖрдк рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╣рд╛рд░реНрдб рд▓рд┐рдВрдХ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдирддреАрдЬрддрди, рд╣рдореЗрдВ рдПрдХ рд╕рд░рд▓ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдорд┐рд▓рд╛, рдЬрд┐рд╕реЗ рдореИрдВрдиреЗ, рдмрд┐рдирд╛ рдкрд░реЗрд╢рд╛рди рдХрд┐рдП, рдХрдВрд╕реЛрд▓ PHP рдореЗрдВ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ред рдЕрдм рдмреИрдХрдЕрдк рддрдм рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдПрдХ рдкреЛрд░реНрдЯреЗрдмрд▓ рдбрд┐рд╕реНрдХ рдХрдВрдкреНрдпреВрдЯрд░ рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реЛрддрд╛ рд╣реИ, рдпрд╛ (рдпрджрд┐ рдбрд┐рд╕реНрдХ рдкрд╣рд▓реЗ рд╕реЗ рдХрдиреЗрдХреНрдЯ рд╣реИ) рджрд┐рди рдореЗрдВ рдПрдХ рдмрд╛рд░ред

рдФрд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ "рдмреИрдХрдЕрдк" рд╣реАред
 <?php // $dir = array(); $hah = array(); $hah_new = array(); $file = array(); $copy = 0; $link = 0; include 'conf.php'; $date = date('Ym-d'); //        if(is_dir($date)){ exit("Backup already exists\n"); } //     foreach(glob('*', GLOB_ONLYDIR) as $v){ if(is_file($v.'/hah.db')){ $hah = array_merge($hah, unserialize(file_get_contents($v.'/hah.db'))); } } //    foreach($dir as $v){ $x = explode('/', $v); array_unshift($x, $date); $x[1] = substr($x[1], 0, 1); foreach($x as $k=>$v){ $y = implode('/', array_slice($x, 0, $k+1)); if(!is_dir($y)){ mkdir($y); } } } //    while($n = array_pop($dir)){ if(!is_dir($date.'/'.substr($n, 0, 1).'/'.substr($n, 3))){ mkdir($date.'/'.substr($n, 0, 1).'/'.substr($n, 3)); } $dir = array_merge($dir, glob($n.'/*', GLOB_ONLYDIR)); $file = array_merge($file, array_diff(glob($n.'/*'), glob($n.'/*', GLOB_ONLYDIR))); } //       foreach($file as $k=>$v){ $x = md5_file($v).filesize($v); if(!$x){ continue; } $f = $date.'/'.substr($v, 0, 1).'/'.substr($v, 3); if($hah[$x]){ exec('fsutil hardlink create "'.$f.'" "'.$hah[$x].'"'); $hah_new[$x] = $f; $link++; }else{ copy($v, $f); $hah_new[$x] = $f; $copy++; } print ceil($k*100/count($file))."%\r"; } print "\nLink: ".$link."\n"; print "Copy: ".$copy."\n"; //     file_put_contents($date.'/hah.db', serialize($hah_new)); exit; 


рдЗрд╕рдХрд╛ рд╡рд┐рдиреНрдпрд╛рд╕:
 <?php date_default_timezone_set('Asia/Novosibirsk'); $dir[] = 'c:/scan'; //  $dir[] = 'c:/web'; //    $dir[] = 'c:/gohsrf'; //  $dir[] = 'q:'; //  


рдЦреИрд░, BAT`nik рдиреЗ рдЗрд╕реЗ рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛:
 @echo off cls php backup.php pause 

Source: https://habr.com/ru/post/In135798/


All Articles