Difference between revisions of "Shell account tutorial"

From the Linux and Unix Users Group at Virginia Teck Wiki
Jump to: navigation, search
imported>Mjh
(Added link to dkm's shell tutorial)
imported>Dmaczka
m (replace ip address to ece2524 VM with ece2524.ece.vt.edu as it is now accessible as such)
Line 12: Line 12:
 
#* For acidburn, come to a meeting and request an account
 
#* For acidburn, come to a meeting and request an account
 
# Connect to the remote machine via SSH
 
# Connect to the remote machine via SSH
#* <code>ssh pid@128.173.88.125</code> for the ECE2524 server (with your actual PID)
+
#* <code>ssh pid@ece2524.ece.vt.edu</code> for the ECE2524 server (with your actual PID)
 
#* <code>ssh user@acidburn.vtluug.org</code> for acidburn
 
#* <code>ssh user@acidburn.vtluug.org</code> for acidburn
 
# Begin a tmux session to allow your console to persist between logins
 
# Begin a tmux session to allow your console to persist between logins

Revision as of 17:31, 31 January 2013

This page is intended for ECE2524 students and others new to the concept of console-based IRC clients.

The ECE department offers shell ccounts on the CVL for Virginia Tech affiliates. Accounts can be created at this page.

The ECE2524 VM (128.173.88.125) can be accessed via SSH for CVL users, and has tmux, mosh, and weechat installed. Acidburn (acidburn.vtluug.org), the VTLUUG shell server, has a few more IRC clients installed, as well as other software and full IPv6 support. The CVL does not have any IRC clients installed, but is useful for general computing (e.g. MATLAB)

One advantage of a shell account is that it allows one to leave an IRC client constantly connected, eliminate join/quit spam, and log missed messages to check later. In order to accomplish this, the IRC client must be run inside either tmux or screen so that it will not be killed when you disconnect from SSH.

Here's the procedure for using either the ECE2524 server or acidburn for IRC:

  1. Create an account, if you haven't already.
    • For the ECE2524 VM, use this page.
    • For acidburn, come to a meeting and request an account
  2. Connect to the remote machine via SSH
    • ssh pid@ece2524.ece.vt.edu for the ECE2524 server (with your actual PID)
    • ssh user@acidburn.vtluug.org for acidburn
  3. Begin a tmux session to allow your console to persist between logins
    • user@ece2524:~$ tmux
  4. Launch an IRC client
    • user@ece2524:~$ weechat-curses
  5. Now detach from the tmux session to return to a terminal while leaving weechat running
    • ^b-d (that is, press Control-b, then d)
    • Use this whenever you are inside a tmux window and wish to return to a shell
  6. To, reattach to the first tmux seesion, just use tmux a
    • user@ece2524:~$ tmux attach.
    • On subsequent logins, this should be the only command you need to execute to return to IRC

Check out the tmux and screen cheat sheet for a quick reference of some of the other tmux commands. An additional command that might be useful is tmux list-sessions.

Mosh is another helpful tool you may want to use for high-latency or mobile (e.g. wifi) connections. You also may want to look into zsh, an alternative to bash with more features.

Random Bash tips

  • Tab completion exists on lots of things in your shell. For example, try "cd /" and then "cd /home/<TAB>" and it will autocomplete. It also exists in weechat for users' nicks.
  • Man pages are a helpful way to get usage information on commands. For example, run "man mv" in a terminal for usage information on mv. You can use PgUp/PgDn to scroll. Inside a man page, you can search using the "/" key. For example, to search "mv" for "existing file", type "/existing file" and hit enter to highlight all occurances and jump to the first one.
  • Inside a terminal, the up and down arrows can be used to recall the previous and next commands respectively, to prevent retyping long commands if you make a mistake.
  • Ctrl-D is the universal "end-of-file" command, and can be used to logout of shells
  • Ctrl-C is the universal interrupt command, and can be used to kill running terminal jobs and clear your currently-typed command (rather than holding down backspace).

Troubleshooting

If you get an error like "ssh_exchange_identification: Connection closed by remote host", a few things are likely:

  • Your username/password combination is incorrect
  • You (or someone using your IP address) have had too many failed login attempts, and fail2ban or a similar utility has banned you for a period of time, typically a week or so.
    • This is easy to identify because ssh fails before you are prompted for a password.
    • If this happened on a CVL machine, try connecting to a different node like ssh pid@cvl10.ece.vt.edu

External Links