मैं उनके नाम बदले बिना निर्देशिका या फाइलें कैसे छिपा सकता हूं?


51

मुझ में ओसीडी चाहता है कि निर्देशिकाएं मुझे पसंद नहीं हैं कि मैं छिपा हुआ हूं क्योंकि मैं उनके साथ सीधे बातचीत नहीं करता हूं।

मैं डॉट नोटेशन का उपयोग किए बिना निर्देशिकाओं को कैसे छिपा सकता हूं?

जवाबों:


79

मान लें कि आप केवल फाइलों को नॉटिलस में दिखाने से बचने के बारे में परवाह करते हैं, इसके लिए गनोम बगज़िला पर एक बग है । हालाँकि, वर्तमान में, उस बग को हल नहीं किया गया है।

फ़ाइलों को नॉटिलस में प्रदर्शित होने से छिपाने का एक और तरीका है। यदि आप .hiddenकिसी निर्देशिका के अंदर नामक फ़ाइल बनाते हैं , तो फ़ाइल में सूचीबद्ध कोई भी फ़ाइल नाम प्रदर्शित नहीं किया जाएगा।

उदाहरण के लिए, नीचे एक .hidden फ़ाइल है जिसे मैंने बनाया है। यह फ़ाइल .hidden फ़ाइल के रूप में समान निर्देशिका में नामित bया eस्थित किसी भी फ़ाइल या फ़ोल्डर को छिपाएगी।

उदाहरण .hidden फ़ाइल

नीचे उस फ़ोल्डर का स्क्रीनशॉट है जिसमें .hidden फ़ाइल है। ध्यान दें कि आप केवल तीन फ़ाइलों को देखने के: a, c, और f। आप '।' फ़ाइल की वजह से नहीं देखते हैं। ' इसके नाम की शुरुआत में। उदाहरण फ़ोल्डर

नीचे दिया गया स्क्रीनशॉट पहले के समान फ़ोल्डर का है। हालाँकि, इस बार, मैंने हिट फ़ाइलों और फ़ोल्डरों को प्रदर्शित करने के लिए नॉटिलस पैदा करने के लिए Ctrl+ मारा H। ध्यान दें कि कई अतिरिक्त फाइलें हैं जो दिखाती हैं। अब आप कई फाइलें देखते हैं जो पहले एक '' के साथ शुरू होने वाले नामों के कारण छिपी हुई थीं। अब 'b' और 'e' नाम की फाइलें भी हैं, जो कि 'a' के साथ शुरू होने वाले नाम नहीं हैं। इनहेड फ़ाइल में सूचीबद्ध होने के कारण छिपी हुई थीं।

उदाहरण फोल्डर्स इन हिडन फाइल्स विजिबल

.Hidden फ़ाइल में उल्लिखित फ़ाइलें केवल nautilus में छिपी होंगी। जैसे उपकरण lsअभी भी उन्हें प्रदर्शित करेंगे। .Hidden फ़ाइल भी पुनरावर्ती नहीं है। यह केवल उसी निर्देशिका में फ़ाइलों को प्रभावित करता है जैसे .hidden फ़ाइल में है।

मंच पर कुछ लोग आगे बढ़े हैं और नॉटिलस के लिए स्क्रिप्ट बनाई है जो कि .hidden फ़ाइल में फ़ाइलों को जोड़ना आसान बनाता है। पहले स्क्रिप्ट कैसे स्थापित करें और स्क्रिप्ट का उपयोग करने के बारे में एक अच्छा विवरण शामिल है, लेकिन दूसरे पटकथा थोड़ा क्लीनर और कम है। अपने जीवन को थोड़ा आसान बनाने के लिए या तो स्क्रिप्ट का उपयोग करने के लिए स्वतंत्र महसूस करें।


+1। बस एक नोट, अगर आपको लगता है कि आपको 'फ़ाइल या फ़ोल्डर नाम के लिए जोड़ना होगा जिसमें `` स्थान है, तो यह नहीं है। बस फ़ाइल या फ़ोल्डर का नाम जोड़ें
अनवर

