On 10/18/2012 07:52 PM, Jonathan Haws wrote:
Okay, I have done a couple of things:

1. I appended to the base-passwd recipe and added my own patch that would patch 
the passwd file to have root use a bash shell.  I have verified that this is 
the case when I login via echo $0.  It tells me that root's shell is bash.

2. I have appended to the base-files recipe and added a do_install_append() 
function to my bbappend file that copies the dot.bashrc to /home/root/.bashrc.  
I have verified that this is taking place and the .bashrc file is actually in 
/home/root.

3. I ran 'strace -f bash' after logging in and /home/root/.bashrc is sourced (I 
saw it in the output and my aliases were available).

However, upon first login, it appears that /home/root/.bashrc is NOT sourced by 
bash.  How can I get bash to source that file when I login at a console?


There are 2 solutions for this: rename your .bashrc in .profile, or copy /etc/skel/.profile in /root/.profile

.bashrc is sourced only for non-login shells. For console login shells only .profile (or .bash_profile or .bash_login) is sourced.

Cheers,
--Mihai

Thanks for the help!
Jonathan


________________________________________
From: yocto-boun...@yoctoproject.org [yocto-boun...@yoctoproject.org] on behalf 
of Mihai Lindner [mihaix.lind...@linux.intel.com]
Sent: Wednesday, October 17, 2012 02:29
To: yocto@yoctoproject.org
Subject: Re: [yocto] .bashrc not being used by root account

On 10/17/2012 09:25 AM, Venkata ramana gollamudi wrote:
You can check the same with  "strace -f bash"
You can see the files being loaded, as there is a rc file loading sequence 
exists for bash.

Regards,
Ramana

________________________________________
From: yocto-boun...@yoctoproject.org [yocto-boun...@yoctoproject.org] on behalf 
of Jonathan Haws [jonathan.h...@sdl.usu.edu]
Sent: Tuesday, October 16, 2012 9:32 PM
To: yocto@yoctoproject.org
Subject: [yocto] .bashrc not being used by root account

I have modified the .bashrc file for the system, however the root account does 
not seem to use it by default.  What am I missing?  I would rather not have to 
source the .bashrc file every time I login as root.

Try `echo $0` to see the shell you're in. By default you should be in
`sh`, which does not source .bashrc.
You can execute `bash` after login, or change the login shell of 'root'.

Cheers,
--Mihai


Thanks,
Jonathan

_______________________________________________
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto
_______________________________________________
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto



--
Mihai Lindner
_______________________________________________
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto




--
Mihai Lindner
_______________________________________________
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto

Reply via email to