Sammen er /usr/sbin/useradd kommandoen og
/etc/skel
mappen (begge er enkle å
sette opp og bruke) gir en måte å sikre at nye brukere legges til i
LFS systemet med samme startinnstillinger for ting som f.eks
PATH
, tastaturbehandling og andre
miljøvariabler. Å bruke disse to fasilitetene gjør det lettere å
sikre den første tilstanden for nye brukere lagt til i systemet.
/etc/skel
mappen holder kopier av ulike
initialiseringer og andre filer som kan kopieres til nye brukers
hjemmemappe når /usr/sbin/useradd programmet legger
til den nye brukeren.
useradd programmet
bruker en samling av standard verdier holdt i /etc/default/useradd
. Denne filen er opprettet i en
basis LFS installasjon av Shadow
pakken. Hvis den er fjernet eller omdøpt, useradd programmet bruker noen
interne standardinnstillinger. Du kan se standardverdiene ved å kjøre
/usr/sbin/useradd -D.
For å endre disse verdiene, endre ganske enkelt /etc/default/useradd
filen som root
bruker. Et alternativ til direkte
modifisering av filen er å kjøre useradd som root
bruker mens man leverer ønskede
modifikasjoner på kommandolinjen. Informasjon om hvordan du gjør
dette finnes i useradd
man side.
For å komme i gang, opprette en /etc/skel
katalog og sørg for at det bare kan
skrives av systemadministratoren, vanligvis root
. Opprette mappen som root
er den beste veien å gå.
Modusen til alle filer fra denne delen av boken du legger i
/etc/skel
skal bare kunne skrives av
eieren. Også siden det er umulig å si hva slags sensitiv informasjon
en bruker kan plassere i sin kopi av disse filene, bør du gjør dem
uleselige av "group" og "other".
Du kan også legge inn andre filer i /etc/skel
og andre tillatelser kan være nødvendig
for dem.
Bestem hvilke initialiseringsfiler som skal leveres i alle (eller de
fleste) nye brukers hjemmemappe. Avgjørelsene du tar vil påvirke det
du gjør i de neste to delene, Oppstartsfilene til Bash
Skallet og Vimrc Filer. Noen eller alle disse
filene vil være nyttig for root
, noen
allerede eksisterende brukere og nye brukere.
Filene fra de delene som du kanskje vil plassere i /etc/skel
inkluderer .inputrc
, .bash_profile
, .bashrc
, .bash_logout
, .dircolors
, og .vimrc
. Hvis du er usikker på hvilken av disse som
skal plasseres der, bare fortsett til følgende seksjoner, les hver
seksjon og eventuelle referanser, og ta deretter avgjørelsen din.
Du vil kjøre et litt modifisert sett med kommandoer for filer som er
plassert i /etc/skel
. Hver seksjon vil
minne deg på dette. Kort fortalt er bokens kommandoer skrevet for
filer ikke lagt til
/etc/skel
og i stedet bare sender
resultatene til brukerens hjemmemappe. Hvis filen skal være med i
/etc/skel
, endre bokens kommando(er)
for å sende utdata dit i stedet og så er det bare å kopiere filen fra
/etc/skel
til de aktuelle mappene, som
/etc
, ~
eller hjemmemappen til en bruker som allerede er i systemet.
Når du legger til en ny bruker med useradd, bruk -m
parameteren, som forteller useradd om å opprette brukerens
hjemmemappe og kopiere filer fra /etc/skel
(kan bli overstyrt) til den nye brukerens
hjemmemappe. For eksempel (utfør som root
bruker):
useradd -m <newuser>
Hvis du deler et /home
eller
/usr/src
med en annen Linux distro (for
eksempel vertsdistroen som brukes til å bygge LFS), kan du opprette
en bruker med samme UID (og samme primærgruppe-GID) for å holde
fileierskapet konsistent på tvers av systemene. Først på den andre distroen, få UID til brukeren og
GID for brukerens primære gruppe:
getent passwd <username>
| cut -d ':' -f 3,4
Kommandoen skal gi ut UID og GID, atskilt med et kolon. Nå på BLFS systemet oppretter du primærgruppen og brukeren:
groupadd -g<GID>
<username>
&& useradd -u<UID>
-g<username>
<username>