Scheduled Maintenance: We are aware of an issue with Google, AOL, and Yahoo services as email providers which are blocking new registrations. We are trying to fix the issue and we have several internal and external support tickets in process to resolve the issue. Please see: viewtopic.php?t=158230

 

 

 

Beginner's Guide

New to Debian (Or Linux in general)? Ask your questions here!
Message
Author
beginners-guide
Forum Account
Forum Account
Posts: 68
Joined: 2010-12-20 19:18
Been thanked: 4 times

Desktop environments

#21 Post by beginners-guide »

6) Desktop environments:

Under Windows and Mac OS you have a very limited choice as to your desktop environment (the actual interface displayed on the screen), DE for short. You get what you're given. It's a monoculture based on their file manager - Windows explorer in Micosoft Windows, and the Finder in Mac OSX.
Under Debian you get choices of several desktop environments, each with their own idea of what a good DE should be. Your choice may be influenced by which one you've used before, what your friends are familiar with, which is most similar to your current OS, or what you want to do and your PC's capabilities. You can forgo a DE altogether, if for example you want to create a server, or have an old PC so use a window manager, instead.
The look, feel and control of a Debian system can depend on many things. It can be extremely complex due to the flexibility of the system, and the users needs. Desktop environment or Window manager, and how they fit together with the huge range of applications and tool-kits, all have a bearing. Even if you choose to have no GUI, the CLI offers an amazing variety of looks and feel. The best place to start for changing the look and feel of your Debian system is the Debian repository's. Always be careful installing anything from other 3rd party external sites. If you have any doubts don't install. See the wiki: DontBreakDebian

Search the repositories first with synaptic, apt or aptitude.

apt search themes
apt search icons
apt search wallpaper

Desktop environments: (DE)
If you downloaded the first Debian DVD, it contains all the most popular desktop environments - Gnome, KDE Plasma, Xfce, LXDE, and LXQt, MATE, and Cinnamon. Check their prospective sites before you decide which one you think is for you. You only need the first DVD to get up and running. Just choose the Desktop you want.

https://en.wikipedia.org/wiki/Compariso ... vironments

GNOME:

From the Gnome site.
"GNOME is easy to use and easy to learn: the usability project team makes sure of it. GNOME has all the software you need every day: games, browser, email, office suite, and more. In addition, excellent Windows file compatibility means you can work with files that Windows users send you, and extensive manuals and help systems mean you're never without resources. "

http://www.gnome.org/
http://en.wikipedia.org/wiki/GNOME
3rd party Themes, Wallpapers, and icon can be found here.
http://gnome-look.org/

KDE:

From the KDE site.
"KDE or the K Desktop Environment, is a network transparent contemporary desktop environment for UNIX workstations. KDE seeks to fulfill the need for an easy to use desktop for UNIX workstations, similar to desktop environments found on Macintosh and Microsoft Windows operating systems."

http://www.kde.org/
http://en.wikipedia.org/wiki/KDE
http://wiki.kde.org
3rd party Themes, Wallpapers, and icon can be found here.
http://kde-look.org/

XFCE:

From the XFCE site.
"About Xfce
"Xfce is a lightweight desktop environment for various *NIX systems. Designed for productivity, it loads and executes applications fast, while conserving system resources." - Olivier Fourdan, creator of Xfce
Xfce 4.6 embodies the traditional UNIX philosophy of modularity and re-usability. It consists of a number of components that together provide the full functionality of the desktop environment. They are packaged separately and you can pick and choose from the available packages to create the best personal working environment. "

http://www.xfce.org/
http://en.wikipedia.org/wiki/Xfce
http://wiki.xfce.org/

3rd party Themes, Wallpapers, and icon can be found here.
http://xfce-look.org/

LXDE:

From the LXDE site.
"The "Lightweight X11 Desktop Environment" is an extremely fast-performing and energy-saving desktop environment. Maintained by an international community of developers, it comes with a beautiful interface, multi-language support, standard keyboard short cuts and additional features like tabbed file browsing. LXDE uses less CPU and less RAM than other environments. It is especially designed for cloud computers with low hardware specifications, such as, netbooks, mobile devices (e.g. MIDs) or older computers. "

http://lxde.org/
http://en.wikipedia.org/wiki/LXDE
http://wiki.lxde.org/en/Main_Page
Other 3rd party Themes, Wallpapers, and icon can be found here.
http://box-look.org/
http://debian-art.org/

