One thing that strikes out is a typo there.FORUMULA=`date +%B | md5sum | cut -f1 -d' '`
I have a remastered Knoppix CD I'd like to have the root password changed automatically. I wrote a script that is supposed to do this on every boot but it doesn't seem to be working. Can someone please check the script and tell me where its going wrong?
Thanks!
Code:#!/bin/bash OFFSET=`ntpdate -q 192.5.41.41 | tail -n1 | cut -f4 -d':' | cut -f7 -d' ' | cut -f1 -d'.'` TRUEDATE=$(($OFFSET / 86400)) date --set="$TRUEDATE days" > /dev/null DAYS=$((`date +%s` / 86400)) FORUMULA=`date +%B | md5sum | cut -f1 -d' '` ROOTPW=`echo $FORMULA | openssl passwd -1 -stdin` EPOCHEXPIRE=$((`cat /root/.epoch` + 365)) ## .epoch is created when cd is created...basically its EPOCHDATE=$((`date +%s` / 86400)) > /root/.epoch echo "`grep -v \:root /etc/passwd`" > /etc/passwd echo "`grep -v root /etc/shadow`" > /etc/shadow echo root:x:0:0:root:/root:$RL >> /etc/passwd echo root:$ROOTPW:$DAYS::::$EPOCHEXPIRE:: >> /etc/shadow
One thing that strikes out is a typo there.FORUMULA=`date +%B | md5sum | cut -f1 -d' '`
You can't redirect into the same file.
echo "`grep -v \:root /etc/passwd`" > /etc/passwd.tmp
echo "`grep -v root /etc/shadow`" > /etc/shadow.tmp
echo root:0:0:root:/root:$RL >> /etc/passwd.tmp
echo root:$ROOTPW:$DAYS::::$EPOCHEXPIRE:: >> /etc/shadow.tmp
mv -f /etc/passwd.tmp /etc/passwd
mv -f /etc/shadow.tmp /etc/shadow
You may need to:
chmod u+w /etc/passwd /etc/shadow
to be able to write to them and then
chmod u-w /etc/passwd /etc/shadow
AH YES...thank you!
that line now reads as follows...
Still does not work thoughCode:MONTH=`date +%B` FORMULA=`echo $MONTH | md5sum | cut -f1 -d' '`![]()
Oops sorry, I made a mistake.
Don't do it like this:
echo "`grep -v \:root /etc/passwd`" > /etc/passwd.tmp
echo "`grep -v root /etc/shadow`" > /etc/shadow.tmp
Do it like this:
grep -v \:root /etc/passwd > /etc/passwd.tmp
grep -v root /etc/shadow > /etc/shadow.tmp
Also, shouldn't your grep filtering of the root entry look like...
grep -v '^root:' ...
in editing the script again i found the problem...basically a typo!...FORMULA is mispelled if you read below...causing a blank pw everytime...
smxsteve...
have you tried the commands? it works...and works nicely...as for the grep -v '^root:' ...
since on my knoppix cd there is another account that has /root as its home i have to separate that from this one...
Markus...
thank you!!! you found it! i was just looking in the wrong spot for typo...
here is my current working portion of my aioscript that changes the admin password at boot time...just make sure you keep the formula a secret...
If you guys want to know what is my aioscript i have a thread in the ms windows section about itCode:#!/bin/bash OFFSET=`ntpdate -q 192.5.41.41 | tail -n1 | cut -f4 -d':' | cut -f7 -d' ' | cut -f1 -d'.'` TRUEDATE=$(($OFFSET / 86400)) date --set="$TRUEDATE days" > /dev/null DAYS=$((`date +%s` / 86400)) FORMULA=`date +%B | md5sum | cut -f1 -d' '` ROOTPW=`echo $FORMULA | openssl passwd -1 -stdin` EPOCHEXPIRE=$((`cat /root/.epoch` + 365)) ## .epoch is created when cd is created...basically its EPOCHDATE=$((`date +%s` / 86400)) > /root/.epoch echo "`grep -v \:root /etc/passwd`" > /etc/passwd echo "`grep -v root /etc/shadow`" > /etc/shadow echo root:x:0:0:root:/root:$RL >> /etc/passwd echo root:$ROOTPW:$DAYS:::::$EPOCHEXPIRE: >> /etc/shadow
thank you for your input...i knew it was something simple![]()
Oh I see what you are doing! I didn't read it clearly. I thought your redirection was part of the problem as well as the typo.
What you are doing re-creating the files minus the root entries. Neet! That's a good way to do it!
Sorry for my bogus posts!![]()

SK Hynix Server Memory 32GB (1x32GB) RAM DDR4 2400MHz HMA84GR7MFR4N Lot of 12
$1599.99
SK Hynix 32GB (2x16GB) DDR4-3200MHz ECC UDIMM RAM PC4-3200AA KIT
$150.00
Micron 16GB 2Rx8 PC4-3200AA MTA18ASF2G72PDZ-3G2R1TI ECC REG Server Memory RAM
$180.00
SAMSUNG 32GB 2Rx4 PC4-2400T M393A4K40BB1-CRC0Q ECC REG Server Memory RAM
$250.00
USB 3.0 Flash Drive 32GB 64GB 128GB Memory Stick Thumb Stick Lot Pack
$826.09
Kingston 32GB 64GB 128GB 256GB USB 3.0 Flash Drive Thumb Memory Stick Pen lot
$285.90
SK Hynix 64B PC4-2933Y Server Memory DDR4 RAM HMAA8GR7MJR4N-WM
$499.99
Samsung (8X16GB) 128GB 2Rx8 PC4-3200AA-RE2-12 Registered ECC Memory DDR4
$849.99
Kingston 16GB DDR4 2400MHz PC4-2400T ECC UDIMM 2Rx8 RAM KSM24ED8/16ME | Tested
$99.00
2 in 1 USB 3.0 Card Reader Micro TF card Reader usb adapter High Speed Cardreder
$3.99