Manjaro Difference between revisions of "Important hidden .dot files in your home partition"

Difference between revisions of "Important hidden .dot files in your home partition"

From Manjaro
imported>Viking60
(→‎Directories: added .ssh since it is important and holds the secret to keywordless login)
imported>Dalto
(Switched to 3rd person, made more generic, standardized mixed references to moving from one system to another and descriptions of what the files contained, removed outdated references and references to less common applications)
Line 1: Line 1:
27-11-2016: Valuable update found in the Directories section
re. .mozilla & ...
=What's a hidden <.dot> file?=
=What's a hidden <.dot> file?=


They are files & directories with a "'''.'''" dot in front of them. Placing a "'''.'''" dot in front of a file or directory tells the operating system that such files & directories are to be hidden from view in file managers, file requesters & such. File managers & other applications can usually be set to view these normally hidden files. These hidden files & directories usually contain config files of some sort.
They are files & directories with a "'''.'''" dot in front of them. Placing a "'''.'''" dot in front of a file or directory tells the operating system that such files & directories are to be hidden from view in file managers, file requesters & such. File managers & other applications can usually be set to view these normally hidden files. These hidden files & directories usually contain configuration files of some sort.


I will refer to these hidden files as ''<.dot>'' files in this article.
These hidden files will be referred to as ''<.dot>'' files in this article.




=Why is it worth knowing about these <.dot> files?=
=Why is it worth knowing about these <.dot> files?=
* These files contain settings/configuration information that will often need to be modified


* It is well worthwhile knowing which <.dot> directories & files in your ~/ directory are valuable in saving you time & effort if you have to reinstall Manjaro due to a hardware failure, corrupt data, user error...
* It is well worthwhile knowing which <.dot> directories & files in your ~/ directory are valuable in saving you time & effort if you have to reinstall Manjaro due to a hardware failure, corrupt data, user error...
Line 20: Line 18:


=So, what do these <.dot> files in my /home do?=
=So, what do these <.dot> files in my /home do?=
{{note|<.dot> files are hidden by default.  You usually need to enable them in your file manager or by using '''ls -a'''}}


Looking in your ~/ directory (in a fashion that allows you to see all of the hidden <.dot> directories & files) gives us the ability to identify (& backup) any folders that have config or other customised data for our system, including the DE or WM that we use, as well as our applications.
Looking in your '''~''' directory can identify any folders that have configuration or other customised data for our system, including the DE/WM and applications.
 
Some examples of these are; panels, trays, clocks, text editors, image viewers, pdf viewers & whatever else that has been installed & configured on our system. A quick look in your ''~/.config'' directory will make this clear.
 
 
=Here is a guide to get you going=


The following is a guide built from looking at my custom built Manjaro mongrel Openbox system. It has remnants of tried panels & the lal clock, xbmc & other stuff that I don't use. (Actually I deleted the .xbmc folder as it will never be used again.)
Some examples of these are; panels, trays, clocks, text editors, image viewers, pdf viewers & other applications. A quick look in your '''~/.config''' directory will make this clear.


As far as your hidden files go you don't need all of them for reference or for use by copying directly into your new system. Looking at what's in there critically is a good learning experience as it helps you to become more familiar with your Linux system.


The following are hidden <.dot> directories & files that I would keep from my ~/ (this stands for my /home/<user.name> directory):
=A reference to key <.dot> files=


The following represent some of the most common types of <.dot> files that are found directly in your home folder.  This is not an extensive list but represents some of the most common items.


==Directories==
==Directories==


'''.config''' - you can drop this whole directory into your new distro as it keeps settings for any apps, DE/WM that you have been using in your previous distro. (Some apps stick their settings elsewhere so have a look in your ~/ for any of them that I miss here.)
'''.cache''' - Contains cached application files.  Keep an eye on this folder as sometimes application caches can grow over time.


'''.config''' - This is where most modern applications keep user specific configuartion.  This is the first place you should look for application related configuration files.
Also, it is worth noting that any config files in this directory will have absolutely no effect if the program that they belong to is not installed on your machine. ''So orphan config files pose absolutely no danger''.
Also, it is worth noting that any config files in this directory will have absolutely no effect if the program that they belong to is not installed on your machine. ''So orphan config files pose absolutely no danger''.


'''.gimp-2.8''' - if you are a gimp user (version may differ).
'''.local''' - Holds a user specific version of '''/usr/local'''. Most notably application launchers can be found in '''.local/share/applications'''
 
'''.griffith''' - for those that use the griffith movie database.
 