LXQT: need to write this section
TBW

MATE:
TBW

Cinnamon:
TBW

back to the table of contents
Last edited by beginners-guide on 2023-02-10 11:47, edited 3 times in total.

beginners-guide
Forum Account
Forum Account
Posts: 68
Joined: 2010-12-20 19:18
Been thanked: 4 times

Window Managers

#22 Post by beginners-guide »

7) Window Managers:overview.

A window manager controls the window your GUI applications run in. How you Move ,expand, hide, shrink, them, and how they inter-react with each other. There are three basic types. Compositing, Stacking, and Tiling. Composting tend to be part of a Desktop environment. Some common window-managers you may use are: The "Boxes" blackbox,flux, openbox. Others include icewm, i3, fvwm, Pekfm, Awesome, XMonad. All of these are quite popular with new users, so one of those might be a good start for a window manager.
http://en.wikipedia.org/wiki/Window_managers

A lot of Debian users don't use a full desktop environment like gnome or kde-full (compositing window manager http://en.wikipedia.org/wiki/Compositing_window_manager ). Some prefer to install a smaller version of the desktop environment they like: gnome-core or kde-plasma-desktop. Some prefer installing a window manager. Desktop environments also make use of a window manager (to manage how windows are shown on the screen).
Gnome uses Mutter
KDE uses KWin
Xfce uses Xfwm4
and LXDE uses Openbox
but they also come with a whole environment. It's kind of a comfort, you get all kinds of applications and tools that you need, for example automounting of partitions, a display (login) manager, etc.
When using a window manager on its own, you will need to add the applications and tools that you want yourself.

Installing, configuring, and using window managers standalone is a bit advanced for a beginners guide but there is a good article at Arch wiki.
https://wiki.archlinux.org/title/window_manager



back to the table of content
Last edited by beginners-guide on 2023-02-10 13:39, edited 3 times in total.

beginners-guide
Forum Account
Forum Account
Posts: 68
Joined: 2010-12-20 19:18
Been thanked: 4 times

Additional information

#23 Post by beginners-guide »

B) Additional information:

B1) Learning more: common tasks:
I may add to the sections below as and when. If anyone wants to contribute any of the below or suggest new section's in the same or similar "bite sized chunks" feel free to PM me on the debian.forums. If I can add it with out destroying the flow for new users I shall. If you find your addition is growing to big please post in into the "tips from our members" section or try and break it down. If it becomes overly technical please post to the how to section instead. I see this as an over view of facts, with each section linking to tips and solutions for the "stable" release in as few words a possible. Not a huge list of detailed tips and solutions, they should be in suitable sections of the forum in their own right.


back to the table of content
Last edited by beginners-guide on 2023-02-10 11:07, edited 2 times in total.

beginners-guide
Forum Account
Forum Account
Posts: 68
Joined: 2010-12-20 19:18
Been thanked: 4 times

File Permissions

#24 Post by beginners-guide »

B2) File Permissions:

In Linux, every file and folder belongs to some user who can, in principle, control other users' access to it. Access rights are known as "permissions" and there are three types: read, write and execute. Read allows you access to the file on a read-only basis; applied to a directory (folder), it allows you access to the files within. Write allows you to modify a file or to create, remove or rename files within a directory. Execute allows you to run a program or script contained in a file or to explore the contents of a directory.

Separate permissions are granted to the file's owner, to other members of the owner's group, and to the rest of the world. The full permissions can be seen if you use the command ls -l to list the contents of a directory in "long" form, i.e. full details.The file permissions then appear on the left-hand side of the output as a string of nine characters. The first three are the read, write and execute rights for the owner, the next three are for the group, and the final three for the world. A hyphen indicates that the corresponding right has not been granted.

So rw-r----- means that the owner has read and write access, the group read access only and the rest of the world no access at all. These would be suitable permissions for a data file. rwxr-xr-x means that the owner has read,write and execute access, and everyone else (group and world) has read and execute access only. These are typical permissions for a data directory or a Linux command.

All files that you create belong to you but you do not have to set the file permissions explicitly. New files are given sensible default permissions controlled by your user mask or "umask". You can use the chmod command to change the permissions on particular files from their default values; you can also use the umask command to change the defaults permanently if you do not like them.

