From Debian.org:
The Debian Project is an
association of individuals who have made common cause to create a free
operating system.
This operating system that we have created is called Debian GNU/Linux, or simply
Debian for short.
An operating system is the
set of basic programs and utilities that make your computer run. At the core of
an operating system is the kernel. The kernel is the most fundamental program on
the computer and does all the basic housekeeping and lets you start other
programs.
Debian systems currently
use the Linux kernel. Linux is a piece of software started by Linus Torvalds and
supported by thousands of programmers worldwide.
However, work is in
progress to provide Debian for other kernels, primarily for the Hurd. The Hurd
is a collection of servers that run on top of a microkernel (such as Mach) to
implement different features. The Hurd is free software produced by the
GNU project.
A large part of the basic
tools that fill out the operating system come from the GNU project; hence the
names: GNU/Linux and GNU/Hurd. These tools are also free.
Of course, the thing that
people want is application software: programs to help them get what they want to
do done, from editing documents to running a business to playing games to
writing more software. Debian comes with over 8710 packages (precompiled
software that is bundled up in a nice format for easy installation on your
machine) — all of it free.
It's a bit like a tower.
At the base is the kernel. On top of that are all the basic tools. Next is all
the software that you run on the computer. At the top of the tower is Debian —
carefully organizing and fitting everything so it all works together.
I think this is a question
that many people ask when starting out in linux: Why use Debian? Why not the
other
bazillion distros? Well, following are some links to help with that. This might be
considered advocacy, but i think its good to put in the wiki since these
articles aren't all that one sided:
A post from
Debian Universe
explains:
If you've been poking
around the Debian universe you've probably heard references to things like
Woody, Testing, Stable and Sid. Some Debian users say they run Woody, some say
they run Potato, some say they run Testing. Pretty confusing, what's it all
supposed to mean?
The Release Scheme
One of the big strengths
of Debian is that it uses a 3-tier release scheme. Most distros have a current
numbered release (such as 'RedHat 8.0') where anything older is considered
obsolete and anything newer is hard to access for non-developers. Debian, on the
other hand, uses a rolling release system with 3 current versions plus a growing
number of obsolete versions. It can be a bit confusing at first, so try to stay
with me here! It'll all make sense in a minute, I promise.
Each released version is
numbered and given a code name. The code names are characters from the movie Toy
Story, and at the time of writing the releases so far have been v1.1 (Buzz),
v1.2 (Rex), v1.3 (Bo), v2.0 (Hamm), v2.1 (Slink), v2.2 (Potato), v3.0 (Woody),
and v3.1 (Sarge).
The current released
version is generally known as 'Stable', and the current stable at the time of
writing is Sarge (Debian v3.1). If you get an official Debian CD, it will most
likely be Sarge.
The current Stable release
is the first of the three tiers in the Debian release scheme.
Then the next tier is the
current pre-release version of Debian, which is generally known as 'Testing' and
is essentially a continuously maintained candidate for what will eventually
become the next Stable release. The code name for the current Testing is Etch,
which when it is released will be promoted to become the new Stable and will be
given the next release number, probably 3.2.
The final tier is what
developers refer to as 'Unstable', which is where all the hot action takes
place. Code named 'Sid' after the destructive kid in Toy Story that shouldn't be
let out of the house, it's where developers place new and updated packages for
other developers and the more adventurous users to test and help debug. The
Unstable release is not intended for serious use on production machines since it
changes daily and is prone to package breakage while kinks are worked out.
However, many people run Unstable on their main machines and find it's actually
more reliable than other more popular operating systems!
One other special tier
that sits to one side and shouldn't be touched by normal users is
'Experimental', which is where developers put packages that are still under
heavy development and probably won't play nicely if installed on a system in
use. This generally applies to packages that are undergoing major changes such
as to a totally new file format, and are quite likely to cause damage to
existing data if you install them. The packages in Experimental are only for
users who really know what they are doing and are wanting to help test and debug
the very latest bleeding-edge software.
So to sum it up, here's
the current situation:
The best way is to use the
new
debian-installer.
Since the installer is constantly being updated/improved, its sort of useless to
write a guide on it since it will get outdated quickly. However, here are a few
links to help with installation anyways (of course, do look in the
"Documentation" section of the
installer website
first) :
There are plenty of very
detailed Apt guides out there, for a more in depth and detailed guide, check out
the
Apt guide in this
wiki or if you feel that you need to know it all, see the official
debian.org guide
Also, if looking for a gui
for apt, try to install either 'synaptic' or 'aptitude' (apt-get install
synaptic aptitude).
On a side note, to find
the fastest apt-mirrors, see the
apt-spy or the
netselect-apt utility. [Note: 'apt-spy' benchmarks the mirrors, and thus
gives more accurate results but takes longer. 'Netselect-apt' just pings the
mirrors, so its much faster, but not as accurate. If you're looking for a long
term mirror(s), use 'apt-spy']. One drawback to using either method (apt-spy or
netselect-apt) is that although you get a faster mirror, its not guaranteed that
it would be a mirror that is in sync with the "official" debian ones below. So,
in other words, it might or might not have all the updated packages available if
its not in-sync. For getting the best up-to-date results, use the addresses
below in sources.list.
Here's a recommended
/etc/apt/sources.list
for Debian Sid.
##Main Debian
deb http://archive.progeny.com/debian/ unstable main contrib non-free
deb ftp://ftp.us.debian.org/debian/ unstable main contrib non-free
deb http://non-us.debian.org/debian-non-US unstable/non-US main contrib non-free
deb-src http://archive.progeny.com/debian/ unstable main contrib non-free
deb-src http://non-us.debian.org/debian-non-US unstable/non-US main contrib non-free
For mplayer and all the
patent-encumbered codecs, which may not be legally distributable. You'll want to
install
w32codecs
#Mplayer
deb ftp://ftp.nerim.net/debian-marillat/ unstable main
Debian experimental
branch Packages (Use at your own risk)
#Debian experimental
deb http://ftp.us.debian.org/debian ../project/experimental main contrib non-free
To install experimental packages, use the following syntax (after doing 'apt-get update'): :p>
apt-get install -t experimental <package name>
AdAdd the following line if
you want to use php5
deb http://packages.dotdeb.org ./
deb-src http://sources.dotdeb.org ./
For
SELinux
on a 2.6 kernel using unstable, add this line
deb http://www.coker.com.au/newselinux/ ./
If you are using sid with
a 2.4 kernel add this line. *Caution - these packages are no longer being
updated
deb http://www.coker.com.au/oldselinux/ ./
Here's a recommended
/etc/apt/sources.list
for Debian Sarge.
#Main Debian
deb http://archive.progeny.com/debian/ sarge main contrib non-free
deb ftp://ftp.us.debian.org/debian/ sarge main contrib non-free
deb http://non-us.debian.org/debian-non-US sarge/non-US main contrib non-free
deb-src http://archive.progeny.com/debian/ sarge main contrib non-free
deb-src http://non-us.debian.org/debian-non-US sarge/non-US main contrib non-free
FFor mplayer and all the
illegal codes. You'll want to install
w32codecspan>
#Mplayer
deb ftp://ftp.nerim.net/debian-marillat/ sarge main
ForFor a large list of 3rd
party unofficial repositories go to
apt-get.org
Also, if you are running
Debian stable (sarge) and would like to use more recent programs, go to
backports.org
for more information.
You can replicate the
installed packages on one machine to another. This is handy when you want
multiple machines to have the same packages installed. Or if you're setting up a
new machine and want all the old packages from your old machine.
On On the source machine do
dpkg --get-selections | grep '[[:space:]]install$' | awk '{print $1}' > packagelist.txt
then copy packagelist.txt
to the target machine, then run this on the target machine
apt-get -uf install `cat packagelist.txt`
To update packages in
Debian, first update the local list of available packages:
apt-get updatep>
Then upgrade your packages
based on this updated list:
apt-get upgrade
YouYou might sometimes see
people recommending apt-get dist-upgrade for upgrades. Dist-upgrade is intended
for use when one is migrating from one Debian repository to another, such as
from Debian stable to Debian unstable. This is because dist-upgrade disregards
any packages that might be held back due to dependency issues, new dependencies
that need to be installed, or packages that need to be removed (often because
they are replaced by new packages). This type of issue will usually occur when
moving from one repository to another, so dist-upgrade purposely disregards
those safeguards to smooth the migration.
When upgrading a system,
dist-upgrade ends up disregarding those holds that protect you from upgrading a
package prematurely. If you notice that a package is held back when you are
upgrading, after the upgrade is finished attempt to apt-get install that package
by itself and note why the package was held back. It might just be that the
package has a new dependency that must be installed. Usually it's safe to
proceed in that case. In the case that a package is held back because other
required packages haven't been updated yet, just wait a few days for those
packages to be upgraded. In the case that a package requires a dependency to now
be removed, you might want to check with bugs.debian.org before upgrading.
In any of these cases,
installing held back packages by themselves ensures that should something break
after an install, that the cause is easier to track down.
This article is in need of
attention.
Please improve it and then
remove this notice.
ManMany might ask what is the
X Window System? It is the base of your GUI. Unless you plan to use the machine
without a GUI e.g. text based it is generaly a good idea to install it. get root
access
su
it will ask for the
administrator password
apt-get install x-window-system-core
and answer Y to the
question Answer the questions the dialog asks about your system and how you want
it setup. That's it for installing X. Check it out by running startx if you
want. Its nothing special so if you want something beefier then you can use
apt-get to install it. To get out of X, press crtl+alt+F1 to go back to the
command prompt. For light weight systems as in the machine your running has a
sub P3 and is equal to or less then 128MB RAM its best to install fluxbox
apt-get install fluxbox
To run fluxbox you just
type
fluxbox
at the command prompt For more powerful systems, GNOME is a fairly nice desktop environment p>
apt-get install gnome
AnsAnswer the questions the
dialog asks about your setup. If it asks you what the default desktop manager
should be, select gdm I would suggest a desktop manager for signing in to your
system
apt-get install gdm
now just type
gdm
and you'll be brought up
to a graphical login screen. When you login you get into the Gnome GUI or what
ever is the default GUI. Don't worry this will be setup as your defaul means of
login from now on. Next time you start up the machine and goes through the boot
sequence it will take you to this login screen.
The method briefly
outlined in this section was adapted directly from the excellent
Java page
from serios.net, and you should read the page carefully if you run into any
problems. I've outlined the quick process, but there is extensive
troubleshooting information in the origional page.
In short, Sun's license doesn't allow the redistribution of binary packages (for their own, crazy reasons), so you have to create your own Java package, which is very simple. p>
# apt-get install java-package fakeroot
$ fakeroot make-jpkg jre-1_5_0_01-linux-i586.bin
# dpkg -i sun-j2re1.5_1.5.0+update01_i386.deb
# apt-get install sun-j2re1.5debianp>
Running the first command
may give you an error, but that's OK, just do the second one. If you are still
worried about the error from the first file, you can make sure everything is
fixed via:
# apt-get -f install
That's it! Check to make
sure everything worked like you expected by checking the -version, which should
give you something like:
$ java -version
java version "1.5.0_01"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_01-b08)
JavJava HotSpot(TM) Client VM (build 1.5.0_01-b08, mixed mode, sharing)
Note that you can copy
the java .deb file you created to other machines you own, so you only need to
run the last two commands on those boxes. Simplicity itself!
On my machines,
everything worked automagically (Firefox 1.0 and Konqueror 3.3.2). Your mileage
may vary, and I refer you to the origional link above for additional
information.
ThiThis is a prepackaged java
.deb from some random stranger.
Download the Java SDK (Debian
Package 59MB)
http://davyd.ucc.asn.au/projects/misc/sun-j2sdk1.5_1.5.0_i386.deb
Install the SDK with
dpkg -i
sun-j2sdk1.5_1.5.0_i386.deb
It will complain of
unresolved dependancies, so
apt-get
install sun-j2sdk1.5debian
, make sure you have
contrib
in your sources.list.
This article is in need of
attention. pan>
PlePlease improve it and then
remove this notice.
There are a variety of
ways you can configure interfaces in Debian.
First of all, don't forget to put in an 'auto' stanza, to bring up your interfaces automatically. p>
auto eth0
TheThen pick the right method
used for the network you are in, to configure your ip-address
Dynamic with DHCPpan>
iface eth0 inet dhcp
staticpan>
iface eth0 inet static
address 1.2.3.4
netmask 255.255.255.0
network 1.2.3.0
broadcast 1.2.3.255
gateway 1.2.3.1
Wireless w/WEPpan>
iface eth0 inet dhcp
wireless_mode managed
wireless_nick my_nick
wireless_essid not_default
wireless_key open "my_sekrit_key"
wireless_rate auto
Another Way to Wireless(tm)pan>
<
iface eth0 inet dhcp
pre-up iwconfig eth0 essid "not_default"
Secondary addresses (for applications, for instance)
iface eth0:1 inet static
address 1.2.3.5
netmask 255.255.255.0
network 1.2.3.0
broadcast 1.2.3.255
gateway 1.2.3.1
up /etc/init.d/bind9 start # start dns server on starting interface
up route add -net 1.2.4.0/24 gw 1.2.3.111 # add static routes
up route add -net 1.2.5.0/24 gw 1.2.3.112
down /etc/init.d/bind9 stop # stop dns server on stopping interface
down route del -net 1.2.4.0/24 gw 1.2.3.111 # remove static routes
down route del -net 1.2.5.0/24 gw 1.2.3.112
or
iface eth0:2 inet dhcp
(unlikely) or
iface lo:1 inet dhcp
(for VPN's, not tested)
DonDon't forget your auto stanza!
Retrieved from "Debian"