Puncte:0

Cum să reparați directorul de utilizatori pe serverul Ubuntu 20.04

drapel us

Pentru un proiect am două servere, staging și producție. Proiectul este foarte vechi și nu am actualizat sistemul de operare de la Ubuntu 14.04. Deoarece upgrade-ul nu era discutat, recent am migrat serverul de producție la un nou VPS cu Ubuntu 20.04.2. Nu sunt sigur unde am greșit, dar acestea sunt acum simptomele:

Worong Promot
Ori de câte ori am SSH pe server ca root, totul este normal, dar când trec la utilizatorul normal cu su appuser promptul devine gol $, fără nume de utilizator, fără nume de gazdă și fără cale în prompt.

Fără completare automată
De asemenea, nu pot să completez automat căile în comenzi. i.e. când scriu /ho și lovit TAB, în loc să devină linia /Acasă un caracter tabulator literal este adăugat ca /ho .

Fără istoric de comenzi
Când am lovit SUS tasta, în loc să obțină ultima comandă executată, linia devine $ ^[[A.

Lucrările Cron nu au fost executate
Am mai multe cronjob-uri și sunt sigur că nu există nicio problemă cu linia de definire sau serviciul pe care îl apelează, deoarece funcționau pe vechiul server de producție și încă funcționează pe serverul de staging. Joburile nu sunt executate deloc pe noul server.

Fișiere lipsă
Am comparat lista de fișiere de pe serverul de procesare și noul server de producție și am observat că lipsesc un număr de fișiere pe noul server. De exemplu, nu a existat .bashrc fișier în noile servere /home/apuser director. Am adăugat fișierul manual, dar nu s-a schimbat nimic. Așa că m-am gândit că ar trebui să caut ajutor.

Cum pot repara abuzator?

Mikael H avatar
drapel br
Se pare că crearea utilizatorilor a mers prost. De obicei, conținutul lui `/etc/skel` ar fi copiat în noile conturi de utilizator. Încercați să faceți asta manual, remediați permisiunile pentru fișiere, dacă este cazul, apoi reconectați-vă contul „appuser”.
Gabriel Núñez Yuvé avatar
drapel cn
Doar pentru a fi sigur, ai verificat dacă folderul de acasă și shell-ul implicit sunt setate pentru acel utilizator în `/etc/passwd`?
Majid Fouladpour avatar
drapel us
@GabrielNúñezYuvé Captură bună! În /etc/passwd am această linie pentru appuser: `appuser:x:1000:1000::/home/appuser:/bin/sh`, care este interesant diferit de cea a root care este: `root:x:0: 0:root:/root:/bin/bash`, așa că am un token gol după ID-ul grupului și `sh` în loc de `bash`. Am comparat directorul de acasă cu `/etc/skel` așa cum a recomandat Mikael, dar nu am găsit fișiere lipsă. Vă rugăm să adăugați un răspuns și să spuneți dacă este înțelept să editați `/etc/passwd` cu nano sau dacă ar trebui făcut cu un alt instrument. Mulțumiri!
Puncte:0
drapel cn

Shell-ul implicit pare a fi un shell „minimal”. Dacă doriți ca abuzator să aibă aceeași coajă ca rădăcină ar trebui să schimbați shell-ul implicit în /bin/bash.
Puteți face acest lucru prin editarea /etc/passwd fișier și înlocuiți /bin/sh cu /bin/bash folosind editorul de text preferat (cum ar fi vi, vim sau nano), sau cealaltă opțiune folosește chsh comanda, cum ar fi:

chsh appuser -s /bin/bash

Sper ca ajuta!

Majid Fouladpour avatar
drapel us
Am folosit `vipw` în loc să folosesc nano direct și după ce am adăugat un simbol de nume și am schimbat `/bin/sh` în `/bin/bash`, așa cum ați sugerat, toate simptomele au fost remediate. Mulțumesc! Folosirea „vipw” a fost ceva despre care am învățat în acest articol intitulat * Modul corect de a edita fișierele /etc/passwd și /etc/group în Linux* - link: https://web.archive.org/web/20210331085207/https ://ostechnix.com/the-right-way-to-edit-etc-passwd-and-etc-group-files-in-linux/

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.