Posts Tagged ‘linux’

Common Unix/Linux Commands used via Telnet

Tuesday, April 1st, 2008

Common Unix/Linux Commands used via Telnet

Basic Navigation

cd
When typed by itself, cd (”change directory”), will take you back to your $HOME directory

cd /path/to/directory
To change to a specific directory, type cd followed by the path to the directory. If it is a subdirectory of the current directory, you can just type the directory name.

cd ..
Typing cd .. moves you up one directory from your current location.

pwd
To see which directory you are in, type pwd (”print (display) working directory”).

exit
Just as it sounds, use exit to log out. Alternatively, you can type logout.

Creating and Deleting Directories

mkdir directoryname
To create a new directory, type mkdir (”make directory”) and specify the new directory’s name.

rmdir directoryname
To delete an empty directory, type rmdir (”remove directory”) and the directory’s name.

Listing Files

ls
To display a list of files and subdirectories in your current directory, type ls (”list”)

ls -a
To see a more complete list which includes hidden files or files that begin with a “.” (dot), type ls -a.

ls -la
To list all files and directories in long format which will provide details about each file and directory, type ls -la.

ls -lS
To list all directories and files, sorted by size, in long format, type ls -lS.

ls -lta
To list all files and directories in long format by time modified, type ls -lta.

Copying Files

cp oldfilename newfilename
Will copy the contents of one file to another file, resulting in two copies of the same file on your account.