Note that, as a security precaution, new files do not have execute access set, although directories may. Execute access to a directory is harmless; it merely allows you to browse the contents. Execute access to a file allows any program or script contained in the file to be run, which is potentially dangerous. So if you download something from the Internet, it will not be executable unless you explicitly make it so by using chmod.


back to the table of content
Last edited by beginners-guide on 2023-02-10 11:10, edited 2 times in total.

beginners-guide
Forum Account
Forum Account
Posts: 68
Joined: 2010-12-20 19:18
Been thanked: 4 times

Editors

#25 Post by beginners-guide »

B3) Editors:

Graphical editors:

Watch this space.

Command-line editors: CLI.

Every Linux distribution includes at least one command-line editor. These editors work independently of the graphical X interface and can therefore be used for rescue and repair work even if X is down. They can also be used, of course, in a terminal window within X. The most commonly used command-line editors are nano, vi and emacs.


The nano editor
This, as its name implies, is the smallest and simplest of the command-line editors. Almost every Linux distribution includes it. It is derived from pico, which was originally an editor that came with the pine email client. Nano does not include "bells and whistles" like syntax highlighting.

Most nano commands consist of keystrokes modified with either the CONTROL key or the ALT key. The function keys along the top of your keyboard can be used as alternatives to some of these. Printable characters are not commands and are always treated as text to be input. Nano is thus not a modal editor like vi. The most commonly used commands are displayed in two lines at the bottom of the nano screen. These include the output (save) command (^O or F3), the exit command (^X or F2) and the help command (^G or F1). The arrow keys (plus HOME, END, PAGE UP, PAGE DOWN) are used for navigation.

The help command displays all the commands used in nano.

Because nano displays its most commonly used commands as "cheat codes", novices often find it the easiest of the command-line editors to use.

http://www.debianadmin.com/nano-editor-tutorials.html
http://www.nano-editor.org/docs.php

The vi Editor
vi (pronounced vee-aye for Visible Interface) is an old Unix command line editor, still much loved and used. It was the first editor to show the whole of a file rather than just the current line. The version of vi used in Linux is called vim (vi improved). It is adapted to the PC keyboard and has a lot of extra functionality such as syntax highlighting. vi has a rather steep learning curve but is a very fast and powerful editor.
vim comes with an excellent online manual. Simply type "vim" without specifying a file and press F1.

There is a graphical form of vim called gvim which is perhaps easier for novices to use. It has a menu bar and a toolbar and supports the usual mouse operations as well as all vi commands.

emacs:
http://www.gnu.org/software/emacs/tour/

back to the table of content
Last edited by beginners-guide on 2023-02-10 12:03, edited 3 times in total.

beginners-guide
Forum Account
Forum Account
Posts: 68
Joined: 2010-12-20 19:18
Been thanked: 4 times

Commands

#26 Post by beginners-guide »

B4) Commands:

B4.1) Commands for processing the contents of files:

Linux has a number of commands which enable you to look inside files. Here are a few of them.

cat filename: Lists the contents of a file to the terminal.

file filename: Shows the type of data that a file contains: e.g. ascii text, shell script, executable program, image file, etc.

grep pattern filename: Searches for a text pattern within one or more files. The pattern may be a literal string or a more complex regular expression involving partial wild cards. The output consists of the line matching the pattern (and optionally some context lines). If a group of files is searched, the output also contains the file name within which the pattern was found.

head [-n] filename: Lists the first n lines of a file (default 10)

less filename: Lists the contents of a file page by page. You can move backwards and forwards using Page Up and Page Down and also search forward for particular patterns or strings using /, or backwards using ?. less is the pager used internally by the man command.

more filename: Similar to less but less flexible. You move forward by pressing the spacebar and backwards with b or ctrl-b. You can only search forwards. One advantage of more when processing files is that it tells you what percentage of the file you have covered. Another common use for more is to page the output of commands. So ls -l|more gives a full listing of a directory, page by page.

readlink filename: This only produces output when filename is a soft link (shortcut file). It shows the file or directory that the link points to.

tail [-n] filename: Lists the last n lines of a file (default 10). The opposite of head.