'''.mozilla &/or .moonchild productions''' - instead of copying out the contents of the alphanumeric directory & replacing the contents of a different named alphanumeric directory in another system install or other machine. All done 'cause you want to save yourself all of the time it takes to set up your browser (Firefox or Pale Moon) to be just the way you like it. You can instead us the absolutely brilliant add-on called '''FEBE''', you'll find it here: [http://softwarebychuck.com/febe/febe.html]
If I've done nothing else helpful for you in my time, this here little add-on really should make you grateful. :)
 
It can even backup whatever parts of your Firefox/Pale Moon systems for you on a recurring basis. Check out FEBE, you'll wonder how you ever lived without it. After you have installed you'll find it in the '''Tools''' menu. (If nothing else you can have it backup your Bookmarks once a week/month/whenever.)


'''.ssh''' -makes networking easier, more secure and better.
'''.mozilla''' - Configuration data for Firefox
'''.themes''' - if you have a favourite or one that you have built or modified, then you most definitely want this folder.


'''.wallpaper''' - if you use feh to create a slideshow of your desktop backgrounds.
'''.ssh''' - ssh keys, known hosts and other per user ssh configuration


'''.worker''' - this holds the all important & oft laboured over ~/.worker/config file, which is one you never want to do twice.
'''.steam''' - Data, config and game files for Valve's Steam platform


'''.xbmc''' - if you are one who uses this software you will be wanting this important directory.


==Files==
==Files==


'''.Xdefaults''' - if you use the lal clock, or some other app needs this file then grab it. It doesn't exist on most systems.
'''.bash_profile & .bashrc''' - Per user configuration for '''bash'''
 
'''.bash_profile''' - is worth bringing along for reference at least. I modify this file so that my machine boots straight to my Openbox desktop without needing to login. I've also modified my user search path using this file & set my user default Terminal editor here.
 
'''.bashrc''' - if you modify your .bashrc you won't let this one escape your attention. My .bashrc is a monster (in size that is).
 
'''.conkyrc''' - if you use conky & any other files or directories that you may have that are associated with your conky.
 
'''.fehbg''' - if you use feh for your desktop background.
 
'''.gtickrc''' - if you use the gtick metronome, it has your settings held here.
 
'''.mtpaint''' - holds the mtpaint user config.
 
'''.pypanelrc''' - for anyone using the pypanel, here's your config.
 
'''.stalonetrayrc''' - holds its config here.


'''.xinitrc''' - a very useful file for some of us, so it is worth keeping hold of as it is used to start a variety of things in conjunction with the startx command.  
'''.xinitrc''' - If it is present in a user's home directory, startx and xinit execute it. Otherwise startx will run the default /etc/X11/xinit/xinitrc.


It is certainly useful for reference, but is not necessarily a good candidate to overwrite an existing .xinitrc that has been installed by a different distro, or the same distro that is using a different DE/WM. So be careful with what you do with this one.
'''.zshrc''' - Per user configuration for '''zsh'''




==When changing distros==  
==Re-using '''/home'''==  




Line 93: Line 62:
:'''1.''' Permission problems (if they are using a different user name for example).
:'''1.''' Permission problems (if they are using a different user name for example).


:'''2.''' They have a mixture of hidden <.dot> files from both distros in their ~/ partition.
:'''2.''' They have a mixture of hidden <.dot> files from multiple distros in '''/home'''
 
 
No 2. above may understandably set off warning bells with some readers. .xinitrc is the prime candidate to cause trouble. So heed the warning I attached to that one previously. .bashrc may sometimes have something specific to a distro that you may desire.
 
This is OK, because you can combine what you want from one .bashrc with another & customise to suit yourself. When in doubt merge the two of them. As you learn more about bash you may go in & strip out some duplication (it is harmless if it exists anyway).


The following files ''may sometimes'' have something that is either useful (you may want to use it) or more rarely something important: '''.Xdefaults .Xresources .bash_profile .bashrc .conkyrc .xinitrc'''


So if in doubt, don't overwrite these files in an installation of a different distro, or If you are using the same distro with a different DE/WM. Do a little research on anything you are unsure about. The Manjaro team have gone along way towards removing the above problems, (including the permission problem) as can be read here: '''[http://wiki.manjaro.org/index.php/Partitioning_Overview_and_Existing_Partition_Tables#Where_Using_an_Existing_Linux_Partition_Table]'''
Before trying to re-use an existing '''/home''' be sure to review '''[Partitioning_Overview_and_Existing_Partition_Tables#Where_Using_an_Existing_Linux_Partition_Table]'''


{{note|If you happen to have any important hidden <.dot> files before you use the above linked to Manjaro method; know that they will be overwritten.}}
{{note|If you happen to have any important hidden <.dot> files before you use the above linked to Manjaro method; know that they will be overwritten.}}


 
When coping <.dot> files from one '''/home''' to another, it is important to be selective, especially when doing so between different distros or different versions of the same distro.  For example, it is unwise to copy an entire '''~/.config''' over but perfectly safe to bring over many of the files within it on an application by application basis.
==Deleting ALL <.dot> directories/files from your ~/==
 
{{Warning|Use the following method '''very carefully''', as it will delete all hidden <.Dot> files inside of whichever directory it is used!}}
 
{{tip|To be sure that you are in your ~/ directory, from inside of the Terminal, hold down the <Shift Key> & then hit the <~ key>, found in the top left area of your keyboard.}}
 
 
With this in mind, my method (which is not distro specific) is to have all of the important hidden <.dot> files & directories backed up into a different directory in the /home partition (though off of the machine is the best policy). Then just prior to installing the new distro I delete all of the hidden <.dot> files using a very powerful bash command in the Terminal. The following command will remove all of the hidden <.dot> files & directories from inside of the current directory:
 
  sudo rm –rf .??*
 
 
The option '''–rf''' & the use of '''.??*''' will delete all hidden files & directories.
 
The initial '''.''' indicates a hidden <.dot> file and the '''??''' match at least two characters to exclude the parent-directory which is '''..''' & to delete everything the '''<nowiki>*</nowiki>''' will match all alphanumeric characters that are used for naming directories & files.
 
 
{{note| If you choose to do the above after running the '''su''' command, be sure that you are still in your '''~/''' directory. As if you have landed in /root you must change directory into your /home/<user.name> directory, or else you will delete all of the /root hidden <.dot> files & not those from ~/ your user home.}}
 
 
=Support=
 
Following is a link to this page's forum counterpart where you can post any related feedback: [https://www.spiralinear.space/thread-346.html]




[[Category:Contents Page]]
[[Category:Contents Page]]
Cookies help us deliver our services. By using our services, you agree to our use of cookies.