Sponsored Content
Full Discussion: home directory
Top Forums Shell Programming and Scripting home directory Post 302307916 by quirkasaurus on Thursday 16th of April 2009 03:44:17 PM
Old 04-16-2009
My preferred method of dealing with things like this is to do in 2 or 3 steps,
not all at once.

Here's the first script:

Code:
#!/bin/ksh

#----------------------------------------------------------------------#
# head to home partition.                                              #
#----------------------------------------------------------------------#
cd /home

/bin/ls |
while read dir ; do

#----------------------------------------------------------------------#
# Not a directory, next....                                            #
#----------------------------------------------------------------------#
  if [ ! -d $dir ]; then
    continue
  fi

  cd $dir

#----------------------------------------------------------------------#
# Untar the tar file....                                               #
#----------------------------------------------------------------------#
  cp /fullpath/tar_file.gz .
  gunzip tar_file.gz

  chmod -R *

  cd /home

done | tee /tmp/log1

Once that thing is debugged and working correctly,
I use a code generator to create the next dangerous type commands:
( mv commands in this case.... )

Code:
#!/bin/ksh

#----------------------------------------------------------------------#
# head to home partition.                                              #
#----------------------------------------------------------------------#
cd /home

/bin/ls |
while read dir ; do

  cd /home/$dir/public_html/test1

#----------------------------------------------------------------------#
# Randomly rename 6 files.                                             #
#----------------------------------------------------------------------#
  num=0
  /bin/ls *.txt |
  while read file_nm ; do

    (( check = $RANDOM % 2 ))

    if [ $check -eq 0 ]; then
      continue
    fi

    (( num = num + 1 ))

    echo /bin/mv $PWD/$file_nm $PWD/newword${num}.word

    if [ $num -ge 6 ]; then
      break
    fi
  done ### while doing random renaming....

  cd /home

done |
  tee /tmp/log2

Then, before executing, I examine the contents of /tmp/log2.
If the commands in there look right --- then I execute that script with:

Code:
/bin/ksh -xvf /tmp/log2 2>&1 | tee /tmp/log3

Using this method decreases the risk incurred at each step and
provides a log for each step also.

HTH
 

9 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

c++ home directory??

when i compile *.cpp files the compiler didn't find the non standart includes.If i have to put the full path of the includet files where shall i begin from root dirctory or i heve to put includet files in cpp home directory??? can i compile java files in unix(linux mandrake 7) if yes haw... (3 Replies)
Discussion started by: user666
3 Replies

2. UNIX for Dummies Questions & Answers

cd into home directory ~

I'm trying to cd into a home directory with cd ~username_here and I'm getting the following error: ~username_here: does not exist The directory exists and I can directly go to it via cd /export/home/username_here without any problems. Any suggestions? (4 Replies)
Discussion started by: here2learn
4 Replies

3. UNIX for Dummies Questions & Answers

home directory

Hi what is the difference between the directory named /home and the user's home directory? can anyone plz reply? really confuse about it!!!!!!!! thank you (1 Reply)
Discussion started by: nokia3100
1 Replies

4. Programming

Getting Home Directory

Hi I need to get the home directory of current user who is running the program, also i need to store the value in a particular variable and pass to the function. thanks in advance (4 Replies)
Discussion started by: cutechaps
4 Replies

5. SuSE

Could not chdir to home directory

Hi, on logging into oracle account i got these error message Could not chdir to home directory /home/oracle: No such file or directory /usr/X11R6/bin/xauth: error in locking authority file /home/oracle/.Xauthority found the command used in creating user was usermod -d /home/oracle -m... (5 Replies)
Discussion started by: saha
5 Replies

6. Solaris

Restricting SFTP user to a defined directory and home directory

Hi, I've created solaris user which has both FTP and SFTP Access. Using the "ftpaccess" configuration file options "guest-root" and "restricted-uid", i can restrict the user to a specific directory. But I'm unable to restrict the user when the user is logged in using SFTP. The aim is to... (1 Reply)
Discussion started by: sftpuser
1 Replies

7. Solaris

home directory for roleadd

hi all.. by seeing the subject, you can judge that i am new bee to solaris. my question in mind is 'Why do we need to specify a home directory for roleadd ?'. specifying a home directory for user is meaningful because user oriented preferences can be placed inside it. RBAC uses attributes in... (1 Reply)
Discussion started by: starworse@yahoo
1 Replies

8. Solaris

Not able to create directory in /home.

I am working on Solaris 10 machine with autofs(auto_home) disabled. But when I am creating any directory inside /home like /home/Telco, it's going in sleep, and nothing is happening until I manually end the process. Can any one help me out here? ---------- Post updated 2014-01-14 at 05:05... (2 Replies)
Discussion started by: nixhead
2 Replies

9. Solaris

SunOS confusing root directory and user home directory

Hello, I've just started using a Solaris machine with SunOS 5.10. After the machine is turned on, I open a Console window and at the prompt, if I execute a pwd command, it tells me I'm at my home directory (someone configured "myuser" as default user after init). ... (2 Replies)
Discussion started by: egyassun
2 Replies
SMRSH(8)						      System Manager's Manual							  SMRSH(8)

NAME
smrsh - restricted shell for sendmail SYNOPSIS
smrsh -c command DESCRIPTION
The smrsh program is intended as a replacement for sh for use in the ``prog'' mailer in sendmail(8) configuration files. It sharply limits the commands that can be run using the ``|program'' syntax of sendmail in order to improve the over all security of your system. Briefly, even if a ``bad guy'' can get sendmail to run a program without going through an alias or forward file, smrsh limits the set of programs that he or she can execute. Briefly, smrsh limits programs to be in a single directory, by default /usr/libexec/sm.bin, allowing the system administrator to choose the set of acceptable commands, and to the shell builtin commands ``exec'', ``exit'', and ``echo''. It also rejects any commands with the characters ``', `<', `>', `;', `$', `(', `)', ` ' (carriage return), or ` ' (newline) on the command line to prevent ``end run'' attacks. It allows ``||'' and ``&&'' to enable commands like: ``"|exec /usr/local/bin/filter || exit 75"'' Initial pathnames on programs are stripped, so forwarding to ``/usr/bin/vacation'', ``/home/server/mydir/bin/vacation'', and ``vacation'' all actually forward to ``/usr/libexec/sm.bin/vacation''. System administrators should be conservative about populating the sm.bin directory. For example, a reasonable additions is vacation(1), and the like. No matter how brow-beaten you may be, never include any shell or shell-like program (such as perl(1)) in the sm.bin direc- tory. Note that this does not restrict the use of shell or perl scripts in the sm.bin directory (using the ``#!'' syntax); it simply dis- allows execution of arbitrary programs. Also, including mail filtering programs such as procmail(1) is a very bad idea. procmail(1) allows users to run arbitrary programs in their procmailrc(5). COMPILATION
Compilation should be trivial on most systems. You may need to use -DSMRSH_PATH="path" to adjust the default search path (defaults to ``/bin:/usr/bin'') and/or -DSMRSH_CMDDIR="dir" to change the default program directory (defaults to ``/usr/libexec/sm.bin''). FILES
/usr/adm/sm.bin - default directory for restricted programs on most OSs /var/adm/sm.bin - directory for restricted programs on HP UX and Solaris /usr/libexec/sm.bin - directory for restricted programs on FreeBSD (>= 3.3) and DragonFly BSD SEE ALSO
sendmail(8) $Date: 2013-11-22 20:52:00 $ SMRSH(8)
All times are GMT -4. The time now is 09:00 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy