Linux
This page badly needs some updating.
Articles
- concepts
- /groups and user/group security
- reference
- /commands
- /file: things having to do with files
- /font: managing fonts in Linux
- Linux networking
- Linux notes: unfiled notes relating to Linux stuff
- Linux programming
- DVDs in Linux
- how to
- /diacritics: how to set up your keyboard to enter accented characters and so forth
- running a remote X session
- rescuing files with a liveCD
- ejecting reluctant CDs in Linux
- practical applications of Linux
- comparative
- Linux distributions: different versions of Linux
- Linux vs. Windows
- Windows in Linux: various ways to run Windows applications within Linux
To rename a Linux box on the network (must be root or use sudo):
- Edit /etc/hostname -- this is a file which contains just the computer's name
- If the box is running Samba, restart nmbd
Components
Audio
- Linux audio
- Linux audio production: multitrack and high-rate/depth editing
- Linux music production: musical instrument synthesis
- Audacity
- Ubuntu Studio
Desktop Environments
- KDE
- Gnome
- window managers
- BumpTop: it's not clear if this is an environment, a desktop manager, or what; also what platforms it will be available for, when it is available (which it isn't yet)
- desktop widgets
- Conky, "a lightweight system monitor" that looks highly configurable
Devices
- device management: udev and related system things
- printing: Common Unix Printing System (CUPS)
- audio
Applications
Hardware
- Common Unix Printing System
- on laptops:
- Modems
- LinModems: running nonstandard driver-dependent modems in Linux
- wireless network cards
- optical scanners
- webcams
- Commands:
Firmware
Support Groups
- United States: North Carolina: Triangle Area:
Reference Links
- The Linux Documentation Project: lots of documentation, somewhat awkwardly presented
- Embedded Linux Wiki
- TuxMobil: Linux With Laptops, Notebooks, PDAs and Mobile Cell Phones
- Really Linux: for beginning Linux users
- LinuxQuestions wiki
- Linux Manpages: manpages documentation as searchable web pages
- Linux audio: guide to audio apps/systems in Linux
- Securing Linux
- Windows vs. Linux: comparative screenshots
- 2005-08-30 The State of Linux Graphics: technical backgrounder
News/Opinion Links
- 2008-01-07 Linux-based PMP features head-worn display: "A new Linux-based portable media player (PMP) is equipped with a 0.44-inch, head-mounted OLED microdisplay visor with 800 x 600 resolution. Dreamax's Indicube i-800 PMP offers an experience equivalent to sitting seven feet from a 54-inch screen, the vendor claims."
- 2007-03-13 Linux Starts to Find Home on Desktops
- 2006-06-28 Linux desktop distributions are headed in the wrong direction
Issues
The following may reflect my own ignorance rather than an actual shortcoming in Linux:
- Development
- There appears to be no universal mechanism corresponding to ActiveX (as used for desktop app development); DCOP, which seems at least somewhat similar, is only available under KDE
- There appears to be no application corresponding to Microsoft Access. Yes, you can do all the same stuff with various available tools, but not quickly; v2.0 of OpenOffice is apparently going to include a tool which may be a step in the right direction (OpenOffice Base), and I have seen evidence of other Access-like tools in development...
- Regular Use
- In Windows, if you create a link to an executable script (batch file -- *.bat) on your desktop (or anywhere), the link is executable with a double-click. Linux .sh (shell script) files are equivalent to Windows .bat files, and much more powerful, but can't be executed by clicking on them directly (at least, not in the standard/default configuration). The exact procedure depends on the environment you are using:
- KDE: right-click on the desktop and select Create New -> Link to Application...; when the dialog pops up, select the Application tab, and then next to the "Command:" edit box click the "Browse..." button to browse for the .sh file.
- In Windows, if you create a link to an executable script (batch file -- *.bat) on your desktop (or anywhere), the link is executable with a double-click. Linux .sh (shell script) files are equivalent to Windows .bat files, and much more powerful, but can't be executed by clicking on them directly (at least, not in the standard/default configuration). The exact procedure depends on the environment you are using:
Criticisms of UNIX, from which Linux is derived: 10 Things I Hate About UNIX
Things You Must Know
In Linux, you often run into things which you Just Have To Know in order to make things work; there is not really any way to find them out. This is bad UI design, but for now it's the situation. I will be listing them here as I find them out.
- If you accidentally hit Ctrl-Z (control Z), this suspends your current process and pops you back to the command line. To get back to the suspended process, type the command fg.
- When Perl is missing a module, the package name is always (I am told) "perl-libraryname". For example, for Tk.pm, the package is perl-Tk. So in Fedora you would type "yum install perl-Tk". Presumably in debian-derived distributions, you would type "apt-get install perl-Tk", though I have not actually tested this. (Remember that package names, like Linux filenames, are case-sensitive, so that T must be uppercase or it won't work.) If the library is within a Perl package, e.g. Net::Telnet, then the format is perl-Package-Library, e.g. perl-Net-Telnet.
- To run a binary which is located in the current directory, from the command line, you have to type "./" before the binary's name. This is because the current directory (most easily referenced with "./") is, by default, not included in the binary search path. There is much debate about whether or not this is a good thing, but at least it can be changed easily:
- This command only changes the path for the current session:
export PATH=$PATH:.
- To permanently change the default path for the current user, edit the ~/.bash_profile file
- To permanently change the default path for all users (which may be overridden by individual user settings), edit the /etc/profile file
- Linuxese for "help" is "man", which is short for "manual". This help system is often referred to as "the manpages".
- To find out what version of the Linux kernel you are running:
- cat /proc/version
- Sometimes the GUI shutdown (in KDE, usually invoked via the K menu) mysteriously fails to work; in that case, you can invoke a shutdown using the shutdown command:
- shutdown now
- To find out what processes have locked a file (so you can kill them to allow editing again... but also make sure it's not a simple permissions problem first):
- lsof /path/to/file
- To add a user to a group (or a group to a user, however you want to say it):
- usermod -G groupname -a username
How To
disable the middle mouse button
Some people find that the scroll-wheel is too easy to click (which counts as a middle mouse-button click), accidentally pasting text in the middle of documents they are scrolling through. The wheel can be disabled by following these instructions, with a note that the actual disabling command – <bash>xinput set-button-map 4 1 0 3</bash> – needs to be modified by replacing "4" with whatever the actual ID of your mouse is.
rename the computer
To change the string a server uses for identifying itself on the network, see these instructions (for Debian; other distros may differ).
adjust invisible free space
Sometimes, deleting files from a full drive doesn't seem to free up any space; df will report fewer blocks used than available, but zero bytes available. This is apparently because the system reserves some space for system activities -- which is probably not necessary on a drive that is being used only for storage.
This command will adjust the reserved space to 1% (which is apparently lower than the default): <bash>tune2fs -m 1 /dev/sda</bash>
mount an ISO image as a folder
mount -o loop NameOfISO.iso /mount/wherever On older distributions, you may need instead mount -o loop -t iso9660 ...
- To swap drives so DOS or Windows can be booted off the 2nd drive:
- On reboot, when you get to the boot loader startup, select whatever option gets you to a grub command line ("c" in Fedora Core)
- At the grub prompt, enter the following:
map (hd0) (hd1) map (hd1) (hd0) rootnoverify (hd1,0) chainloader +1 makeactive boot
This is a temporary fix which lets you test the changes without making your computer unbootable if they fail. To make the changes permanent, edit /boot/grub/menu.lst and enter the two "map" lines under the Windows entry. (Will document in more detail when I have time to look at the format of menu.lst. I'm also not sure if "hd" is always the prefix for the drives or if that might be different depending on the types of drives – e.g. SATA, ATA, IDE – involved.)
fix a messed-up time-zone
If the KDE Clock-setting widget seems to be refusing to set the time zone (or your system clock is refusing to show anything except GMT time), this command may work:
ln -s /usr/share/zoneinfo/America/NewYork /etc/localtime
...where "/America/NewYork" should be replaced by the appropriate file for your time zone. I have not been able to find any documentation on this feature; the command was suggested to me by someone in the #kde chat room at irc.freenode.net (see [1]). Remember to use the console "date" command to verify what the system clock is currently set to. --Woozle 08:45, 23 Apr 2005 (CST)
force an update of the system clock
ntpdate pool.ntp.org
- To make this update run automatically, go into root and run kcron (or cron if you're comfortable with CLI, but note that you will need the exact path to ntpdate when creating the entry in cron (cron apparently runs with a different $PATH than the user environment). Use "which ntpdate" to find the path.
- Emptying the Trash: KDE does have trash-management built in, but it's not always obvious. You can do any of the following:
- Navigate (in Konqueror) to "trash:/", then right-click on the panel showing the contents, and select "Empty trash".
- Right-click on the applet panel and add the Trash applet, then left-click on it to use its various functions.
- Create a new URL link on the desktop, give it the URL "trash:/", then right-click on it (my preferred solution). A trashcan icon is available in the "filesystems" icon group.
reset the ftp kioslave
Konqueror's ftp access is done using a kioslave (kio_ftp), and sometimes that kioslave apparently stops responding, leading to Konqueror hanging while showing the message "Connecting..." in the status bar. The obvious thing to do is kill the kioslave and start over; I haven't yet been successful at this, but I was given this command to try (probably will work better as root):
killall -9 process name
...where process name might be something like "kio_ftp". (Check the process list for helpful hints.)
Firewalls
Some Linux distributions come with a GUI-based firewall management tool, but these generally are just wrappers around a set of text commands. Apparently, a firewall can be set up using iptables (or ipchains, although this is generally deprecated in newer systems); to query both commands for firewall rules:
iptables -L -v ipchains -L -v
In Fedora Core 4, iptables is hidden in sbin, so you need to type it like this:
/sbin/iptables -L -v
There also seems to be a GUI app to configure the firewall (see this), but it's not clear how to run it. It may be that it can only be run at setup time. Try system-config-securitylevel.
Set up VNC to use an existing session
This sets up VNC to connect to an existing session, i.e. "control the user's screen", same as the default VNC server behavior in Windows. I have not tested it.