Difference between revisions of "Power User Tools"
|  (→Reverse SSH) | |||
| Line 32: | Line 32: | ||
| The <code>ssh</code> command has a <code>-R</code> option that can be used to allow ssh access to a computer that does not have a public, static IP address (such as a computer behind a NAT at home) using another | The <code>ssh</code> command has a <code>-R</code> option that can be used to allow ssh access to a computer that does not have a public, static IP address (such as a computer behind a NAT at home) using another | ||
| − | computer that does have a public IP  | + | computer that does have a public IP Address. | 
| + | |||
| + | Assume you have two computers, <code>Public</code> and <code>Private</code>. <code>Public</code> has a public, static IP address, and you have ssh access to it. <code>Private</code> is a computer that sits behind your home router, and cannot be accessed from the outside. On <code>Private</code>, run the following command: | ||
Revision as of 19:56, 3 May 2017
Managing configs with vcsh
vcsh [1] is a utility that allows you to create multiple git repositories to store configuration files in your home directory.
It solves the problem of having to use symlinks, and is a very nice tool. It works well with another tool named mr [2] that allows
you to synchronize all of your config repos with a single command.
Common Tasks
Adding new repo
Let say you want to add a repo for tracking your zsh configuration.
First, create a gitignore file for the repo so you can just do git add .
> vim ~/.gitignore.d/zsh ...
Add the following lines
/* !/.zsh
Now create the repository and push to a remote
> vcsh init zsh # create the repo > vcsh zsh add . # add all files not masked by ~/.gitignore.d/zsh > vcsh zsh commit # commit files > vcsh zsh remote add origin ssh://user@host/repo/with/write/access # create remote repo > vcsh zsh push --set-upstream origin master # push to the origin and setup tracking
Reverse SSH
The ssh command has a -R option that can be used to allow ssh access to a computer that does not have a public, static IP address (such as a computer behind a NAT at home) using another
computer that does have a public IP Address.
Assume you have two computers, Public and Private. Public has a public, static IP address, and you have ssh access to it. Private is a computer that sits behind your home router, and cannot be accessed from the outside. On Private, run the following command:
