Run stuff in root

Jonyboy

New Member
Hi all,

This script logs in as root and changes the permissions of someone elses files.

But once the script runs su i have to type Exit in the command line and then it will run the rest of the script as not root.

I was wondering how to make a script log in as root and then run run the rest of the commands.

Code:
#/bin/bash
su                                                # Script stops here
chmod 777 -R /home/jonathan   # I type exit in the terminal and script resumes
exit                    # Script cant execute previous command
 
Worked it out. If anyone wants to see the script

Code:
#/bin/bash



echo '#/bin/bash' >> $HOME/Leaderpermisions

echo 'echo "#/bin/bash" >> $HOME/leader' >> $HOME/Leaderpermisions	
echo 'echo "chmod 777 -R /home/jonathan" >> $HOME/leader' >> $HOME/Leaderpermisions		
echo 'echo "chmod 644 /home/jonathan/.dmrc" >> $HOME/leader' >> $HOME/Leaderpermisions		
echo 'echo "exit" >> $HOME/leader' >> $HOME/Leaderpermisions						
echo 'chmod 777 $HOME/leader' >> $HOME/Leaderpermisions

echo 'echo "Stage 1 of 3"' >> $HOME/Leaderpermisions
echo 'sleep 1' >> $HOME/Leaderpermisions

echo '$HOME/leader' >> $HOME/Leaderpermisions

echo 'echo "stage 2 of 3"' >> $HOME/Leaderpermisions
echo 'sleep 1' >> $HOME/Leaderpermisions

echo 'rm $HOME/leader' >> $HOME/Leaderpermisions					

echo 'echo "Stage 3 of 3"' >> $HOME/Leaderpermisions
echo 'sleep 1' >> $HOME/Leaderpermisions

echo 'echo' >> $HOME/Leaderpermisions

echo 'echo "You now have permission"' >> $HOME/Leaderpermisions

echo 'sleep 3' >> $HOME/Leaderpermisions						

echo 'exit' >> $HOME/Leaderpermisions

chmod 777 $HOME/Leaderpermisions


echo Please enter the Leader Password
echo
su jonathan -c $HOME/Leaderpermisions
rm $HOME/Leaderpermisions

exit

This script is really split into 3.

The first one which you select to execute is

Code:
#/bin/bash
#Script 2 being created
chmod 777 $HOME/Leaderpermisions
echo Please enter the Leader Password
echo
su jonathan -c $HOME/Leaderpermisions
rm $HOME/Leaderpermisions
exit

That then creates script 2 (Leader permissions)

Code:
#/bin/bash
echo "#/bin/bash" >> $HOME/leader
echo "chmod 777 -R /home/jonathan" >> $HOME/leader
echo "chmod 644 /home/jonathan/.dmrc" >> $HOME/leader

echo "exit" >> $HOME/leader					
chmod 777 $HOME/leader
echo "Stage 1 of 3"
sleep 1

$HOME/leader

echo "stage 2 of 3"
sleep 1

rm $HOME/leader				

echo "Stage 3 of 3"' >> $HOME/Leaderpermisions
sleep 1

echo
echo "You now have permission"

sleep 3					

exit

which then creates Leader

Code:
/bin/bash
chmod 777 -R /home/jonathan
chmod 644 /home/jonathan/.dmrc
exit
 
Okay.

2nd to final

Code:
#/bin/bash


echo "#/bin/bash" >> $HOME/leader	
echo "chmod 777 -R /home/jonathan" >> $HOME/leader	
echo "chmod 644 /home/jonathan/.dmrc" >> $HOME/leader		
echo "exit" >> $HOME/leader					
chmod 777 $HOME/leader

echo Please enter the Leader Password
echo
su jonathan -c $HOME/leader
rm $HOME/leader

exit

I think it's an improvement.
 
Code:
#/bin/bash


echo "#/bin/bash" >> $HOME/leader	
echo "chmod 777 -R /home/jonathan" >> $HOME/leader	
echo "chmod 644 /home/jonathan/.dmrc" >> $HOME/leader		
echo 'echo "complete"' >> $HOME/leader
echo "exit" >> $HOME/leader					
chmod 777 $HOME/leader

echo Please enter the Leader Password
echo
su jonathan -c $HOME/leader
rm $HOME/leader
sleep 3
exit

Final (this time it has a confirmation message that only echo's in success.
 
Back
Top