{"id":39,"date":"2013-01-01T14:45:51","date_gmt":"2013-01-01T12:45:51","guid":{"rendered":"http:\/\/osxadmin.cz\/?p=39"},"modified":"2021-01-10T17:43:10","modified_gmt":"2021-01-10T15:43:10","slug":"skryte-soubory","status":"publish","type":"post","link":"https:\/\/macadmin.cz\/?p=39","title":{"rendered":"Skryt\u00e9 soubory"},"content":{"rendered":"<p><a href=\"http:\/\/osxadmin.cz\/wp-content\/uploads\/Screen-Shot-2012-10-25-at-2.50.46-PM.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/osxadmin.cz\/wp-content\/uploads\/Screen-Shot-2012-10-25-at-2.50.46-PM-150x150.png\" alt=\"\" title=\"Invsible Folder\" width=\"150\" height=\"150\" class=\"alignleft size-thumbnail wp-image-86\" \/><\/a><br \/>\nSkryt\u00e9 soubory jsou velmi z\u00e1sadn\u00ed vlastnost\u00ed modern\u00edch opera\u010dn\u00edch syst\u00e9m\u016f.  Plat\u00ed pravidlo &#8220;Co o\u010di nevid\u00ed, to srdce nebol\u00ed&#8221; a pravd\u011bpodobnost p\u00e1ch\u00e1n\u00ed \u0161kod u\u017eivatelem ve filesyst\u00e9mu z\u00e1sadn\u011b kles\u00e1. Nejinak je tomu u Mac OS X. Co kdy\u017e ale skryt\u00e9 soubory vid\u011bt chceme?<\/p>\n<h2>Schov\u00e1vac\u00ed metody<\/h2>\n<ol>\n<li><strong>dot-files<\/strong>: Tradi\u010dn\u00ed metoda unixov\u00fdch syst\u00e9m\u016f. V\u0161echny soubory, jejich\u017e n\u00e1zev za\u010d\u00edn\u00e1 te\u010dkou, jsou pova\u017eov\u00e1ny za nevidteln\u00e9.<\/li>\n<li><strong>FinderInfo\u00a0&#8211; extended attributes<\/strong>: filesyst\u00e9m HFS+ umo\u017e\u0148uje skladovat metadata spojen\u00e1 s konkr\u00e9tn\u00edm souborem . T\u011bmto metadat\u016fm se \u0159\u00edk\u00e1 roz\u0161\u00ed\u0159en\u00e9 atributy (extended attributes\u00a0= t\u00e9ma na samostatn\u00fd \u010dl\u00e1nek). Jedn\u00edm z takov\u00fdch atribut\u016f je bitov\u00e9 pole, kter\u00e9 p\u0159id\u00e1v\u00e1 soubor\u016fm speci\u00e1ln\u00ed flagy pou\u017e\u00edvan\u00e9 p\u0159ev\u00e1\u017en\u011b Finderem. Mezi nimi je i neviditelnost.<\/li>\n<\/ol>\n<p><!--more--><\/p>\n<h2>Finder<\/h2>\n<p>Marn\u011b byste hledali zobrazen\u00ed nevideln\u00fdch soubor\u016f v p\u0159edvolb\u00e1ch Finderu \u010di snad ve view options&#8230;<\/p>\n<table border=\"0\">\n<tr>\n<td><a href=\"http:\/\/osxadmin.cz\/wp-content\/uploads\/Screen-Shot-2012-10-24-at-11.46.07-PM1.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/osxadmin.cz\/wp-content\/uploads\/Screen-Shot-2012-10-24-at-11.46.07-PM1-300x243.png\" alt=\"\" title=\"Finder Preferences\" width=\"300\" height=\"243\" class=\"alignnone size-medium wp-image-64\" srcset=\"https:\/\/macadmin.cz\/wp-content\/uploads\/Screen-Shot-2012-10-24-at-11.46.07-PM1-300x243.png 300w, https:\/\/macadmin.cz\/wp-content\/uploads\/Screen-Shot-2012-10-24-at-11.46.07-PM1.png 469w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/td>\n<td><a href=\"http:\/\/osxadmin.cz\/wp-content\/uploads\/Screen-Shot-2012-10-24-at-11.50.22-PM.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/osxadmin.cz\/wp-content\/uploads\/Screen-Shot-2012-10-24-at-11.50.22-PM-116x300.png\" alt=\"\" title=\"Finder View Options\" width=\"116\" height=\"300\" class=\"alignnone size-medium wp-image-65\" srcset=\"https:\/\/macadmin.cz\/wp-content\/uploads\/Screen-Shot-2012-10-24-at-11.50.22-PM-116x300.png 116w, https:\/\/macadmin.cz\/wp-content\/uploads\/Screen-Shot-2012-10-24-at-11.50.22-PM-193x500.png 193w, https:\/\/macadmin.cz\/wp-content\/uploads\/Screen-Shot-2012-10-24-at-11.50.22-PM.png 215w\" sizes=\"auto, (max-width: 116px) 100vw, 116px\" \/><\/a><\/td>\n<\/tr>\n<\/table>\n<p>Je t\u0159eba nastavit prom\u011bnnou <strong>AppleShowAllFiles<\/strong> v konfigura\u010dn\u00edm plist souboru Finderu &#8211; ~\/Library\/Preferences\/<strong>com.apple.finder.plist<\/strong> &#8211; pomoc\u00ed termin\u00e1lu.<\/p>\n<p><code>defaults write com.apple.finder AppleShowAllFiles TRUE; killall Finder<\/code><a href=\"http:\/\/osxadmin.cz\/wp-content\/uploads\/Screen-Shot-2012-10-25-at-2.25.53-PM.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/osxadmin.cz\/wp-content\/uploads\/Screen-Shot-2012-10-25-at-2.25.53-PM-1024x695.png\" alt=\"\" title=\"Finder Invisible Files\" width=\"584\" height=\"396\" class=\"aligncenter size-large wp-image-99\" srcset=\"https:\/\/macadmin.cz\/wp-content\/uploads\/Screen-Shot-2012-10-25-at-2.25.53-PM-1024x695.png 1024w, https:\/\/macadmin.cz\/wp-content\/uploads\/Screen-Shot-2012-10-25-at-2.25.53-PM-300x203.png 300w, https:\/\/macadmin.cz\/wp-content\/uploads\/Screen-Shot-2012-10-25-at-2.25.53-PM-500x339.png 500w, https:\/\/macadmin.cz\/wp-content\/uploads\/Screen-Shot-2012-10-25-at-2.25.53-PM.png 1155w\" sizes=\"auto, (max-width: 584px) 100vw, 584px\" \/><\/a><\/p>\n<p>Finder nyn\u00ed ukazuje v\u0161echny soubory. Do\u010dasn\u011b to m\u016f\u017ee b\u00fdt v\u00fdhodn\u00e1 situace, ale dlouhodob\u011b? Najednou v\u0161ude nepo\u0159\u00e1dek. Zp\u011bt do p\u016fvodn\u00edho stavu.<\/p>\n<p><code>defaults write com.apple.finder AppleShowAllFiles FALSE; killall Finder<\/code><\/p>\n<h2>Go<\/h2>\n<p>\u010casto sta\u010d\u00ed vl\u00e9zt do nevideln\u00e9ho adres\u00e1\u0159e jako \/etc, \/var nebo ~\/Library. Ve Finderu pou\u017eijte funkci Go to Folder (\u21e7 + \u2318 + G) pod nab\u00eddkou Go, kde zad\u00e1te po\u017eadovanou cestu. Dop\u0148ov\u00e1n\u00ed n\u00e1zvu pomoc\u00ed tabu funguje, ale v\u017edy se vybere jen prvn\u00ed mo\u017enost a nelze p\u0159epnout na dal\u0161\u00ed.<\/p>\n<h2>Open\/Save dialog<\/h2>\n<p>Syst\u00e9mov\u00fd dialog pro otev\u0159en\u00ed v souboru nerespektuje TRUE\/FALSE hodnotu AppleShowAllFiles prom\u011bnn\u00e9. Neviditeln\u00e9 soubory zobraz\u00edte kl\u00e1vesovou zkratkou<br \/>\n\u21e7 + \u2318 + . (shift + command + te\u010dka)<br \/>\n<code><\/code><\/p>\n<h2>Pry\u010d s nevidelnost\u00ed &#8211; chflags<\/h2>\n<p>V Termin\u00e1lu vylistujte ko\u0159enov\u00fd adres\u00e1\u0159 pomoc\u00ed <code>ls -lO<\/code>. P\u0159ep\u00edna\u010d <code>-O<\/code> uk\u00e1\u017ee p\u00e1t\u00fd sloupe\u010dek se seznamem v\u0161ech flags (v\u00edce v <code>man chflags<\/code>), mezi kter\u00fdmi je i nevidelnost.<br \/>\n<a href=\"http:\/\/osxadmin.cz\/wp-content\/uploads\/hiddenflag.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/osxadmin.cz\/wp-content\/uploads\/hiddenflag.png\" alt=\"\" title=\"hiddenflag\" width=\"493\" height=\"114\" class=\"aligncenter size-full wp-image-112\" srcset=\"https:\/\/macadmin.cz\/wp-content\/uploads\/hiddenflag.png 493w, https:\/\/macadmin.cz\/wp-content\/uploads\/hiddenflag-300x69.png 300w\" sizes=\"auto, (max-width: 493px) 100vw, 493px\" \/><\/a><br \/>\nVypnout -> <code>chflags nohidden CESTA_K_SOUBORU<\/code><br \/>\nZapnout -> <code>chflags hidden CESTA_K_SOUBORU<\/code><\/p>\n<h2>Pry\u010d s nevidelnost\u00ed &#8211; SetFile<\/h2>\n<p>Zobraz\u00edte-li si ko\u0159enov\u00fd adres\u00e1\u0159 <code>ls -l \/<\/code>, pov\u0161imn\u011bte si zavin\u00e1\u010de za p\u0159\u00edstupov\u00fdmi pr\u00e1vy u n\u011bkter\u00fdch polo\u017eek. Takov\u00fd soubor m\u00e1 n\u011bjak\u00e1 metadata. Jejich seznam lze zobrazit p\u0159ep\u00edna\u010dem @ -> <code>ls -l@<\/code>. Ve v\u011bt\u0161in\u011b p\u0159\u00edpad\u016f najdeme atribut com.apple.FinderInfo, kter\u00fdch ukl\u00e1d\u00e1 mimo jin\u00e9 i hodnotu flagu nevidelnosti soubor. <\/p>\n<p>S t\u00edmto atributem lze p\u0159\u00edmo manipulovat pomoc\u00ed n\u00e1stroj\u016f GetFileInfo a SetFile.  Oba jsou sou\u010d\u00e1st\u00ed bal\u00ed\u010dku v\u00fdvoj\u00e1\u0159sk\u00fdch n\u00e1stroj\u016f Command Line Tools. Ke sta\u017een\u00ed na <a href=\"https:\/\/developer.apple.com\/downloads\/\" title=\"developer.apple.com\/downloads\" target=\"_blank\" rel=\"noopener\">developer.apple.com\/downloads<\/a> v r\u00e1mci free developer \u00fa\u010dtu.<\/p>\n<p>GetFileInfo -P \/etc vrac\u00ed informace o adres\u00e1\u0159i, mezi kter\u00fdmi je i seznam aktivn\u00edch atribut\u016f vypadaj\u00edc\u00ed takto -> <code>attributes: aVbstclinmedz<\/code> Mal\u00e1 p\u00edsmena znamenaj\u00ed vynut\u00e9 flagy, velk\u00e1 zapnut\u00e9. Seznam najdete v man str\u00e1nk\u00e1ch (<code>man GetFileInfo<\/code>, <code>man SetFile<\/code>).<br \/>\n<em># P\u0159ep\u00edna\u010d -P je pot\u0159eba, proto\u017ee \/etc odkazuje (symlink) na \/private\/etc<\/em><\/p>\n<p>Neviditelnost odstran\u00edme takto: <code>sudo SetFile -P -a v \/etc<\/code><br \/>\n<em># Symlink \/etc -> \/private\/etc pat\u0159\u00ed rootovi, proto <code>sudo<\/code>.<\/em><\/p>\n<h2>Bonusy<\/h2>\n<p>P\u0159ehled souvisej\u00edc\u00edch p\u0159ep\u00edna\u010d\u016f pro p\u0159\u00edkaz <code>ls<\/code><\/p>\n<ul>\n<li>-a = uka\u017e dot-files<\/li>\n<li>-@ = uka\u017e extended-attributes<\/li>\n<li>-O = uka\u017e flags<\/li>\n<li>-e = uka\u017e ACL<\/li>\n<\/ul>\n<p>Z\u00e1v\u011brem p\u0159ikl\u00e1d\u00e1m velmi jednoduch\u00fd skript prohazuj\u00edc\u00ed nastaven\u00ed neviditelnosti skryt\u00fdch soubor\u016f ve Finderu.<\/p>\n<pre class=\"brush: bash; gutter: true; first-line: 1; highlight: []; html-script: false\">#!\/bin\/bash\r\n\r\napp_uti=&quot;com.apple.finder&quot;\r\napp_name=&quot;Finder&quot;\r\nplistbool=&quot;AppleShowAllFiles&quot;\r\n\r\n[ ! -e ~\/Library\/Preferences\/${app_uti}.plist ] &amp;&amp; { killall $app_name; exit 1; }\r\n\r\ninvisibility_switch=`defaults read $app_uti $plistbool 2&gt; \/dev\/null`\r\n\r\nif [ -z $invisibility_switch ]\r\nthen\r\n\tinvisibility_switch=&quot;FALSE&quot;\r\nfi\r\n\r\nif [ $invisibility_switch = &quot;TRUE&quot; ]\r\nthen\r\n\tdefaults write $app_uti $plistbool FALSE\r\nelse\r\n\tdefaults write $app_uti $plistbool TRUE\r\nfi\t\t\r\n\r\nkillall $app_name<\/pre>\n<p>Kdy\u017e se skript zabal\u00ed v Automatoru do syst\u00e9mov\u00e9 slu\u017eby (Service), lze na to nastavit kl\u00e1vesovou zkratku v System Preferences -> Keyboard -> Keyboard Shortcuts. <\/p>\n<p>Ke sta\u017een\u00ed: <a href=\"http:\/\/osxadmin.cz\/wp-content\/uploads\/Switch-Finder-Invisibility.workflow.zip\">Switch Finder Invisibility.workflow<\/a><\/p>\n<p><a href=\"http:\/\/osxadmin.cz\/wp-content\/uploads\/Screen-Shot-2012-10-31-at-11.00.22-PM.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/osxadmin.cz\/wp-content\/uploads\/Screen-Shot-2012-10-31-at-11.00.22-PM.png\" alt=\"\" title=\"Invi Service\" width=\"871\" height=\"461\" class=\"aligncenter size-full wp-image-132\" srcset=\"https:\/\/macadmin.cz\/wp-content\/uploads\/Screen-Shot-2012-10-31-at-11.00.22-PM.png 871w, https:\/\/macadmin.cz\/wp-content\/uploads\/Screen-Shot-2012-10-31-at-11.00.22-PM-300x158.png 300w, https:\/\/macadmin.cz\/wp-content\/uploads\/Screen-Shot-2012-10-31-at-11.00.22-PM-500x264.png 500w\" sizes=\"auto, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Skryt\u00e9 soubory jsou velmi z\u00e1sadn\u00ed vlastnost\u00ed modern\u00edch opera\u010dn\u00edch syst\u00e9m\u016f. Plat\u00ed pravidlo &#8220;Co o\u010di nevid\u00ed, to srdce nebol\u00ed&#8221; a pravd\u011bpodobnost p\u00e1ch\u00e1n\u00ed \u0161kod u\u017eivatelem ve filesyst\u00e9mu z\u00e1sadn\u011b kles\u00e1. Nejinak je tomu u Mac OS X. Co kdy\u017e ale skryt\u00e9 soubory vid\u011bt chceme? Schov\u00e1vac\u00ed metody dot-files: Tradi\u010dn\u00ed metoda unixov\u00fdch syst\u00e9m\u016f. V\u0161echny soubory, jejich\u017e n\u00e1zev za\u010d\u00edn\u00e1 te\u010dkou, jsou pova\u017eov\u00e1ny &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/macadmin.cz\/?p=39\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Skryt\u00e9 soubory&#8221;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":86,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"footnotes":""},"categories":[4],"tags":[],"class_list":["post-39","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-macos"],"_links":{"self":[{"href":"https:\/\/macadmin.cz\/index.php?rest_route=\/wp\/v2\/posts\/39","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/macadmin.cz\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/macadmin.cz\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/macadmin.cz\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/macadmin.cz\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=39"}],"version-history":[{"count":71,"href":"https:\/\/macadmin.cz\/index.php?rest_route=\/wp\/v2\/posts\/39\/revisions"}],"predecessor-version":[{"id":1013,"href":"https:\/\/macadmin.cz\/index.php?rest_route=\/wp\/v2\/posts\/39\/revisions\/1013"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/macadmin.cz\/index.php?rest_route=\/wp\/v2\/media\/86"}],"wp:attachment":[{"href":"https:\/\/macadmin.cz\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=39"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/macadmin.cz\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=39"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/macadmin.cz\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=39"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}