Nethence Next Door Labs Laboratory Webmail Your IP BBDock
Next Door Laboratories print | donate | html/css | terms of use
Home | Unix | Windows | Oracle | Hardware | Mechanics | Scripts | Configs

DragonflyBSD post-installation


http://pbraun.nethence.com/doc/sysutils_bsd/dragonflybsd.html

http://pbraun.nethence.com/doc/sysutils_bsd/freebsd.html

http://pbraun.nethence.com/doc/sysutils_bsd/jail.html



Network configuration and sshd

Afer first reboot, you shall enable networking and the ssh daemon.


Define your hostname, ip/mask and gateway,

cd /etc/
vi rc.conf

like,

keymap="fr.iso.acc"
hostname="dfly.example.local"
ifconfig_lnc0="inet 10.1.1.3 netmask 255.255.255.0"
defaultrouter="10.1.1.254"
sshd_enable=yes

note. for a jail guest, use a /32 netmask (just like the ip alias on the jail host)

apply,

rcrestart netif

Define your files and dns name resolutions,

vi hosts
vi resolv.conf

Note. 'hosts: files dns' is configured by default in nsswitch.conf


Configure the ssh daemon to enable logins (dfly only permits without-password namely with authorized keys),

cd /etc/ssh/
cp sshd_config sshd_config.dist
sed '/^#/d; /^$/d;' sshd_config.dist > sshd_config
vi sshd_config

add/change,

PermitRootLogin yes
PasswordAuthentication yes
ChallengeResponseAuthentication yes

apply,

/etc/rc.d/sshd restart

Don't forget to setup root's password,

passwd root

You can now login remotely.



Timezone

Define the timezone,

cd /etc/
ln -sf ../usr/share/zoneinfo/Europe/Paris localtime


A few binary packages and shell installation

Choose a mirror (http://www.dragonflybsd.org/mirrors/). For France, ftp://dfly.nfrance.com/ is fine. Install at least bash and pdksh,

setenv PKG_PATH ftp://dfly.nfrance.com/packages/amd64/DragonFly-2.8.2/stable/All
pkg_radd bash pdksh screen wget lftp vim lynx
cd /bin/
ln -s /usr/pkg/bin/bash
ln -s /usr/pkg/bin/ksh
echo '/bin/bash' >> /etc/shells
echo '/bin/ksh' >> /etc/shells
chpass -s /bin/bash
#chpass -s /bin/ksh

Note. ast-ksh (ksh93) isn't always available as binary package (it probably doesn't compile)



Environment

Configure your shell,

cd ~/
mkdir -p .trash/
mv .* .trash/
vi .bash_profile

like,

source $HOME/.bashrc

and,

vi .bashrc

like,

PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:$HOME/bin
export PATH

HOSTNAME=${HOSTNAME:-`uname -n`}
[[ $USER = root ]] && \
PS1='${HOSTNAME%%.*}# ' || \
PS1='${HOSTNAME%%.*}> '

case "$-" in *i*)
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
alias ll='ls -alkF'
#alias vi='vim'
alias reboot='shutdown -r now'

who
;;
esac

# linux
#alias shu='shutdown -P now'

# bsd
alias shu='shutdown -p now'

# pkgsrc
export PATH=$PATH:/usr/pkg/bin:/usr/pkg/sbin
export PKG_PATH=ftp://dfly.nfrance.com/packages/amd64/DragonFly-2.8.2/stable/All

apply immediately,

source .bashrc

You can now re-login remotely to check your shell and environment.



Syslog configuration

Configure the system logs,

cd /etc/
mv syslog.conf syslog.conf.dist
vi syslog.conf

like,

*.*  -/var/log/messages

and secure them,

cd /var/log
chmod 640 messages

apply,

/etc/rc.d/syslogd restart


GNU Screen configuration

Configure GNU Screen (previously installed),

cd /usr/pkg/etc/
wget http://pbraun.nethence.com/code/misc/screenrc
cd /etc/
ln -s /usr/pkg/etc/screenrc
cd ~/
wget http://pbraun.nethence.com/code/misc/.screenrc

apply,

screen


Indexing

Generate the locate db,

/usr/libexec/locate.updatedb

While indexing is going on, and since gnu screen is configured, you can continue in another window. Nevermind, on dfly it's freaking fast, anyway.



Crontab configuration

Disable 'at',

vi /etc/crontab

comment that line,

#*/5 * * * * root /usr/libexec/atrun


Additional notes

pkgsrc from source

Fetch the intial pkgsrc repository from the net,

cd /usr/
make pkgsrc-create

Note. to update,

make pkgsrc-update

thttpd installation

Install and configure thttpd,

pkg_radd thttpd
cp /usr/pkg/share/examples/rc.d/thttpd /etc/rc.d/
rm -f /usr/pkg/share/thttpd/index.html
#mv -f /usr/pkg/share/thttpd/index.html /usr/pkg/share/thttpd/index.html.dist
cd /etc/
ln -s ../usr/pkg/etc/thttpd.conf
echo 'thttpd_enable=yes' >> rc.conf

apply,

/etc/rc.d/thttpd restart


References

http://www.dragonflybsd.org/docs/newhandbook/

http://wiki.dragonflybsd.org/



Last update: Jan 08, 2011
Copyright © 2007-2013 Pierre-Philipp Braun