something is causing this script to break early on


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting something is causing this script to break early on
# 1  
Old 07-15-2010
something is causing this script to break early on

I am relatively new at scripting in linux. Most of my scripting knowledge comes from doing batch scripting in windows.

Anyway, I have this script I'm trying to write that will install a program called Nagios along with a few other packages. I know it has to be something at the beginning that is causing it to break, but I can't figure out what it is.

Here is the script:

Code:
#!/bin/bash


apt-get install apache2

apt-get install build-essential

apt-get install libgd2-xpm-dev

apt-get install openssh-server

aptitude install php5 libapache2-mod-php5

/etc/init.d/apache2 restart


/usr/sbin/useradd nagios

passwd nagios

/usr/sbin/groupadd nagcmd

/usr/sbin/usermod -G nagcmd nagios

/usr/sbin/usermod -G nagcmd www-data

mkdir /home/downloads

cd /home/downloads

wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-3.2.1.tar.gz

wget http://prdownloads.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.14.tar.gz

cd /home/downloads

tar xzf nagios-3.2.1.tar.gz

cd nagios-3.2.1/

./configure --with-command-group=nagcmd

make all

make install

make install-init

make install-config

make install-commandmode

vi /usr/local/nagios/etc/objects/contacts.cfg

make install-webconf

htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

/etc/init.d/apache2 reload

cd /home/downloads

tar xzf nagios-plugins-1.4.14.tar.gz

cd nagios-plugins-1.4.14/

./configure --with-nagios-user=nagios --with-nagios-group=nagios

make

make install

ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

/etc/init.d/nagios start


I'm not asking someone to rewrite this for me, I'm just trying to find some advice on what I'm doing wrong. Again, I am a newbie at this, so please forgive me if it turns out to be something stupid I'm doing.
# 2  
Old 07-15-2010
You may want to re-run your code with bash "in debug mode", i.e. bash -x script, to get an idea of what fails where and why ...
# 3  
Old 07-15-2010
I ran the script using bash -x and got the following output (note: I stopped the script half way so it didn't run all the way through):

Code:
root@john-desktop:/home/john/Downloads# bash -x ubuntu-desktop-server.sh 
+ $'\r'
: command not founder.sh: line 2: 
+ $'\r'
: command not founder.sh: line 3: 
+ apt-get install $'apache2\r'
Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Couldn't find package apache2
+ $'\r'
: command not founder.sh: line 5: 
+ apt-get install $'build-essential\r'
Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Couldn't find package build-essential
+ $'\r'
: command not founder.sh: line 7: 
+ apt-get install $'libgd2-xpm-dev\r'
Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Couldn't find package libgd2-xpm-dev
+ $'\r'
: command not founder.sh: line 9: 
+ apt-get install $'openssh-server\r'
Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Couldn't find package openssh-server
+ $'\r'
: command not founder.sh: line 11: 
+ aptitude install php5 $'libapache2-mod-php5\r'
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Reading extended state information      
Initializing package states... Done
"ouldn't find any package whose name or description matched "libapache2-mod-php5
"ouldn't find any package whose name or description matched "libapache2-mod-php5
The following NEW packages will be installed:
  apache2-mpm-prefork{a} apache2-utils{a} apache2.2-bin{a} apache2.2-common{a} 
  libapache2-mod-php5{a} libapr1{a} libaprutil1{a} libaprutil1-dbd-sqlite3{a} 
  libaprutil1-ldap{a} php5 php5-common{a} 
0 packages upgraded, 11 newly installed, 0 to remove and 0 not upgraded.
Need to get 6,700kB of archives. After unpacking 18.9MB will be used.
Do you want to continue? [Y/n/?] ^C
root@john-desktop:/home/john/Downloads#

# 4  
Old 07-15-2010
The script is riddled with carriage-return characters which are showing up as "\r". This usually comes from editing a script on a Microsoft platform then copying in the script using binary ftp rather than text ftp.
The line terminator in Microsoft text files is "carriage-return linefeed" whereas in unix text files it is just "linefeed". The suplus carriage-return characters are being treated as part of the command - hence the errors.
It is usually easier to re-transfer the file than to fix it, though there are many standard quick fixes depending on what Operating System you have.
# 5  
Old 07-15-2010
Thanks! That was the problem. I edited the format in nano and re-saved it and it did the tricks.

Thanks again! :-)
Login or Register to Ask a Question

Previous Thread | Next Thread

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

While loop is causing ssh command to exit from script after first iteration.

I am trying to check multiple server's "uptime" in a loop over "ssh". When I execute multiple ssh commands with hard coded servernames script is executing fine. But when I pass server names using while loop, script is exiting after checking first server's status, why? # serverList... (8 Replies)
Discussion started by: kchinnam
8 Replies

2. Shell Programming and Scripting

Python script cuts off early

I wasn't sure if this should go in the networking board or not, since I am trying to log into routers, however I don't think my script issues have anything to do with the routers themselves.... I am trying to write a script that will log into various routers we have on the network and determine... (2 Replies)
Discussion started by: ippy98
2 Replies

3. Shell Programming and Scripting

Awk script problem - Variables Causing Issue

can someone please explain to me what i'm doing wrong with this code: WELT=$(awk '(($1 ~ "^${caag}$") || ($2 ~ "^${caag}$"))' /tmp/Compare.TEXT) when run from the command line, it works. but it seems to be having a problem doing the comparison when variables are involved. i tested from... (1 Reply)
Discussion started by: SkySmart
1 Replies

4. Shell Programming and Scripting

Script causing database corrupt

Hi, Closing the thread (3 Replies)
Discussion started by: dbashyam
3 Replies

5. UNIX for Dummies Questions & Answers

script dont' break out

I have concurrent manager stop and check to verify all the process are stopped BUT even after all the process are stopped query script continues to run without break out. # stop the concurrent manager $COMMON_TOP/admin/scripts/$CONTEXT_NAME/adstpall.sh $DB_USER/$DB_PSWD # check if the... (1 Reply)
Discussion started by: Paul.S
1 Replies

6. UNIX for Dummies Questions & Answers

how to break within a case/esac and stay in script

Wrote the following loop to but if I use exit, then I break entirely from my script, but instead I want to break from the case/esac and go to the next line in my script. I guess I need to know how to exit gracefully from a "while (true). Also, how can I allow the user to enter upper or lowercase... (4 Replies)
Discussion started by: tumblez
4 Replies

7. UNIX for Advanced & Expert Users

Script causing multi forked porcess - not sure why ?

Hi, I am facing a queer situation, when i run the below script it starts up multiple forked process and hangs the unix server , we had to reboot the server once. Can someone pls help me understand why the script is causing multiple processes to start . If i run ps -ef rename.sh , after i start... (2 Replies)
Discussion started by: learnoutmore99
2 Replies

8. Shell Programming and Scripting

Some env setting is causing the script not to work ?

Not sure what has changed in the Unix environment. The following script which was working is now not working. #!/usr/bin/ksh # ----------------------------------------------------------------------------- # File: monitor_db.sh # #... (1 Reply)
Discussion started by: uuser
1 Replies

9. Shell Programming and Scripting

ksh script: 'exit' being treated as 'break 2'

hi, in a korn shell script, has anyone ever seen an 'exit' being treated as a 'break 2'? I have a script which has 3 nested loops. Within the inner most loop, i'm trying to exit the script on a fault condition. instead of exiting, it's acting as a 'break 2' and then continuing on with the... (4 Replies)
Discussion started by: gsatch
4 Replies
Login or Register to Ask a Question