Odpowiedzi:
Zakładając, że dbasz tylko o ukrywanie plików przed pojawieniem się w nautilusie, w Bugzilli GNOME jest błąd . Jednak obecnie ten błąd nie został rozwiązany.
Istnieje inny sposób na ukrycie plików przed pojawieniem się w nautilusie. Jeśli utworzysz plik o nazwie .hidden
wewnątrz katalogu, nazwa pliku wymieniona w pliku nie będzie wyświetlana.
Na przykład poniżej znajduje się plik .hidden, który utworzyłem. Ten plik ukryje wszystkie pliki lub foldery nazwane b
lub e
znajdujące się w tym samym katalogu, co plik ukryty.
Poniżej znajduje się zrzut ekranu folderu zawierającego plik .hidden. Zauważ, że widać tylko trzy pliki: a
, c
, i f
. Nie widzisz pliku .hidden z powodu „.” na początku swojej nazwy.
Poniższy zrzut ekranu zawiera ten sam folder, co poprzednio. Jednak tym razem nacisnąłem Ctrl+, Haby nautilus wyświetlał ukryte pliki i foldery. Zauważ, że pojawia się kilka dodatkowych plików. Teraz widzisz kilka plików, które wcześniej były ukryte z powodu nazw zaczynających się od „.”. Istnieją teraz również pliki o nazwach „b” i „e”, które chociaż nie mają nazw rozpoczynających się od „.”, Zostały ukryte z powodu umieszczenia ich w pliku .hidden.
Pliki wymienione w pliku .hidden zostaną ukryte tylko w nautilus. Narzędzia takie ls
nadal będą je wyświetlać. Plik .hidden również nie jest rekurencyjny. Wpływa tylko na pliki w tym samym katalogu, w którym znajduje się plik .hidden.
Niektóre osoby na forum stworzyły skrypty dla nautilus, które ułatwiają dodawanie plików do pliku .hidden. Pierwszy skrypt zawiera piękny wyjaśnienia na temat jak zainstalować i używać skryptów, ale drugi scenariusz jest nieco czystsze i krótsze. Możesz użyć dowolnego skryptu, aby ułatwić ci życie.
Systemy Unix i Linux obsługują tylko ukrywanie folderów z rozszerzeniem .
.
Jeśli naprawdę chcesz usunąć je z drogi, ale chcesz, aby nie miały .
s, umieść je wszystkie .hidden
w tym samym katalogu, co plik lub folder, który chcesz ukryć. .hidden
nie zostanie ujawniony przez menedżera plików, a twoje pliki nie będą miały zmiany nazwy.
Z linii poleceń możesz wypróbować coś takiego w swoim .bash_aliases
pliku:
lsh() {
[ -s .hidden ] && echo "lsh: hiding $(wc -l .hidden) patterns" && ls $@ | grep -v -F "$(cat .hidden)";
[ ! -f .hidden ] && ls $@
}
Dodaje to nowe polecenie, lsh
które zachowuje się podobnie ls
, ale ukrywa pliki wymienione w .hidden
katalogu. (Brakuje również niektórych jego funkcji, takich jak pokolorowane dane wyjściowe i listy kolumn).
Jeśli chcesz ukryć pliki, możesz jedynie zmienić ich nazwę na poprzednią .
, podobnie jak w konwencji * NIX. Przepraszam, ale to wszystko.
Jeśli jednak chcesz ukryć zawartość plików / katalogów, możesz to zrobić z uprawnieniami do plików.
Powiedzmy, że masz kilka plików w folderze o nazwie secret_stash
, możesz to zmienić, aby tylko Ty (właściciel) miałeś r-x
(czytaj, wykonuj), a wszyscy inni nie mieli nic ---
(brak dostępu). Ponieważ r-x
są to minimalne uprawnienia potrzebne do przeglądania katalogu (czytaj, aby uzyskać dostęp do jego zawartości i wykonać, aby móc je zobaczyć), wszystko w tym folderze jest skutecznie ukryte przed wszystkimi oprócz root
.
UWAGA : uruchamiam to demo jako root
i próbuję uzyskać dostęp do folderu jakomyuser
Aby to zrobić, uruchom chmod 700 dirname
(700 środków rwx------
):
% mkdir secret_stash
% chmod 700 secret_stash
A oto:
% 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
Teraz i jeśli spróbuję uzyskać do niego dostęp myuser
, próby uzyskania dostępu do folderu lub jego zawartości zakończą się niepowodzeniem:
% 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
A teraz powiedziałem słowo „sekret” tyle razy, że straciło wszelki sens !!
chmod -R 000 secret_stash
nikt nie będzie mógł go przeczytać!
1st off: jeśli chcesz ukryć plik przed kimkolwiek: zainstaluj system wykrywania włamań do systemu Linux . ( Snort jest przykładem) Możesz nawet ukryć plik przed „rootem”, ale „root” będzie mógł również przywrócić te ustawienia.
Ale może być łatwiej po prostu ustawić uprawnienia katalogu, w którym plik jest ustawiony na „root”. Przykład:
$ 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
Plik 1
jest skutecznie ukryty.
Katalog będzie widoczny; plik nie będzie widoczny. Pamiętaj jednak: „root” ZAWSZE będzie miał dostęp do dowolnego pliku.
Razem z tym chattr
możesz nawet uczynić plik niezmiennym.
sudo su
chattr + i {file}
i nawet „root” nie może zmienić pliku - chyba że - chattr
jest cofany (i tak, „root” może to zrobić).
Jakikolwiek skrót klawiaturowy do tego?
Nie, musisz to zrobić ręcznie.
Istnieje również rozszerzenie Nautilus o nazwie nautilus-hide , które pozwala ukryć dowolny plik lub folder za pomocą jednego kliknięcia prawym przyciskiem myszy.
Aby zainstalować to rozszerzenie:
sudo apt-get install nautilus-hide
w terminalu lub wyszukaj „nautilus hide” w Centrum oprogramowania Ubuntu.
Nie zapomnij wyjść z Nautilus po instalacji: Alt+ F2i wpisz nautilus -q
.
'
nazwę pliku lub folderu, która zawiera `` spację, tak nie jest. Wystarczy dodać nazwę pliku lub folderu