An Easy Way to Hide Files and Directories in Linux

Do you occasionally share your Linux desktop machine with family members, friends, or perhaps with colleagues at your workplace, then you have a reason to hide certain private files as well as folders or directories. The question is how can you hide files in linux?

In this tutorial, we will explain an easy and effective way to hide files and directories and view hidden files/directories in Linux from the terminal and GUI.

As we’ll see below, hiding files and directories in Linux is so simple.

How to Hide Files in Linux

To hide a file or directory from the terminal, simply append a dot . at the start of its name as follows using the mv command.

$ ls
$ mv sync.ffs_db .sync.ffs_db
$ ls
Hide File in Linux Terminal
Hide File in Linux Terminal

Using the GUI method, the same idea applies here, just rename the file by adding a . at the start of its name as shown below.

Hide File in Linux Using File Manager
Hide File in Linux Using File Manager

Once you have renamed it, the file will still be seen, move out of the directory and open it again, it will be hidden thereafter.

How to Hide Directories/Folders in Linux

To hide a directory or folder, you can use the same mv command and append the . at the start of the directory name (here directory name is my_imp_dir) as shown.

$ mv my_imp_dir .my_imp_dir
$ ls -l  
Hide Directory in Linux
Hide Directory in Linux

To unhide a directory, remove the . at the beginning of the directory name with the mv command as shown.

$ mv .my_imp_dir my_imp_dir
$ ls -l 
Unhide Directory in Linux
Unhide Directory in Linux

How to View Hidden Files and Directories in Linux

To view hidden files, run the ls command with the -a flag which enables viewing of all files in a directory or -al flag for a long listing of files.

$ ls -a
OR
$ ls -al
View Hidden Files in Linux Terminal
View Hidden Files in Linux Terminal
View Hidden Directory in Linux
View Hidden Directory in Linux

From a GUI file manager, go to View and check the option Show Hidden Files to view hidden files or directories.

View Hidden File Using File Manager
View Hidden File Using File Manager

How to Compress Files and Directories with Password in Linux

In order to add a little security to your hidden files and directories, you can compress them with a password and then hide them from a GUI file manager as follows.

Select the file or directory and right-click on it, then choose Compress or Create Archive from the menu list, set the zip compression preferences, and click on “Other options” to get the password option as shown in the screenshot below.

Once you have set the password, click on Create.

Compress Files with Password in Linux
Compress Files with Password in Linux

From now on, each time anyone wants to open the file, they’ll be asked to provide the password created above.

Enter Password to View Files
Enter Password to View Files

You can also compress and password-protect files and directories using the zip command.

$ zip -re my_imp_files.zip files1.txt files2.txt files3.txt
$ zip -re my_imp_dir.zip my_imp_dir
Compress and Password Protect Directory in Linux
Compress and Password Protect Directory in Linux

[ You might also like: Tools to Encrypt/Decrypt and Password Protect Files in Linux ]

That’s it for now! In this tutorial, we described how to easily and effectively hide files and directories and view hidden files/directories in Linux from the terminal and GUI file manager. Make use of the feedback form below to share any thoughts with us.

Hey TecMint readers,

Exciting news! Every month, our top blog commenters will have the chance to win fantastic rewards, like free Linux eBooks such as RHCE, RHCSA, LFCS, Learn Linux, and Awk, each worth $20!

Learn more about the contest and stand a chance to win by sharing your thoughts below!

Aaron Kili
Aaron Kili is a Linux and F.O.S.S enthusiast, an upcoming Linux SysAdmin, web developer, and currently a content creator for TecMint who loves working with computers and strongly believes in sharing knowledge.

Each tutorial at TecMint is created by a team of experienced Linux system administrators so that it meets our high-quality standards.

Join the TecMint Weekly Newsletter (More Than 156,129 Linux Enthusiasts Have Subscribed)
Was this article helpful? Please add a comment or buy me a coffee to show your appreciation.

14 Comments

Leave a Reply
    • . and .. are not real files/directories. It’s a convenient way to navigate across the directory tree.

      . means the current directory, .. means back one directory.

      For example, if I’m in /home/user/Desktop and I want to go to /home/user, I can use 'cd ..'.

      If I want to reference a file in the current directory, I could either use ‘file’ or ‘./file’ (the latter is more reliable, next to the full path).

      Reply
  1. Hiding files in Linux was not as easy as it looks. I really like your process to delivering that idea. your idea completely helps me…

    Reply
  2. Appending a . may hide from ls, but it’s not really hidden from other users if they can perform ls -a. And password protecting a compressed file offers minimal security, as they can still read the file, and try to crac it.

    If you really want to hide files or folders from other users, you need to place them in a directory and chmod said_directory with 700. Other users can see that you have a directory named said_directory, but the will have no permission to view anything inside, truly hiding those things you don’t want them to see.

    Reply
    • In case anyone’s interested, I wrote a couple functions to help quickly lock and unlock folders using chmod 700 method above:

      #————————————————————–#
      lockit() {
      sudo chown root:root $1
      sudo chmod 700 $1
      }

      unlockit() {
      sudo chown dmitri:dmitri $1
      sudo chmod 770 $1
      }
      #————————————————————–#

      You can then lock from the terminal:

      $ lockit path/to/dir_or_file
      

      In order to make your locked directory accessible again, run this from the terminal:

      $ unlockit path/to/dir_or_file
      
      Reply

Got Something to Say? Join the Discussion...

Thank you for taking the time to share your thoughts with us. We appreciate your decision to leave a comment and value your contribution to the discussion. It's important to note that we moderate all comments in accordance with our comment policy to ensure a respectful and constructive conversation.

Rest assured that your email address will remain private and will not be published or shared with anyone. We prioritize the privacy and security of our users.