General :: Bash Script For Doing Tape Backups - Need Root Password
Feb 14, 2011
I have a bash script that I am using for doing tape backups. The meat of the bash script is
sudo tar --totals -H pax -cvf /dev/st0 *
This all works just fine.
But of course tape functions have to be ran as root, therefore sudo, requiring the standard user to enter the root password. I would like to be in a situation where the standard user does not need (does not know) the root password. I think my solution is add that standard user.
User named dog to the sudo list.
I have reviewed the sudo man page and looked at [URL]. I am still fuzzy.
1- Will adding user 'dog' to this sudo list do what I expect meaning I can run:
sudo tar --totals -H pax -cvf /dev/st0 *
and the user is not queried for the root password
2- How do I do that? and do I make a cmd alais for only: "tar --totals -H pax -cvf /dev/st0 *"
My distro is OpenSuse.
How do you get Rsync to do incremental backups rather than full backups? At the moment I have a script that will create a backup folder (if it doesnt already exist) then copy the source files into the backup directory with the command
Target is where the files will be backed up to Sources is the dir(s) to be backed up Exclude files is the list of files not to backup log file is where the output will be saved to. At the moment it only does full backups, but I would only like to do incremental, how would this be achieved? Am I missing out an option in the Rsync that is required.
I am an absolute Linux Beginner who is being required to do a bit of admin work because the boss just fired the old linux admin. Unfortunately, one of our employees cannot remember her password to her email account and as such I need to reset it on our linux server.What I want to check is that this email account is actually a linux user account and I simply will reset the password for it using the passwd command from the root login. Is that correct?
I was trying to edit a file requiring root permissions, so I used sudo. I typed the root password and it failed. This happened three times, and the process was ended. I then logged in as root (su) and was able to navigate to the file and make changes as root. Am I missing something? How would I edit the sudoers file such that this password would work? Or is there another way to log in to the sudo group to make these changes? How do I set sudo passwords?
I have been using an LTO-5 Ultrium-3000 tape drive connected to an ATTO HBA without problem. I can control the tape drive using "mt -f /dev/nst0" and have been able to make successful backups using cpio, tar, and dump/restore. I followed some instructions on the web about how to install the HPE Library and Tape Tools application (version 4.21) which relies on conversion of a rpm to a deb file. The software seems to have been installed correctly and runs. However the hardware scan function does not recognize my tape drive. The following is suggested in the user manual if the tape device is not recognized by the software under Linux:
1. Login as root. 2. Edit the following file: vi /etc/modules.conf 3. Add the following line as appropriate: add options scsi_mod max_scsi_luns=128 4. Reboot the computer.
The problem is I don't have an /etc/modules.conf and am not sure exactly which file would be equivalent? If this is even the correct solution.
My tape drive is controllable and functions well using "mt -f /dev/nst0 status" so it seems to be a matter of LT&T software to detect the tape drive.
At the risk of providing too much info here some, possibly relevant, output from lshw
*-pci:3 description: PCI bridge product: 6 Series/C200 Series Chipset Family PCI Express Root Port 1 vendor: Intel Corporation physical id: 1c bus info: pci@0000:00:1c.0 version: b5
I need to login as root, or at least get root privileges, in a cron triggered backup run. The straight way to do this would be the backup server making an ssh connection to the server to be backed up (this way because I want to avoid many servers being backed up in parallel and the backup server itself would be managing this diversity), via the rsync command which would be performing the backup's synchronization step.
I'm looking for alternatives to this in some form. I'd like to disallow direct root login to my ssh port (not 22One idea I have is to have the backup server initiate an ssh login as a non-root user, to either the actual source server, or to a server that can reach the source server ... and set up port forwarding. Over the forwarded port, then initiate the rsync that logs in as root via another port that allows direct root, but cannot be reached from the internet at all (because the border firewall doesn't include this port as allowed in).FYI, these logins will be using ssh keys, not passwords. I do need to keep ownership metadata for files being backed up, so this is why I am using root. Also, rsync is needed to get the incremental updates to keep bandwidth usage lower (otherwise I could just transfer a tarball each day).Anyone have any other ideas or comments, for security issues, based on experience doing things like this (backups, routine data replication, etc)?
I am looking at getting a DLT drive for my network; however, I have never used the tar command with a tape drive. What happens if the data is larger then 1 tape? Does the tar application automatically span tapes or do I need to use switches so it spans multipule tapes? Right now my Full backup will take 2 or 3 tapes.
I am trying to log into a server with a particular account. Let's say I don't know the password for that account. Can I do this using ssh? I am wondering if it is possible to do it in one command, instead of logging in as root and running su.
Making a script. This is for my linux class. Basically when you run it, whatever directory it is in, zips everything, backs it up to the folder its in, and also makes a copy of it in the root directory. Here is what I have, but its not running right.
Code: #!/bin/bash echo echo echo "Automate Backups" echo -n "Would you like to backup? Y or N:" read answer1 if [$answer1 = "y"] then if [$USER = "root"] then echo tar -cPvzf "$USER"_backup.tar.gz.`date +%F` /"$USER"/* cp "$USER"_backup.tar.gz.`date +%F` /backups/"$USER"_backup.tar.gz.`date +%F` echo "Successful Backup" fi echo tar -cPvzf "$USER"_backup.tar.gz.`date +%F` ~/"$USER"/* cp "root"_backup.tar.gz.`date +%F` /backups/"$root"_backup.tar.gz.`date +%F` echo "Successful Backup"
I've been a DOS/Windows guy for 20 years, and recently became a SW test lab helper. My company uses CentOS for a lot, so I've become familiar with it, but obviously not as comfortable as I am with Windows.
Here's what I have planned:
machine: Core 2 Duo E8400, 8GB DDR2, 60GB SSD OS drive, ATI 4650 video card, other storage is flexible (I have 3 1TB drives and 4 750GB drives around that can be used in this machine.)
uses: HTPC, Network Storage, VMWare server host: SMTP, FTP server, and Web server virtual machines
I've figured out how to do much of this, but I haven't figured out how to do backups in Linux. I've been spoiled with Windows, with the built in backup system so simple to use. I find myself overwhelmed with the array of backup software, and unable to determine which to use. none of them seem to do everything I need them to do, but some come close, I think. I'm hoping someone here can help me out in figuring out which program to use and how to use it.
Here is what I need the backup software to do: 1. scheduled unattended backups, with alerts if the backups fail 2. a weekly full backup with incremental every 12 hours 3. removing the old backups when the new full backup runs, I would prefer to keep 2 weeks of backups, but that's not necessary 4. a GUI would be preferable, since my arthritic fingers don't always do as I want them to do. I typo things a lot, and the label worn off my backspace can attest to that.
I am a bash newbie, and am writing a bash script that will allow transfer of files between two computers. BTW, is there a more secure alternative to scp? Currently, I am doing this manually, by using scp. The remote server always prompts me for the password, and I supply that. I want to automate this (hence the bash script). However, I dont want to supply my password in plain text (or if at all - I was under the impression that open SSL does away with passwords and uses certificates etc?).
how I can automate my current process, without explicitly displaying my password. I am running on Ubuntu 10.0.4
I'm basically setting up two sshfs mounts and I have it set up so I run one command but type my password twice.Is there an easy to way to input a password using bash and pass that variable to another process asking for a password?
I wrote a script ages ago to automate an FTP transfer. This was easy as within the script you can specify the password with password <whatever>. Now I am wanting to do a similar thing with SFTP (SSH). I know that SFTP works differently and I cannot specify the password within the script - what do I need to do on the server I am connecting to to either "trust" the host I am connecting from or to somehow specify the password for "sftp user@some_host"? It's IP address will always be the same.
When I use the scp command, here is a command prompt "Input password:",Now I want to use a one line command to perform the scp command.I tested the "echo "password" | scp xxx firstname.lastname@example.org:/", but failed.
This is an old question asked many times, which, however, is NEVER answered directly in any manual I've checked. So...I'm writing a bash install script (instead of a rpm or .deb package) that must be run by a normal user. change to superuser (asking for password and receiving it) and the rest of the script to be executed in the superuser mode in order to install what I mean to install.I know how `sudo ...` or `su `root"..."` or `gnome-terminal -e ...` can achieve this purpose by creating certain batch files and then give them as argument to these commands. That's NOT what I'm asking, however.I want to know how I can make the script interactively switch to superuser mode and go on running the rest of the script (can be a lot of code) in that mode. I don't mind if it oens a separate terminal window to do that; just how can that be achieved?
I am having redhat 5 linux machine running on my windwos x in vmware workstation. Today i was installing oracle software in redhat 5 after editing the bash profile for the oracle user i got the following messages
su - oracle password:***** -bash: [oracle: command not found
i am using fedora 10 while i login as a normal user its working fine username@hostname while i login as a root user it goes directly into -bash-3.2# if i check pwd it shows /root till now i am not facing any problem as i am using as a normal user but how can i change -bash-3.2# to root@hostname which file and where to edit
Yesterday I re-installed Musix over top of another installation of Musix using the keep files option.I did this because after it froze last night it would boot up properly.I got that problem fixed and I still have all of my files and settings but I am having one problem now:root has a password and I can't guess what it is.
I'm trying do some tests about recover root's password but I'm having some problems.My OS used to do the test is fedora 12.I'm trying to boot with ubuntu 10.04 and trying to recover the rot's password.When I edit /etc/shadown and erase the password field, the system can't logging anymore, all the other users cann't logging anymore.