Otu esi agbanwe kernel Runtime Parameters n'ụzọ na-adịgide adịgide na nke anaghị adịgide


Na akụkụ 13 nke a ka esi eji GRUB gbanwee omume nke sistemu site na ịnyefe nhọrọ na kernel maka usoro buut na-aga n'ihu.

N'otu aka ahụ, ị nwere ike iji ahịrị iwu na sistemụ Linux na-agba ọsọ iji gbanwee ụfọdụ kernel kernel ụfọdụ dị ka mgbanwe otu oge, ma ọ bụ na-adịgide adịgide site na-edezi faịlụ nhazi.

Ya mere, a na-ahapụ gị ka ị mee ka ma ọ bụ gbanyụọ kernel paramita na-efe efe na-enweghị ihe isi ike mgbe ọ dị mkpa n'ihi mgbanwe achọrọ n'ụzọ a na-atụ anya ka usoro ahụ rụọ ọrụ.

Na-ewebata sistemụ faịlụ/proc

Nkọwapụta kachasị ọhụrụ nke Standardkpụrụ Hierarchy System na-egosi na /proc na-anọchi anya usoro ndabara maka ijikwa usoro na ozi sistemụ yana ozi kernel na ebe nchekwa ndị ọzọ. Karịsịa, /proc/sys bụ ebe ị nwere ike ịhụ ozi niile gbasara ngwaọrụ, ndị ọkwọ ụgbọ ala na ụfọdụ njirimara kernel.

Nhazi ime nke /proc/sys dabere na kernel a na-eji, mana ị nwere ike ịhụ akwụkwọ ndekọ aha ndị a n'ime. N'aka nke ya, nke ọ bụla n'ime ha ga-enwe subdirectories ndị ọzọ ebe a na-edobe ụkpụrụ maka otu paramita ọ bụla:

  1. dev: paramita maka ngwaọrụ akọwapụtara nke ejikọrọ na igwe.
  2. fs: nhazi usoro faịlụ (quotas na inodes, dịka ọmụmaatụ).
  3. kernel: nhazi kernel-kpọmkwem.
  4. net: nhazi netwọk.
  5. vm: iji ebe nchekwa mebere kernel.

Iji megharịa paramita ojiri oge kernel anyị ga-eji iwu sysctl. Enwere ike ịlele ọnụọgụ parampat nke nwere ike gbanwee site na:

# sysctl -a | wc -l

Ọ bụrụ na ịchọrọ ịlele ndepụta kernel parampat, mee naanị:

# sysctl -a 

Dị ka mmepụta nke iwu ahụ dị n'elu ga-enwe ọtụtụ ahịrị, anyị nwere ike iji pipeline na-esote obere iji nyochaa ya nke ọma:

# sysctl -a | less

Ka anyị leba anya n'ahịrị ole na ole mbụ. Biko mara na mkpụrụedemede mbụ n'ahịrị nke ọ bụla dakọtara aha akwụkwọ ndekọ aha dị n'ime /proc/sys:

Dịka ọmụmaatụ, ahịrị ahụ emepụtara:

dev.cdrom.info = drive name:        	sr0

na-egosi na sr0 bụ utu aha maka mbanye anya. N'ikwu ya n'ụzọ ọzọ, otu ahụ ka kernel\na-ahụ na-akwọ ụgbọala na-eji aha ahụ na-ezo aka na ya.

Na ngalaba na-esote anyị ga-akọwa otu esi agbanwe paramita oge ojiri nke kernel ndị ọzọ na Linux.

Otu esi agbanwe ma ọ bụ megharịa Linux Kernel Runtime Parameteres

Dabere na ihe anyị kọwara ugbu a, ọ dị mfe ịhụ na aha paramita dabara na nhazi ndekọ aha n'ime /proc/sys ebe enwere ike ịhụ ya.

Ọmụmaatụ:

dev.cdrom.autoclose → /proc/sys/dev/cdrom/autoclose
net.ipv4.ip_forward → /proc/sys/net/ipv4/ip_forward

Nke ahụ kwuru, anyị nwere ike ịlele uru nke otu paramita kernel Linux site na iji sysctl na-esote aha paramita ma ọ bụ gụọ faịlụ metụtara:

# sysctl dev.cdrom.autoclose
# cat /proc/sys/dev/cdrom/autoclose
# sysctl net.ipv4.ip_forward
# cat /proc/sys/net/ipv4/ip_forward

Iji tọọ uru maka paramita kernel anyị nwekwara ike iji sysctl, mana iji -w nhọrọ wee soro aha paramita, akara nhata, yana uru achọrọ.

Ụzọ ọzọ bụ iji echo iji degharịa faịlụ jikọtara na oke. N'ikwu ya n'ụzọ ọzọ, usoro ndị a bụ otu iji gbanyụọ ọrụ mbugharị ngwugwu na sistemụ anyị (nke, n'ụzọ, kwesịrị ịbụ uru ndabara mgbe igbe na-ekwesịghị ịgafe okporo ụzọ n'etiti netwọk):