cp directory/* destinationdirectory
Will copy the contents of one directory to another directory. Make sure you have created the destination directory before trying to copy files to it - see mkdir above. Results in two copies of the files on your account; one copy in the existing directory and another in the destination directory.

Searching FIles and Directories

find -name ‘n*’
The find command can be used to locate files or a group of files. It can also be used to display directories. The example given will find all file and directory names within the current directory and subdirectories of it that begin with the letter n. (You can also explore using the locate command - type info locate and/or man locate for usage information.)

grep -inw text filename
Can be used to locate text in a specific file or directory of files (use * in place of filename to search all of the files in the current directory). The -i argument indicates the search is to disregard cASe, the -n instructs to show the corresponding line number, and -w tells it to match only based on the whole word. (This doesn’t even begin to touch on the power of grep and its many uses. In addition to its searching capability, the grep command can be used in combination with other commands to act as a filter. It also allows the use of “wildcards”. Two other variations of grep are also available, egrep and fgrep. To begin your quest for more information, type man grep and/or info grep.)

Displaying / Comparing File Content

wc filename
Counts and displays the number of lines, number of words, and number of characters of the given file.

cat filename
Displays the entire contents of a file.

nl filename
Shows the content of the file, including line numbers (nl=number lines).

more filename
Displays the contents of a file one screen at a time. Press the SPACEBAR to display the next screen of text.

cmp filename1 filename2
Compares the contents of the two named files and reports the first different character found and the line number.

diff filename1 filename2
Compares the contents of the two named files and reports all of the differences found. (Can also be used for comparing the contents of two directories.)

Moving, Renaming, and Deleting Files

mv oldfilename newfilename
Can be used to rename a file (mv fileA fileB), move a file (mv fileA /dirA/), or both (mv fileA /dirB/fileB).

rm -i filename
Removes (deletes) the specified file. (The -i is not necessary, but is recommended as it will prompt you to confirm the action first. When prompted, type y to confirm or type n if you changed your mind.)

Changing Permissions

chmod permissions filename
Changes the permissions on a filename or directory as specified. For example, chmod 755 startup.sh.

Archives and Compression

tar -cfv filename.tar directoryname
To archive a directory and all of its contents including subdirectories, navigate to where the directory is located and type the above command, replacing filename.tar with the name you wish to give the archive file and directoryname with the name of the directory you wish to archive. Alternatively, you can archive a select group of individual files (or directories) by specifying each file name in place of directoryname separated by spaces, like tar -cvf filename.tar fileA fileB fileC. Note: When creating a tar file (aka “tarball”) be sure to specify the name you wish to give the tar file! (TAR indicates Tape ARchive, as it was originally a tape archiving program. The -c means “create”, v means “verbose” (which basically says tell me what you’re doing), and the f indicates that a filename will follow (filename.tar)).

tar -tvf filename.tar
Typing this command will result in a list of the contents of the tar file. This is generally a good thing to do before unpacking the tar file to be sure there are no matching filenames which will result in files being unintentionally overwritten.

tar -xvf filename.tar
You can see the similarities to the command used to tar the file. This time, though, you use -x to “extract” instead of the -c used to create. You can also extract only certain select files (or directories) by specifying the individual names, separated by spaces, after the tar filename, such as tar -xvf filename.tar fileA fileC

gzip filename.tar
This utility, gzip (gnu zip), is used for compression. Normally, when you wish to compress a set of files, you willtar them first then compress them using this command. In doing so, the filename will automatically change from filename.tar to filename.tar.gz (appending .gz to the file extension).

gunzip filename.tar.gz
This command (g”unzip”) is used to uncompress a .tar.gz file, which will also result in the filename being changed back to filename.tar. Once it has been uncompressed, you can then untar it using the tar command above. (Alternatively, you can use gzip -d (for “decompress”) in place of gunzip.)

tar -czvf filename.tgz directoryname
This command, which uses a z switch (”zip”), allows you to take a bit of a shortcut instead of using the tar and gzip commands separately. The example will result in a compressed archive named filename.tgz.

tar -xzvf filename.tgz
This command is used to uncompress and extract the files from a .tgz archive.

How to Build your own Dreambox Image

Tuesday, April 1st, 2008

How to build a complete image for your dreambox

Choosing your Platform

First of all, you will need a platform to create your image. There are many versions of linux that you can use, I have used VMWare with Ubuntu and also a dedicated linux PC running Ubuntu. Both variations will work just as well.

If you want to use VMWare, you can download it at http://www.vmware.com/download/player.

If you want to use a dedicated PC, either with Ubuntu as the main OS or as a dual-boot system, you can download Ubuntu for free at http://www.ubuntu.com.

The VMWare method is probably easier if you are trying it out for the first time. You can always uninstall it if it’s not for you.

Configuring your Ubuntu

The following packages need to be installed in your ubuntu before you start creating any images.

Click on System, Administration, Synaptic Package Manager.

You will need to search for the following packages and install them:

- cvs
- autoconf
- automake
- libtool
- gettext
- make
- makeinfo (texinfo)
- tar
- bunzip2 (bzip2)
- gunzip (gzip)
- patch
- infocmp (ncurses-bin / ncurses-devel)
- gcc
- g++
- flex
- bison
- pkg-config
- wget
- libpng2 or libpng3 (DirectFB)
- ftpd (or other ftp server)

The latest versions of these packages should work ok. Click Apply to install them.

If you have installed the necessary packages, you don’t need to download the pre-configured environment.

Compiling an Image

Now we’ll move on to downloading and compiling our image. Most of this will be copy and paste but you’ll get used to the commands.

Open a terminal window and paste the following commands:

Creating a working directory
mkdir tuxbox-cvs

Change into the working directory

cd tuxbox-cvs

The following can now be copied and pasted in, line by line. Wait for the command prompt to be displayed before pasting the next line.

export CVS_RSH=ssh

cvs -d anoncvs@cvs.tuxbox.org:/cvs/tuxbox -z3 co -P -rdreambox .

### Note the dot at the end of the command, this is important ###

cd cdk

chmod 755 prepare

Now we need to alter the ‘prepare’ file to personalise our image

Go to /tuxbox-cvs/cdk and open the ‘prepare’ file with the text editor. It should look like this:

#!/bin/bash
cd .. && CURRENT_PATH=`pwd`;
cd cdk
./autogen.sh;
# boxtype dm500 dm56×0 or dm7000
TYPE=$1
if test -z “$TYPE”; then
TYPE=dm7000 //change to box type
fi
./configure \
–with-boxtype=$TYPE \
–with-webif=standard \ //change to webif=expert
–prefix=$CURRENT_PATH/root \
–with-cvsdir=$CURRENT_PATH \
–with-cpu=405 \
–enable-maintainer-mode \
–with-targetruleset=flash \
–with-epg=private \ //change to -epg=standard
–with-mhw-epg=no \ //change to -epg=yes
–with-flashtool=standard \
–with-reiserfs=no \
–with-ext-flashtool=yes \
–with-enigma-debug=yes

Change the lines in red. Save the file and return to the terminal window.

Back to the copy and pasting.

./prepare dm500

make checkout

make dreamboximage_root

The last command will take a long time to complete, depending on the speed of your PC and internet; up to about 2 hours.

The following command creates the folders that you normally see on your box, i.e. /bin, /etc, /var, /var_init, etc.

make rebuild-flash

The following command compresses all your folders into an .img file.

make flash-compress

If all has gone ok and you didn’t get any errors, you should have a file called complete.img in /tuxbox-cvs/root/cdkflash. This is your actual image file that you flash to your box. There will be two other .img files but don’t worry about them.

Now this will be a basic image, no addons or emu managers or anything. It will be like the dream original image only up-to-date.

Next you need to modify it to your needs.

Good luck!

If you have any questions, please visit our Dreambox Forum.

Add to Technorati Favorites