blob: b9d299c93188ea17e1c4fe88b937c64080023fd6 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE part PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
<sect1 id="ch-config-shells" xreflabel="Creating the /etc/shells File">
<?dbhtml filename="etcshells.html"?>
<!--
<sect1info>
<othername>$LastChangedBy$</othername>
<date>$Date$</date>
</sect1info>
-->
<title>Creating the /etc/shells File</title>
<indexterm zone="ch-config-shells">
<primary sortas="e-etc-shells">/etc/shells</primary>
</indexterm>
<para>The <filename>shells</filename> file contains a list of
login shells on the system. Applications use this file to determine
whether a shell is valid. For each shell a single line should be
present, consisting of the shell's path relative to the root of the
directory structure (/).</para>
<para>For example, this file is consulted by <command>chsh</command>
to determine whether an unprivileged user may change the login shell for her
own account. If the command name is not listed, the user will be denied the
ability to change shells.</para>
<para>It is a requirement for applications such as
<application>GDM</application> which does not populate the
face browser if it can't find <filename>/etc/shells</filename>, or
FTP daemons which traditionally disallow access to users
with shells not included in this file.</para>
<screen role="root"><userinput>cat > /etc/shells << "EOF"
<literal># Begin /etc/shells
/bin/sh
/bin/bash
# End /etc/shells</literal>
EOF</userinput></screen>
</sect1>
|