เดตเดฟเดตเตผเดคเตเดคเดเดจเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เดเดฎเตเดเด: เดตเดฟเดตเดฟเดงเดคเดฐเด เดเดฃเตเดเตเดฏเตโเดจเดฑเตเดเตพ เดจเดฎเตเดฎเตเดเต เดเตเดตเดฟเดคเดคเตเดคเดฟเดฒเตเดเตเดเต เดตเตปเดคเตเดคเดฟเตฝ เดเดเดจเตเดจเตเดเดฏเดฑเตเดจเตเดจเดคเดฟเดจเตเดฑเต เดชเดถเตเดเดพเดคเตเดคเดฒเดคเตเดคเดฟเตฝ, เดเดคเต เดเดฐเดฟเดเตเดเตฝ เดเดฐเดเดญเดฟเดเตเด เดธเดพเดเตเดเตเดคเดฟเดเดตเดฟเดฆเตเดฏเดเตพ เดเดจเตเดคเดพเดฃเตเดจเตเดจเต เดเดฃเตเดเตเดคเตเดคเตเดจเตเดจเดคเต เดตเดณเดฐเต เดฐเดธเดเดฐเดตเตเด เดเดชเดฏเตเดเดชเตเดฐเดฆเดตเตเดฎเดพเดฃเต. เด
เดตเดฏเดฟเตฝ เดเดฟเดฒเดคเต เดเดจเตเดจเตเดตเดฐเต เดเดชเดฏเตเดเดชเตเดฐเดฆเดฎเดพเดฏเดฟ เดเดชเดฏเตเดเดฟเดเตเดเดพเตป เดเดดเดฟเดฏเตเด, เดเดจเตเดจเดพเตฝ เดเดฒเตเดฒเดพเดตเดฐเตเด เด
เดคเตเดคเดฐเด เดฐเตเดคเดฟเดเตพ เดเตผเดฎเตเดฎเดฟเดเตเดเตเดจเตเดจเดฟเดฒเตเดฒ (เด
เดฒเตเดฒเตเดเตเดเดฟเตฝ เด
เดตเดฐเตเดเต เดฆเตเดฐเตเดคเดเดคเดฟเดฏเดฟเดฒเตเดณเตเดณ เดตเดฟเดเดธเดจ เดธเดฎเดฏเดคเตเดคเต เด
เดตเตผ เดชเดฟเดเดฟเดเตเดเดชเตเดชเตเดเตเดเดฟเดฒเตเดฒเตเดเตเดเดฟเตฝ เด
เดตเตผเดเตเดเต เด
เดฑเดฟเดฏเดพเด). เด
เดคเตเดคเดฐเดคเตเดคเดฟเดฒเตเดณเตเดณ เดเดฐเต เดธเดพเดเตเดเตเดคเดฟเดเดตเดฟเดฆเตเดฏเดฏเดพเดฃเต เดฏเตเดธเตผ เดฎเตเดกเต เดฒเดฟเดจเดเตเดธเต. เดเดฑเดฟเดเดฟเดจเดฒเดฟเดจเตเดฑเต เดฐเดเดฏเดฟเดคเดพเดตเต, เดชเดดเดฏ เดธเดเดญเดตเดตเดฟเดเดพเดธเดเตเดเดณเดฟเตฝ เดเดคเดพเดฃเต เดเดชเตเดชเตเดดเตเด เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจเดคเตเดจเตเดจเตเด เดเดคเดพเดฃเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเดพเดคเตเดคเดคเตเดจเตเดจเตเด เดฎเดจเดธเดฟเดฒเดพเดเตเดเดฟ, 2k19-เตฝ เดจเดฟเดเตเดเตพเดเตเดเต เดเดเตเดเดจเต เดเดฐเต เดนเตเดเดฌเตเดฐเต เดฏเตเดเดเดเตฝ เดจเตเดเดพเด เดเดจเตเดจเดคเดฟเดจเตเดเตเดเตเดฑเดฟเดเตเดเตเดณเตเดณ เดเดเตเดเด เดเดเตเดเดฎเดพเดฏเตเดณเตเดณ เดจเดฟเตผเดฆเตเดฆเตเดถเด เดชเตเดฒเตเดฏเตเดณเตเดณ เดเดจเตเดคเตเดเตเดเดฟเดฒเตเด เดเดฐเตเดฎเดฟเดเตเดเต. เด
เดคเต, เดเดเตเดเตพ เดฏเดฅเดพเตผเดคเตเดฅ เดชเตเดธเตเดฑเตเดฑเดฟเดจเตเดฑเต เดฐเดเดฏเดฟเดคเดพเดตเดฟเดจเต เดนเดฌเดฑเดฟเดฒเตเดเตเดเต เดเตเดทเดฃเดฟเดเตเดเต
เดฒเดฟเดจเดเตเดธเดฟเดฒเต เดฏเตเดธเตผ เดฎเตเดกเต, เดตเดพเดธเตเดคเดตเดคเตเดคเดฟเตฝ, เดฒเดฟเดจเดเตเดธเต เดเตเตผเดฃเดฒเดฟเดจเตเดฑเต เดเดฐเต เดชเตเตผเดเตเดเต เดเดฃเต. เดเดฐเต เดเดชเดฏเตเดเตเดคเต เดชเตเดฐเดเตเดฐเดฟเดฏเดฏเดพเดฏเดฟ เดเดฐเต เดชเตเตผเดฃเตเดฃ เดฒเดฟเดจเดเตเดธเต เดเตเตผเดฃเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเดเตเดเดพเตป เด เดฎเตเดกเต เดจเดฟเดเตเดเดณเต เด
เดจเตเดตเดฆเดฟเดเตเดเตเดจเตเดจเต เดเตเดเดพเดคเต เดกเตเดฐเตเดตเดฑเตเดเตพ เดชเดฐเตเดเตเดทเดฟเดเตเดเดพเตป เดกเดตเดฒเดชเตเดชเตผเดฎเดพเตผ เดธเดพเดงเดพเดฐเดฃเดฏเดพเดฏเดฟ เดเดชเดฏเตเดเดฟเดเตเดเตเดจเตเดจเต. เดเดจเตเดจเดพเตฝ เด เดฎเตเดกเต เดเดฐเต เดชเตเดคเต เดเดฑเตเดฑเดชเตเดชเตเดเตฝ เดเดชเดเดฐเดฃเดฎเดพเดฏเตเด เดเดชเดฏเตเดเดชเตเดฐเดฆเดฎเดพเดฃเต, เดเดคเดฟเดจเตเดฑเต เดคเดคเตเดตเด เดตเตเตผเดเตเดตเตฝ เดฎเตเดทเตเดจเตเดเดณเตเดเต เดชเตเดฐเดตเตผเดคเตเดคเดจเดคเตเดคเดฟเดจเต เดธเดฎเดพเดจเดฎเดพเดฃเต. เด เดฎเตเดกเต เดกเตเดเตเดเดฑเดฟเดจเตเดเตเดเดพเตพ เดเตเดเตเดคเตฝ เดเดธเตเดฒเตเดทเตป เดจเตฝเดเตเดจเตเดจเต, เดเดจเตเดจเดพเตฝ เดเตเดตเดฟเดเด เด
เดฒเตเดฒเตเดเตเดเดฟเตฝ เดตเตเตผเดเตเดตเตฝ เดฌเตเดเตโเดธเต เดชเตเดฒเตเดณเตเดณ เดชเตเตผเดฃเตเดฃเดฎเดพเดฏ เดตเดฟเตผเดเตเดเตเดตเตฝ เดฎเตเดทเตเดจเตเดเตเดเดพเตพ เดเตเดฑเดตเดพเดฃเต.
เดชเตเดคเตเดตเต, เดเดชเดฏเตเดเตเดคเต เดฎเตเดกเต เดเดชเดฏเตเดเดฟเดเตเดเดพเตป เดตเดฟเดเดฟเดคเตเดฐเดตเตเด เดฌเตเดฆเตเดงเดฟเดฎเตเดเตเดเตเดณเตเดณเดคเตเดฎเดพเดฏ เดเดชเดเดฐเดฃเดฎเดพเดฏเดฟ เดคเตเดจเตเดจเดฟเดฏเตเดเตเดเดพเด, เดชเดเตเดทเต เด
เดคเดฟเดจเต เดเดชเตเดชเตเดดเตเด เด
เดคเดฟเดจเตเดฑเต เดเดชเดฏเตเดเดเตเดเดณเตเดฃเตเดเต. เดเดฒเตเดฒเดพเดคเตเดคเดฟเดจเตเดฎเตเดชเดฐเดฟ, เดเดคเต เดเดฐเต เดชเตเดฐเดคเตเดฏเตเดเดพเดตเดเดพเดถเดฎเดฟเดฒเตเดฒเดพเดคเตเดค เดเดชเดฏเตเดเตเดคเดพเดตเดฟเตฝ เดจเดฟเดจเตเดจเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจ เดเดฐเต เดชเตเตผเดฃเตเดฃเดฎเดพเดฏ เดฒเดฟเดจเดเตเดธเต เดเตเตผเดฃเดฒเดพเดฃเต. เดนเตเดธเตเดฑเตเดฑเต เดฎเตเดทเตเดจเต เดฏเดพเดคเตเดฐเต เดญเตเดทเดฃเดฟเดฏเตเดฎเดฟเดฒเตเดฒเดพเดคเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเดพเตป เด เดธเดตเดฟเดถเตเดทเดค เดตเดฟเดถเตเดตเดธเดจเตเดฏเดฎเดฒเตเดฒเดพเดคเตเดค เดเตเดกเต เด
เดจเตเดตเดฆเดฟเดเตเดเตเดจเตเดจเต. เดเดคเตเดฐเต เดชเตเตผเดฃเตเดฃเดฎเดพเดฏ เดเตเตผเดฃเตฝ เดเดฏเดคเดฟเดจเดพเตฝ, เด
เดคเดฟเดจเตเดฑเต เดชเตเดฐเดเตเดฐเดฟเดฏเดเตพ เดนเตเดธเตเดฑเตเดฑเต เดฎเตเดทเตเดจเดฟเตฝ เดจเดฟเดจเตเดจเต เดตเตเตผเดคเดฟเดฐเดฟเดเตเดเดฟเดฐเดฟเดเตเดเตเดจเตเดจเต, เด
เดคเดพเดฏเดคเต เดเดชเดฏเตเดเตเดคเต เดฎเตเดกเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจ เดชเตเดฐเดเตเดฐเดฟเดฏเดเตพ เดนเตเดธเตเดฑเตเดฑเดฟเดจเต เดฆเตเดถเตเดฏเดฎเดพเดเดฟเดฒเตเดฒ. เดเดคเต เดธเดพเดงเดพเดฐเดฃ เดกเตเดเตเดเตผ เดเดฃเตเดเตเดฏเตโเดจเตผ เดชเตเดฒเตเดฏเดฒเตเดฒ, เด เดธเดพเดนเดเดฐเตเดฏเดคเตเดคเดฟเตฝ เดนเตเดธเตเดฑเตเดฑเต เดฎเตเดทเตเตป เดเดฒเตเดฒเดพเดฏเตเดชเตเดชเตเดดเตเด เดถเตเดเดฐเดคเตเดคเดฟเดจเตเดณเตเดณเดฟเดฒเต เดชเตเดฐเดเตเดฐเดฟเดฏเดเตพ เดเดพเดฃเตเดจเตเดจเต. เดเดจเตเดฑเต เดธเตเตผเดตเดฑเตเดเดณเดฟเตฝ เดเดจเตเดจเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เด pstree เดญเดพเดเด เดจเตเดเตเดเต:
containerdโโฌโcontainerd-shimโโฌโtiniโโฌโdnsdโโโ19*[{dnsd}]
โ โ โโs6-svscanโโโs6-supervise
โ โโ10*[{containerd-shim}]
โโcontainerd-shimโโฌโtiniโโฌโaerialโโโ21*[{aerial}]
โ โ โโs6-svscanโโโs6-supervise
โ โโ10*[{containerd-shim}]
โโcontainerd-shimโโฌโtiniโโฌโs6-svscanโโโs6-supervise
โ โ โโsurl
โ โโ9*[{containerd-shim}]
โโcontainerd-shimโโฌโtiniโโฌโhโโโ13*[{h}]
โ โ โโs6-svscanโโโs6-supervise
โ โโ10*[{containerd-shim}]
โโcontainerd-shimโโฌโgoproxyโโโ14*[{goproxy}]
โ โโ9*[{containerd-shim}]
โโ32*[{containerd}]
เดเดชเดฏเตเดเตเดคเต เดฎเตเดกเดฟเดฒเต เดฒเดฟเดจเดเตเดธเต เดเตเตผเดฃเดฒเดฟเดจเตเดฑเต pstree เดฏเตเดฎเดพเดฏเดฟ เดเดคเต เดคเดพเดฐเดคเดฎเตเดฏเด เดเตเดฏเตเดฏเตเด:
linuxโโฌโ5*[linux]
โโslirp
เดกเตเดเตเดเตผ เดเดฃเตเดเตเดฏเตโเดจเดฑเตเดเดณเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดฎเตเดชเตเตพ, เด เดคเดฟเดฅเดฟเดฏเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจ เดชเตเดฐเดเตเดฐเดฟเดฏเดเดณเตเดเต เดชเตเดฐเตเดเตพ เดนเตเดธเตเดฑเตเดฑเดฟเตฝ เดจเดฟเดจเตเดจเต เดเดจเดฟเดเตเดเต เดเดพเดฃเดพเตป เดเดดเดฟเดฏเตเด. เดฒเดฟเดจเดเตเดธเต เดฏเตเดธเตผ เดฎเตเดกเดฟเตฝ, เดเดคเต เดธเดพเดงเตเดฏเดฎเดฒเตเดฒ. เดเดจเตเดคเดพเดฃเต เดเดคเดฟเดจเตผเดคเตเดฅเด? เดเดคเดฟเดจเตผเดคเตเดฅเด เดฒเดฟเดจเดเตเดธเดฟเดจเตเดฑเต เดเดกเดฟเดฑเตเดฑเดฟเดเดเต เดธเดฌเตเดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเดฒเตเดเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจ เดฎเตเดฃเดฟเดฑเตเดฑเดฑเดฟเดเดเต เดเตเดณเตเดเตพ เดเดจเตเดจเดพเดฃเต เดเดพเดฃเตเดจเตเดจเดฟเดฒเตเดฒ เดเดธเตเดฑเตเดฑเต เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจ เดชเตเดฐเดเตเดฐเดฟเดฏเดเตพ. เดเดจเตเดจเดพเตฝ เดเดฟเดฒ เดธเดพเดนเดเดฐเตเดฏเดเตเดเดณเดฟเตฝ, เด เดธเดตเดฟเดถเตเดทเดค เดเดฐเตเดคเดฒ เดฎเตเตผเดเตเดเดฏเตเดณเตเดณ เดตเดพเดณเดพเดฏเดฟ เดฎเดพเดฑเดฟเดฏเตเดเตเดเดพเด.
เดชเตเดคเตเดตเต, เดเตเดตเดเตเดฏเตเดณเตเดณ เดฎเตเดดเตเดตเตป เดชเตเดธเตเดฑเตเดฑเตเด เดเดตเดถเตเดฏเดฎเตเดณเตเดณ เดซเดฒเด เดจเตเดเดพเดจเตเดณเตเดณ เดเดตเตเดทเดฃเดคเตเดคเดฟเดจเตเดฑเตเดฏเตเด เดชเดฐเตเดเตเดเตป เดถเตเดฐเดฎเดเตเดเดณเตเดเตเดฏเตเด เดเดฐเต เดถเตเดเดฐเดฎเดพเดฃเต. เดเดคเต เดเตเดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต, เดเดจเดฟเดเตเดเต เดตเดฟเดตเดฟเดง เดชเตเดฐเดพเดคเดจ เดเดชเดเดฐเดฃเดเตเดเตพ เดเดชเดฏเตเดเดฟเดเตเดเตเดฃเตเดเดฟ เดตเดจเตเดจเต, เดเตเตผเดฃเตฝ เดเดฑเดตเดฟเดเดเตเดเตพ เดตเดพเดฏเดฟเดเตเดเดฃเด, เดเดพเตป เดชเตเดฐเดพเดฅเดฎเดฟเด เดตเดฟเดฆเตเดฏเดพเดฒเดฏเดคเตเดคเดฟเตฝ เดชเด เดฟเดเตเดเตเดจเตเดจ เดเดพเดฒเดคเตเดคเต เดเดดเตเดคเดฟเดฏ เดเตเดกเดฟเดจเตเดฑเต เดคเตเดตเตเดฐเดฎเดพเดฏ เดกเตเดฌเดเตเดเดฟเดเดเต เดจเดเดคเตเดคเดฃเด, เดเตเดเดพเดคเต เดเดจเดฟเดเตเดเต เดเดตเดถเตเดฏเดฎเดพเดฏ เดเดชเดเดฐเดฃเดเตเดเตพ เดเดฃเตเดเตเดคเตเดคเตเดจเตเดจเดคเดฟเดจเต เดเดฐเต เดชเตเดฐเดคเตเดฏเตเด เดฌเตเดจเดฑเดฟ เดเดชเดฏเตเดเดฟเดเตเดเต เดนเตเดฑเตเดเต เดฌเดฟเตฝเดกเตเดเตพ เดเดชเดฏเตเดเดฟเดเตเดเต เดเดฟเดเตเดเตผ เดเตเดฏเตเดฏเตเดฃเตเดเดฟเดตเดจเตเดจเต. . เด เดเตเดฒเดฟเดเดณเตเดฒเตเดฒเดพเด เดเดจเตเดฑเต เดเดเตผเดธเดฟเดฏเดฟเดฒเต เดเตบเดเตเดเตเดเดฟเดเดณเต เดเดจเตเดจเต เดฎเดพเดเดฟเดเต เดเดจเตเดจเต เดตเดฟเดณเดฟเดเตเดเดพเตป เดชเตเดฐเตเดฐเดฟเดชเตเดชเดฟเดเตเดเต. เดชเตเดคเดฟเดฏ เดเตเตผเดฃเดฒเตเดเดณเดฟเดฒเตเด OS เดชเดคเดฟเดชเตเดชเตเดเดณเดฟเดฒเตเด เดเดฐเตเดเตเดเดฟเดฒเตเด เดเดฐเต เดเดพเดฐเตเดฏเด เดชเดฐเตเดเตเดทเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดตเดฟเดถเตเดตเดธเดจเตเดฏเดฎเดพเดฏ เดกเตเดเตเดฏเตเดฎเตเดจเตเดฑเตเดทเดจเดพเดฏเดฟ เด เดชเตเดธเตเดฑเตเดฑเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดฎเตเดจเตเดจเต เดเดพเตป เดชเตเดฐเดคเตเดเตเดทเดฟเดเตเดเตเดจเตเดจเต.
เดเดฎเดชเตเดชเตเดเตเดคเตเดคเดฒเต
เดฒเดฟเดจเดเตเดธเต เดฏเตเดธเตผ เดฎเตเดกเต เดธเดเตเดเตเดเดฐเดฟเดเตเดเตเดจเตเดจเดคเต เดจเดฟเดฐเดตเดงเดฟ เดเดเตเดเดเตเดเดณเดฟเดฒเตเดเตเดฏเดพเดฃเต:
- เดนเตเดธเตเดฑเตเดฑเดฟเตฝ เดกเดฟเดชเตปเดกเตปเดธเดฟเดเตพ เดเตปเดธเตเดฑเตเดฑเดพเตพ เดเตเดฏเตเดฏเตเดจเตเดจเต;
- Linux เดเตเตผเดฃเตฝ เดกเตเตบเดฒเตเดกเต เดเตเดฏเตเดฏเตเดจเตเดจเต;
- เดเตเตผเดฃเตฝ เดฌเดฟเตฝเดกเต เดเตเตบเดซเดฟเดเดฑเตเดทเตป;
- เดเตเตผเดฃเตฝ เด เดธเดเดฌเตเดฒเดฟ;
- เดฌเตเดจเดฑเดฟ เดเตปเดธเตเดฑเตเดฑเดฒเตเดทเตป;
- เดเดธเตเดฑเตเดฑเต เดซเดฏเตฝ เดธเดฟเดธเตเดฑเตเดฑเด เดเตเดฐเดฎเตเดเดฐเดฟเดเตเดเตเดจเตเดจเต;
- เดเตเตผเดฃเตฝ เดฒเตเดเตเดเต เดชเดพเดฐเดพเดฎเตเดฑเตเดฑเดฑเตเดเดณเตเดเต เดคเดฟเดฐเดเตเดเตเดเตเดชเตเดชเต;
- เดเดฐเต เด เดคเดฟเดฅเดฟ เดถเตเดเดเดฒ เดธเดเตเดเตเดเดฐเดฟเดเตเดเตเด;
- เดเดธเตเดฑเตเดฑเต เดเตเตผเดฃเตฝ เดเดฐเดเดญเดฟเดเตเดเตเดจเตเดจเต.
เดจเดฟเดเตเดเตพ เดเดคเต เดธเตเดตเดฏเด เดเตเดฏเตเดฏเดพเตป เดคเตเดฐเตเดฎเดพเดจเดฟเดเตเดเตเดเดฏเดพเดฃเตเดเตเดเดฟเตฝ, เดเดฟเดฒ เดเดฌเตเดฃเตเดเต เด เดฒเตเดฒเตเดเตเดเดฟเตฝ เดกเตเดฌเดฟเดฏเตป เดชเตเดฒเตเดณเตเดณ เดธเดฟเดธเตเดฑเตเดฑเดเตเดเดณเดฟเตฝ เดตเดฟเดตเดฐเดฟเดเตเดเดฟเดฐเดฟเดเตเดเตเดจเตเดจเดคเตเดฒเตเดฒเดพเด เดจเดฟเดเตเดเตพ เดฎเดฟเดเตเดเดตเดพเดฑเตเด เดเตเดฏเตเดฏเตเดฎเตเดจเตเดจเต เดเดพเตป เดเดฐเตเดคเตเดจเตเดจเต. เดฎเตเตฝเดชเตเดชเดฑเดเตเดเดตเดฏเตเดฒเตเดฒเดพเด เดเดจเตเดฑเต เดชเตเดฐเดฟเดฏเดชเตเดชเตเดเตเด เดตเดฟเดคเดฐเดฃเดคเตเดคเดฟเตฝ เดจเดเดชเตเดชเดฟเดฒเดพเดเตเดเดพเตป เดเดพเตป เดถเตเดฐเดฎเดฟเดเตเดเต - เดเตฝเดชเตเตป, เดชเดเตเดทเต เดเดจเตเดจเตเด เดตเดจเตเดจเดฟเดฒเตเดฒ, เดฏเตเดธเตผ เดฎเตเดกเดฟเดฒเต เดกเตเดฐเตเดตเดฑเตเดเตพเดเตเดเดพเดฏเดฟ เดฒเดฟเดจเดเตเดธเต เดเตเตผเดฃเดฒเดฟเดจเต เดนเดพเตผเดกเต-เดฌเตเตปเดกเดฟเดเดเต glibc-isms เดเดฃเตเดเต เดเดจเตเดจ เดตเดธเตเดคเตเดค เดเดพเดฐเดฃเด. เด เดตเดธเดพเดจเด เดชเตเดฐเดถเตเดจเด เดฎเดจเดธเตเดธเดฟเดฒเดพเดเตเดเดฟเดฏ เดถเตเดทเด เดเดคเต เด เดชเตโเดธเตเดเตเดฐเตเดฎเดฟเดฒเตเดเตเดเต เดฑเดฟเดชเตเดชเตเตผเดเตเดเต เดเตเดฏเตเดฏเดพเตป เดเดพเตป เดชเดฆเตเดงเดคเดฟเดฏเดฟเดเตเดจเตเดจเต.
เดนเตเดธเตเดฑเตเดฑเดฟเตฝ เดกเดฟเดชเตปเดกเตปเดธเดฟเดเตพ เดเตปเดธเตเดฑเตเดฑเดพเตพ เดเตเดฏเตเดฏเตเดจเตเดจเต
เดฒเดฟเดจเดเตเดธเต เดเตเตผเดฃเตฝ เดจเดฟเตผเดฎเตเดฎเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเต เดเดฌเตเดฃเตเดเตเดตเดฟเดจเต เดคเดพเดดเตเดชเตเดชเดฑเดฏเตเดจเตเดจ เดชเดพเดเตเดเตเดเตเดเดณเตเดเตเดเดฟเดฒเตเด เดเดตเดถเตเดฏเดฎเดพเดฃเต (เดเดฐเต เดเตเดฒเตเตป เดเตปเดธเตเดฑเตเดฑเดพเดณเตเดทเตป เด เดจเตเดฎเดพเดจเดฟเดเตเดเตเด):
- 'build-essential'
- 'flex'
- 'bison'
- 'xz-utils'
- 'wget'
- 'ca-certificates'
- 'bc'
- 'linux-headers'
เดเดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดเดฎเดพเตปเดกเต เดเดชเดฏเตเดเดฟเดเตเดเต เดจเดฟเดเตเดเตพเดเตเดเต เด เดต เดเตปเดธเตเดฑเตเดฑเดพเตพ เดเตเดฏเตเดฏเดพเตป เดเดดเดฟเดฏเตเด (เดฑเตเดเตเดเต เดเดฏเดฟ เด เดฒเตเดฒเตเดเตเดเดฟเตฝ เดธเตเดกเต เดเดชเดฏเตเดเดฟเดเตเดเต):
apt-get -y install build-essential flex bison xz-utils wget ca-certificates bc
linux-headers-$(uname -r)
เดฒเดฟเดจเดเตเดธเต เดเตเตผเดฃเตฝ เดฎเตเดจเต เดธเตเดฑเตเดฑเดชเตเดชเต เดชเตเดฐเตเดเตเดฐเดพเด เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเต เดเตปเดธเตเดฑเตเดฑเดฒเตเดทเตป เดเดตเดถเตเดฏเดฎเดพเดฏเดฟ เดตเดฐเตเด เดเดจเตเดจเดคเต เดถเตเดฐเดฆเตเดงเดฟเดเตเดเตเด libncurses-dev
. เดเดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดเดฎเดพเตปเดกเต เดเดชเดฏเตเดเดฟเดเตเดเดพเดฃเต เดเดคเต เดเตปเดธเตเดฑเตเดฑเดพเตพ เดเตเดฏเตเดคเดฟเดฐเดฟเดเตเดเตเดจเตเดจเดคเตเดจเตเดจเต เดเดฑเดชเตเดชเดพเดเตเดเตเด (เดฑเตเดเตเดเต เด
เดฒเตเดฒเตเดเตเดเดฟเตฝ เดธเตเดกเต เดเดชเดฏเตเดเดฟเดเตเดเต):
apt-get -y install libncurses-dev
เดเตเตผเดฃเตฝ เดกเตเตบเดฒเตเดกเต
เดเดตเดฟเดเต เดกเตเตบเดฒเตเดกเต เดเตเดฏเตเดฏเดฃเดฎเตเดจเตเดจเต เดคเตเดฐเตเดฎเดพเดจเดฟเดเตเดเตเด, เดคเตเดเตผเดจเตเดจเต เดเตเตผเดฃเตฝ เดจเดฟเตผเดฎเตเดฎเดฟเดเตเดเตเด. เด เดชเตเดฐเดตเตผเดคเตเดคเดจเดคเตเดคเดฟเดจเดพเดฏเดฟ, เดจเดฟเดเตเดเตพ เดเดเดฆเตเดถเด 1,3 GB เดนเดพเตผเดกเต เดกเดฟเดธเตเดเต เดธเตเดฅเดฒเด เด เดจเตเดตเดฆเดฟเดเตเดเตเดฃเตเดเดคเตเดฃเตเดเต, เด เดคเดฟเดจเดพเตฝ เดจเดฟเดเตเดเตพเดเตเดเดคเต เดเดฃเตเดเตเดจเตเดจเต เดเดฑเดชเตเดชเดพเดเตเดเตเด.
เดชเตเดฏเดคเดฟเดจเต เดถเตเดทเด
เดเดชเดฏเตเดเดฟเดเตเดเต เด เดซเดฏเตฝ เดกเตเตบเดฒเตเดกเต เดเตเดฏเตเดฏเตเด 'wget'
:
wget https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.1.16.tar.xz
เดเดชเตเดชเด เด
เดคเต เดเดเตโเดธเตโเดเตเดฐเดพเดเตโเดฑเตเดฑเตเดเตเดฏเตเดฏเตเด 'tar'
:
tar xJf linux-5.1.16.tar.xz
เดเดชเตเดชเตเตพ เดจเดฎเตเดฎเตพ เดเดพเตผเดฌเตเตพ เด เตบเดชเดพเดเตเดเต เดเตเดฏเตเดฏเตเดฎเตเดชเตเตพ เดธเตเดทเตเดเดฟเดเตเด เดกเดฏเดฑเดเตเดเดฑเดฟเดฏเดฟเตฝ เดชเตเดฐเดตเตเดถเดฟเดเตเดเตเดจเตเดจเต:
cd linux-5.1.16
เดเตเตผเดฃเตฝ เดฌเดฟเตฝเดกเต เดธเตเดฑเตเดฑเดชเตเดชเต
เดเตเตผเดฃเตฝ เดฌเดฟเตฝเดกเต เดธเดฟเดธเตเดฑเตเดฑเด เดเดฐเต เดธเตเดฑเตเดฑเดพเดฃเต
make ARCH=um menuconfig
เดเดคเต เดญเดพเดเดฟเดเดฎเดพเดฏเดฟ เดจเดฟเดเตเดเตพเดเตเดเดพเดฏเดฟ เดเดฐเต เดกเดฏเดฒเตเดเต เดฌเตเดเตเดธเต เดจเดฟเตผเดฎเตเดฎเดฟเดเตเดเตเดเดฏเตเด เดชเตเดฐเดฆเตผเดถเดฟเดชเตเดชเดฟเดเตเดเตเดเดฏเตเด เดเตเดฏเตเดฏเตเด. เดเดชเตเดชเตเดพเตพ '[Select]
', เดจเดฟเดเตเดเตพเดเตเดเต Space เด
เดฒเตเดฒเตเดเตเดเดฟเตฝ Enter เดเตเดเตพ เดเดชเดฏเตเดเดฟเดเตเดเต เดเตเตบเดซเดฟเดเตผ เดเตเดฏเตเดฏเดพเตป เดเดดเดฟเดฏเตเด. "เดฎเตเดเดณเดฟเดฒเตเดเตเดเต" "เดคเดพเดดเตเดเตเดเต" เดเดจเตเดจ เดเตเดฌเตเตผเดกเต เด
เดฎเตเดชเดเดฏเดพเดณเดเตเดเตพ เดเดชเดฏเตเดเดฟเดเตเดเต เดธเดพเดงเดพเดฐเดฃ เดชเตเดฒเต เดตเดฟเตปเดกเต เดจเดพเดตเดฟเดเตเดฑเตเดฑเต เดเตเดฏเตเดฏเตเด, เดเดเดเดเตเดเตพ เดคเดฟเดฐเดเตเดเตเดเตเดเตเดเตเด - "เดเดเดคเต" เด
เดฒเตเดฒเตเดเตเดเดฟเตฝ "เดตเดฒเดคเต".
เดตเตเดฏเต เดชเตเดฏเดฟเดจเตเดฑเตผ โ> เดจเดฟเดเตเดเตพ เดเดฐเต เดเดชเดฎเตเดจเตเดตเดฟเดฒเดพเดฃเต, เดเดจเตเดฑเตผ เดเต เดเดเตโเดธเดธเต เดเตเดฏเตโเดคเดฟเดฐเดฟเดเตเดเตเดจเตเดจเต เดเดจเตเดจเดพเดฃเต เด
เตผเดคเตเดฅเดฎเดพเดเตเดเตเดจเตเดจเดคเต. เด
เดคเดฟเตฝ เดจเดฟเดจเตเดจเตเดฎเตเดณเตเดณ เดตเดดเดฟ เดตเตเดฏเดเตเดคเดฎเดพเดฃเต '[Exit]
'.
' เดเดจเตเดจเดคเดฟเตฝ เดเดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดเดชเตเดทเดจเตเดเตพ เดเตพเดชเตเดชเตเดเตเดคเตเดคเตเด[Select]
' เดเตเดเดพเดคเต เด
เดตเตผเดเตเดเต เด
เดเตเดคเตเดคเดพเดฏเดฟ เดเดฐเต '[*]' เดเดฃเตเดเตเดจเตเดจเต เดเดฑเดชเตเดชเดพเดเตเดเตเด:
UML-specific Options:
- Host filesystem
Networking support (enable this to get the submenu to show up):
- Networking options:
- TCP/IP Networking
UML Network devices:
- Virtual network device
- SLiRP transport
เด
เดคเตเดฐเดฏเตเดฏเตเดณเตเดณเต, เดคเตเดเตผเดเตเดเดฏเดพเดฏเดฟ เดคเดฟเดฐเดเตเดเตเดเตเดคเตเดคเต เดจเดฟเดเตเดเตพเดเตเดเต เด เดตเดฟเตปเดกเตเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เดชเตเดฑเดคเตเดคเตเดเดเดเตเดเดพเด.[Exit]
'. เด
เดตเดธเดพเดจเด เดเตเตบเดซเดฟเดเดฑเตเดทเตป เดธเตเดตเต เดเตเดฏเตเดฏเดพเตป เดจเดฟเดเตเดเดณเตเดเต เดเดตเดถเตเดฏเดชเตเดชเตเดเตเดเดฟเดเตเดเตเดฃเตเดเตเดจเตเดจเต เดเดฑเดชเตเดชเตเดตเดฐเตเดคเตเดคเดฟ ' เดคเดฟเดฐเดเตเดเตเดเตเดเตเดเตเด[Yes]
'.
เด เดชเตเดธเตเดฑเตเดฑเต เดตเดพเดฏเดฟเดเตเดเดคเดฟเดจเต เดถเตเดทเด เดจเดฟเดเตเดเตพ เดเตเตผเดฃเตฝ เดฌเดฟเตฝเดกเต เดเดชเตเดทเดจเตเดเตพ เดเดชเดฏเตเดเดฟเดเตเดเต เดเดณเดฟเดเตเดเดพเตป เดเดพเตป เดถเตเดชเดพเตผเดถ เดเตเดฏเตเดฏเตเดจเตเดจเต. เด เดชเดฐเตเดเตเดทเดฃเดเตเดเดณเดฟเดฒเตเดเต, เดฒเต-เดฒเตเดตเตฝ เดเตเตผเดฃเตฝ เดฎเตเดเตเดเดพเดจเดฟเดเตเดธเดฟเดจเตเดฑเต เดชเตเดฐเดตเตผเดคเตเดคเดจเดตเตเด เด เดคเดฟเดจเตเดฑเต เด เดธเดเดฌเตเดฒเดฟเดฏเดฟเตฝ เดตเดฟเดตเดฟเดง เดซเตเดฒเดพเดเตเดเดณเตเดเต เดธเตเดตเดพเดงเตเดจเดตเตเด เดฎเดจเดธเดฟเดฒเดพเดเตเดเดพเตป เดจเดฟเดเตเดเตพเดเตเดเต เดงเดพเดฐเดพเดณเด เดเดพเดฐเตเดฏเดเตเดเตพ เดชเด เดฟเดเตเดเดพเดจเดพเดเตเด.
เดเตเตผเดฃเตฝ เดจเดฟเตผเดฎเตเดฎเดฟเดเตเดเตเดจเตเดจเต
เดฒเดฟเดจเดเตเดธเต เดเตเตผเดฃเตฝ เดเดฐเตเดชเดพเดเต เดเดพเดฐเตเดฏเดเตเดเตพ เดเตเดฏเตเดฏเตเดจเตเดจ เดเดฐเต เดตเดฒเดฟเดฏ เดชเตเดฐเตเดเตเดฐเดพเดฎเดพเดฃเต. เดชเดดเดฏ เดนเดพเตผเดกเตโเดตเตเดฏเดฑเดฟเตฝ เดเดคเตเดฐเดฏเตเด เดเตเดฑเดเตเด เดเตเตบเดซเดฟเดเดฑเตเดทเตป เดเดฃเตเดเตเดเตเดเดฟเดฒเตเด, เดเดคเต เดจเดฟเตผเดฎเตเดฎเดฟเดเตเดเดพเตป เดเตเดฑเดเตเดเต เดธเดฎเดฏเดฎเตเดเตเดเตเดเตเด. เด เดคเดฟเดจเดพเตฝ เดเดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดเดฎเดพเตปเดกเต เดเดชเดฏเตเดเดฟเดเตเดเต เดเตเตผเดฃเตฝ เดจเดฟเตผเดฎเตเดฎเดฟเดเตเดเตเด:
make ARCH=um -j$(nproc)
เดเดจเตเดคเดฟเดจเตเดตเตเดฃเตเดเดฟ? เดฌเดฟเตฝเดกเต เดชเตเดฐเตเดธเดธเตเดธเดฟเตฝ เดฒเดญเตเดฏเดฎเดพเดฏ เดเดฒเตเดฒเดพ เดธเดฟเดชเดฟเดฏเต เดเตเดฑเตเดเดณเตเด เดคเตเดฐเตเดกเตเดเดณเตเด เดเดชเดฏเตเดเดฟเดเตเดเดพเตป เด เดเดฎเดพเตปเดกเต เดเดเตเดเดณเตเดเต เดฌเดฟเตฝเดกเดฑเตเดเต เดชเดฑเดฏเตเด. เดเตเด $(nproc)
เดฌเดฟเตฝเดกเดฟเดจเตเดฑเต เด
เดตเดธเดพเดจเด เดเดฎเดพเตปเดกเดฟเดจเตเดฑเต เดเดเตเดเตเดชเตเดเตเดเต เดฎเดพเดฑเตเดฑเดฟเดธเตเดฅเดพเดชเดฟเดเตเดเตเดจเตเดจเต nproc
, เดเดคเต เดญเดพเดเดฎเดพเดฃเต coreutils
เดเดฐเต เดธเดพเดงเดพเดฐเดฃ เดเดฌเตเดฃเตเดเต เดฌเดฟเตฝเดกเดฟเตฝ.
เดเตเดฑเดเตเดเต เดธเดฎเดฏเดคเตเดคเดฟเดจเต เดถเตเดทเด, เดเดเตเดเดณเตเดเต เดเตเตผเดฃเตฝ เดเดฐเต เดเดเตเดธเดฟเดเตเดฏเตเดเตเดเดฌเดฟเตพ เดซเดฏเดฒเดฟเดฒเตเดเตเดเต เดเดเดชเตเตฝ เดเตเดฏเตเดฏเดชเตเดชเตเดเตเด ./linux
.
เดฌเตเดจเดฑเดฟ เดเตปเดธเตเดฑเตเดฑเดพเตพ เดเตเดฏเตเดฏเตเดจเตเดจเต
เดฒเดฟเดจเดเตเดธเดฟเดฒเต เดฏเตเดธเตผ เดฎเตเดกเต เดเดฐเต เดธเดพเดงเดพเดฐเดฃ เดฌเตเดจเดฑเดฟ เดธเตเดทเตเดเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเดพเตฝ, เดฎเดฑเตเดฑเตเดคเตเดฐเต เดฏเตเดเตเดเดฟเดฒเดฟเดฑเตเดฑเดฟเดฏเตเด เดชเตเดฒเต เดจเดฟเดเตเดเตพเดเตเดเต เดเดคเต เดเตปเดธเตเดฑเตเดฑเดพเตพ เดเตเดฏเตเดฏเดพเตป เดเดดเดฟเดฏเตเด. เดเดพเตป เดเดคเต เดเดเตเดเดจเต เดเตเดฏเตเดคเตเดตเตเดจเตเดจเต เดเดคเดพ:
mkdir -p ~/bin
cp linux ~/bin/linux
เด
เดคเต เดเดฑเดชเตเดชเดพเดเตเดเตเดจเตเดจเดคเตเด เดฎเตเดฒเตเดฏเดตเดคเตเดคเดพเดฃเต ~/bin
เดจเดฟเดเตเดเดณเตเดเตเดคเดพเดฃเต $PATH
:
export PATH=$PATH:$HOME/bin
เดเดธเตเดฑเตเดฑเต เดซเดฏเตฝ เดธเดฟเดธเตเดฑเตเดฑเด เดธเดเตเดเตเดเดฐเดฟเดเตเดเตเดจเตเดจเต
เด เดคเดฟเดฅเดฟ เดซเดฏเตฝ เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเดจเดพเดฏเดฟ เดเดฐเต เดกเดฏเดฑเดเตเดเดฑเดฟ เดธเตเดทเตเดเดฟเดเตเดเตเด:
mkdir -p $HOME/prefix/uml-demo
cd $HOME/prefix
alpinelinux.org เดคเตเดฑเดจเตเดจเต เดเตป MINI ROOT FILESYSTEM
. เดเดดเตเดคเตเดฎเตเดชเตเตพ เดเดคเดพเดฏเดฟเดฐเตเดจเตเดจเต:
http://dl-cdn.alpinelinux.org/alpine/v3.10/releases/x86_64/alpine-minirootfs-3.10.0-x86_64.tar.gz
wget เดเดชเดฏเตเดเดฟเดเตเดเต เด เดเดพเตผเดฌเตเตพ เดกเตเตบเดฒเตเดกเต เดเตเดฏเตเดฏเตเด:
wget -O alpine-rootfs.tgz http://dl-cdn.alpinelinux.org/alpine/v3.10/releases/x86_64/alpine-minirootfs-3.10.0-x86_64.tar.gz
เดเดชเตเดชเตเตพ เดเดธเตเดฑเตเดฑเต เดซเดฏเตฝ เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเดจเตเดฑเต เดกเดฏเดฑเดเตเดเดฑเดฟ เดจเตฝเดเดฟ เดเตผเดเตเดเตเดตเต เดเดเตโเดธเตโเดเตเดฐเดพเดเตโเดฑเตเดฑเต เดเตเดฏเตเดฏเตเด:
cd uml-demo
tar xf ../alpine-rootfs.tgz
เดตเดฟเดตเดฐเดฟเดเตเด เดชเตเดฐเดตเตผเดคเตเดคเดจเดเตเดเตพ เดเดฐเต เดเตเดฑเดฟเดฏ เดซเดฏเตฝ เดธเดฟเดธเตเดฑเตเดฑเด เดเตเดเดชเตเดฒเตเดฑเตเดฑเต เดธเตเดทเตเดเดฟเดเตเดเตเด. เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเดจเตเดฑเต เดธเตเดตเดญเดพเดตเด เดเดพเดฐเดฃเด, Alpine apk เดฎเดพเดจเตเดเตผ เดตเดดเดฟ เดชเดพเดเตเดเตเดเตเดเตพ เดเตปเดธเตเดฑเตเดฑเดพเตพ เดเตเดฏเตเดฏเตเดจเตเดจเดคเต เดตเดณเดฐเต เดฌเตเดฆเตเดงเดฟเดฎเตเดเตเดเดพเดฏเดฟเดฐเดฟเดเตเดเตเด. เดเดจเตเดจเดพเตฝ เดชเตเดคเตเดตเดพเดฏ เดเดถเดฏเด เดตเดฟเดฒเดฏเดฟเดฐเตเดคเตเดคเดพเตป เด เดเดซเตเดเดธเต เดฎเดคเดฟเดฏเดพเดเตเด.
เดจเดฎเตเดเตเดเตเด เดเดฐเต เดเดชเดเดฐเดฃเด เดเดตเดถเตเดฏเดฎเดพเดฃเต
wget -O tini https://github.com/krallin/tini/releases/download/v0.18.0/tini-static
chmod +x tini
เดเดฐเต เดเตเตผเดฃเตฝ เดเดฎเดพเตปเดกเต เดฒเตเตป เดธเตเดทเตเดเดฟเดเตเดเตเดจเตเดจเต
เดฒเดฟเดจเดเตเดธเต เดเตเตผเดฃเดฒเดฟเดจเตเด, เดฎเดฑเตเดฑเต เดฎเดฟเดเตเด เดชเตเดฐเตเดเตเดฐเดพเดฎเตเดเดณเตเดฏเตเด เดชเตเดฒเต, เดเต เดตเตเดฏเดเตเดคเดฎเดพเดเตเดเดฟเดฏเตเดเตเดฃเตเดเต เดเดเตเดธเดธเต เดเตเดฏเตเดฏเดพเตป เดเดดเดฟเดฏเตเดจเตเดจ เดเดฎเดพเตปเดกเต-เดฒเตเตป เดเตผเดเตเดฏเตเดฎเตเดจเตเดฑเตเดเตพ เดเดฃเตเดเต. --help
.
เด เดตเตป เดคเดจเตเดจเต - เดธเดนเดพเดฏเด
linux --help
User Mode Linux v5.1.16
available at http://user-mode-linux.sourceforge.net/
--showconfig
Prints the config file that this UML binary was generated from.
iomem=<name>,<file>
Configure <file> as an IO memory region named <name>.
mem=<Amount of desired ram>
This controls how much "physical" memory the kernel allocates
for the system. The size is specified as a number followed by
one of 'k', 'K', 'm', 'M', which have the obvious meanings.
This is not related to the amount of memory in the host. It can
be more, and the excess, if it's ever used, will just be swapped out.
Example: mem=64M
--help
Prints this message.
debug
this flag is not needed to run gdb on UML in skas mode
root=<file containing the root fs>
This is actually used by the generic kernel in exactly the same
way as in any other kernel. If you configure a number of block
devices and want to boot off something other than ubd0, you
would use something like:
root=/dev/ubd5
--version
Prints the version number of the kernel.
umid=<name>
This is used to assign a unique identity to this UML machine and
is used for naming the pid file and management console socket.
con[0-9]*=<channel description>
Attach a console or serial line to a host channel. See
http://user-mode-linux.sourceforge.net/old/input.html for a complete
description of this switch.
eth[0-9]+=<transport>,<options>
Configure a network device.
aio=2.4
This is used to force UML to use 2.4-style AIO even when 2.6 AIO is
available. 2.4 AIO is a single thread that handles one request at a
time, synchronously. 2.6 AIO is a thread which uses the 2.6 AIO
interface to handle an arbitrary number of pending requests. 2.6 AIO
is not available in tt mode, on 2.4 hosts, or when UML is built with
/usr/include/linux/aio_abi.h not available. Many distributions don't
include aio_abi.h, so you will need to copy it from a kernel tree to
your /usr/include/linux in order to build an AIO-capable UML
nosysemu
Turns off syscall emulation patch for ptrace (SYSEMU).
SYSEMU is a performance-patch introduced by Laurent Vivier. It changes
behaviour of ptrace() and helps reduce host context switch rates.
To make it work, you need a kernel patch for your host, too.
See http://perso.wanadoo.fr/laurent.vivier/UML/ for further
information.
uml_dir=<directory>
The location to place the pid and umid files.
quiet
Turns off information messages during boot.
hostfs=<root dir>,<flags>,...
This is used to set hostfs parameters. The root directory argument
is used to confine all hostfs mounts to within the specified directory
tree on the host. If this isn't specified, then a user inside UML can
mount anything on the host that's accessible to the user that's running
it.
The only flag currently supported is 'append', which specifies that all
files opened by hostfs will be opened in append mode.
เด เดชเดพเดจเตฝ เดตเดฟเดเตเดทเตเดชเดฃเดคเตเดคเดฟเดจเตเดฑเต เดชเตเดฐเดงเดพเดจ เดชเดพเดฐเดพเดฎเตเดฑเตเดฑเดฑเตเดเตพ เดเดเตเดคเตเดคเตเดเดพเดฃเดฟเดเตเดเตเดจเตเดจเต. เดเดตเดถเตเดฏเดฎเดพเดฏ เดเดฑเตเดฑเดตเตเด เดเตเดฑเดเตเด เดเดชเตโเดทเดจเตเดเตพ เดเดชเดฏเตเดเดฟเดเตเดเต เดเตเตผเดฃเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเดเตเดเดพเด:
linux
root=/dev/root
rootfstype=hostfs
rootflags=$HOME/prefix/uml-demo
rw
mem=64M
init=/bin/sh
เดฎเตเดเดณเดฟเดฒเตเดณเตเดณ เดตเดฐเดฟเดเตพ เดเดเตเดเดณเตเดเต เดเตเตผเดฃเดฒเดฟเดจเตเดเต เดเดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจเดต เดชเดฑเดฏเตเดจเตเดจเต:
- เดฑเตเดเตเดเต เดซเดฏเตฝเดธเดฟเดธเตเดฑเตเดฑเด เดเดฐเต เดตเตเดฏเดพเด เดเดชเดเดฐเดฃเดฎเดพเดฃเตเดจเตเดจเต เดเดฐเตเดคเตเด
/dev/root
. - เดคเดฟเดฐเดเตเดเตเดเตเดเตเดเตเด
hostfs เดเดฐเต เดฑเตเดเตเดเต เดซเดฏเตฝเดธเดฟเดธเตเดฑเตเดฑเด เดกเตเดฐเตเดตเดฑเดพเดฏเดฟ. - เดฑเตเดเตเดเต เดเดชเดเดฐเดฃเดคเตเดคเดฟเตฝ เดเดเตเดเตพ เดธเตเดทเตเดเดฟเดเตเด เดเดธเตเดฑเตเดฑเต เดซเดฏเตฝเดธเดฟเดธเตเดฑเตเดฑเด เดฎเตเดฃเตเดเต เดเตเดฏเตเดฏเตเด.
- เด เดคเต, เดฑเตเดกเต-เดฑเตเดฑเตเดฑเต เดฎเตเดกเดฟเตฝ.
- 64 MB เดฑเดพเด เดฎเดพเดคเตเดฐเด เดเดชเดฏเตเดเดฟเดเตเดเตเด (เดจเดฟเดเตเดเตพ เดเตเดฏเตเดฏเดพเตป เดเดฆเตเดฆเตเดถเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเต เดเดถเตเดฐเดฏเดฟเดเตเดเต เดจเดฟเดเตเดเตพเดเตเดเต เดตเดณเดฐเต เดเตเดฑเดเตเดเต เดฎเดพเดคเตเดฐเดฎเต เดเดชเดฏเตเดเดฟเดเตเดเดพเดจเดพเดเต, เดเดจเตเดจเดพเตฝ 64 MB เดเดชเตเดฑเตเดฑเดฟเดฎเตฝ เดคเตเดเดฏเดพเดฏเดฟ เดคเตเดจเตเดจเตเดจเตเดจเต).
- เดเตเตผเดฃเตฝ เดธเตเดตเดฏเดฎเตเดต เดเดฐเดเดญเดฟเดเตเดเตเดจเตเดจเต
/bin/sh
เดเดเตเดเดจเตinit
-เดชเตเดฐเดเตเดฐเดฟเดฏ.
เด เดเดฎเดพเตปเดกเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเดเตเดเตเด, เดเดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจเดคเตเดชเตเดฒเตเดณเตเดณ เดเดจเตเดจเต เดจเดฟเดเตเดเตพเดเตเดเต เดฒเดญเดฟเดเตเดเตเด:
เดเดฐเต เดทเตเดฑเตเดฑเต เดเตเดเดฟ
Core dump limits :
soft - 0
hard - NONE
Checking that ptrace can change system call numbers...OK
Checking syscall emulation patch for ptrace...OK
Checking advanced syscall emulation patch for ptrace...OK
Checking environment variables for a tempdir...none found
Checking if /dev/shm is on tmpfs...OK
Checking PROT_EXEC mmap in /dev/shm...OK
Adding 32137216 bytes to physical memory to account for exec-shield gap
Linux version 5.1.16 (cadey@kahless) (gcc version 7.4.0 (Ubuntu 7.4.0-1ubuntu1~18.04.1)) #30 Sun Jul 7 18:57:19 UTC 2019
Built 1 zonelists, mobility grouping on. Total pages: 23898
Kernel command line: root=/dev/root rootflags=/home/cadey/dl/uml/alpine rootfstype=hostfs rw mem=64M init=/bin/sh
Dentry cache hash table entries: 16384 (order: 5, 131072 bytes)
Inode-cache hash table entries: 8192 (order: 4, 65536 bytes)
Memory: 59584K/96920K available (2692K kernel code, 708K rwdata, 588K rodata, 104K init, 244K bss, 37336K reserved, 0K cma-reserved)
SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
NR_IRQS: 15
clocksource: timer: mask: 0xffffffffffffffff max_cycles: 0x1cd42e205, max_idle_ns: 881590404426 ns
Calibrating delay loop... 7479.29 BogoMIPS (lpj=37396480)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 512 (order: 0, 4096 bytes)
Mountpoint-cache hash table entries: 512 (order: 0, 4096 bytes)
Checking that host ptys support output SIGIO...Yes
Checking that host ptys support SIGIO on close...No, enabling workaround
devtmpfs: initialized
random: get_random_bytes called from setup_net+0x48/0x1e0 with crng_init=0
Using 2.6 host AIO
clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
futex hash table entries: 256 (order: 0, 6144 bytes)
NET: Registered protocol family 16
clocksource: Switched to clocksource timer
NET: Registered protocol family 2
tcp_listen_portaddr_hash hash table entries: 256 (order: 0, 4096 bytes)
TCP established hash table entries: 1024 (order: 1, 8192 bytes)
TCP bind hash table entries: 1024 (order: 1, 8192 bytes)
TCP: Hash tables configured (established 1024 bind 1024)
UDP hash table entries: 256 (order: 1, 8192 bytes)
UDP-Lite hash table entries: 256 (order: 1, 8192 bytes)
NET: Registered protocol family 1
console [stderr0] disabled
mconsole (version 2) initialized on /home/cadey/.uml/tEwIjm/mconsole
Checking host MADV_REMOVE support...OK
workingset: timestamp_bits=62 max_order=14 bucket_order=0
Block layer SCSI generic (bsg) driver version 0.4 loaded (major 254)
io scheduler noop registered (default)
io scheduler bfq registered
loop: module loaded
NET: Registered protocol family 17
Initialized stdio console driver
Using a channel type which is configured out of UML
setup_one_line failed for device 1 : Configuration failed
Using a channel type which is configured out of UML
setup_one_line failed for device 2 : Configuration failed
Using a channel type which is configured out of UML
setup_one_line failed for device 3 : Configuration failed
Using a channel type which is configured out of UML
setup_one_line failed for device 4 : Configuration failed
Using a channel type which is configured out of UML
setup_one_line failed for device 5 : Configuration failed
Using a channel type which is configured out of UML
setup_one_line failed for device 6 : Configuration failed
Using a channel type which is configured out of UML
setup_one_line failed for device 7 : Configuration failed
Using a channel type which is configured out of UML
setup_one_line failed for device 8 : Configuration failed
Using a channel type which is configured out of UML
setup_one_line failed for device 9 : Configuration failed
Using a channel type which is configured out of UML
setup_one_line failed for device 10 : Configuration failed
Using a channel type which is configured out of UML
setup_one_line failed for device 11 : Configuration failed
Using a channel type which is configured out of UML
setup_one_line failed for device 12 : Configuration failed
Using a channel type which is configured out of UML
setup_one_line failed for device 13 : Configuration failed
Using a channel type which is configured out of UML
setup_one_line failed for device 14 : Configuration failed
Using a channel type which is configured out of UML
setup_one_line failed for device 15 : Configuration failed
Console initialized on /dev/tty0
console [tty0] enabled
console [mc-1] enabled
Failed to initialize ubd device 0 :Couldn't determine size of device's file
VFS: Mounted root (hostfs filesystem) on device 0:11.
devtmpfs: mounted
This architecture does not have kernel memory protection.
Run /bin/sh as init process
/bin/sh: can't access tty; job control turned off
random: fast init done
/ #
เดฎเตเดเดณเดฟเดฒเตเดณเตเดณ เดเตเดคเตเดฐเดฟเดฎเดคเตเดตเดเตเดเตพ เดจเดฎเตเดเตเดเต เดจเตฝเดเตเด เดเตเดฐเตเดเตเดเดฟเดฏเดคเต เด
เดคเดฟเดฅเดฟ เดธเดเดตเดฟเดงเดพเดจเด, เดคเตเดเดเตเดเดฟเดฏ เดเดพเดฐเตเดฏเดเตเดเตพ เดเดฒเตเดฒเดพเดคเต /proc
เด
เดฒเตเดฒเตเดเตเดเดฟเตฝ เดนเตเดธเตโเดฑเตเดฑเดฟเดจเตเดฑเต เดชเตเดฐเต เดจเตฝเดเดฟ. เดเดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดเดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดเดฎเดพเตปเดกเตเดเตพ เดชเดฐเตเดเตเดทเดฟเดเตเดเตเด:
- uname -av
- cat /proc/self/pid
- hostname
เด
เดคเดฟเดฅเดฟเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เดชเตเดฑเดคเตเดคเตเดเดเดเตเดเดพเตป, เดเตเดชเตเดชเต เดเตเดฏเตเดฏเตเด exit
เด
เดฒเตเดฒเตเดเตเดเดฟเตฝ เดเตบเดเตเดฐเตเตพ-เดกเดฟ เด
เดฎเตผเดคเตเดคเตเด. เดเดคเต เดเดฐเต เดเตเตผเดฃเตฝ เดชเดฐเดฟเดญเตเดฐเดพเดจเตเดคเดฟเดฏเต เดคเตเดเตผเดจเตเดจเต เดทเตเดฒเตเดฒเดฟเดจเต เดจเดถเดฟเดชเตเดชเดฟเดเตเดเตเด:
/ # exit
Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000000
fish: โ./linux root=/dev/root rootflagโฆโ terminated by signal SIGABRT (Abort)
เดเดจเตเดทเตเดฏเดฒเตเดธเตเดทเตป เดชเตเดฐเดเตเดฐเดฟเดฏ เดเดชเตเดชเตเดดเตเด เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจเตเดฃเตเดเตเดจเตเดจเต เดฒเดฟเดจเดเตเดธเต เดเตเตผเดฃเตฝ เดเดฐเตเดคเตเดจเตเดจเดคเดฟเดจเดพเดฒเดพเดฃเต เดเดเตเดเตพเดเตเดเต เด เดเตเตผเดฃเตฝ เดชเดฐเดฟเดญเตเดฐเดพเดจเตเดคเดฟ เดเดฃเตเดเดพเดฏเดคเต. เดเดคเต เดเตเดเดพเดคเต, เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเดจเต เดฎเตเดฒเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเดพเดจเตเด เดเตเดฐเดพเดทเตเดเตเดฏเตเดฏเดพเดจเตเด เดเดดเดฟเดฏเดฟเดฒเตเดฒ. เดเดจเตเดจเดพเตฝ เดเดคเตเดฐเต เดเดชเดฏเตเดเตเดคเต เดฎเตเดกเต เดชเตเดฐเดเตเดฐเดฟเดฏเดฏเดพเดฏเดคเดฟเดจเดพเตฝ, เดคเดคเตเดซเดฒเดฎเดพเดฏเตเดฃเตเดเดพเดเตเดจเตเดจ เดเดเตเดเตเดชเตเดเตเดเต เดธเตเดตเดฏเด เด
เดฏเดฏเตเดเตเดเตเดจเตเดจเต SIGABRT
, เดเดคเต เดเดฐเต เดเดเตเดเตเดชเตเดเตเดเดฟเตฝ เดเดฒเดพเดถเดฟเดเตเดเตเดจเตเดจเต.
เด เดคเดฟเดฅเดฟ เดจเตเดฑเตเดฑเตโเดตเตผเดเตเดเต เดธเดเตเดเตเดเดฐเดฃเด
เดเดตเดฟเดเตเดฏเดพเดฃเต เดเดพเดฐเตเดฏเดเตเดเตพ เดคเตเดฑเตเดฑเดพเตป เดคเตเดเดเตเดเตเดจเตเดจเดคเต. เดชเดฐเดฟเดฎเดฟเดคเดฎเดพเดฏ "เดเดชเดฏเตเดเตเดคเต เดฎเตเดกเต" เดเดจเตเดจ เดเดถเดฏเด เดชเตเดณเดฟเดเตเดเดพเตป เดคเตเดเดเตเดเตเดจเตเดจเดฟเดเดคเตเดคเดพเดฃเต เดฏเตเดธเตผ เดฎเตเดกเต เดฒเดฟเดจเดเตเดธเดฟเดฒเต เดจเตเดฑเตเดฑเตโเดตเตผเดเตเดเดฟเดเดเต. เดเดฒเตเดฒเดพเดคเตเดคเดฟเดจเตเดฎเตเดชเดฐเดฟ, เดธเดพเดงเดพเดฐเดฃเดฏเดพเดฏเดฟ เดธเดฟเดธเตเดฑเตเดฑเด เดคเดฒเดคเตเดคเดฟเตฝ, เดจเตเดฑเตเดฑเตเดตเตผเดเตเดเต เดชเดฐเดฟเดฎเดฟเดคเดฎเดพเดฃเต เดตเดฟเดถเตเดทเดพเดงเดฟเดเดพเดฐเดฎเตเดณเตเดณ เดจเดฎเตเดเตเดเตเดฒเตเดฒเดพเดตเตผเดเตเดเตเด เดฎเดจเดธเตเดธเดฟเดฒเดพเดเตเดเดพเดตเตเดจเตเดจ เดเดพเดฐเดฃเดเตเดเดณเดพเตฝ เดเดเตเดธเดฟเดเตเดฏเตเดทเตป เดฎเตเดกเตเดเตพ.
เดเตเดฑเดฟเดชเตเดชเต. per .: UML-เตฝ เดเดฐเต เดจเตเดฑเตเดฑเตโเดตเตผเดเตเดเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดตเตเดฏเดคเตเดฏเดธเตเดค เดเดชเตเดทเดจเตเดเดณเตเดเตเดเตเดฑเดฟเดเตเดเต เดจเดฟเดเตเดเตพเดเตเดเต เดเตเดเตเดคเตฝ เดตเดพเดฏเดฟเดเตเดเดพเด
เดธเตเดฒเดฟเตผเดชเตเดชเดฟเดฒเตเดเตเดเตเดณเตเดณ เดฏเดพเดคเตเดฐ
เดเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด, เดชเตเดฐเดพเดคเดจเดตเตเด เดเดคเดพเดฃเตเดเต เดชเดฟเดจเตเดคเตเดฃเดฏเตเดเตเดเดพเดคเตเดคเดคเตเดฎเดพเดฏ เดเดฐเต เดเตเตพ เดเดฃเตเดเต
เด เดคเดฟเดจเดพเตฝ เดจเดฎเตเดเตเดเต เดเดฌเตเดฃเตเดเต เดถเตเดเดฐเดฃเดเตเดเดณเดฟเตฝ เดจเดฟเดจเตเดจเต เดธเตเดฒเดฟเตผเดชเตเดชเต เดกเตเตบเดฒเตเดกเต เดเตเดฏเตเดคเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเดเตเดเดพเตป เดถเตเดฐเดฎเดฟเดเตเดเดพเด:
sudo apt-get install slirp
/usr/bin/slirp
Slirp v1.0.17 (BETA)
Copyright (c) 1995,1996 Danny Gasparovski and others.
All rights reserved.
This program is copyrighted, free software.
Please read the file COPYRIGHT that came with the Slirp
package for the terms and conditions of the copyright.
IP address of Slirp host: 127.0.0.1
IP address of your DNS(s): 1.1.1.1, 10.77.0.7
Your address is 10.0.2.15
(or anything else you want)
Type five zeroes (0) to exit.
[autodetect SLIP/CSLIP, MTU 1500, MRU 1500, 115200 baud]
SLiRP Ready ...
fish: โ/usr/bin/slirpโ terminated by signal SIGSEGV (Address boundary error)
เดฆเตเดตเดฎเต. เดจเดฎเตเดเตเดเต Slirp-เดจเตเดฑเต เดกเตเดฌเดเตเดเตผ เดเตปเดธเตเดฑเตเดฑเดพเตพ เดเตเดฏเตเดคเต เดเดตเดฟเดเต เดเดจเตเดคเดพเดฃเต เดธเดเดญเดตเดฟเดเตเดเตเดจเตเดจเดคเตเดจเตเดจเต เดจเดฎเตเดเตเดเต เดฎเดจเดธเตเดธเดฟเดฒเดพเดเตเดเดพเตป เดเดดเดฟเดฏเตเดฎเต เดเดจเตเดจเต เดจเตเดเตเดเดพเด:
sudo apt-get install gdb slirp-dbgsym
gdb /usr/bin/slirp
GNU gdb (Ubuntu 8.1-0ubuntu3) 8.1.0.20180409-git
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /usr/bin/slirp...Reading symbols from /usr/lib/debug/.build-id/c6/2e75b69581a1ad85f72ac32c0d7af913d4861f.debug...done.
done.
(gdb) run
Starting program: /usr/bin/slirp
Slirp v1.0.17 (BETA)
Copyright (c) 1995,1996 Danny Gasparovski and others.
All rights reserved.
This program is copyrighted, free software.
Please read the file COPYRIGHT that came with the Slirp
package for the terms and conditions of the copyright.
IP address of Slirp host: 127.0.0.1
IP address of your DNS(s): 1.1.1.1, 10.77.0.7
Your address is 10.0.2.15
(or anything else you want)
Type five zeroes (0) to exit.
[autodetect SLIP/CSLIP, MTU 1500, MRU 1500, 115200 baud]
SLiRP Ready ...
Program received signal SIGSEGV, Segmentation fault.
ip_slowtimo () at ip_input.c:457
457 ip_input.c: No such file or directory.
เดคเตเดฑเตเดฑเต เดจเดฎเตเดฎเดณเดฟเตฝ เด
เดเดฟเดเตเดเตเดจเตเดจเตเดฃเตเดเต
(gdb) bt full
#0 ip_slowtimo () at ip_input.c:457
fp = 0x55784a40
#1 0x000055555556a57c in main_loop () at ./main.c:980
so = <optimized out>
so_next = <optimized out>
timeout = {tv_sec = 0, tv_usec = 0}
ret = 0
nfds = 0
ttyp = <optimized out>
ttyp2 = <optimized out>
best_time = <optimized out>
tmp_time = <optimized out>
#2 0x000055555555b116 in main (argc=1, argv=0x7fffffffdc58) at ./main.c:95
No locals.
เดชเตเดฐเดงเดพเดจ เดฒเตเดชเตเดชเต เดเดฐเดเดญเดฟเดเตเดเตเดฎเตเดชเตเตพ เดธเตเดฒเดฟเตผเดชเตเดชเต เดเตเดเดเดเตเดเตเดเตพ เดชเดฐเดฟเดถเตเดงเดฟเดเตเดเดพเตป เดถเตเดฐเดฎเดฟเดเตเดเตเดฎเตเดชเตเตพ เดเตเดฐเดพเดทเต เดธเดเดญเดตเดฟเดเตเดเตเดจเตเดจเดคเต เดเดตเดฟเดเต เดเดพเดฃเดพเด. เด เดธเดฎเดฏเดคเตเดคเต, เดกเตเดฌเดเต เดเตเดฏเตเดฏเดพเดจเตเดณเตเดณ เดถเตเดฐเดฎเด เดเดจเดฟเดเตเดเต เดเดชเตเดเตเดทเดฟเดเตเดเตเดฃเตเดเดฟ เดตเดจเตเดจเต. เดเดจเตเดจเดพเตฝ Slirp เดจเดฟเตผเดฎเตเดฎเดฟเดเตเดเดคเต เดคเดฐเดคเตเดคเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจเตเดฃเตเดเต เดเดจเตเดจเต เดจเตเดเตเดเดพเด. เดเดพเตป เดธเตเดฑเตเดฑเดฟเตฝ เดจเดฟเดจเตเดจเต เดจเตเดฐเดฟเดเตเดเต เดเตผเดเตเดเตเดตเต เดตเตเดฃเตเดเตเด เดกเตเตบเดฒเตเดกเต เดเตเดฏเตเดคเต
cd ~/dl
wget https://xena.greedo.xeserv.us/files/slirp-1.0.16.tar.gz
tar xf slirp-1.0.16.tar.gz
cd slirp-1.0.16/src
./configure --prefix=$HOME/prefix/slirp
make
เดจเดฟเตผเดตเดเดฟเดเตเดเดพเดคเตเดค เดฌเดฟเตฝเดฑเตเดฑเต-เดเตป เดซเดเดเตโเดทเดจเตเดเดณเตเดเตเดเตเดฑเดฟเดเตเดเตเดณเตเดณ เด
เดฒเตเตผเดเตเดเตเดเตพ เดเดเตเดเตพ เดเดตเดฟเดเต เดเดพเดฃเตเดจเตเดจเต, เด
เดคเดพเดฏเดคเต, เดคเดคเตเดซเดฒเดฎเดพเดฏเตเดฃเตเดเดพเดเตเดจเตเดจ เดฌเตเดจเดฑเดฟ เดซเดฏเตฝ เดฒเดฟเดเตเดเตเดเตเดฏเตเดฏเดพเดจเตเดณเตเดณ เดเดดเดฟเดตเดฟเดฒเตเดฒเดพเดฏเตเดฎเดฏเตเดเตเดเตเดฑเดฟเดเตเดเตเดณเตเดณ. 2006-เดจเตเด เด เดเดเตเดเดคเตเดคเดฟเดจเตเด เดเดเดฏเดฟเตฝ, เดเดจเตเดฑเตผเดฎเตเดกเดฟเดฏเดฑเตเดฑเต เดเดเดชเตเตฝ เดเตเดฏเตเดค เดซเดฏเดฒเตเดเดณเตเดเต เดฌเดฟเตฝเดฑเตเดฑเต-เดเตป เดซเดเดเตเดทเดจเตเดเดณเดฟเตฝ เดเดชเดฏเตเดเดฟเดเตเดเตเดจเตเดจ เดเดฟเดนเตเดจเดเตเดเตพ เดจเดฟเตผเดฎเตเดฎเดฟเดเตเดเตเดจเตเดจเดคเต gcc เดจเดฟเตผเดคเตเดคเดฟเดฏเดคเดพเดฏเดฟ เดคเตเดจเตเดจเตเดจเตเดจเต. เดเตเดตเตเดกเต เดฎเดพเดฑเตเดฑเดฟเดธเตเดฅเดพเดชเดฟเดเตเดเดพเตป เดถเตเดฐเดฎเดฟเดเตเดเดพเด inline
เดเดฐเต เดถเตเดจเตเดฏเดฎเดพเดฏ เดเดฎเดจเตเดฑเดฟเตฝ เดซเดฒเด เดจเตเดเตเดเต:
vi slirp.h
:6
a
<enter>
#define inline /**/
<escape>
:wq
make
เดเดฒเตเดฒ. เดเดคเตเด เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจเดฟเดฒเตเดฒ. เด เดซเดเดเตโเดทเดจเตเดเตพเดเตเดเดพเดฏเดฟ เดเดชเตเดชเตเดดเตเด เดเดฟเดนเตเดจเดเตเดเตพ เดเดฃเตเดเตเดคเตเดคเดพเดจเดพเดฏเดฟเดฒเตเดฒ.
เด เดธเดฎเดฏเดคเตเดคเต, เดเดพเตป เดเดชเตเดเตเดทเดฟเดเตเดเต เดเดฟเดคเตเดคเดฌเดฟเดจเต เดจเตเดเตเดเดพเตป เดคเตเดเดเตเดเดฟ uml.tar.gz
เดเตเดเดพเดคเต เดเดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจเดต เดเดฃเตเดเตเดคเตเดคเดฟ:
total 6136
-rwxr-xr-x 1 cadey cadey 79744 Dec 10 2017 ifconfig*
-rwxr-xr-x 1 cadey cadey 373 Dec 13 2017 init*
-rwxr-xr-x 1 cadey cadey 149688 Dec 10 2017 insmod*
-rwxr-xr-x 1 cadey cadey 66600 Dec 10 2017 route*
-rwxr-xr-x 1 cadey cadey 181056 Jun 26 2015 slirp*
-rwxr-xr-x 1 cadey cadey 5786592 Dec 15 2017 uml*
-rwxr-xr-x 1 cadey cadey 211 Dec 13 2017 uml_run*
เดเดคเดพเดฃเต เดธเตเดฒเดฟเตผเดชเตเดชเต เดฌเตเดจเดฑเดฟ! เด เดตเตป เดเตเดพเดฒเดฟ เดเตเดฏเตเดฏเตเดจเตเดจเตเดฃเตเดเตเดพ?
./slirp
Slirp v1.0.17 (BETA) FULL_BOLT
Copyright (c) 1995,1996 Danny Gasparovski and others.
All rights reserved.
This program is copyrighted, free software.
Please read the file COPYRIGHT that came with the Slirp
package for the terms and conditions of the copyright.
IP address of Slirp host: 127.0.0.1
IP address of your DNS(s): 1.1.1.1, 10.77.0.7
Your address is 10.0.2.15
(or anything else you want)
Type five zeroes (0) to exit.
[autodetect SLIP/CSLIP, MTU 1500, MRU 1500]
SLiRP Ready ...
เดคเดเดฐเตเดจเตเดจเดฟเดฒเตเดฒ - เด
เดคเดฟเดจเดพเตฝ เดเดคเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเดฃเด! เดจเดฎเตเดเตเดเต เด เดฌเตเดจเดฑเดฟ เดจเดเดพเด ~/bin/slirp
:
cp slirp ~/bin/slirp
เดชเดพเดเตเดเตเดเต เดธเตเดฐเดทเตเดเดพเดตเต เด
เดคเต เดจเตเดเตเดเด เดเตเดฏเตเดฏเตเดจเตเดจ เดธเดพเดนเดเดฐเตเดฏเดคเตเดคเดฟเตฝ, เด
เดจเตเดฑเตเดฑเตโเดตเตผเดเตเดเต เดธเดเตเดเตเดเดฐเดฃเด
เดเดจเดฟ เดจเดฎเตเดเตเดเต เดจเดฎเตเดฎเตเดเต เดเดธเตเดฑเตเดฑเต เดเตเตผเดฃเดฒเดฟเตฝ เดจเตเดฑเตเดฑเตโเดตเตผเดเตเดเต เดธเดเตเดเตเดเดฐเดฟเดเตเดเดพเด.
linux
root=/dev/root
rootfstype=hostfs
rootflags=$HOME/prefix/uml-demo
rw
mem=64M
eth0=slirp,,$HOME/bin/slirp
init=/bin/sh
เดเดจเดฟ เดจเดฎเตเดเตเดเต เดจเตเดฑเตเดฑเตโเดตเตผเดเตเดเต เดเดฃเดพเดเตเดเดพเด:
mount -t proc proc proc/
mount -t sysfs sys sys/
ifconfig eth0 10.0.2.14 netmask 255.255.255.240 broadcast 10.0.2.15
route add default gw 10.0.2.2
เดเดฆเตเดฏเดคเตเดคเต เดฐเดฃเตเดเต เดเตเตบเดซเดฟเดเดฑเตเดทเตป เดเดฎเดพเตปเดกเตเดเตพ /proc
ะธ /sys
เดเตเดฒเดฟเดเตเดเต เดเดตเดถเตเดฏเดฎเดพเดฏ ifconfig
, Slirp-เดฎเดพเดฏเดฟ เดเดถเดฏเดตเดฟเดจเดฟเดฎเดฏเด เดจเดเดคเตเดคเดพเตป เดจเตเดฑเตเดฑเตโเดตเตผเดเตเดเต เดเดจเตเดฑเตผเดซเตเดธเต เดธเดเตเดเดฎเดพเดเตเดเตเดจเตเดจเต. เดเตเด route
เดเดฒเตเดฒเดพ เดเตเดฐเดพเดซเดฟเดเตเดเตเด เดธเตเดฒเดฟเตผเดชเต เดเดฃเดฒเดฟเดฒเตเดเต เด
เดฏเดเตเดเดพเตป เดเตเตผเดฃเตฝ เดฑเตเดเตเดเดฟเดเดเต เดเตเดฌเดฟเตพ เดธเดเตเดเดฎเดพเดเตเดเตเดจเตเดจเต. เดเดฐเต DNS เดเตเดฆเตเดฏเด เดเดชเดฏเตเดเดฟเดเตเดเต เดจเดฎเตเดเตเดเต เดเดคเต เดชเดฐเดฟเดถเตเดงเดฟเดเตเดเดพเด:
nslookup google.com 8.8.8.8
Server: 8.8.8.8
Address 1: 8.8.8.8 dns.google
Name: google.com
Address 1: 172.217.12.206 lga25s63-in-f14.1e100.net
Address 2: 2607:f8b0:4006:81b::200e lga25s63-in-x0e.1e100.net
เดเดคเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจเต!
เดเดฐเต เดเตเดฑเดฟเดชเตเดชเดฟเดจเตเด.: เดชเตเดฐเดคเตเดฏเดเตเดทเดคเตเดคเดฟเตฝ, เดตเดฏเตผเดกเต เดจเตเดฑเตเดฑเตโเดตเตผเดเตเดเต เดเดพเตผเดกเต เดเดชเดฏเตเดเดฟเดเตเดเต เดกเตเดธเตโเดเตโเดเตเดชเตเดชเดฟเตฝ เดเดฑเดฟเดเดฟเดจเตฝ เดชเตเดธเตเดฑเตเดฑเต เดเดดเตเดคเดฟเดฏเดคเดพเดฃเต, เด เดฒเตเดฒเตเดเตเดเดฟเตฝ เด เดงเดฟเด เดกเตเดฐเตเดตเดฑเตเดเตพ เดเดตเดถเตเดฏเดฎเดฟเดฒเตเดฒเดพเดคเตเดค เดฎเดฑเตเดฑเตเดคเตเดเตเดเดฟเดฒเตเด เดเตเตบเดซเดฟเดเดฑเตเดทเตป. เดเดจเตเดฑเดฒเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ WiFi 8265 เดเดณเตเดณ เดเดฐเต เดฒเดพเดชเตโเดเตเดชเตเดชเดฟเตฝ, เดจเตเดฑเตเดฑเตโเดตเตผเดเตเดเต เดเดฏเตผเดคเตเดคเตเดฎเตเดชเตเตพ เดเดฐเต เดชเดฟเดถเดเต เดธเดเดญเดตเดฟเดเตเดเตเดจเตเดจเต
/ # ifconfig eth0 10.0.2.14 netmask 255.255.255.240 broadcast 10.0.2.15
slirp_tramp failed - errno = 2
ifconfig: ioctl 0x8914 failed: No such file or directory
/ #
เดชเตเดฐเดคเตเดฏเดเตเดทเดคเตเดคเดฟเตฝ, เดเตเตผเดฃเดฒเดฟเดจเต เดจเตเดฑเตเดฑเตโเดตเตผเดเตเดเต เดเดพเตผเดกเต เดกเตเดฐเตเดตเดฑเตเดฎเดพเดฏเดฟ เดเดถเดฏเดตเดฟเดจเดฟเดฎเดฏเด เดจเดเดคเตเดคเดพเตป เดเดดเดฟเดฏเดฟเดฒเตเดฒ. เดซเตเดเดตเตเดฏเตผ เดเตเตผเดฃเดฒเดฟเดฒเตเดเตเดเต เดเดเดชเตเตฝ เดเตเดฏเตเดฏเดพเดจเตเดณเตเดณ เดถเตเดฐเดฎเด, เดจเดฟเตผเดญเดพเดเตเดฏเดตเดถเดพเตฝ, เดธเดพเดนเดเดฐเตเดฏเด เดชเดฐเดฟเดนเดฐเดฟเดเตเดเดฟเดฒเตเดฒ. เดชเตเดฐเดธเดฟเดฆเตเดงเตเดเดฐเดฟเดเตเดเตเดจเตเดจ เดธเดฎเดฏเดคเตเดคเต, เด เดเตเตบเดซเดฟเดเดฑเตเดทเดจเดฟเตฝ เดเดฐเต เดชเดฐเดฟเดนเดพเดฐเด เดเดฃเตเดเตเดคเตเดคเดพเตป เดเดดเดฟเดเตเดเดฟเดฒเตเดฒ. เดฒเดณเดฟเดคเดฎเดพเดฏ เดเตเตบเดซเดฟเดเดฑเตเดเดณเดฟเตฝ (เดเดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดตเตเตผเดเตเดตเตฝเดฌเตเดเตเดธเดฟเตฝ), เดเดจเตเดฑเตผเดซเตเดธเต เดถเดฐเดฟเดฏเดพเดฏเดฟ เดเดฏเดฐเตเดจเตเดจเต.
เดเดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดทเตเตฝ เดธเตโเดเตเดฐเดฟเดชเตเดฑเตเดฑเต เดเดชเดฏเตเดเดฟเดเตเดเต เดฑเตเดกเดฏเดฑเดเตโเดเต เดเดเตเดเตเดฎเตเดฑเตเดฑเต เดเตเดฏเตเดฏเดพเด:
#!/bin/sh
# init.sh
mount -t proc proc proc/
mount -t sysfs sys sys/
ifconfig eth0 10.0.2.14 netmask 255.255.255.240 broadcast 10.0.2.15
route add default gw 10.0.2.2
echo "networking set up"
exec /tini /bin/sh
เดเดคเต เดเดเตเดธเดฟเดเตเดฏเตเดเตเดเดฌเดฟเตพ เดเดจเตเดจเต เด เดเดฏเดพเดณเดชเตเดชเตเดเตเดคเตเดคเตเด:
chmod +x init.sh
เดคเตเดเตผเดจเตเดจเต เดเดเตเดเตพ เดเตเตผเดฃเตฝ เดเดฎเดพเตปเดกเต เดฒเตเดจเดฟเตฝ เดฎเดพเดฑเตเดฑเดเตเดเตพ เดตเดฐเตเดคเตเดคเตเด:
linux
root=/dev/root
rootfstype=hostfs
rootflags=$HOME/prefix/uml-demo
rw
mem=64M
eth0=slirp,,$HOME/bin/slirp
init=/init.sh
เดจเดฎเตเดเตเดเต เดเดตเตผเดคเตเดคเดฟเดเตเดเดพเด:
SLiRP Ready ...
networking set up
/bin/sh: can't access tty; job control turned off
nslookup google.com 8.8.8.8
Server: 8.8.8.8
Address 1: 8.8.8.8 dns.google
Name: google.com
Address 1: 172.217.12.206 lga25s63-in-f14.1e100.net
Address 2: 2607:f8b0:4004:800::200e iad30s09-in-x0e.1e100.net
เดจเตเดฑเตเดฑเตโเดตเตผเดเตเดเต เดธเตเดฅเดฟเดฐเดฎเดพเดฃเต!
เดกเตเดเตเดเตผ เดซเดฏเตฝ
เดจเดฟเดเตเดเตพเดเตเดเต เดเดคเตเดฒเตเดฒเดพเด เดชเดฐเดฟเดถเตเดงเดฟเดเตเดเตเดจเตเดจเดคเต เดเดณเตเดชเตเดชเดฎเดพเดเตเดเดพเตป, เดเดพเตป เดถเตเดเดฐเดฟเดเตเดเต
เดเดฐเต เดเดธเตเดฑเตเดฑเต เดเตเตผเดฃเตฝ เดเดเตเดเดจเต เดเดฏเตผเดคเตเดคเดพเดฎเตเดจเตเดจเต เดฎเดจเดธเดฟเดฒเดพเดเตเดเดพเตป เด เดชเตเดธเตเดฑเตเดฑเต เดจเดฟเดเตเดเดณเต เดธเดนเดพเดฏเดฟเดเตเดเดฟเดเตเดเตเดฃเตเดเตเดจเตเดจเต เดเดพเตป เดชเตเดฐเดคเตเดเตเดทเดฟเดเตเดเตเดจเตเดจเต. เดเดคเต เดเดฐเตเดคเดฐเด เดฐเดพเดเตเดทเดธเดจเดพเดฏเดฟ เดฎเดพเดฑเดฟ, เดเดจเตเดจเดพเตฝ เด เดเตเดเตเดเดฌเดคเตเดคเดฟเดจเตเดฑเต เดเดชเตเดชเดฑเตเดฑเตเดฑเดฟเดเดเต เดธเดฟเดธเตเดฑเตเดฑเดเตเดเดณเตเดเต เดเดงเตเดจเดฟเด เดชเดคเดฟเดชเตเดชเตเดเตพเดเตเดเต เดเตเดดเดฟเตฝ เดฒเดฟเดจเดเตเดธเดฟเตฝ เดเดชเดฏเตเดเตเดคเต เดฎเตเดกเต เดจเดฟเตผเดฎเตเดฎเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเตเด เดเตปเดธเตเดฑเตเดฑเดพเตพ เดเตเดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเด เดเตเตบเดซเดฟเดเตผ เดเตเดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเดฎเตเดณเตเดณ เดเดฐเต เดธเดฎเดเตเดฐ เดเตเดกเดพเดฏเดฟเดเตเดเดพเดฃเต เดชเตเดฐเดธเดฟเดฆเตเดงเตเดเดฐเดฃเด เดตเดฟเดญเดพเดตเดจเด เดเตเดฏเตเดคเดคเต. เดเดธเตเดฑเตเดฑเต เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเดจเตเดณเตเดณเดฟเตฝ เดเดคเดฟเดจเดเด เดคเดจเตเดจเต เดธเตเดตเดจเดเตเดเดณเตเด เดฎเดฑเตเดฑเต เดธเตเดซเตโเดฑเตเดฑเตโเดตเตเดฏเดฑเตเดเดณเตเด เดเตปเดธเตเดฑเตเดฑเดพเตพ เดเตเดฏเตเดฏเตเดจเตเดจเดคเต เด
เดเตเดคเตเดค เดเดเตเดเดเตเดเดณเดฟเตฝ เดเตพเดชเตเดชเตเดเตเดคเตเดคเดฃเด. เดกเตเดเตเดเตผ เดเดฃเตเดเตเดฏเตโเดจเตผ เดเดฟเดคเตเดฐเดเตเดเตพ เดชเดฐเดธเตเดฏเดชเตเดชเตเดเตเดคเตเดคเดฟเดฏ เดเดพเตผเดฌเตเดณเตเดเตพ เดฎเดพเดคเตเดฐเดฎเดพเดฏเดคเดฟเดจเดพเตฝ, เดจเดฟเดเตเดเตพเดเตเดเต เดเดฟเดคเตเดฐเด เดเดเตโเดธเตโเดเตเดฐเดพเดเตโเดฑเตเดฑเตเดเตเดฏเตเดฏเดพเดจเดพเดเตเด docker export
, เดคเตเดเตผเดจเตเดจเต เดเดธเตเดฑเตเดฑเต เดเตเตผเดฃเดฒเดฟเดจเตเดฑเต เดซเดฏเตฝ เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเดจเตเดฑเต เดฑเตเดเตเดเดฟเตฝ เด
เดคเดฟเดจเตเดฑเต เดเตปเดธเตเดฑเตเดฑเดฒเตเดทเตป เดชเดพเดคเตเดคเต เดจเดฟเตผเดฃเตเดฃเดฏเดฟเดเตเดเตเด. เดถเดฐเดฟ, เดคเตเดเตผเดจเตเดจเต เดทเตเตฝ เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเต เดเดเตเดธเดฟเดเตเดฏเตเดเตเดเต เดเตเดฏเตเดฏเตเด.
Freenode-เดฒเต #lobsters-เตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ Rkeene-เดจเต เดชเตเดฐเดคเตเดฏเตเด เดจเดจเตเดฆเดฟ. เดธเตเดฒเดฟเตผเดชเตเดชเดฟเดจเต เดกเตเดฌเดเตเดเต เดเตเดฏเตเดฏเดพเดจเตเดณเตเดณ เด
เดฆเตเดฆเตเดนเดคเตเดคเดฟเดจเตเดฑเต เดธเดนเดพเดฏเดฎเดฟเดฒเตเดฒเดพเดฏเดฟเดฐเตเดจเตเดจเตเดเตเดเดฟเตฝ, เดเดพเตป เดเดคเตเดฐเดฏเตเด เดฆเตเดฐเด เดเดคเตเดคเตเดฎเดพเดฏเดฟเดฐเตเดจเตเดจเดฟเดฒเตเดฒ. เด
เดตเดจเตเดฑเต เดธเตเดฒเดพเดเตเดเตเดตเตเดฏเตผ เดธเดฟเดธเตเดฑเตเดฑเด เดธเตเดฒเดฟเตผเดชเตเดชเดฟเดจเตเดชเตเดชเด เดเดเตเดเดจเต เดถเดฐเดฟเดฏเดพเดฏเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจเตเดตเตเดจเตเดจเต เดเดจเดฟเดเตเดเดฑเดฟเดฏเดฟเดฒเตเดฒ, เดชเดเตเดทเต เดเดจเตเดฑเต เดเดฌเตเดฃเตเดเต, เดเตฝเดชเตเตป เดธเดฟเดธเตเดฑเตเดฑเดเตเดเตพ เดธเตเดฒเดฟเตผเดชเตเดชเต เดธเตเดตเตเดเดฐเดฟเดเตเดเดฟเดฒเตเดฒ, เดเตเดเดพเดคเต เดฌเตเดจเดฑเดฟ เดเตผเดเตเดเตเตป เดเดจเตเดจเตเดเต เดจเดฟเตผเดฆเตเดฆเตเดถเดฟเดเตเดเต. เดชเดเตเดทเต, เดเดจเดฟเดเตเดเต เดเดจเตเดคเตเดเตเดเดฟเดฒเตเด เดเตเดฒเดฟ เดเตเดฏเตเดคเดพเตฝ เดฎเดคเดฟ.
เด
เดตเดฒเดเดฌเด: www.habr.com