13

यूनिक्स और लिनक्स केवल छुपाने वाले फ़ोल्डर का समर्थन करता है जो एक के साथ है .

यदि आप वास्तव में उन्हें रास्ते से हटाना चाहते हैं, लेकिन चाहते हैं कि उनके पास .एस न हों, तो उन सभी .hiddenको उसी निर्देशिका में रखें जिस फ़ाइल या फ़ोल्डर को आप छिपाना चाहते हैं। .hiddenफ़ाइल प्रबंधक द्वारा उजागर नहीं किया जाएगा, और आपकी फ़ाइलों का नाम परिवर्तन नहीं होगा।


1
मैं उन्हें एक ही जगह पर रखना चाहूंगा :)
myusuf3

1
यह समाधान उन्हें उनकी ही जगह पर रखेगा। अगर आप नहीं चाहते कि यह आपके घर के फोल्डर में न हो, तो भी ऐसा नहीं है। मैं आमतौर पर इसे हटाने योग्य ड्राइव पर उपयोग करता हूं, जिसमें कॉन्फ़िगर की गई फाइलें हैं जो मैं नहीं देखना चाहता हूं।
जंपनेट

1
। बहुत अच्छा काम करता है!
पलटना

3

कमांड लाइन से आप अपनी .bash_aliasesफ़ाइल में कुछ इस तरह का प्रयास कर सकते हैं :

lsh() {
    [ -s .hidden ] && echo "lsh: hiding $(wc -l .hidden) patterns" && ls $@ | grep -v -F "$(cat .hidden)";
    [ ! -f .hidden ] && ls $@
}

यह एक नया आदेश जोड़ता है lshजो व्यवहार करता है ls, लेकिन .hiddenनिर्देशिका में सूचीबद्ध फ़ाइलों को छुपाता है । (यह रंग-रूपी आउटपुट और कॉलम लिस्टिंग जैसी अपनी कुछ विशेषताओं को याद कर रहा है।)


2

यदि आप फ़ाइलों को छिपाना चाहते हैं, तो आप केवल पूर्ववर्ती के साथ उनका नाम बदलने से बचे हैं ., जैसा कि * NIX सम्मेलन है। क्षमा करें, लेकिन यह बात है।

हालाँकि, यदि आप फ़ाइलों / निर्देशिकाओं की सामग्री को छिपाना चाहते हैं, तो आप फ़ाइल अनुमतियों के साथ ऐसा कर सकते हैं।

तो कहते हैं कि आपके पास एक फ़ोल्डर में फ़ाइलों का एक गुच्छा है secret_stash, आप इसे बदल सकते हैं ताकि केवल आपके पास r-x( स्वामी) है (पढ़ें, निष्पादित करें) और बाकी सभी के पास कुछ भी नहीं ---(कोई पहुंच नहीं है)। चूंकि r-xएक निर्देशिका को देखने के लिए न्यूनतम परमिट की आवश्यकता होती है (इसकी सामग्री तक पहुंचने के लिए पढ़ें और उन्हें देखने में सक्षम होने के लिए निष्पादित करें), उस फ़ोल्डर के अंदर कुछ भी प्रभावी रूप से सभी से छिपा हुआ है root

नोट : मैं इस डेमो को इस प्रकार चला रहा हूं root, और फ़ोल्डर को एक्सेस करने की कोशिश कर रहा हूंmyuser

ऐसा करने के लिए आप दौड़ते हैं chmod 700 dirname(700 साधन rwx------):

% mkdir secret_stash
% chmod 700 secret_stash

और यहाँ यह है:

% whoami
root
% ls -ld secret_stash
drwx------ 2 root root 4.0K 2010-08-12 07:59 secret_stash/
% ls secret_stash  
./  ../  secret.txt
% cat secret_stash/secret.txt 
TOP SECRET DATA

