I'm using emacs tramp mode to remotely edit files over ssh. The problem is that every time I save the file I'm editing I have to enter my user password. I find that very annoying. How can I write my password only once / editing session?
Ah, from the tramp docs on password caching you can set:
(setq password-cache-expiry nil)
which requires the package password-cache.el.
Also, in the tramp sources, it mentions reading the ssh-agent(1) man page, which shows how to set it up so that you don't have to re-enter passwords (inside, or outside of Emacs):
There are two main ways to get an agent set up: The first is that the agent starts a new subcommand into which some environment variables are exported, eg ssh-agent xterm &. The second is that the agent prints the needed shell commands (either sh(1) or csh(1) syntax can be generated) which can be evalled in the calling shell, eg eval
ssh-agent -s
for Bourne-type shells such as sh(1) or ksh(1) and evalssh-agent -c
for csh(1) and derivatives.
(setq password-cache-expiry nil)
In addition to Trey Jackson's solution, there are a few more ways you can choose:
If you're on a *nix system, you can mount the remote directory with FUSE/SSHFS, and therefore you can edit files as they were on the local file system.
Use SSH public key authentication.
Using public key (RSA) authentication is more secure and much more convenient. On a GNU/Linux system (and maybe others, I don't know) you typically would unlock your private key once per login session with a password and then use it.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With