| 1 | Having trouble using fetch through a firewall? Try setting the environment |
| 2 | variable FTP_PASSIVE_MODE to yes, and see fetch(3) for more details. |
| 3 | % |
| 4 | By pressing "Scroll Lock" you can use the arrow keys to scroll backward |
| 5 | through the console output. Press "Scroll Lock" again to turn it off. |
| 6 | % |
| 7 | Want colour in your directory listings? Use "ls -G". "ls -F" is also useful, |
| 8 | and they can be combined as "ls -FG". |
| 9 | % |
| 10 | If you'd like to keep track of applications in the pkgsrc tree, take a look |
| 11 | at pkgsrc.se; |
| 12 | |
| 13 | http://www.pkgsrc.se/ |
| 14 | % |
| 15 | To search for files that match a particular name, use find(1); for example |
| 16 | |
| 17 | find / -name "*GENERIC*" -ls |
| 18 | |
| 19 | will search '/', and all subdirectories, for files with 'GENERIC' in the name. |
| 20 | -- Stephen Hilton <nospam@hiltonbsd.com> |
| 21 | % |
| 22 | In tcsh, you can `set autolist' to have the shell automatically show |
| 23 | all the possible matches when doing filename/directory expansion. |
| 24 | % |
| 25 | You can `set autologout = 30' to have tcsh log you off automatically |
| 26 | if you leave the shell idle for more than 30 minutes. |
| 27 | % |
| 28 | If you `set filec' (file completion) in tcsh and write a part of the |
| 29 | filename, pressing TAB will show you the available choices when there |
| 30 | is more than one, or complete the filename if there's only one match. |
| 31 | % |
| 32 | You can press up-arrow or down-arrow to walk through a list of |
| 33 | previous commands in tcsh. |
| 34 | % |
| 35 | You can disable tcsh's terminal beep if you `set nobeep'. |
| 36 | % |
| 37 | If you `set watch = (0 any any)' in tcsh, you will be notified when |
| 38 | someone logs in or out of your system. |
| 39 | % |
| 40 | Nice tcsh prompt: set prompt = '%m %# ' |
| 41 | % |
| 42 | Nice tcsh prompt: set prompt = '%n@%m%# ' |
| 43 | % |
| 44 | Nice tcsh prompt: set prompt = '%n@%m:%~%# ' |
| 45 | % |
| 46 | Nice tcsh prompt: set prompt = '%n@%m:%/%# ' |
| 47 | % |
| 48 | Nice tcsh prompt: set prompt = '[%B%m%b] %B%~%b%# ' |
| 49 | % |
| 50 | Simple tcsh prompt: set prompt = '%# ' |
| 51 | % |
| 52 | If you want df(1) and other commands to display disk sizes in |
| 53 | kilobytes instead of 512-byte blocks, set BLOCKSIZE in your |
| 54 | environment to 'K'. You can also use 'M' for Megabytes or 'G' for |
| 55 | Gigabytes. If you want df(1) to automatically select the best size |
| 56 | then use 'df -h'. |
| 57 | % |
| 58 | To change an environment variable in tcsh you use: setenv NAME "value" |
| 59 | where NAME is the name of the variable and "value" its new value. |
| 60 | % |
| 61 | To change an environment variable in /bin/sh use: |
| 62 | |
| 63 | $ VARIABLE="value" |
| 64 | $ export VARIABLE |
| 65 | % |
| 66 | You can use /etc/make.conf to control the options used to compile software |
| 67 | on this system. Example entries are in |
| 68 | /etc/defaults/make.conf. |
| 69 | % |
| 70 | To do a fast search for a file, try |
| 71 | |
| 72 | locate filename |
| 73 | |
| 74 | locate uses a database that is updated every Saturday (assuming your computer |
| 75 | is running DragonFly BSD at the time) to quickly find files based on name only. |
| 76 | % |
| 77 | In order to search for a string in some files, use 'grep' like this: |
| 78 | |
| 79 | grep "string" filename1 [filename2 filename3 ...] |
| 80 | |
| 81 | This will print out the lines in the files that contain the string. grep can |
| 82 | also do a lot more advanced searches - type 'man grep' for details. |
| 83 | % |
| 84 | You can use the 'fetch' command to retrieve files over ftp or http. |
| 85 | |
| 86 | fetch http://www.dragonflybsd.org/ |
| 87 | |
| 88 | will download the front page of the DragonFly BSD web site. |
| 89 | % |
| 90 | In order to make fetch (the DragonFly BSD downloading tool) ask for |
| 91 | username/password when it encounter a password-protected web page, you can set |
| 92 | the environment variable HTTP_AUTH to 'basic:*'. |
| 93 | % |
| 94 | You can permanently set environment variables for your shell by putting them |
| 95 | in a startup file for the shell. The name of the startup file varies |
| 96 | depending on the shell - csh and tcsh uses .login, bash, sh, ksh and zsh use |
| 97 | .profile. When using bash, sh, ksh or zsh, don't forget to export the |
| 98 | variable. |
| 99 | % |
| 100 | If you are running xterm, the default TERM variable will be 'xterm'. If you |
| 101 | set this environment variable to 'xterm-color' instead, a lot of programs will |
| 102 | use colors. You can do this by |
| 103 | |
| 104 | TERM=xterm-color; export TERM |
| 105 | |
| 106 | in Bourne-derived shells, and |
| 107 | |
| 108 | setenv TERM xterm-color |
| 109 | |
| 110 | in csh-derived shells. |
| 111 | % |
| 112 | If you do not want to get beeps in X11 (X Windows), you can turn them off with |
| 113 | |
| 114 | xset b off |
| 115 | % |
| 116 | You can look through a file in a nice text-based interface by typing |
| 117 | |
| 118 | less filename |
| 119 | % |
| 120 | The default editor in DragonFly BSD is vi, which is efficient to use when you |
| 121 | have learned it, but somewhat user-unfriendly. To use ee (an easier but less |
| 122 | powerful editor) instead, set the environment variable EDITOR to /usr/bin/ee |
| 123 | % |
| 124 | If you accidently end up inside vi, you can quit it by pressing Escape, colon |
| 125 | (:), q (q), bang (!) and pressing return. |
| 126 | % |
| 127 | You can use aliases to decrease the amount of typing you need to do to get |
| 128 | commands you commonly use. Examples of fairly popular aliases include (in |
| 129 | bourne shell style, as in /bin/sh, bash, ksh, and zsh): |
| 130 | |
| 131 | alias lf="ls -FA" |
| 132 | alias ll="ls -lA" |
| 133 | alias su="su -m" |
| 134 | |
| 135 | In csh or tcsh, these would be |
| 136 | |
| 137 | alias lf ls -FA |
| 138 | alias ll ls -lA |
| 139 | alias su su -m |
| 140 | |
| 141 | To remove an alias, you can usually use 'unalias aliasname'. To list all |
| 142 | aliases, you can usually type just 'alias'. |
| 143 | % |
| 144 | In order to support national characters for european languages in tools like |
| 145 | less without creating other nationalisation aspects, set the environment |
| 146 | variable LC_ALL to 'en_US.ISO8859-1'. |
| 147 | % |
| 148 | You can search for documentation on a keyword by typing |
| 149 | |
| 150 | apropos keyword |
| 151 | % |
| 152 | Man pages are divided into section depending on topic. There are 9 different |
| 153 | sections numbered from 1 (General Commands) to 9 (Kernel Developer's Manual). |
| 154 | You can get an introduction to each topic by typing |
| 155 | |
| 156 | man <number> intro |
| 157 | |
| 158 | In other words, to get the intro to general commands, type |
| 159 | |
| 160 | man 1 intro |
| 161 | % |
| 162 | DragonFly BSD is started up by the program 'init'. The first thing init does |
| 163 | when starting multiuser mode (ie, starting the computer up for normal use) is |
| 164 | to run the shell script /etc/rc. By reading /etc/rc, you can learn a lot about |
| 165 | how the system is put together, which again will make you more confident about |
| 166 | what happens when you do something with it. |
| 167 | % |
| 168 | If you want to play CDs with DragonFly BSD, a utility for this is already |
| 169 | included. Type 'cdcontrol' then 'help' to learn more. (You may need to set |
| 170 | the CDROM environment variable in order to make cdcontrol want to start.) |
| 171 | % |
| 172 | If you have a CD-ROM drive in your machine, you can make the CD-ROM that is |
| 173 | presently inserted available by typing 'mount /cdrom' as root. The CD-ROM |
| 174 | will be available under /cdrom/. Remember to do 'umount /cdrom' before |
| 175 | removing the CD-ROM (it will usually not be possible to remove the CD-ROM |
| 176 | without doing this.) |
| 177 | |
| 178 | Note: This tip may not work in all configurations. |
| 179 | % |
| 180 | You can install extra packages for DragonFly BSD by using the pkgsrc system. |
| 181 | If you have installed it, you can download, compile, and install software by |
| 182 | just typing |
| 183 | |
| 184 | # cd /usr/pkgsrc/<category>/<package name> |
| 185 | # bmake install clean |
| 186 | |
| 187 | as root. The pkgsrc infrastructure will download the software, change it so |
| 188 | it works on DragonFly BSD, compile it, install it, register the installation |
| 189 | so it will be possible to automatically uninstall it, and clean out the |
| 190 | temporary working space it used. You can remove an installed package you |
| 191 | decide you do not want after all by typing |
| 192 | |
| 193 | # cd /usr/pkgsrc/<category>/<package name> |
| 194 | # bmake deinstall |
| 195 | |
| 196 | as root. |
| 197 | % |
| 198 | Nice bash prompt: PS1='(\[$(tput md)\]\t <\w>\[$(tput me)\]) $(echo $?) \$ ' |
| 199 | -- Mathieu <mathieu@hal.interactionvirtuelle.com> |
| 200 | % |
| 201 | To see the output from when your computer started, run dmesg(8). If it has |
| 202 | been replaced with other messages, look at /var/run/dmesg.boot. |
| 203 | -- Francisco Reyes <lists@natserv.com> |
| 204 | % |
| 205 | You can use "whereis" to locate standard binary, manual page and source |
| 206 | directories for the specified programs. This can be particularly handy |
| 207 | when you are trying to find where in the pkgsrc tree an application is. |
| 208 | |
| 209 | Try "whereis netscape" and "whereis whereis". |
| 210 | -- Konstantinos Konstantinidis <kkonstan@duth.gr> |
| 211 | % |
| 212 | You can press Ctrl-D to quickly exit from a shell, or logout from a |
| 213 | login shell. |
| 214 | -- Konstantinos Konstantinidis <kkonstan@duth.gr> |
| 215 | % |
| 216 | You can use "pkg_info" to see a list of packages you have installed. |
| 217 | -- Konstantinos Konstantinidis <kkonstan@duth.gr> |
| 218 | % |
| 219 | You can change the video mode on all consoles by adding something like |
| 220 | the following to /etc/rc.conf: |
| 221 | |
| 222 | allscreens="80x30" |
| 223 | |
| 224 | You can use "vidcontrol -i mode | grep T" for a list of supported text |
| 225 | modes. |
| 226 | -- Konstantinos Konstantinidis <kkonstan@duth.gr> |
| 227 | % |
| 228 | Any user that is a member of the wheel group can use "su -" to simulate |
| 229 | a root login. You can add a user to the wheel group by editing /etc/group. |
| 230 | -- Konstantinos Konstantinidis <kkonstan@duth.gr> |
| 231 | % |
| 232 | Over quota? "du -s * | sort -n " will give you a sorted list of your |
| 233 | directory sizes. |
| 234 | -- David Scheidt <dscheidt@tumbolia.com> |
| 235 | % |
| 236 | Handy bash(1) prompt: PS1="\u@\h \w \!$ " |
| 237 | -- David Scheidt <dscheidt@tumbolia.com> |
| 238 | % |
| 239 | Ever wonder what those numbers after command names were, as in cat(1)? It's |
| 240 | the section of the manual the man page is in. "man man" will tell you more. |
| 241 | -- David Scheidt <dscheidt@tumbolia.com> |
| 242 | % |
| 243 | "man hier" explains the layout of DragonFly BSD filesystems. |
| 244 | % |
| 245 | "man tuning" has tips on how to improve DragonFly BSD performance. |
| 246 | % |
| 247 | "man firewall" has basic instructions for creating a DragonFly BSD firewall. |
| 248 | % |
| 249 | You can often get answers to your questions about DragonFly BSD by searching |
| 250 | in the DragonFly BSD mailing list archives at |
| 251 | |
| 252 | http://lists.dragonflybsd.org/ |
| 253 | % |
| 254 | You can adjust the volume of various parts of the sound system in your |
| 255 | computer by typing 'mixer <type> <volume>'. To get a list of what you can |
| 256 | adjust, just type 'mixer'. |
| 257 | % |
| 258 | You can automatically download and install binary packages by doing |
| 259 | |
| 260 | pkg_add <URL> |
| 261 | |
| 262 | where you replace <URL> with the URL to the package. This will also |
| 263 | automatically install the packages the package you download is dependent on |
| 264 | (ie, the packages it needs in order to work.) |
| 265 | % |
| 266 | You can make a log of your terminal session with script(1). |
| 267 | % |
| 268 | "man security" gives very good advice on how to tune the security of your |
| 269 | DragonFly BSD system. |
| 270 | % |
| 271 | Want to see how much virtual memory you're using? Just type "swapinfo" to |
| 272 | be shown information about the usage of your swap partitions. |
| 273 | % |
| 274 | pkgsrc/net/netcat package is useful not only for redirecting input/output |
| 275 | to TCP or UDP connections, but also for proxying them. See inetd(8) for |
| 276 | details. |
| 277 | % |
| 278 | If other operating systems have damaged your Master Boot Record, you can |
| 279 | reinstall it with boot0cfg(8). See "man boot0cfg" for details. |
| 280 | % |
| 281 | Need to see the calendar for this month? Simply type "cal". To see the |
| 282 | whole year, type "cal -y". |
| 283 | -- Dru <genesis@istar.ca> |
| 284 | % |
| 285 | Need to quickly return to your home directory? Type "cd". |
| 286 | -- Dru <genesis@istar.ca> |
| 287 | % |
| 288 | To see the last time that you logged in, use lastlogin(8). |
| 289 | -- Dru <genesis@istar.ca> |
| 290 | % |
| 291 | To clear the screen, use "clear". To re-display your screen buffer, press |
| 292 | the scroll lock key and use your page up button. When you're finished, |
| 293 | press the scroll lock key again to get your prompt back. |
| 294 | -- Dru <genesis@istar.ca> |
| 295 | % |
| 296 | To save disk space in your home directory, compress files you rarely |
| 297 | use with "gzip filename". |
| 298 | -- Dru <genesis@istar.ca> |
| 299 | % |
| 300 | To read a compressed file without having to first uncompress it, use |
| 301 | "zcat" or "zmore" to view it. |
| 302 | -- Dru <genesis@istar.ca> |
| 303 | % |
| 304 | To see how much disk space is left on your partitions, use |
| 305 | |
| 306 | df -h |
| 307 | -- Dru <genesis@istar.ca> |
| 308 | % |
| 309 | To see the 10 largest files on a directory or partition, use |
| 310 | |
| 311 | du /partition_or_directory_name | sort -rn | head |
| 312 | -- Dru <genesis@istar.ca> |
| 313 | % |
| 314 | To determine whether a file is a text file, executable, or some other type |
| 315 | of file, use |
| 316 | |
| 317 | file filename |
| 318 | -- Dru <genesis@istar.ca> |
| 319 | % |
| 320 | Time to change your password? Type "passwd" and follow the prompts. |
| 321 | -- Dru <genesis@istar.ca> |
| 322 | % |
| 323 | Want to know how many words, lines, or bytes are contained in a file? Type |
| 324 | "wc filename". |
| 325 | -- Dru <genesis@istar.ca> |
| 326 | % |
| 327 | Need to print a manpage? Use |
| 328 | |
| 329 | man name_of_manpage | col -bx | lpr |
| 330 | -- Dru <genesis@istar.ca> |
| 331 | % |
| 332 | Need to remove all those ^M characters from a DOS file? Try |
| 333 | |
| 334 | col -bx < dosfile > newfile |
| 335 | -- Dru <genesis@istar.ca> |
| 336 | % |
| 337 | Forget what directory you are in? Type "pwd". |
| 338 | -- Dru <genesis@istar.ca> |
| 339 | % |
| 340 | If you are in the C shell and have just installed a new program, you won't |
| 341 | be able to run it unless you first type "rehash". |
| 342 | -- Dru <genesis@istar.ca> |
| 343 | % |
| 344 | Need to leave your terminal for a few minutes and don't want to logout? |
| 345 | Use "lock -p". When you return, use your password as the key to unlock the |
| 346 | terminal. |
| 347 | -- Dru <genesis@istar.ca> |
| 348 | % |
| 349 | Need to find the location of a program? Use "locate program_name". |
| 350 | -- Dru <genesis@istar.ca> |
| 351 | % |
| 352 | Forget how to spell a word or a variation of a word? Use |
| 353 | |
| 354 | look portion_of_word_you_know |
| 355 | -- Dru <genesis@istar.ca> |
| 356 | % |
| 357 | To see the last 10 lines of a long file, use "tail filename". To see the |
| 358 | first 10 lines, use "head filename". |
| 359 | -- Dru <genesis@istar.ca> |
| 360 | % |
| 361 | To see how long it takes a command to run, type the word "time" before the |
| 362 | command name. |
| 363 | -- Dru <genesis@istar.ca> |
| 364 | % |
| 365 | To quickly create an empty file, use "touch filename". |
| 366 | -- Dru <genesis@istar.ca> |
| 367 | % |
| 368 | To find out the hostname associated with an IP address, use |
| 369 | |
| 370 | drill -x IP_address |
| 371 | -- luxh |
| 372 | % |
| 373 | If you use the C shell, add the following line to the .cshrc file in your |
| 374 | home directory to prevent core files from being written to disk: |
| 375 | |
| 376 | limit coredumpsize 0 |
| 377 | -- Dru <genesis@istar.ca> |
| 378 | % |
| 379 | If you need a reminder to leave your terminal, type "leave +hhmm" where |
| 380 | "hhmm" represents in how many hours and minutes you need to leave. |
| 381 | -- Dru <genesis@istar.ca> |
| 382 | % |
| 383 | Need to do a search in a manpage or in a file you've sent to a pager? Use |
| 384 | "/search_word". To repeat the same search, type "n" for next. |
| 385 | -- Dru <genesis@istar.ca> |
| 386 | % |
| 387 | Forget when Easter is? Try "ncal -e". If you need the date for Orthodox |
| 388 | Easter, use "ncal -o" instead. |
| 389 | -- Dru <genesis@istar.ca> |
| 390 | % |
| 391 | Need to see your routing table? Type "netstat -rn". The entry with the G |
| 392 | flag is your gateway. |
| 393 | -- Dru <genesis@istar.ca> |
| 394 | % |
| 395 | Need to see which daemons are listening for connection requests? Use |
| 396 | "sockstat -4l" for IPv4, and "sockstat -l" for IPv4 and IPv6. |
| 397 | -- Dru <genesis@istar.ca> |
| 398 | % |
| 399 | Can't remember if you've installed a certain package or not? Try "pkg_info | |
| 400 | grep package_name". |
| 401 | -- Dru <genesis@istar.ca> |
| 402 | % |
| 403 | Got some time to kill? Try typing "hangman". |
| 404 | -- Dru <genesis@istar.ca> |
| 405 | % |
| 406 | To erase a line you've written at the command prompt, use "Ctrl-U". |
| 407 | -- Dru <genesis@istar.ca> |
| 408 | % |
| 409 | To repeat the last command in the C shell, type "!!". |
| 410 | -- Dru <genesis@istar.ca> |
| 411 | % |
| 412 | Need to quickly empty a file? Use "echo > filename". |
| 413 | -- Dru <genesis@istar.ca> |
| 414 | % |
| 415 | To see all directories on a DragonFly BSD system, type |
| 416 | |
| 417 | ls -R / | more |
| 418 | % |
| 419 | To see the IP addresses currently set on your active interfaces, type |
| 420 | "ifconfig -u". |
| 421 | -- Dru <genesis@istar.ca> |
| 422 | % |
| 423 | To see the MAC addresses of the NICs on your system, type |
| 424 | |
| 425 | ifconfig -a |
| 426 | -- Dru <genesis@istar.ca> |
| 427 | % |
| 428 | You can save your kernel startup configuration with kget(8). The |
| 429 | configuration can be edited at boot time with 'boot -c' command in loader. |
| 430 | See boot(8), loader(8) for details. |
| 431 | % |
| 432 | You can open up a new split-screen window in (n)vi with :N or :E and then |
| 433 | use ^w to switch between the two. |
| 434 | % |
| 435 | sh (the default bourne shell in DragonFly BSD) supports command-line editing. |
| 436 | Just ``set -o emacs'' or ``set -o vi'' to enable it. |
| 437 | % |
| 438 | When you've made modifications to a file in vi(1) and then find that |
| 439 | you can't write it, type ``<ESC>!rm -f %'' then ``:w!'' to force the |
| 440 | write |
| 441 | |
| 442 | This won't work if you don't have write permissions to the directory |
| 443 | and probably won't be suitable if you're editing through a symbolic link. |
| 444 | % |
| 445 | If you want to quickly check for duplicate package/port installations, |
| 446 | try the following pkg_info command. |
| 447 | |
| 448 | pkg_info | sort | sed -e 's/-[0-9].*$//' | \ |
| 449 | uniq -c | grep -v '^[[:space:]]*1' |
| 450 | % |
| 451 | Want to use sed(1) to edit a file in place? Well, to replace every 'e' with |
| 452 | an 'o', in a file named 'foo', you can do: |
| 453 | |
| 454 | sed -i.bak s/e/o/g foo |
| 455 | |
| 456 | And you'll get a backup of the original in a file named 'foo.bak', but if you |
| 457 | want no backup: |
| 458 | |
| 459 | sed -i '' s/e/o/g foo |
| 460 | % |
| 461 | You can automatically install binary packages from a random DragonFly BSD |
| 462 | mirror with the following command: |
| 463 | |
| 464 | pkg_radd <package> |
| 465 | |
| 466 | This command also takes care about possible dependencies. See the man page |
| 467 | for further information. |
| 468 | % |
| 469 | By default pkg_radd(1) downloads all packages from a random DragonFly BSD mirror. |
| 470 | To use a particular mirror set the BINPKG_SITES environment variable |
| 471 | accordingly. |
| 472 | |
| 473 | Example: |
| 474 | |
| 475 | setenv BINPKG_SITES ftp://<mirror>/pub/DragonFly/packages |
| 476 | |
| 477 | or if you use a bourne compatible shell: |
| 478 | |
| 479 | export BINPKG_SITES=ftp://<mirror>/pub/DragonFly/packages |
| 480 | |
| 481 | % |
| 482 | If you want to search for a particular package, use pkg_search(1): |
| 483 | |
| 484 | pkg_search <package> |
| 485 | |
| 486 | If you do not have a pkgsrc tree installed, pkg_search(1) will automatically |
| 487 | fetch a list of available binary packages for you. |
| 488 | % |
| 489 | To get a detailed description of a particular pkgsrc package: |
| 490 | |
| 491 | pkg_search -s <package> |
| 492 | |
| 493 | Note: You need a full installation of the pkgsrc tree to make this work. |
| 494 | % |
| 495 | Getting the latest pkgsrc tree in DragonFly BSD is fairly simple: |
| 496 | |
| 497 | cd /usr |
| 498 | make pkgsrc-create |
| 499 | |
| 500 | If you want to update your pkgsrc installation issue: |
| 501 | |
| 502 | cd /usr |
| 503 | make pkgsrc-update |
| 504 | % |
| 505 | To download the DragonFly BSD git repository into /usr/src, issue: |
| 506 | |
| 507 | cd /usr |
| 508 | make src-create |
| 509 | |
| 510 | To update the DragonFly BSD git repository in /usr/src, issue: |
| 511 | |
| 512 | cd /usr |
| 513 | make src-update |
| 514 | % |
| 515 | After enabling a service in rc.conf(5), you can use the rc* commands to |
| 516 | start/stop/reload the service. If you e.g. enabled dntpd(8) in /etc/rc.conf |
| 517 | you can start it with: |
| 518 | |
| 519 | rcstart dntpd |
| 520 | |
| 521 | To stop it: |
| 522 | |
| 523 | rcstop dntpd |
| 524 | |
| 525 | All available commands are listed in rcrun(8). |
| 526 | % |
| 527 | If you look for a small Mail Transfer Agent suited for home and office |
| 528 | use, have a look at the DragonFly Mail Agent (dma): |
| 529 | |
| 530 | man dma |
| 531 | % |
| 532 | dntpd(8) synchronizes your local system clock to one or more external NTP time |
| 533 | sources. To enable dntpd add the following line to your /etc/rc.conf: |
| 534 | |
| 535 | dntpd_enable="YES" |
| 536 | |
| 537 | To start the daemon type: |
| 538 | |
| 539 | rcstart dntpd |
| 540 | % |
| 541 | DragonFly BSD supports variant symlinks. To get more information about this |
| 542 | topic see varsym(1) and varsym(2). You will have to enable varsyms by |
| 543 | executing "sysctl vfs.enable_varsym=1", to make it permanent put it in |
| 544 | /etc/sysctl.conf. If you would like permanent varsyms, add varsym_enable=YES |
| 545 | to /etc/rc.conf and put varsym assignments in /etc/varsym.conf. |
| 546 | % |
| 547 | "man build" gives very good advice on how to build the DragonFly BSD system. |
| 548 | % |
| 549 | Use wmake(1) to build any element within the DragonFly BSD source tree using |
| 550 | a buildworld environment. The wmake utility will accept all options and |
| 551 | arguments that make(1) accepts. |
| 552 | % |
| 553 | If you would like easy access to your files as they looked yesterday, or a |
| 554 | month ago, try the HAMMER file system. See "man HAMMER" for more details. |
| 555 | Historical file contents is typically accessed via snapshots, typically |
| 556 | /var/hammer/root/snap-<date>-<time>, for your root file system. |
| 557 | If you use HAMMER PFSs, then each one will have its own directory as |
| 558 | /var/hammer/<PFS>/snap-<date>-<time>. |
| 559 | % |
| 560 | Using HAMMER PFSs you can define history retention policy per directory tree. |
| 561 | For example, if /home/userA and /home/userB are two PFSs, you can configure that |
| 562 | history is saved 90 days for /home/userA and 30 days for /home/userB. If at |
| 563 | some point many big changes are made, and you would like to recover some of the |
| 564 | space that the history occupies, you can delete history selectively on a per PFS |
| 565 | basis. For example history can be deleted for /home/userA so it only covers 14 |
| 566 | days, or granularity can be changed to one week from default of one day. Both |
| 567 | without changing amount of history saved for /home/userB. See "man HAMMER" for |
| 568 | details. |
| 569 | % |
| 570 | For an example of setting up a HAMMER file system, see |
| 571 | /usr/share/examples/rconfig/hammer.sh. See also "man HAMMER". |
| 572 | % |
| 573 | HAMMER file systems can be efficiently replicated to another system, replication |
| 574 | includes history, so you can access snapshots on the replica. Just make a PFS |
| 575 | for the directory, SRC, you would like to replicate, and use: |
| 576 | |
| 577 | hammer mirror-copy SRC DEST |
| 578 | |
| 579 | DEST can be created on the fly, it must be a slave PFS, and will be read-only. |
| 580 | See "man HAMMER" for details. |