जवाबों:
मान लें कि आप केवल फाइलों को नॉटिलस में दिखाने से बचने के बारे में परवाह करते हैं, इसके लिए गनोम बगज़िला पर एक बग है । हालाँकि, वर्तमान में, उस बग को हल नहीं किया गया है।
फ़ाइलों को नॉटिलस में प्रदर्शित होने से छिपाने का एक और तरीका है। यदि आप .hidden
किसी निर्देशिका के अंदर नामक फ़ाइल बनाते हैं , तो फ़ाइल में सूचीबद्ध कोई भी फ़ाइल नाम प्रदर्शित नहीं किया जाएगा।
उदाहरण के लिए, नीचे एक .hidden फ़ाइल है जिसे मैंने बनाया है। यह फ़ाइल .hidden फ़ाइल के रूप में समान निर्देशिका में नामित b
या e
स्थित किसी भी फ़ाइल या फ़ोल्डर को छिपाएगी।
नीचे उस फ़ोल्डर का स्क्रीनशॉट है जिसमें .hidden फ़ाइल है। ध्यान दें कि आप केवल तीन फ़ाइलों को देखने के: a
, c
, और f
। आप '।' फ़ाइल की वजह से नहीं देखते हैं। ' इसके नाम की शुरुआत में।
नीचे दिया गया स्क्रीनशॉट पहले के समान फ़ोल्डर का है। हालाँकि, इस बार, मैंने हिट फ़ाइलों और फ़ोल्डरों को प्रदर्शित करने के लिए नॉटिलस पैदा करने के लिए Ctrl+ मारा H। ध्यान दें कि कई अतिरिक्त फाइलें हैं जो दिखाती हैं। अब आप कई फाइलें देखते हैं जो पहले एक '' के साथ शुरू होने वाले नामों के कारण छिपी हुई थीं। अब 'b' और 'e' नाम की फाइलें भी हैं, जो कि 'a' के साथ शुरू होने वाले नाम नहीं हैं। इनहेड फ़ाइल में सूचीबद्ध होने के कारण छिपी हुई थीं।
.Hidden फ़ाइल में उल्लिखित फ़ाइलें केवल nautilus में छिपी होंगी। जैसे उपकरण ls
अभी भी उन्हें प्रदर्शित करेंगे। .Hidden फ़ाइल भी पुनरावर्ती नहीं है। यह केवल उसी निर्देशिका में फ़ाइलों को प्रभावित करता है जैसे .hidden फ़ाइल में है।
मंच पर कुछ लोग आगे बढ़े हैं और नॉटिलस के लिए स्क्रिप्ट बनाई है जो कि .hidden फ़ाइल में फ़ाइलों को जोड़ना आसान बनाता है। पहले स्क्रिप्ट कैसे स्थापित करें और स्क्रिप्ट का उपयोग करने के बारे में एक अच्छा विवरण शामिल है, लेकिन दूसरे पटकथा थोड़ा क्लीनर और कम है। अपने जीवन को थोड़ा आसान बनाने के लिए या तो स्क्रिप्ट का उपयोग करने के लिए स्वतंत्र महसूस करें।
यूनिक्स और लिनक्स केवल छुपाने वाले फ़ोल्डर का समर्थन करता है जो एक के साथ है .
।
यदि आप वास्तव में उन्हें रास्ते से हटाना चाहते हैं, लेकिन चाहते हैं कि उनके पास .
एस न हों, तो उन सभी .hidden
को उसी निर्देशिका में रखें जिस फ़ाइल या फ़ोल्डर को आप छिपाना चाहते हैं। .hidden
फ़ाइल प्रबंधक द्वारा उजागर नहीं किया जाएगा, और आपकी फ़ाइलों का नाम परिवर्तन नहीं होगा।
कमांड लाइन से आप अपनी .bash_aliases
फ़ाइल में कुछ इस तरह का प्रयास कर सकते हैं :
lsh() {
[ -s .hidden ] && echo "lsh: hiding $(wc -l .hidden) patterns" && ls $@ | grep -v -F "$(cat .hidden)";
[ ! -f .hidden ] && ls $@
}
यह एक नया आदेश जोड़ता है lsh
जो व्यवहार करता है ls
, लेकिन .hidden
निर्देशिका में सूचीबद्ध फ़ाइलों को छुपाता है । (यह रंग-रूपी आउटपुट और कॉलम लिस्टिंग जैसी अपनी कुछ विशेषताओं को याद कर रहा है।)
यदि आप फ़ाइलों को छिपाना चाहते हैं, तो आप केवल पूर्ववर्ती के साथ उनका नाम बदलने से बचे हैं .
, जैसा कि * 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
और अब मैंने "गुप्त" शब्द कहा है तो कई बार यह सब अर्थ खो जाता है !!
chmod -R 000 secret_stash
तब कोई भी इसे पढ़ने में सक्षम नहीं होगा!
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
है (और हां "रूट" ऐसा कर सकता है)।
उसके लिए कोई कीबोर्ड शॉर्टकट?
नहीं, यह कुछ ऐसा है जिसे आपको मैन्युअल रूप से करने की आवश्यकता है।
Nautilus -nautilus-hide नामक एक एक्सटेंशन भी है जो आपको किसी भी फ़ाइल या फ़ोल्डर को एक साधारण राइट-क्लिक करने की अनुमति देगा।
इस एक्सटेंशन को स्थापित करने के लिए:
sudo apt-get install nautilus-hide
एक टर्मिनल में, या उबंटू सॉफ्टवेयर सेंटर में "नॉटिलस छिपाने" के लिए खोजें।
स्थापना के बाद Nautilus छोड़ने के लिए मत भूलना: Alt+ F2और टाइप करें nautilus -q
।
'
फ़ाइल या फ़ोल्डर नाम के लिए जोड़ना होगा जिसमें `` स्थान है, तो यह नहीं है। बस फ़ाइल या फ़ोल्डर का नाम जोड़ें