Linux Articles
Shared Libraries - ...ies save system memory, they can make the whole system work faster, especially in situations in which memory is not plentiful.
...
Using Shared Libraries - ...namic loading.
Using Noninstalled Libraries
When you run a program, the dynamic loader usually looks in a cache (/etc/ld.so.cache,...
Whats a Linux Process - ...m's credentials (which user and group owned the process, for example)
The program's current directory
Which ...
POSIX Interfaces - ...16-bit machine does not have the same native word size as a 64-bit machine, and a low-level programming language should not pretend it does—...
Common Linux Security Holes - ...IV>
1: /* bufferoverflow.c */
2: 3: #include <limits.h>
4: #include <stdio.h>
5: #include <string.h>
6: ...
Emax vs. vi Unix text editors - ...environment of its own. vi is small and is designed to be one piece of the Unix environment. Many clones and alternative versions of each editor h...
Running a Linux Program as a Daemon - ...the program and a meaningful exit code to be returned. This type of work includes parsing configuration files and opening sockets.
...
Linux Console Capabilities - ...ape character signals the beginning of an escape sequence and changes the processing mode to escape mode.
For example, consider the fo...
Notional Lineage of Unix Systems - ...ntained Unix operating systems that were derived from the original Unix implementation done by Bell Laboratories.
The Berkeley version of Un...
What is the GNU Debugger - ... the PATH looking for the executable file. Gdb will load the executable's symbols and then prompt you for what to do next.
There are three...
Development of Linux - ...eleased the first version of the Linux kernel to the Internet under a fairly restrictive license, he was soon convinced to change his license to t...
The GNU C Library: Feature Selection - ...re of these macros because the default set of macros defined does not provide all the functionality of glibc. A few mechanisms are not available ...
Locking Down Ports Under Linux - ...ervice receives the request and sends the Web page to the client. Each service is assigned a port number, and each port number has a TCP and UDP p...
Deploying GNU Privacy Guard - ...upg.org/download.html (gnupg-1.0.4-11.i386.rpm or the equivalent gnupg-1.0.5.tar.gz).Now that you know the program is installed, your first s...
Short History of Ubuntu - ...ries to quickly give you the high points of Ubuntu's history to date and the necessary background knowledge to understand where Ubuntu comes from....
Free Open source Software and GNU Linux - ... for the most part, seen as an add-on to the hardware, and every user had the ability and the right to modify or rewrite the software on their compute...
Choose an Ubuntu Version - ...Desktop: The desktop CD is the one recommended for desktops and laptops. With this CD, you can boot Ubuntu from the CD and, if you like it, instal...
Customize Ubuntu Look and Feel - ...your own wallpaper. To do this, save your wallpaper somewhere on your computer, and then use the Add Wallpaper button to select it. The new wallpa...
History of KDE - ...d almost fit everybody's needs if we could offer a real GUI... IMHO a GUI should offer a complete graphical environment....
History of Kubuntu - ...n the likes of Linspire, Xandros, or Lycrosis. Unlike those companies, they [Canonical Ltd. Software] understand Free Software and open development. ...
Installing Kubuntu - ...CD-ROM. There are two different types of Kubuntu images that can be downloaded and used. The first is the Desktop CD that allows the user to test ...
Latest "Linux" Articles
Page# 1 (last added articles shown first)
The general name for flash storage is MTD (09/13/2010)
(...) Each design is named after the arrangement of the individual logic gates that store the data on the chip. NAND is becoming a more popular design because the density can be higher: NAND gates require less circuitry than NOR gates. From a performance standpoint, NAND can perform read operations faster than NOR, but NOR is a faster technology for writing. (...)
Block Based File Systems (09/13/2010)
(...) This is a common file system for read-only flash devices, because of its simplicity and complete implementation. It has the ability to store extended attributes and therefore can be used on a system running SELinux, described later in this article. The tools for creating ext2 file systems are included by default with every Linux distribution, so creating file systems is very easy. (...)
Linux was initially created as being a hobby by a young student (09/10/2010)
(...) The quickest way could be to add a second hard disk; nevertheless, this can be costly and complex if you are unfamiliar using the inner-workings of your machine. So instead, you can minimize the area in your existing partition to make space for Linux.
To begin the partitioning procedure, make sure you back up all of the files on your pre-existing operating system. (...)
Features of Fedora 13 to Help Offshore Software Development Market (08/23/2010)
(...) It has always strived to push it limits to give one of the best possible no cost operating system seldom introducing unique technologies much advanced in time. It feels great it is not just an eye candy but indeed is worth a million dollars. Like its previous versions Fedora 13 also has some amazing new features. (...)
Customizing Kubuntu (04/07/2010)
(...) Since Kubuntu is a multidesktop system, each desktop can have the same background, a different one, or even be sized differently. This system offers many opportunities for great customization.
The behavior section allows the user to customize how the desktop behaves. (...)
History of KDE (04/06/2010)
(...) . All parts must fit together and work together.. (...)
History of Kubuntu (04/06/2010)
(...)
A lot of changes needed to be made to get Kubuntu working correctly. A hardware-accessible library needed to be changed. Programs and packages needed to be created, along with a clean K-menu changed to fit the philosophy of Ubuntu. (...)
Installing Kubuntu (04/06/2010)
(...) The first is the Desktop CD that allows the user to test and run Kubuntu without changing any settings. The second is the actual installer.
New to Kubuntu 6. (...)
Short History of Ubuntu (01/25/2010)
(...) He attended Diocesan College and obtained a business science degree in finance and information systems at the University of Cape Town. During this period, he was an avid computer hobbyist and became involved with the free and Open Source software community. He was at least marginally involved in both the Apache project and the Debian project and was the first person to upload the Apache Web server, perhaps the single most important piece of server software on GNU/Linux platforms, into the Debian project's archives. (...)
Free Open source Software and GNU Linux (01/25/2010)
(...) He was concerned with computer users' ability to be good neighbors and members of what he thought was an ethical and efficient computer-user community. To fight against this negative tide, Stallman articulated a vision for a community that developed liberated codein his words, "free software." He defined "free software" as software that had the following four characteristicslabeled from zero through three instead of one through four as a computer programmer's joke:The freedom to run the program for any purpose (freedom 0)The freedom to study how the program works and adapt it to your needs (freedom 1)The freedom to redistribute copies so you can help your neighbor (freedom 2)The freedom to improve the program and release your improvements to the public so that the whole community benefits (freedom 3)Access to source codethe human-readable and modifiable blueprints of any piece of software that can be distinguished from the computer-readable version of the code that most software is distributed asis a prerequisite to freedoms one and three. (...)
Choose an Ubuntu Version (01/25/2010)
(...) With this CD you boot into an installer and then run Ubuntu when the installation is complete.
When you have decided which type of CD to use, you now need to choose the correct computer architecture. Both the live and install disks support each of the following types of computer. (...)
Customize Ubuntu Look and Feel (01/25/2010)
(...) The built-in theming system can make your applications look radically different, and Ubuntu ships a number of themes with it that you can try.
Choosing a New Theme
To choose a new theme click System > Preferences > Theme. Inside the dialog box that pops up are a number of themes that you can choose. (...)
Configuring a Printer in Ubuntu (01/25/2010)
(...)
Notice that no printers are defined. You are about to change this.
Gathering Information
The most important thing to remember when configuring a printer is to not get ahead of yourself. (...)
Working with Windows from inside Ubuntu (01/25/2010)
(...) To do this, press Alt-F2, and type winecfg. This small program sets up your Wine environment and provides some options for configuring how your Wine system is run. The default settings should be suitable for most applications. (...)
Root iNode Corruption Cause Data Loss in Linux (11/10/2009)
(...) At this point, you might encounter below error message:
"Root iNode is not a directory. Clear?"
This behavior of Linux operating system renders all of your critical data on hard drive inaccessible and results into serious data loss situations. In order to salvage data from affected drive, you need to carry out data recovery linux by sorting out the problem. (...)
Hardening the System with Bastille and Functions (11/18/2008)
(...) Bastille FunctionsThe following list highlights the security features offered by Bastille to secure your system.You will choose which feature you want to implement on your system during the question-and-answer period. For example, many servers do not need to provide firewall or Network Address Translation (NAT), so you may not need to configure ipchains. (...)
Using GPG and Md5sum to Verify Signatures on Tarball Packages (11/18/2008)
(...) gz.You will then receive a message either that the signature is good, or that the public key cannot be found. If the public key cannot be found, you must obtain another public key, or you will not be able to verify who owns the package. (...)
Red Hat Linux Errata: Fixes and Advisories (11/18/2008)
(...) Bug fixes provide a fix to specific issues, such as a certain error message that may occur when completing an operating system task. Bug fixes should only be installed if your system experiences a specific problem. Another helpful resource is Bugzilla, the Red Hat bug-tracking system at http://bugzilla. (...)
Locking Down Ports Under Linux (11/18/2008)
(...) For example, SMTP is assigned port 25, and HTTP is assigned port 80. Servers listen on the network for requests at the well-known ports. Registered ports are temporary ports, usually used by clients, and will vary each time a service is used. (...)
What is the GNU Debugger (01/05/2008)
(...)
Inspect an existing core file to determine the state of the process when it was killed. To inspect a core file, start gdb with the command gdb progname corefile.
Before you run a program or attach to an already-running program, you can set breakpoints, list source code, and do anything else that does not necessarily involve a running process. (...)
Development of Linux (01/05/2008)
(...) The GNU project's source base became an extremely important resource for the Linux community from which to build a complete system. Although significant portions of Linux-based systems are derived from sources that include freely available Unix code from the University of California at Berkeley and the X Consortium, many important parts of a functional Linux system come directly from the GNU project.
As Linux matured, some individuals, and later, companies, focused on easing the installation and usability of Linux systems for new users by creating packages, called distributions, of the Linux kernel and a reasonably complete set of utilities that together constituted a full operating system. (...)
The GNU C Library: Feature Selection (01/05/2008)
(...) Setting the feature test macros may find some use of nonportable extensions, but it will not show, for example, use of header files that are entirely unspecified by the standard.
The macros are defined in the system header file feature.h, which you should not include directly. (...)
Notional Lineage of Unix Systems (12/30/2007)
(...)
This forked development of Unix caused major differentiation in the system calls, system libraries, and basic commands of Unix systems. One of the best examples of this split is in the networking interfaces that each operating system provided to applications. BSD systems used an interface known as sockets to allow programs to talk to one another over a network. (...)
Linux Console Capabilities (12/16/2007)
(...)
It displays the string "a " at the beginning of that line.
4.
It encounters the escape character, "\033", and moves into escape mode. (...)
Emax vs. vi Unix text editors (12/08/2007)
(...)
In contrast, the documentation available for vi is less generous and less well known. It is exclusively an editor, and many powerful commands are bound to single keystrokes. You switch back and forth between a mode in which typing standard alphabetic characters causes them to be inserted in your document and a mode in which those alphabetic characters are commands; for example, you can use the h, j, k, and l keys as arrow keys to navigate your document. (...)
Running a Linux Program as a Daemon (12/08/2007)
(...) This may seem obvious, but it can be easy to neglect to close file descriptors that have been inherited instead of opened by the program itself.
The program should then call fork() and the parent process should call exit(), allowing the program that ran the daemon (often a shell) to continue.
The child process, which is continuing, should close stdin, stdout, and stderr, as it will no longer use the terminal. (...)
Common Linux Security Holes (11/11/2007)
(...) It causes a segmentation fault when the strcpy() writes beyond the space allocated for the path array.
On most systems, the processor stack grows down; that is, the earlier something is placed on the stack, the higher the logical memory address it gets. Above the first item on the stack is a protected region of memory; any attempt to access it is an error and causes a segmentation fault. (...)
POSIX Interfaces (11/10/2007)
(...) It is normally used only for system programming.
uid_t, gid_t
Integer types holding a unique user ID number or group ID number, respectively.
pid_t
An integer type providing a unique value for a process on a system. (...)
Whats a Linux Process (11/03/2007)
(...) As so many resources were shared among threads, the kernel could switch between threads in the same process more quickly than it could perform a full context switch between processes. This resulted in most Unix kernels having a two-tiered process model that differentiates between threads and processes.
The Linux Approach
Linux took another route, however. (...)
Using Shared Libraries (08/04/2007)
(...) However, if the LD_LIBRARY_PATH environment variable is set, it first dynamically scans the directories mentioned in LD_LIBRARY_PATH (which has the same format as the PATH environment variable) and loads all the directories it finds in the path, before it looks in its cache.
This means that if you want to use an altered version of the C library when running one specific program, you can put that library in a directory somewhere and run the program with the appropriate LD_LIBRARY_PATH to access that library. As an example, a few versions of the Netscape browser that were linked against the 5. (...)
Shared Libraries (07/25/2007)
(...) The author of the library had to leave space for data structure expansion by hand-editing tables, and even that did not always work.
Now, the standard binary file format on almost every Linux platform is the modern, extensible Executable and Linking Format (ELF) file format. This means that on practically all Linux platforms, the steps you take to create and use shared libraries are exactly the same. (...)
Minimizing the Risk for Software Attack under Linux Platforms (07/25/2007)
(...)
One or more of setuid(), setgid(), and setgroups() need to be used to reset the processes permissions. This technique is effective only if the real, effective, file system, and saved uids (or gids) are all set to their proper values. If the program is running setuid (or setgid), the process probably wants to set those uids to its saved uid. (...)
Designing Shared Libraries (07/21/2007)
(...) Most library developers attempt to maintain stable interfaces that change in an incompatible manner only when they release a new major version of the library.
For example, the developers and maintainers of the Linux C library attempt to maintain backward compatibility for all releases of the C library with the same major number. Version 5 of the C library has gone through five minor revisions, and with few exceptions, programs that worked with the first minor revision work with the fifth. (...)
Building Shared Libraries (07/15/2007)
(...) When you need a user to provide you with a traceback because of a bug in your code (or a savvy user wants a traceback to do his or her own debugging), it will not work.
When linking the library, use gcc rather than ld. The C compiler knows how to call the loader in order to link properly, and there is no guarantee that the interface to ld will remain constant. (...)
Static Libraries (07/11/2007)
(...) o
You can also add one object file at a time to an existing archive.
ar rcs libname.a foo. (...)
Enter page# 1 (last added articles shown first)