अब और अगर मैं इसे एक्सेस myuserकरने का प्रयास करता हूं , तो फ़ोल्डर या इसकी सामग्री तक पहुंचने का प्रयास विफल रहता है:

% whoami
myuser
% ls -ld secret_stash
drwx------ 2 root root 4.0K 2010-08-12 07:59 secret_stash/
% ls secret_stash 
ls: cannot open directory secret_stash: Permission denied
% cat secret_stash/secret.txt
cat: secret_stash/secret.txt: Permission denied

और अब मैंने "गुप्त" शब्द कहा है तो कई बार यह सब अर्थ खो जाता है !!


2
आप इसे वास्तव में छिपा सकते हैं, chmod -R 000 secret_stashतब कोई भी इसे पढ़ने में सक्षम नहीं होगा!
मार्को Ceppi

@ मर्को सेप्पी - अल्ट्रा सिक्योरिटी!
jathanism

बेशक यह अधिक "सुरक्षा" है की तुलना में यह "अंधकार" है - जो क्या ओपी देख रहा था है के लिए मुझे लगता है कि;)
मार्को Ceppi

2
@MarcoCeppi: chmod 000 फ़ाइल को फ़ाइल के स्वामी से भी छुपा देगा, रूट को छोड़कर, जो हमेशा 000 को बायपास कर सकता है। हालाँकि, फ़ाइल का स्वामी अभी भी इसे पढ़ने के लिए फ़ाइल की अनुमति बदल सकता है, इसलिए आपको इसकी आवश्यकता है 000 अनुमति को वास्तव में सार्थक बनाने के लिए फ़ाइल के स्वामित्व को रूट में बदलें।
रयान

2

1 बंद: यदि आप किसी से एक फ़ाइल छिपाना चाहते हैं: एक लिनक्स घुसपैठ का पता लगाने वाली प्रणाली स्थापित करें । ( स्नॉर्ट एक उदाहरण है) आप "रूट" से एक फ़ाइल भी छिपा सकते हैं, लेकिन "रूट" भी उन सेटिंग को वापस करने में सक्षम होगा।


लेकिन निर्देशिका की अनुमतियों को सेट करना आसान हो सकता है जो फ़ाइल को "रूट" पर रखता है। उदाहरण:

 $ sudo su
 # mkdir tmp/
 # touch tmp/1
 # chown root:root tmp
 # chmod 000 tmp  
 # ls -l
total 4
d--------- 2 root root 4096 2015-08-07 06:36 tmp  
 # exit
exit
 $ ls
tmp
 $ cd tmp/
bash: cd: tmp/: Permission denied

और फ़ाइल 1प्रभावी रूप से दृश्य से छिपी हुई है।

निर्देशिका दिखाई पड़ेगी; फ़ाइल दिखाई नहीं देगी। हालांकि मन: "जड़" हमेशा किसी भी फ़ाइल के लिए उपयोग किया जाएगा।


साथ में chattrआप फ़ाइल को अपरिवर्तनीय भी बना सकते हैं।

sudo su    
chattr + i {file}

और यहां तक ​​कि "रूट" फ़ाइल को बदल नहीं सकता है -unless- उल्टा chattrहै (और हां "रूट" ऐसा कर सकता है)।

उसके लिए कोई कीबोर्ड शॉर्टकट?

नहीं, यह कुछ ऐसा है जिसे आपको मैन्युअल रूप से करने की आवश्यकता है।


0

Nautilus -nautilus-hide नामक एक एक्सटेंशन भी है जो आपको किसी भी फ़ाइल या फ़ोल्डर को एक साधारण राइट-क्लिक करने की अनुमति देगा।

इस एक्सटेंशन को स्थापित करने के लिए: sudo apt-get install nautilus-hideएक टर्मिनल में, या उबंटू सॉफ्टवेयर सेंटर में "नॉटिलस छिपाने" के लिए खोजें।

स्थापना के बाद Nautilus छोड़ने के लिए मत भूलना: Alt+ F2और टाइप करें nautilus -q

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.