Regular expressions have been mentioned under grep. They can also be used in search mode within more or less, within the vi and emacs editors, and in a number of other traditional UNIX utilities for analysing text. A regular expression can be something as precise as a literal string or as vague as a wildcard – or anything in between. Regular expressions allow you to include everything you know about a string without making any unwarranted assumptions about what you don’t know.


Regular expressions can be quite complex but here are a few rules for making simple ones:

1) Most characters represent themselves. A few have special uses: the most important of these are "\", ".", "*", "+", "^", "$", "()", "[]", and "{}".

2) "\" is the escape character. Put in front of any special character, it makes that character literal and non-special. \ also works on itself! "\\" is the way to specify a literal backslash character.

3) "." represents a single wild character (the equivalent of "?" in a filename).

4) Digits within braces {} are multipliers. ".{3}" means three wild characters. Otherwise digits represent themselves.

5) "*" and "+" are wild multipliers. ".*" means any number of wild characters (including zero!) while ".+" means any number of wild characters but at least one.

6) Characters in square brackets map to a single character which may be any one of them. So "[0-9]" means any digit, "[aeiou]" means any lower-case vowel. If the first character of the group is "^", then the characters that follow are excluded. "[^,;:?!]" maps to one character which may not be a comma, semicolon, colon, question mark or exclamation mark. Note that "^" is only special when it is the first character of the group; in any other position it just represents itself.

7) Parentheses are used simply to group characters. So "(ac){3}" means "acacac" whereas "ac{3}" means "accc" .

8 ) Outside of square brackets, "^" represents the beginning of a line. "$" represents the end of a line.


back to the table of content
Last edited by beginners-guide on 2023-02-10 12:09, edited 4 times in total.

beginners-guide
Forum Account
Forum Account
Posts: 68
Joined: 2010-12-20 19:18
Been thanked: 4 times

File and folder handling commands

#27 Post by beginners-guide »

B4.2) File and folder handling commands:

These commands duplicate the work of graphical file managers like nautilus, Konqueror and thunar, but they are often a lot faster, especially when processing large directories.

cd pathname Goes to the specified directory. Without pathname, goes to the home directory. cd $OLDPWD is a convenient way to get back to the previous directory (OLDPWD is a variable automatically created by the bash shell).

chgrp new_group filename Changes the group ownership of a file that you own personally. The new group must be one that you belong to.

chmod (/b)(u)(g)(o)(a)±(r)(w)(x) filename

Changes the access permissions for a file, granting or refusing read (r), write (w) or execute (x) access to the user/owner (u), the group (g), others (o) or all of them (a).

chown [new_owner].[new_group] filename Changes the ownership (personal, group or both) of a file. For security reasons, only root can use this command.

cp filename1 filename2 or cp file(s) directory The first form creates a copy of a file with a new name; the second copies the file into another directory. This second form can be used with multiple filenames or a wildcard. To copy files to the current directory use ‘cp pathname(s) .’ Here the dot serves as a synonym for the current directory .

ln [-s] target linkname Makes a link to a file. The -s option produces a soft link like a Windows shortcut. Otherwise a hard link is made. Hard links are simply synonymous names for the same file, whereas a soft link is a separate file that accesses another file by name.

ls pathname Lists the specified directory. Without pathname, lists the current directory. ls has many options. The most useful are probably:

-a to list all files including hidden ones

-l to list in long format: type, access permissions, owner and group owner, size, creation date and name. For a symbolic link file, the target file is also shown

-h used in conjunction with -l gives file sizes in bytes, kilobytes or megabytes as appropriate (otherwise only bytes are used)

-R lists recursively, i.e. contents of subdirectories as well.

mkdir pathname Creates a directory

mv filename1 filename2 or mv file(s) directory Renames a file or moves it to another directory. To move files to the current directory use ‘mv pathname(s) .’ cp and mv use very similar options. Useful ones include -R, which copies or moves directory trees recursively, -d, which copies link files rather than their targets, and -f which forces overwriting of any files of the same name. Otherwise if a file with the same name as the target file already exists, you are asked if you want to overwrite it.

pwd (print working directory) This displays which directory (folder) you are currently in, in the file system

rm filename Deletes a file. This command has several useful options: rm -i asks for confirmation before deleting. You can set this as a personal default. The system default is not to ask. Rm -f cancels the previous option if you have chosen it as your normal way of deleting. Deletion takes place without asking for confirmation. rm -R deletes directories with all the files in them.

