Machinekit

Machinekit

Linux FAQ

These are some basic Linux commands and techniques for new to Linux users. More complete information can be found on the web or by using the man pages.

Man Pages

Man pages are automatically generated manual pages in most cases. Man pages are usually available for most programs and commands in Linux.

To view a man page open up a terminal window by going to 'Applications > Accessories > Terminal'. For example if you wanted to find out something about the find command in the terminal window type:

man find

Use the Page Up and Page Down keys to view the man page and the Q key to quit viewing.

List Modules

Sometimes when troubleshooting you need to get a list of modules that are loaded. In a terminal window type:

lsmod

If you want to send the output from lsmod to a text file in a terminal window type:

lsmod > mymod.txt

The resulting text file will be located in the home directory if you did not change directories when you opened up the terminal window and it will be named mymod.txt or what ever you named it.

Editing a Root File

When you open the file browser and you see the Owner of the file is root you must do extra steps to edit that file. Editing some root files can have bad results. Be careful when editing root files. Generally, you can open and view most root files, but they will open in 'read only' mode.

The Command Line Way

Open up 'Applications > Accessories > Terminal'.

In the terminal window type

sudo gedit

Open the file with File > Open > Edit

The GUI Way

  1. Right click on the desktop and select Create Launcher

  2. Type a name in like sudo edit

  3. Type 'gksudo "gnome-open %u"' as the command and save the launcher to your desktop

  4. Drag a file onto your launcher to open and edit

Root Access

In Debian you can become root by typing in "sudo -i" in a terminal window then typing in your password. Be careful, because you can really foul things up as root if you don’t know what you’re doing.

Terminal Commands

Working Directory

To find out the path to the present working directory in the terminal window type:

pwd

Changing Directories

To move up one level in the terminal window type:

cd ..

To move up two levels in the terminal window type:

cd ../..

To move down to the emc2/configs subdirectory in the terminal window type:

cd emc2/configs

Listing files in a directory

To view a list of all the files and subdirectories in the terminal window type:

dir

or

ls

Finding a File

The find command can be a bit confusing to a new Linux user. The basic syntax is:

find starting-directory parameters actions

For example to find all the .ini files in your emc2 directory you first need to use the pwd command to find out the directory.
Open a new terminal window and type:

pwd

And pwd might return the following result:

/home/joe

With this information put the command together like this:

find /home/joe/machinekit -name \*.ini -print

The -name is the name of the file your looking for and the -print tells it to print out the result to the terminal window. The \*.ini tells find to return all files that have the .ini extension. The backslash is needed to escape the shell meta-characters. See the find man page for more information on find.

Searching for Text

grep -irl 'text to search for' *

This will find all the files that contain the 'text to search for' in the current directory and all the subdirectories below it, while ignoring the case. The -i is for ignore case and the -r is for recursive (include all subdirectories in the search). The -l option will return a list of the file names, if you leave the -l off you will also get the text where each occourance of the "text to search for" is found. The * is a wild card for search all files. See the grep man page for more information.

Bootup Messages

To view the bootup messages use "dmesg" from the command window. To save the bootup messages to a file use the redirection operator, like this:

dmesg > bootmsg.txt

The contents of this file can be copied and pasted on line to share with people trying to help you diagnose your problem.

To clear the message buffer type this:

sudo dmesg -c

This can be helpful to do just before launching Machinekit, so that there will only be a record of information related to the current launch of Machinekit.

To find the built in parallel port address use grep to filter the information out of dmesg.

After boot up open a terminal and type:

dmesg|grep parport

Convenience Items

Terminal Launcher

If you want to add a terminal launcher to the panel bar on top of the screen you typically can right click on the panel at the top of the screen and select "Add to Panel". Select Custom Application Launcher and Add. Give it a name and put gnome-terminal in the command box.

Hardware Problems

Hardware Info

To find out what hardware is connected to your motherboard in a terminal window type:

lspci -v

Paths

Relative Paths

Relative paths are based on the startup directory which is the directory containing the ini file. Using relative paths can facilitate relocation of configurations but requires a good understanding of linux path specifiers.

   ./f0        is the same as f0, e.g., a file named f0 in the startup directory
   ../f1       refers to a file f1 in the parent directory
   ../../f2    refers to a file f2 in the parent of the parent directory
   ../../../f3 etc.