I am using Konsole in Kubuntu.
I was wondering what is the difference between a profile in Konsole and the profiles in our bash?
I am reading that we can create different profiles per Konsole session and use different bash per session.
What is meant by using different bash per session here?
I thought that the default bash is the one defined in the /etc/passwd for a user

  • 1
    You are cofusing various things here. bash is just one of various shells, /etc/passwd will have your default shell, there is no such thing as a default bash. Can you provide a link to what you're reading? – terdon Jan 29 '14 at 23:00
  • You might want to read this. – terdon Jan 30 '14 at 1:12

The Konsole profile contains settings specific to Konsole eg terminal font, text colour, background colour, settings for shorcuts to manipulate tabs etc.

/etc/passwd defines the default shell for the user, of which bash is just the most common option. Alternatives to bash are zsh, ksh, csh etc. You can google each of them to find out more about them. The default shell is the program that will be run inside of Konsole, which essentially can work with any shell or terminal program for that matter.

You also have files like .bashrc which contains settings specific to bash, regardless of the terminal it is run in. .profile is broader still in that it will effect whatever shell is used, even if it is not bash.

I think the most important distinction to make is that Konsole is a 'terminal emulator,' meaning that that it just does the same job as an old style terminal, but nicely inside a desktop environment. There are various settings which effect how it does this job and aren't much to do with the actual shell running inside it.

  • So what is meant by "different bash per Konsole session"? – Jim Jan 29 '14 at 23:12
  • You may have to give more context on that, but most likely it means that you have a different bash process for each console session. Just the same way as two instances of Konsole are separate, so are the bash processes that they run. – Graeme Jan 29 '14 at 23:15
  • I thought that the bash process runs "separately" from the terminal. I am not sure what you mean the bash process. The one defined in /etc/passwd? – Jim Jan 29 '14 at 23:32
  • Every time you run a program, a process is created (with is own process id). Every time you open a Konsole window or tab a new bash process (or whatever is defined in /etc/passwd) is started. They are distinct from each other and the parent Konsole process. For basic terminal programs there are the associated streams: stdin (for text input), stdout and stderr (both for text output). It is through these that bash (or any other shell) communicates with the terminal. – Graeme Jan 29 '14 at 23:41
  • @Jim I would say that, no bash does not run separately from the terminal, the terminal spawns a new bash process. If you want to share a bash process between tabs, you'd need something like tmux or other terminal multiplexer. – xenoterracide Jan 30 '14 at 19:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.