rmdir pathname Removes an empty directory. It is also possible to delete directories that contain files but not with this command.


back to the table of contents
Last edited by beginners-guide on 2023-02-10 12:08, edited 3 times in total.

beginners-guide
Forum Account
Forum Account
Posts: 68
Joined: 2010-12-20 19:18
Been thanked: 4 times

Miscellaneous useful commands

#28 Post by beginners-guide »

B4.3) Miscellaneous useful commands:

There is no limit to the commands that can be run from a terminal, since the name of every program that is installed in your command path becomes a useable command. However the following commands are particularly useful.

`apropos string` lists commands whose brief descriptions contain string. It is a good way to find out if there is a command that does a particular thing.

date prints the current date and time. It can also be used, with suitable options, to reset these.


dmesg prints out the recent kernel messages. Usually these are the boot messages, as the kernel seldom has anything to say once the system is running smoothly. This is a good way to check for recent kernel error messages.


echo prints its argument to the terminal. It is a good way of finding out the values of current shell variables. For example echo $PATH will print out your current command path.

find searches for files in the current directory (or in a specified directory) and its sub-directories. It is a very powerful utility which can search by name, ownership, permissions, date, size and many other properties, including combinations. Most commonly you search by name: find -name filename. Note that if the filename includes special characters, including wild characters, you will have to enclose it in quotes.

`kill process_ID` or `kill command` is used as an emergency killer for processes that have stalled or are otherwise misbehaving. A process running on a terminal can usually be crashed with CTRL-C or CTRL-\. However the kill command may be necessary for background or graphical processes.

locate search-string searches for files anywhere in the system. Unlike find, which works in real time, locate uses a precompiled database which needs to be updated regularly (preferably every day). It is thus much faster than find but not as reliable. locate interprets its argument as a string, not a filename; it will return all filenames that contain the string. It also accepts regular expressions (see paragraph on Regular expressions in file content processing document below) which allows for more precise matching.

mount devicename mounts a storage device such as a floppy, cdrom, dvdrom or pen-drive. Desktop environments like gnome automount devices when they are plugged in, but if you want to use a simpler desktop in order to save resources, you will need to mount them by hand. This simple form of the command works if the device is listed in /etc/fstab with the user option set. Without this option, you will need root access. For devices not in fstab you need root access and, in addition, you must specify the mount point and the file system used:
e.g. mount devicename mount_directory -t filesystem.


umount devicename unmounts a storage device mounted with mount. If it has the user option set in fstab, it can be unmounted by the user who mounted it; otherwise you will need root access. You can also use umount mount_directory.

whatis command gives a brief summary of what a command does. This will work for any command that has an associated manual page, whether it is on the current command path or not.

which command is a quick way to find out if a command is available. If it is, the full pathname will be returned. Note that which only searches your current command path; by default, the command path of ordinary (non-root) users does not include the system directories /sbin and /usr/sbin so, unless you have added them, commands in these directories will not be displayed

back to the table of content
Last edited by beginners-guide on 2023-02-10 12:13, edited 3 times in total.

beginners-guide
Forum Account
Forum Account
Posts: 68
Joined: 2010-12-20 19:18
Been thanked: 4 times

systemd

#29 Post by beginners-guide »

B5) systemd

systemd is a software suite that provides an array of system components for Linux[7] operating systems. Its main aim is to unify service configuration and behavior across Linux distributions;[8] Its primary component is a "system and service manager"—an init system used to bootstrap user space and manage user processes. It also provides replacements for various daemons and utilities, including device management, login management, network connection management, and event logging.

https://en.wikipedia.org/wiki/Systemd

Managing Services with systemd - https://access.redhat.com/documentation ... th_systemd

A most useful feature of systemd is the ability to simply view and filter system logs with journalctl.
See - https://www.digitalocean.com/community/ ... stemd-logs

A handy command is to filter by boot number and priority eg:

Code: Select all

journalctl -b -1 -p 3
Here "-b -1" filters only entries from the previous boot and "-p 3" filters error messages only.
See man journalctl for more options.


back to the table of contents
Last edited by beginners-guide on 2023-02-10 13:54, edited 3 times in total.

beginners-guide
Forum Account
Forum Account
Posts: 68
Joined: 2010-12-20 19:18
Been thanked: 4 times

test post

#30 Post by beginners-guide »

testing

Post Reply