Puncte:0

Există vreun motiv pentru care sysctl este împărțit în atât de multe fișiere de configurare?

drapel om

Există un motiv întemeiat pentru care sysctl este împărțit în atât de multe fișiere de configurare în mai multe directoare?

Există vreun motiv pentru care nu pot șterge toate sysctl.d fișierele de configurare și puneți totul /etc/sysctl.conf?

Sistemul meu rulează Xubuntu 20.04 și sysctl.d directoare:

  • /etc/sysctl.d/
  • /usr/lib/sysctl.d/

Dar trebuie să existe și alte fișiere de configurare cu sysctl taste, pentru că dacă rulez:

# sudo sysctl --system

scoate toate cheile de la personalizarea mea /etc/sysctl.conf fisier si toate cheile din diverse sysctl.d fișiere.

Totuși, dacă alerg:

# sudo sysctl -a

scoate tone de taste nesetate explicit (oricum de mine).

Bănuiesc că trebuie să știu cum să găsesc toate fișierele de configurare care se încarcă sysctl cheile în nucleu.

om sysctl enumerați doar un total de 6 locații posibile pentru sysctl fisiere de configurare:

  • /run/sysctl.d/ care nu există.
  • /etc/sysctl.d/ care conține 8 fișiere de configurare generate de OS și 99-sysctl.conf link simbolic către /etc/sysctl.conf.
  • /usr/local/lib/sysctl.d/ care nu există.
  • /usr/lib/sysctl.d/ care conține 3 fișiere setate de OS.
  • /lib/sysctl.d/ care este la fel ca /usr/lib/sysctl.d/ deși nu afișează o legătură simbolică.
  • /etc/sysctl.conf meu puternic modificat sysctl fişier.

Am parcurs toate fișierele de configurare individuale și nu reprezintă nici măcar jumătate din sysctl cheile încărcate în nucleu. Înțeleg că unele aplicații se pot seta sysctl chei, dar trebuie să existe și alte fișiere de configurare care să încarce toate aceste chei în nucleu.

În afară de opțiuni pentru sysctl comanda, pagina de manual nu are alte date.

drapel ar
Ce distro și versiune de Linux folosești?
muru avatar
drapel us
„în mai multe directoare” care directoare?
emptysocket avatar
drapel om
Mi-am editat întrebarea cu mai multe informații. Mulțumiri!
heynnema avatar
drapel ru
**PERICOL PERICOL**! Încetați să vă mai încurcați cu fișierele la nivel de sistem. Nu șterge nimic. Nu pune o grămadă de lucruri inutile în /etc/sysctl.conf. Veți ajunge cu un sistem cu adevărat stricat.
bac0n avatar
drapel cn
Fișierul individual aparține de obicei unor pachete diferite `apt-file find /etc/sysctl.` și la fel și sysctl.conf (procps), dacă oricare dintre aceste pachete este actualizat, modificările dumneavoastră se vor pierde.
bac0n avatar
drapel cn
...cum și în ce ordine sunt încărcați parametrii este descris în `man sysctl`
drapel cn
„Există un motiv întemeiat pentru care sysctl este împărțit în atât de multe fișiere de configurare în mai multe directoare?” da este. 1. continuitate. Când există o eroare, directorul cu partea cu problema este omis. Când în 1 conf asta nu se poate întâmpla. Eroare înseamnă un sistem prăbușit. 2. pentru a evita dependențele: fișierele pot fi ordonate și executate în ordine. In 1 conf nu se poate. si mai sunt multe motive :)
drapel cn
Acest lucru este prin design din motive întemeiate. UBUNTU nu a avut nicio mână în asta, așa că mi se pare offpic.
emptysocket avatar
drapel om
Deci este o problemă Debian sau Linux, nu Ubuntu?
Puncte:0
drapel us

/run/sysctl.d/ care nu există.

/alerga este temporară, modificările din acesta se pierd la repornire. Deci introduceți fișierele de configurare în /alerga sunt folosite pentru modificarea boot-ului curent, dar fără a persista acele modificări după repornire.

/etc/sysctl.d/ care conține 8 fișiere de configurare generate de OS și 99-sysctl.conf link simbolic către /etc/sysctl.conf.

Aici se va păstra configurația din pachetele care pot fi modificate de către administrator. dpkg vă va informa când editările dvs. sunt în conflict cu actualizările pachetului.

/usr/local/lib/sysctl.d/ care nu există.

/usr/local este destinat utilizării de către administrator, iar pachetele nu vor face nimic acolo. Ar trebui să faci directorul dacă ai nevoie de el.

/usr/lib/sysctl.d/ care conține 3 fișiere setate de OS.

Fișiere în /usr/lib nu sunt menite să fie modificate de către administrator. Actualizările pachetului vor suprascrie modificările aici.

/lib/sysctl.d/ care este la fel ca /usr/lib/sysctl.d/ deși nu afișează o legătură simbolică.

De cand cel /usr combina, /cos, /lib, etc. sunt legături simbolice către directoarele corespunzătoare din /usr.

/etc/sysctl.conf meu puternic modificat sysctl fişier.

Lăsat pentru compatibilitate inversă, deoarece oamenii (și scripturile și alte instrumente) se vor aștepta în continuare.


Modificarea configurației în mod tranzacțional este cea mai ușoară atunci când puteți adăuga sau elimina un fișier cu conținutul exact pe care îl doriți, în loc să utilizați regexe sau orice altceva pentru a modifica o linie în mijlocul unui fișier de configurare plin cu cine-știe-ce. Adică directoarele care permit fișierele de configurare introduse sunt foarte preferabile fișierelor de configurare individuale.

emptysocket avatar
drapel om
Este exact ceea ce trebuia să știu. Mulțumesc.

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.