on ebbafa3 help sign in
115 lines 5.1 kB history raw
1---
2next: true
3sort: 1
4title: Basic operation
5---
7# Basic operation
9<div class="row">
10<div class="col-md-8">
12Here we'll cover the basic administrative tasks you'll encounter running your Urbit and the primary interfaces to control it.
14</div>
15</div>
17## Shutdown
19You can turn your Urbit off with `^D` from the `:talk` or `:dojo` prompts.
21## Restart
23To restart your Urbit simply pass the name of your pier:
25 bin/urbit some-planet
27or
29 bin/urbit comet
31## Console
33The Urbit command line is pretty similar to Unix, with a few slight differences. Your Unix terminal is separated into two parts: the prompt (the bottom line) and the record (everything above that).
35The record is shared; all the output from all the apps in your
36command set appears in it. So you'll see `:talk` messages while
37working in the dojo.
39The prompt is multiplexed; you switch the prompting app with
40`^X`. Pressing return sends the prompt line to the app. Urbit
41does not automatically echo your input line into the record,
42the way a normal Unix console does.
44Also unlike a normal Unix console, the application can process
45your input before you hit return. In general, invalid input is
46rejected with a beep. Incorrect input may even be corrected.
48Like many but not all Unix command lines, Urbit has built-in
49history editing. The following emacs-style key bindings are available:
51 ^A cursor to beginning of the line (Home)
52 ^B cursor one character backward (left-arrow)
53 ^E cursor to the end of the line (End)
54 ^F cursor one character forward (right-arrow)
55 ^G beep; cancel reverse-search
56 ^K kill to end of line
57 ^L clear the screen
58 ^N next line in history (down-arrow)
59 ^P previous line in history (up-arrow)
60 ^R reverse-search
61 ^T transpose characters
62 ^U kill to beginning of line
63 ^Y yank from kill buffer
65`^C` is processed at the Unix layer, not within Urbit. If
66there's an event currently running, ^C interrupts it and prints a
67stack trace -- useful for finding infinite loops.
69`^D` from `:talk` or `:dojo` stops your Unix process. From any
70other app, it removes the prompting app from the command set.
72Pressing left-arrow or `^B` at the start of a line is an input
73operation with the metaphorical meaning "get me out of here,"
74ie, escape. The exact semantics of an escape are application
75dependent.
77Full coverage of the Urbit shell is covered in the [Shell walkthrough](/docs/walkthroughs/dojo).
79## Web
81On startup Urbit tries to bind to `localhost:8080`. If you're already running something on `8080` you'll find your Urbit on `8081`, and so on. For planets only, we also proxy web domains through Urbit's own servers. Any planet `~fintud-macrep` is also at
82`fintud-macrep.urbit.org`. Please use this proxy as little as
83possible; it's not well-optimized.
85Your Urbit serves a simple homepage from `http://localhost:8080` or `https://fintud-macrep.urbit.org` that should be self-explanatory. Locally we don't yet serve HTTPS, but we do serve "secure" HTTPS (meaning it hasn't been audiented) on `8443`. Or `8444` (and so on) if you're already running something on 8443.
87A complete walkthrough of the Urbit web interface is [here](/docs/walkthroughs/web).
89## Moons
91Urbit namespace is distributed by having parent nodes sign the keys for child nodes. If you have a planet your parent star issued your ticket. As a planet you, in turn, can sign the keys for moons. The basic idea is: your planet runs permanently in a data center somewhere and moons run on all your devices. Each planet can issue ~4 billion (`2^32`) moons.
93To generate a random moon from your planet run:
95 ~fintud-macrep:dojo> +moon
97You can use the resulting output in the same installation flow from earlier.
99Moons are automatically synced to their parent `%kids` desk, and can control applications on their parent planet using `|link`. You can read more about those things in the [filesystem](/docs/walkthroughs/filesystem) and [console](/docs/walkthroughs/console) walkthroughs.
101## Moving your pier
103Piers are designed to be portable, but it must be done while the Urbit is turned off. Urbit networking is stateful, so you can't run two copies of the same Urbit in two places.
105To move a pier, simply move the contents of the directory it lives in. To keep these files as small as possible we usually use the `--sparse` option in `tar`. With a pier `fintud-macrep/` something like this (from inside `urbit/`) should work:
107 tar -Scvzf fintud-macrep.tar.gz ./fintud-macrep/
109## Continuity breaches
111While the Urbit network is in this alpha state we sometimes have to reboot the whole network. This happens either when major changes need to be shipped or we hit a bug that can't be fixed over the air.
113Because Urbit networking is stateful we call this a 'continuity breach'. Everything has to be restarted from scratch. Your pier will continue to function, but it wont connect to the rest of the Urbit network.
115When this happens, back up any files you'd like to save, shut down your Urbit and recreate it (as if you were starting for the first time).