Solved

su: No shell when su-ing to root

Posted on 2000-04-13
9
490 Views
Last Modified: 2012-06-21
I've done something dumb and changed the shell field in the passwd file to /sbin/bash when it should be /bin/bash.  Now i can't login as root to fix it.
0
Comment
Question by:atozer
  • 4
  • 2
  • 2
  • +1
9 Comments
 
LVL 2

Expert Comment

by:jonke
ID: 2715080
You're going to have to boot from cdrom, and change it this way. What OS are you using? In Solaris, you'd goto the ok prompt. You have to stop-a as obviously without super-user permission you cannot bring the machine down gently.

ok sync

ok boot cdrom -s

Once the machinne is up you need to find out what the boot device is. Use format or eeprom boot-device then grep the output through an ls -l of /dev to find this out. Often the boot disk is c0t0d0s2.

You then need to fsck it because you brought the system down harshly:

fsck /dev/rdsk/cXtXd0s0

Then mount the disk with the partiton on to any mount point:

# mount /dev/dsk/cXtXd0s0 /a

Then you can vi /a/etc/passwd and change the entry from here.

You'll have a similar sort of process to go through with other flavours of unix.
0
 

Author Comment

by:atozer
ID: 2715697
Exactly right.  Ta.  Also have been told that if login shell for root is changed from the bourne shell Solaris will slowely die.
0
 
LVL 2

Accepted Solution

by:
pheur earned 50 total points
ID: 2715716
If you are running Linux (linux puts bash in /bin, other OS'es put it it /usr/local/bin) reboot your system with Ctrl-alt-del and at the LILO prompt issue:
linux init=/bin/bash rw
It will drop you directly into a root shell. Then edit /etc/passwd, do `umount / ` and reboot. it does the job.

Alternatively, if you have sudo installed (this one works under any OS) du `sudo bash`. Of course, it is supposed that sudo is already set-up to allow you to become root, which I doubt it is on your machine.
0
Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

 

Author Comment

by:atozer
ID: 2718077
I was actually using Solaris.  I'm aware of how small a problem this is in Linux but I wanted to append an argument at boot or login to specify the login shell.  Im told it is not possible and jonke's answer is right on the mony.  This is my first time using experts exchange so somehow iv'e given the points to the wrong person.  Sorry jonke.
0
 
LVL 2

Expert Comment

by:jonke
ID: 2720133
Can I have my points then please as pheur seems to have nicked them........ Where's pheur?
0
 
LVL 3

Expert Comment

by:darinw
ID: 2720749
Hi all,

atozer: Please be very careful when accepting an answer to ensure that you award the right Expert. When you have 10 or 15 minutes, you can read through the Help Desk pages and perhaps get a better feel for how you manage your questions. The Help Desk link is at the top of every page. If you need assistance with the site, the Community Support link is at the bottom of every page.

jonke: Please see the question I have posted for you in this topic area:

http://www.experts-exchange.com/jsp/qShow.jsp?ta=unix&qid=10329226 

darinw
Customer Service
0
 

Author Comment

by:atozer
ID: 2721156
I think I've worked it out.  Jonke posted his answer as a comment to which I cannot give points.  
0
 
LVL 3

Expert Comment

by:darinw
ID: 2721175
Yeah, it can be a challenge to know what to do with a question when you first start using Experts Exchange. Thankfully, it is not hard to get the hang of once you have posted a question or two.

Since an Expert had posted an answer, you had only two choices - reject it or accept it. If you had rejected it, you would have seen the 'Accept Comment as an Answer' button and you could have chosen one of jonke's comments as the solution.

Not to worry, we have everything straigtened out.

darinw
Customer Service
0
 

Author Comment

by:atozer
ID: 2721178
I think I've worked it out.  Jonke posted his answer as a comment to which I cannot give points.  
0

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
unix scripting question 1 104
Linux : can't create transaction lock error 1 74
dot directory in FreeBSD??? 4 87
Remote Change Dates on AIX Automation 7 68
Hello fellow BSD lovers, I've created a patch process for patching openjdk6 for BSD (FreeBSD specifically), although I tried to keep all BSD versions in mind when creating my patch. Welcome to OpenJDK6 on BSD First let me start with a little …
In tuning file systems on the Solaris Operating System, changing some parameters of a file system usually destroys the data on it. For instance, changing the cache segment block size in the volume of a T3 requires that you delete the existing volu…
This video shows how to set up a shell script to accept a positional parameter when called, pass that to a SQL script, accept the output from the statement back and then manipulate it in the Shell.
In a previous video, we went over how to export a DynamoDB table into Amazon S3.  In this video, we show how to load the export from S3 into a DynamoDB table.

792 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question