# echo 0 > /proc/sys/net/ipv4/ip_forward
# sysctl -w net.ipv4.ip_forward=0

Ọ dị mkpa iburu n'obi na paramita kernel nke edobere iji sysctl ka a ga-amanye naanị n'oge nnọkọ dị ugbu a ma ga-apụ n'anya mgbe arụgharịrị sistemụ ahụ.

Iji tọọ ụkpụrụ ndị a kpamkpam, dezie /etc/sysctl.conf na ụkpụrụ achọrọ. Dịka ọmụmaatụ, iji gbanyụọ mbugharị ngwugwu na /etc/sysctl.conf hụ na ahịrị a pụtara na faịlụ:

net.ipv4.ip_forward=0

Wee gbaa iwu na-eso ka itinye mgbanwe na nhazi na-agba ọsọ.

# sysctl -p

Ihe atụ ndị ọzọ dị mkpa kernel runtime parameters bụ:

fs.file-max na-akọwapụta ọnụ ọgụgụ kachasị nke faịlụ ejiri kernel nwere ike ekenye maka sistemụ. Dabere na ebumnuche ebumnuche nke sistemụ gị (web/nchekwa data/sava faịlụ, ịkpọ aha ole na ole), ịnwere ike ịgbanwe uru a iji gboo mkpa sistemụ.

Ma ọ bụghị ya, ị ga-enweta ozi mperi \Ọtụtụ faịlụ mepere emepe kacha mma, ma nwee ike igbochi sistemụ arụmọrụ ka ọ bụrụ nke kacha njọ.

Ọ bụrụ n'ihi mmejọ na-emeghị ihe ọjọọ, ị ga-ahụ onwe gị n'ọnọdụ ikpeazụ a, buut na otu onye ọrụ mode (dị ka akọwara na Nkebi 14 - Nyochaa na Tọọ usoro njedebe Linux nke usoro a.

A na-eji kernel.sysrq mee ka igodo SysRq dị na ahụigodo gị (nke a makwaara dị ka igodo ihuenyo mbipụta) iji kwe ka njikọ ụfọdụ igodo kpalite omume mberede mgbe sistemụ ahụ anabataghị ya.

Uru ndabara (16) na-egosi na sistemụ ahụ ga-asọpụrụ nchikota Alt SysRq+ wee mee omume ndị edepụtara na akwụkwọ sysrq.c dị na kernel.org (ebe igodo bụ otu mkpụrụedemede na kernel.org). b-z nso). Dịka ọmụmaatụ, Alt+SysRq+b ga-emegharị sistemụ ahụ n'ike (jiri nke a dịka ebe ikpeazụ ma ọ bụrụ na ihe nkesa gị anaghị anabata ya).

Ịdọ aka ná ntị! Anwala ịpị nchikota igodo a na igwe mebere n'ihi na ọ nwere ike ịmanye sistemụ nnabata gị ka ọ malitegharịa!

Mgbe atọrọ na 1, net.ipv4.icmp_echo_ignore_all ga-eleghara arịrịọ ping anya wee dobe ha na ọkwa kernel. Egosiri nke a na onyonyo dị n'okpuru - rịba ama ka arịrịọ ping na-efunahụ mgbe ịtọlitechara oke kernel a:

Ụzọ ka mma ma dị mfe iji tọọ paramita oge ịgba ọsọ n'otu n'otu bụ iji faịlụ .conf n'ime /etc/sysctl.d, na-achịkọta ha site na otu.

Dịka ọmụmaatụ, kama ịtọ net.ipv4.ip_forward=0 na net.ipv4.icmp_echo_ignore_all=1 na /etc/sysctl.conf, anyị nwere ike ịmepụta faịlụ ọhụrụ akpọrọ net.conf n'ime /etc/ sysctl.d:

# echo "net.ipv4.ip_forward=0" > /etc/sysctl.d/net.conf
# echo "net.ipv4.icmp_echo_ignore_all=1" >> /etc/sysctl.d/net.conf

Ọ bụrụ na ịhọrọ iji usoro a, echefula iwepu otu ahịrị ahụ na /etc/sysctl.conf.

Nchịkọta

N'isiokwu a, anyị akọwala otu esi agbanwe kernel runtime parameters, ma na-adịgide adịgide ma na-adịgide adịgide, na-eji sysctl, /etc/sysctl.conf, na faịlụ n'ime /etc/sysctl.d.

Na sysctl docs ị nwere ike ịchọta ozi ndị ọzọ gbasara ihe mgbanwe ndị ọzọ pụtara. Faịlụ ndị ahụ na-anọchi anya isi mmalite akwụkwọ zuru oke gbasara paramita enwere ike ịtọ site na sysctl.

Ị hụrụ na akụkọ a bara uru? Anyị nwere olileanya na ị mere ya. Egbula ime ka anyị mara ma ị nwere ajụjụ ọ bụla ma ọ bụ aro iji melite.