Sponsored Content
Top Forums UNIX for Beginners Questions & Answers Non-interactive & non-login shell environment? Post 303007484 by MadeInGermany on Friday 17th of November 2017 05:27:04 AM
Old 11-17-2017
The "Linux" kernel handles the scheduling/multitasking and all the I/O, and it knows what an UIDs/owner is.
But it does not know what a shell is, and does not know that a UID is stored in a passwd file.
Nevertheless the kernel handle many atomic operations. Its API towards userland is in man page section 2; in Linux you can list them with:
Code:
man -k . | grep '(2)'

The userland is all the processes. The shell is a normal process. A lot userland code is stored in shared libraries, so the processes simply load the libraries and stay small. The ps -ef command also lists some kernel threads and assignes the PID 0, while the real processes in userland have PID 1 and higher.

The criteria interactive/non-interactive and login/non-login is a matter of the shell, or of the process that invokes it. You can read more of it in the man page
Code:
man sh
man bash

The invocation of a new process is done via a couple of the kernel API functions, basically fork() and exec().
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

How to get environment of a "fresh" login shell?

Hello fellow *nix users! I am a bit confused how could I get an environment of a "fresh/clean" login shell, that is, the environment at that moment when user has started e.g. a new terminal/console or so. So this is the sequence of actions I should be able to do in a single shell session: ... (6 Replies)
Discussion started by: Miikka
6 Replies

2. Shell Programming and Scripting

how to write a shell script to login to a system which is interactive.

Can anybody help me to write a shell script to login interactive system once u open a connection using telnet it will ask for USERCODE: PASSWORD: DOMAIN: (1 Reply)
Discussion started by: sudhakaryadav
1 Replies

3. Homework & Coursework Questions

Help with Interactive / Non Interactive Shell script

Q. Write a script that behaves both in interactive and non interactive mode. When no arguments are supplied it picks up each C program from the directory and prints first 10 lines. It then prompts for deletion of the file. If user supplies arguments with the script , then it works on those files... (1 Reply)
Discussion started by: rits
1 Replies

4. UNIX for Dummies Questions & Answers

Can't login to a free shell environment

I would like to practice shell scripting and need an environment - free shell account. I tried Arbornet and the freeshell.org. But both always give me error: "File operations disabled, server identity can't be verified". Any idea what I should do? thanks in advance. (9 Replies)
Discussion started by: laiko
9 Replies

5. UNIX for Dummies Questions & Answers

What is login and interactive shell?

Hi Guys, Excuse if am asking silly Que ... :rolleyes: Please explain me whats difference between login and interactive shell in Linux .. Have googled but still in doubt .. :confused: --Shirish Shukla (4 Replies)
Discussion started by: Shirishlnx
4 Replies

6. Programming

Non-interactive login using C program in UNIX(Solaris)

Hi i need a c programm to login in unix(solaris). non-interactivley because it seems difficult to do it with unix shell scripting and passwd command cant be used and also i don't have expect installed and i am not allowed to installed expect in our servers. is there any c programm that can help... (1 Reply)
Discussion started by: munish259272
1 Replies

7. Red Hat

Su-only account with ssh capability and no interactive login

Hello experts, Is it possible to have an user account on RHEL 6.3 as a su-only account, but with ssh capability and no interactive login? Let me elaborate. Say, we have a cluster of 5 RHEL 6.3 servers and an user account (strmadmin) on each of the server as an su-only... (1 Reply)
Discussion started by: naveendronavall
1 Replies

8. Shell Programming and Scripting

Script as login shell (passing args to login shell)

Hello all, for security reasons my compagny imposes that my script be launch remotly via ssh under the users login shell. So serverA launches the ssh command to serverB which has a local user with my script as a login shell. Local script works like a charm on his own. serverB$ grep... (20 Replies)
Discussion started by: maverick72
20 Replies

9. UNIX for Advanced & Expert Users

Can adding to a new group be effective in current login environment without re-login?

Hey folks, When a user is added to a new group, the user has to be log out and log in again to make the new group effective. Is there any system command or technique to refresh user group ID update without re-login? I am not talking about to use "login" or "su -l" commands which can only make... (2 Replies)
Discussion started by: hce
2 Replies

10. Homework & Coursework Questions

How to set a non-login non-interactive shell for a user?

I am sorry for creating a new topic after my previous inquiry was closed, but I tried and tried and I do not know how to edit my previous post. This is not exactly any homework, this is one of 40 questions we were expected to prepare for one of the labs. I searched and read what I could and still... (4 Replies)
Discussion started by: me_me_me
4 Replies
CHSH(1) 							   User Commands							   CHSH(1)

NAME
chsh - change your login shell SYNOPSIS
chsh [-s shell] [-l] [-u] [-v] [username] DESCRIPTION
chsh is used to change your login shell. If a shell is not given on the command line, chsh prompts for one. chsh is used to change local entries only. Use ypchsh, lchsh or any other implementation for non-local entries. OPTIONS
-s, --shell shell Specify your login shell. -l, --list-shells Print the list of shells listed in /etc/shells and exit. -u, --help Print a usage message and exit. -v, --version Print version information and exit. VALID SHELLS
chsh will accept the full pathname of any executable file on the system. However, it will issue a warning if the shell is not listed in the /etc/shells file. On the other hand, it can also be configured such that it will only accept shells listed in this file, unless you are root. EXIT STATUS
Returns 0 if operation was successful, 1 if operation failed or command syntax was not valid. SEE ALSO
login(1), passwd(5), shells(5) AUTHOR
Salvatore Valente <svalente@mit.edu> AVAILABILITY
The chsh command is part of the util-linux package and is available from ftp://ftp.kernel.org/pub/linux/utils/util-linux/. util-linux July 2009 CHSH(1)
All times are GMT -4. The time now is 06:19 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy