GlusterFS рдХреЗ рд▓рд┐рдП Linux рдХрд░реНрдиреЗрд▓ рдХреА рд╕реНрдерд╛рдкрдирд╛

рдкрд╛рдареНрдпрдХреНрд░рдо рдХреА рд╢реБрд░реБрдЖрдд рдХреА рдкреВрд░реНрд╡ рд╕рдВрдзреНрдпрд╛ рдкрд░ рд▓реЗрдЦ рдХрд╛ рдЕрдиреБрд╡рд╛рдж рддреИрдпрд╛рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рд▓рд┐рдирдХреНрд╕ред рдкреЗрд╢реЗрд╡рд░".

GlusterFS рдХреЗ рд▓рд┐рдП Linux рдХрд░реНрдиреЗрд▓ рдХреА рд╕реНрдерд╛рдкрдирд╛

рд╕рдордп-рд╕рдордп рдкрд░, рдпрд╣рд╛рдБ рдФрд░ рд╡рд╣рд╛рдБ, рдХрд░реНрдиреЗрд▓ рдЯреНрдпреВрдирд┐рдВрдЧ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЧреНрд▓рд╕реНрдЯрд░ рдХреА рд╕рд┐рдлрд╛рд░рд┐рд╢реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкреНрд░рд╢реНрди рдЙрдарддреЗ рд╣реИрдВ рдФрд░ рдХреНрдпрд╛ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдРрд╕реА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╡рд┐рд░рд▓реЗ рд╣реА рдЙрддреНрдкрдиреНрди рд╣реЛрддреА рд╣реИред рдЕрдзрд┐рдХрд╛рдВрд╢ рдХрд╛рд░реНрдпрднрд╛рд░ рдкрд░, рдХрд░реНрдиреЗрд▓ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдкреНрд░рджрд░реНрд╢рди рдХрд░рддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдПрдХ рдирдХрд╛рд░рд╛рддреНрдордХ рдкрд╣рд▓реВ рд╣реИред рдРрддрд┐рд╣рд╛рд╕рд┐рдХ рд░реВрдк рд╕реЗ, рд▓рд┐рдирдХреНрд╕ рдХрд░реНрдиреЗрд▓ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рд╕реБрдзрд╛рд░ рдХреЗ рдореБрдЦреНрдп рддрд░реАрдХреЗ рдХреЗ рд░реВрдк рдореЗрдВ рдХреИрд╢рд┐рдВрдЧ рд╕рд╣рд┐рдд рдЕрд╡рд╕рд░ рджрд┐рдП рдЬрд╛рдиреЗ рдкрд░ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдореЗрдореЛрд░реА рдХрд╛ рдЙрдкрднреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд░рд╣рд╛ рд╣реИред

рдЬреНрдпрд╛рджрд╛рддрд░ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдпрд╣ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рднрд╛рд░реА рднрд╛рд░ рдХреЗ рддрд╣рдд рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдкреИрджрд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реИред

рд╣рдорд╛рд░реЗ рдкрд╛рд╕ CAD, EDA рдФрд░ рдЗрд╕реА рддрд░рд╣ рдХреА рдореЗрдореЛрд░реА рдЗрдВрдЯреЗрдВрд╕рд┐рд╡ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рдЕрдиреБрднрд╡ рд╣реИ, рдЬреЛ рднрд╛рд░реА рднрд╛рд░ рдХреЗ рддрд╣рдд рдзреАрдорд╛ рд╣реЛрдиреЗ рд▓рдЧрд╛ред рдФрд░ рдХрднреА-рдХрднреА рд╣рдореЗрдВ рдЧреНрд▓рд╕реНрдЯрд░ рдореЗрдВ рд╕рдорд╕реНрдпрд╛рдПрдБ рдЖрдИрдВред рдХрдИ рджрд┐рдиреЛрдВ рддрдХ рдореЗрдореЛрд░реА рдЙрдкрдпреЛрдЧ рдФрд░ рдбрд┐рд╕реНрдХ рд╡рд┐рд▓рдВрдмрддрд╛ рдХреЛ рдзреНрдпрд╛рди рд╕реЗ рджреЗрдЦрдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдореЗрдВ рдЙрдирдХрд╛ рдЕрдзрд┐рднрд╛рд░, рд╡рд┐рд╢рд╛рд▓ рдЖрдпрд╡реЗрдЯ, рдХрд░реНрдиреЗрд▓ рддреНрд░реБрдЯрд┐рдпрд╛рдБ (рдХрд░реНрдиреЗрд▓ рдЙрдлрд╝), рдлрд╝реНрд░реАрдЬрд╝, рдЖрджрд┐ рдорд┐рд▓реАрдВред

рдпрд╣ рдЖрд▓реЗрдЦ рд╡рд┐рднрд┐рдиреНрди рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рдХрд┐рдП рдЧрдП рдХрдИ рдЯреНрдпреВрдирд┐рдВрдЧ рдкреНрд░рдпреЛрдЧреЛрдВ рдХрд╛ рдкрд░рд┐рдгрд╛рдо рд╣реИред рдЗрди рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рди рдХреЗрд╡рд▓ рд╕рдордЧреНрд░ рдЬрд╡рд╛рдмрджреЗрд╣реА рдореЗрдВ рд╕реБрдзрд╛рд░ рд╣реБрдЖ рд╣реИ, рдмрд▓реНрдХрд┐ рдХреНрд▓рд╕реНрдЯрд░ рднреА рдХрд╛рдлреА рд╕реНрдерд┐рд░ рд╣реЛ рдЧрдпрд╛ рд╣реИред

рдЬрдм рдореЗрдореЛрд░реА рдЯреНрдпреВрдирд┐рдВрдЧ рдХреА рдмрд╛рдд рдЖрддреА рд╣реИ, рддреЛ рджреЗрдЦрдиреЗ рд╡рд╛рд▓реА рдкрд╣рд▓реА рдЪреАрдЬрд╝ рд╡рд░реНрдЪреБрдЕрд▓ рдореЗрдореЛрд░реА рд╕рдмрд╕рд┐рд╕реНрдЯрдо (VM, рд╡рд░реНрдЪреБрдЕрд▓ рдореЗрдореЛрд░реА) рд╣реЛрддреА рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд╡рд┐рдХрд▓реНрдк рд╣реЛрддреЗ рд╣реИрдВ рдЬреЛ рдЖрдкрдХреЛ рднреНрд░рдорд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рд╡реА.рдПрдо.рд╕реНрд╡реИрдкреАрдиреЗрд╕

рдкреНрд░рд╛рдЪрд▓ vm.swappiness рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ RAM рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХрд░реНрдиреЗрд▓ рд╕реНрд╡реИрдк (рд╕реНрд╡реИрдк, рдкреЗрдЬрд┐рдВрдЧ) рдХрд╛ рдХрд┐рддрдирд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдЗрд╕реЗ рд╕реЛрд░реНрд╕ рдХреЛрдб рдореЗрдВ "рдореИрдкреНрдб рдореЗрдореЛрд░реА рдЪреБрд░рд╛рдиреЗ рдХреА рдкреНрд░рд╡реГрддреНрддрд┐" рдХреЗ рд░реВрдк рдореЗрдВ рднреА рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдПрдХ рдЙрдЪреНрдЪ рд╕реНрд╡реИрдкреАрдиреЗрд╕ рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдХрд░реНрдиреЗрд▓ рдореИрдк рдХрд┐рдП рдЧрдП рдкреГрд╖реНрдареЛрдВ рдХреЛ рд╕реНрд╡реИрдк рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рдЗрдЪреНрдЫреБрдХ рд╣реЛрдЧрд╛ред рдПрдХ рдХрдо рд╕реНрд╡реИрдкреАрдиреЗрд╕ рдорд╛рди рдХрд╛ рдЕрд░реНрде рд╡рд┐рдкрд░реАрдд рд╣реИ: рдХрд░реНрдиреЗрд▓ рд╕реНрдореГрддрд┐ рд╕реЗ рдкреГрд╖реНрда рдХрдо рдХрд░реЗрдЧрд╛ред рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рдЙрдЪреНрдЪ рдореВрд▓реНрдп vm.swappiness, рдЬрд┐рддрдирд╛ рдЕрдзрд┐рдХ рд╕рд┐рд╕реНрдЯрдо рд╕реНрд╡реИрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдЧрд╛ред

рдЕрджрд▓рд╛-рдмрджрд▓реА рдХрд╛ рдПрдХ рдмрдбрд╝рд╛ рдЙрдкрдпреЛрдЧ рдЕрд╡рд╛рдВрдЫрдиреАрдп рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдбреЗрдЯрд╛ рдХреЗ рд╡рд┐рд╢рд╛рд▓ рдмреНрд▓реЙрдХ рд░реИрдо рдореЗрдВ рд▓реЛрдб рдФрд░ рдЕрдирд▓реЛрдб рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдмрд╣реБрдд рд╕реЗ рд▓реЛрдЧ рддрд░реНрдХ рджреЗрддреЗ рд╣реИрдВ рдХрд┐ рд╕реНрд╡реЗрдкрдиреЗрд╕ рд╡реИрд▓реНрдпреВ рдмрдбрд╝реА рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рдореЗрд░реЗ рдЕрдиреБрднрд╡ рдореЗрдВ, рдЗрд╕реЗ "0" рдкрд░ рд╕реЗрдЯ рдХрд░рдиреЗ рд╕реЗ рдмреЗрд╣рддрд░ рдкреНрд░рджрд░реНрд╢рди рд╣реЛрддрд╛ рд╣реИред

рдЖрдк рдпрд╣рд╛рдВ рдФрд░ рдЕрдзрд┐рдХ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ - lwn.net/Articles/100978

рд▓реЗрдХрд┐рди, рдлрд┐рд░ рд╕реЗ, рдЗрди рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рд╕рд╛рд╡рдзрд╛рдиреА рд╕реЗ рдФрд░ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рд╣реА рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЕрддреНрдпрдзрд┐рдХ рд▓реЛрдб рдХрд┐рдП рдЧрдП рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд▓рд┐рдП, рдпрд╣ рдкреИрд░рд╛рдореАрдЯрд░ "0" рдкрд░ рд╕реЗрдЯ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдЬрдм рдЗрд╕реЗ "0" рдореЗрдВ рдмрджрд▓рд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╕рд┐рд╕реНрдЯрдо рдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рд╕реБрдзрд╛рд░ рд╣реЛрддрд╛ рд╣реИред

vm.vfs_cache_press

рдпрд╣ рд╕реЗрдЯрд┐рдВрдЧ рдХреИрд╢рд┐рдВрдЧ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдФрд░ рдЗрдиреЛрдб рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ (рдбреЗрдВрдЯреНрд░реА рдФрд░ рдЗрдиреЛрдб) рдХреЗ рд▓рд┐рдП рдХрд░реНрдиреЗрд▓ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рдореЗрдореЛрд░реА рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддреА рд╣реИред

100 рдХреЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди рдХреЗ рд╕рд╛рде, рдХрд░реНрдиреЗрд▓ рдбреЗрдВрдЯреНрд░реА рдФрд░ рдЗрдиреЛрдб рдХреИрд╢ рдХреЛ "рдирд┐рд╖реНрдкрдХреНрд╖" рдЖрдзрд╛рд░ рдкрд░ рдкреЗрдЬрдХреИрд╢ рдФрд░ рд╕реНрд╡реИрдкрдХреИрдЪ рд╕реЗ рдореБрдХреНрдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдЧрд╛ред vfs_cache_рджрдмрд╛рд╡ рдХреЛ рдХрдо рдХрд░рдиреЗ рд╕реЗ рдХрд░реНрдиреЗрд▓ рдХреЛ рдбреЗрдВрдЯреНрд░реА рдФрд░ рдЗрдиреЛрдб рдХреИрд╢ рд░рдЦрдиреЗ рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИред рдЬрдм рдорд╛рди "0" рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдореЗрдореЛрд░реА рдкреНрд░реЗрд╢рд░ рдХреЗ рдХрд╛рд░рдг рдХрд░реНрдиреЗрд▓ рдХрднреА рднреА рдбреЗрдВрдЯреНрд░реА рдФрд░ рдЗрдиреЛрдб рдХреИрд╢ рдХреЛ рдлреНрд▓рд╢ рдирд╣реАрдВ рдХрд░реЗрдЧрд╛, рдФрд░ рдпрд╣ рдЖрд╕рд╛рдиреА рд╕реЗ рдЖрдЙрдЯ-рдСрдл-рдореЗрдореЛрд░реА рддреНрд░реБрдЯрд┐ рдХрд╛ рдХрд╛рд░рдг рдмрди рд╕рдХрддрд╛ рд╣реИред vfs_cache_рджрдмрд╛рд╡ рдХреЛ 100 рд╕реЗ рдКрдкрд░ рдмрдврд╝рд╛рдиреЗ рд╕реЗ рдХрд░реНрдиреЗрд▓ рдбреЗрдВрдЯреНрд░реА рдФрд░ рдЗрдиреЛрдб рдлреНрд▓рд╢рд┐рдВрдЧ рдХреЛ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рджреЗрддрд╛ рд╣реИред

GlusterFS рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп, рдмрдбрд╝реА рдорд╛рддреНрд░рд╛ рдореЗрдВ рдбреЗрдЯрд╛ рдФрд░ рдХрдИ рдЫреЛрдЯреА рдлрд╝рд╛рдЗрд▓реЛрдВ рд╡рд╛рд▓реЗ рдХрдИ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдиреЛрдб/рдбреЗрдВрдЯреНрд░реА рдХреИрд╢рд┐рдВрдЧ рдХреЗ рдХрд╛рд░рдг рд╕рд░реНрд╡рд░ рдкрд░ рдмрдбрд╝реА рдорд╛рддреНрд░рд╛ рдореЗрдВ рд░реИрдо рдХрд╛ рдЖрд╕рд╛рдиреА рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рд╕реЗ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рдЧрд┐рд░рд╛рд╡рдЯ рдЖ рд╕рдХрддреА рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдХрд░реНрдиреЗрд▓ рдХреЛ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдирд╛ рдкрдбрд╝рддрд╛ рд╣реИред 40 рдЬреАрдмреА рдореЗрдореЛрд░реА рдХреЗ рд╕рд╛рдеред рдЗрд╕ рдорд╛рди рдХреЛ 100 рд╕реЗ рдКрдкрд░ рд╕реЗрдЯ рдХрд░рдиреЗ рд╕реЗ рдХрдИ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдмреЗрд╣рддрд░ рдХреИрд╢рд┐рдВрдЧ рдФрд░ рдмреЗрд╣рддрд░ рдХрд░реНрдиреЗрд▓ рдЬрд╡рд╛рдмрджреЗрд╣реА рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдорд┐рд▓реА рд╣реИред

vm.dirty_background_ratio рдФрд░ vm.dirty_ratio

рдкрд╣рд▓рд╛ рдкреИрд░рд╛рдореАрдЯрд░ (vm.dirty_background_ratio) рдЧрдВрджреЗ рдкреГрд╖реНрдареЛрдВ рдХреЗ рд╕рд╛рде рдореЗрдореЛрд░реА рдХрд╛ рдкреНрд░рддрд┐рд╢рдд рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕ рдкрд░ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рдмрд╛рдж рдкреГрд╖реНрдарднреВрдорд┐ рдореЗрдВ рдЧрдВрджреЗ рдкреГрд╖реНрдареЛрдВ рдХреЛ рдбрд┐рд╕реНрдХ рдореЗрдВ рдлреНрд▓рд╢ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдЬрдм рддрдХ рдпрд╣ рдкреНрд░рддрд┐рд╢рдд рдкреВрд░рд╛ рдирд╣реАрдВ рд╣реЛ рдЬрд╛рддрд╛, рддрдм рддрдХ рдбрд┐рд╕реНрдХ рдореЗрдВ рдХреЛрдИ рдкреГрд╖реНрда рдирд╣реАрдВ рдлрд╝реНрд▓рд╢ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдФрд░ рдЬрдм рд░реАрд╕реЗрдЯ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдЪрд▓ рд░рд╣реА рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рдмрд╛рдзрд┐рдд рдХрд┐рдП рдмрд┐рдирд╛ рдкреГрд╖реНрдарднреВрдорд┐ рдореЗрдВ рдЪрд▓рддрд╛ рд╣реИред

рджреВрд╕рд░рд╛ рдкреИрд░рд╛рдореАрдЯрд░ (vm.dirty_ratio) рдЙрд╕ рдореЗрдореЛрд░реА рдХреЗ рдкреНрд░рддрд┐рд╢рдд рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдЬрдмрд░рди рдлреНрд▓реИрд╢ рд╢реБрд░реВ рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЧрдВрджреЗ рдкреЗрдЬреЛрдВ рджреНрд╡рд╛рд░рд╛ рдХрдмреНрдЬрд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдПрдХ рдмрд╛рд░ рдЬрдм рдпрд╣ рд╕реАрдорд╛ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рддреА рд╣реИ, рддреЛ рд╕рднреА рдкреНрд░рдХреНрд░рд┐рдпрд╛рдПрдБ рд╕рдордХрд╛рд▓рд┐рдХ (рдЕрд╡рд░реБрджреНрдз) рд╣реЛ рдЬрд╛рддреА рд╣реИрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рддрдм рддрдХ рдЬрд╛рд░реА рд░рдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреА рдЬрд╛рддреА рд╣реИ рдЬрдм рддрдХ рдХрд┐ рдЙрдирдХреЗ рджреНрд╡рд╛рд░рд╛ рдЕрдиреБрд░реЛрдзрд┐рдд I/O рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдкреВрд░рд╛ рдирд╣реАрдВ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдбреЗрдЯрд╛ рдбрд┐рд╕реНрдХ рдкрд░ рд╣реЛрддрд╛ рд╣реИред рднрд╛рд░реА I/O рдХреЗ рд╕рд╛рде, рдпрд╣ рдПрдХ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдХреЛрдИ рдбреЗрдЯрд╛ рдХреИрд╢рд┐рдВрдЧ рдирд╣реАрдВ рд╣реИ рдФрд░ I/O рдХрд░рдиреЗ рд╡рд╛рд▓реА рд╕рднреА рдкреНрд░рдХреНрд░рд┐рдпрд╛рдПрдБ I/O рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдореЗрдВ рдЕрд╡рд░реБрджреНрдз рд╣реИрдВред рдпрд╣ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рддреНрд░рд┐рд╢рдВрдХреБ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ, рдЙрдЪреНрдЪ рднрд╛рд░, рд╕рд┐рд╕реНрдЯрдо рдЕрд╕реНрдерд┐рд░рддрд╛ рдФрд░ рдЦрд░рд╛рдм рдкреНрд░рджрд░реНрд╢рди рдХреА рдУрд░ рдЬрд╛рддрд╛ рд╣реИред

рдЗрди рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рдХрдо рдХрд░рдиреЗ рд╕реЗ рдбреЗрдЯрд╛ рдХреЛ рдбрд┐рд╕реНрдХ рдореЗрдВ рдЕрдзрд┐рдХ рдмрд╛рд░ рдлрд╝реНрд▓рд╢ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рд░реИрдо рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рдореЗрдореЛрд░реА-рд╣реИрд╡реА рд╕рд┐рд╕реНрдЯрдо рдХреА рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдЬрд╣рд╛рдВ 45-90 рдЬреАрдмреА рдкреЗрдЬ рдХреИрд╢ рдХреЛ рдбрд┐рд╕реНрдХ рдореЗрдВ рдлреНрд▓рд╢ рдХрд░рдирд╛ рд╕рд╛рдорд╛рдиреНрдп рд╣реИ, рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдлреНрд░рдВрдЯ-рдПрдВрдб рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд▓рд┐рдП рднрд╛рд░реА рд╡рд┐рд▓рдВрдмрддрд╛ рд╣реЛрддреА рд╣реИ, рдЬрд┐рд╕рд╕реЗ рд╕рдордЧреНрд░ рдЬрд╡рд╛рдмрджреЗрд╣реА рдФрд░ рдЕрдиреНрддрд░рдХреНрд░рд┐рдпрд╛рд╢реАрд▓рддрд╛ рдХрдо рд╣реЛ рдЬрд╛рддреА рд╣реИред

"1" > /proc/sys/vm/pagecache

рдПрдХ рдкреГрд╖реНрда рдХреИрд╢ рдПрдХ рдХреИрд╢ рд╣реИ рдЬреЛ рдлрд╝рд╛рдЗрд▓реЛрдВ рдФрд░ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдкреНрд░реЛрдЧреНрд░рд╛рдореЛрдВ рдХреЗ рдбреЗрдЯрд╛ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рдд рдпреЗ рдлрд╝рд╛рдЗрд▓реЛрдВ рдпрд╛ рдмреНрд▓реЙрдХ рдЙрдкрдХрд░рдгреЛрдВ рдХреА рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рд╛рдордЧреНрд░реА рд╡рд╛рд▓реЗ рдкреГрд╖реНрда рд╣реИрдВред рдбрд┐рд╕реНрдХ рд░реАрдб рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдХреИрд╢ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред "1" рдХреЗ рдорд╛рди рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ 1% RAM рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╢ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ RAM рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдбрд┐рд╕реНрдХ рд╕реЗ рдЕрдзрд┐рдХ рд░реАрдб рд╣реЛрдВрдЧреЗред рдЗрд╕ рд╕реЗрдЯрд┐рдВрдЧ рдХреЛ рдмрджрд▓рдирд╛ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдпрджрд┐ рдЖрдк рдкреЗрдЬ рдХреИрд╢ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрд╛рдЧрд▓ рд╣реИрдВ, рддреЛ рдЖрдк рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

"рд╕рдордп рд╕реАрдорд╛"> /sys/block/sdc/queue/scheduler

I/O рдЕрдиреБрд╕реВрдЪрдХ рдПрдХ рд▓рд┐рдирдХреНрд╕ рдХрд░реНрдиреЗрд▓ рдШрдЯрдХ рд╣реИ рдЬреЛ рдкрдврд╝рдиреЗ рдФрд░ рд▓рд┐рдЦрдиреЗ рдХреА рдХрддрд╛рд░реЛрдВ рдХреЛ рд╕рдВрднрд╛рд▓рддрд╛ рд╣реИред рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ, рд╕реНрдорд╛рд░реНрдЯ RAID рдирд┐рдпрдВрддреНрд░рдХ рдХреЗ рд▓рд┐рдП "рдиреЛрдк" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд▓рд┐рдирдХреНрд╕ рдбрд┐рд╕реНрдХ рдХреА рднреМрддрд┐рдХ рдЬреНрдпрд╛рдорд┐рддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдирд╣реАрдВ рдЬрд╛рдирддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдирд┐рдпрдВрддреНрд░рдХ рдХреЛ рдЬрд╛рдиреЗ рджреЗрдирд╛ рдЕрдзрд┐рдХ рдХреБрд╢рд▓ рд╣реИ, рдЬреЛ рдбрд┐рд╕реНрдХ рдЬреНрдпрд╛рдорд┐рддрд┐ рдХреЛ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЬрд╛рдирддрд╛ рд╣реИ, рдЕрдиреБрд░реЛрдз рдХреЛ рдЬрд┐рддрдиреА рдЬрд▓реНрджреА рд╣реЛ рд╕рдХреЗ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░реЗрдВред рд╕рдВрднрд╡ред рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ "рд╕рдордп рд╕реАрдорд╛" рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░рддреА рд╣реИред рдЖрдк Linux рдХрд░реНрдиреЗрд▓ рд╕реНрд░реЛрдд рдХреЛрдб рдкреНрд░рд▓реЗрдЦрди рдореЗрдВ рдЕрдиреБрд╕реВрдЪрдХреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ: linux/Documentation/block/*osched.txt. рдФрд░ рдореИрдВрдиреЗ рдорд┐рд╢реНрд░рд┐рдд рд╕рдВрдЪрд╛рд▓рди (рдХрдИ рд▓рд┐рдЦрдиреЗ рдХреЗ рд╕рдВрдЪрд╛рд▓рди) рдХреЗ рджреМрд░рд╛рди рд░реАрдб рдереНрд░реВрдкреБрдЯ рдореЗрдВ рднреА рд╡реГрджреНрдзрд┐ рджреЗрдЦреА рд╣реИред

"256" > /sys/block/sdc/queue/nr_requests

рд╢реЗрдбреНрдпреВрд▓рд░ рдХреЛ рднреЗрдЬреЗ рдЬрд╛рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдмрдлрд░ рдореЗрдВ I/O рдЕрдиреБрд░реЛрдзреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ред рдХреБрдЫ рдирд┐рдпрдВрддреНрд░рдХреЛрдВ рдХреА рдЖрдВрддрд░рд┐рдХ рдХрддрд╛рд░ рдХрд╛ рдЖрдХрд╛рд░ (рдХрддрд╛рд░_рдЧрд╣рд░рд╛рдИ) I/O рдЕрдиреБрд╕реВрдЪрдХ рдХреЗ nr_requests рд╕реЗ рдмрдбрд╝рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП I/O рдЕрдиреБрд╕реВрдЪрдХ рдХреЗ рдкрд╛рд╕ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рдареАрдХ рд╕реЗ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рджреЗрдиреЗ рдФрд░ рд╡рд┐рд▓рдп рдХрд░рдиреЗ рдХреА рдмрд╣реБрдд рдХрдо рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИред рд╕рдордп рд╕реАрдорд╛ рдФрд░ CFQ рдЕрдиреБрд╕реВрдЪрдХреЛрдВ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдмреЗрд╣рддрд░ рд╣реИ рдЬрдм nr_requests рдирд┐рдпрдВрддреНрд░рдХ рдХреА рдЖрдВрддрд░рд┐рдХ рдХрддрд╛рд░ рд╕реЗ 2 рдЧреБрдирд╛ рдЕрдзрд┐рдХ рд╣реЛред рд╡рд┐рд▓рдп рдФрд░ рдкреБрди: рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рдиреЗ рдХреЗ рдЕрдиреБрд░реЛрдзреЛрдВ рд╕реЗ рдЕрдиреБрд╕реВрдЪрдХ рдХреЛ рднрд╛рд░реА рднрд╛рд░ рдХреЗ рддрд╣рдд рдЕрдзрд┐рдХ рдЙрддреНрддрд░рджрд╛рдпреА рд╣реЛрдиреЗ рдореЗрдВ рдорджрдж рдорд┐рд▓рддреА рд╣реИред

рдЗрдХреЛ "16" > /proc/sys/vm/page-cluster

рдкреЗрдЬ-рдХреНрд▓рд╕реНрдЯрд░ рдкреИрд░рд╛рдореАрдЯрд░ рдЙрди рдкреЗрдЬреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдПрдХ рдмрд╛рд░ рдореЗрдВ рд╕реНрд╡реИрдк рдХреЗ рд▓рд┐рдП рд▓рд┐рдЦреЗ рдЬрд╛рддреЗ рд╣реИрдВред рдЙрдкрд░реЛрдХреНрдд рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, 16 KB рдХреЗ RAID рд╕реНрдЯреНрд░рд╛рдЗрдк рдЖрдХрд╛рд░ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдорд╛рди "64" рдкрд░ рд╕реЗрдЯ рд╣реИред рдпрд╣ рд╕реНрд╡реИрдкреАрдиреЗрд╕ = 0 рдХреЗ рд╕рд╛рде рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрджрд┐ рдЖрдк рд╕реНрд╡реИрдкрдиреЗрд╕ рдХреЛ 10 рдпрд╛ 20 рдкрд░ рд╕реЗрдЯ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдЗрд╕ рдорд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдЖрдкрдХреЛ рдорджрдж рдорд┐рд▓реЗрдЧреА рдЬрдм RAID рд╕реНрдЯреНрд░рд╛рдЗрдк рдХрд╛ рдЖрдХрд╛рд░ 64K рд╣реИред

рдмреНрд▓реЙрдХрджреЗрд╡ --рд╕реЗрдЯрд░рд╛ 4096 / рджреЗрд╡ /<рджреЗрд╡рдирд╛рдо> (-рдПрд╕рдбреАрдмреА, рдПрдЪрдбреАрд╕реА рдпрд╛ dev_mapper)

рдХрдИ RAID рдирд┐рдпрдВрддреНрд░рдХреЛрдВ рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдмреНрд▓реЙрдХ рдбрд┐рд╡рд╛рдЗрд╕ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХрд╛ рдкрд░рд┐рдгрд╛рдо рдЕрдХреНрд╕рд░ рднрдпрд╛рдирдХ рдкреНрд░рджрд░реНрд╢рди рд╣реЛрддрд╛ рд╣реИред рдЙрдкрд░реЛрдХреНрдд рд╡рд┐рдХрд▓реНрдк рдХреЛ рдЬреЛрдбрд╝рдиреЗ рд╕реЗ 4096 * 512-рдмрд╛рдЗрдЯ рд╕реЗрдХреНрдЯрд░реЛрдВ рдХреЗ рд▓рд┐рдП рд░реАрдб-рдлреЙрд░рд╡рд░реНрдб рд╕реЗрдЯ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рдмрд╣реБрдд рдХрдо рд╕реЗ рдХрдо, рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рд╕рдВрдЪрд╛рд▓рди рдХреЗ рд▓рд┐рдП, рдХрд░реНрдиреЗрд▓ рджреНрд╡рд╛рд░рд╛ I/O рддреИрдпрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рдЕрд╡рдзрд┐ рдХреЗ рджреМрд░рд╛рди рдСрди-рдЪрд┐рдк рдбрд┐рд╕реНрдХ рдХреИрд╢ рдХреЛ рд░реАрдб-рдлреЙрд░рд╡рд░реНрдб рдХреЗ рд╕рд╛рде рднрд░рдХрд░ рдЧрддрд┐ рдмрдврд╝рд╛рдИ рдЬрд╛рддреА рд╣реИред рдХреИрд╢ рдореЗрдВ рдбреЗрдЯрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдЕрдЧрд▓реА рдмрд╛рд░ рдкрдврд╝рдиреЗ рдкрд░ рдЕрдиреБрд░реЛрдз рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдпрджрд┐ рдпрд╣ рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧреА рдбрд┐рд╕реНрдХ рд╕рдордп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдпрд╛ рдХреИрд╢ рдХреЗ рдмрд╛рд╣рд░ рдбреЗрдЯрд╛ рд▓реЛрдб рдХрд░рддрд╛ рд╣реИ рддреЛ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдкреНрд░реАрдлреИрдЪ рдмрдбрд╝реА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдпрд╛рджреГрдЪреНрдЫрд┐рдХ I/O рдХреЛ рдорд╛рд░ рд╕рдХрддрд╛ рд╣реИред

рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рд╕реНрддрд░ рдкрд░ рдиреАрдЪреЗ рдХреБрдЫ рдФрд░ рд╕реБрдЭрд╛рд╡ рджрд┐рдП рдЧрдП рд╣реИрдВред рд▓реЗрдХрд┐рди рдЕрднреА рддрдХ рдЙрдирдХрд╛ рдкрд░реАрдХреНрд╖рдг рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЖрдкрдХрд╛ рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдкрдЯреНрдЯреА рдХреЗ рдЖрдХрд╛рд░ рдФрд░ рд╕рд░рдгреА рдореЗрдВ рдбрд┐рд╕реНрдХ рдХреА рд╕рдВрдЦреНрдпрд╛ рдЬрд╛рдирддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣ рдЫрд╣ рдбрд┐рд╕реНрдХ рдХреА 5K рдзрд╛рд░реА RAID64 рд╕рд░рдгреА рд╣реИ (рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдкрд╛рдВрдЪ, рдХреНрдпреЛрдВрдХрд┐ рдПрдХ рдбрд┐рд╕реНрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕рдорддрд╛ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ)ред рдпреЗ рд╕рд┐рдлрд╛рд░рд┐рд╢реЗрдВ рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рдорд╛рдиреНрдпрддрд╛рдУрдВ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИрдВ рдФрд░ RAID рд╡рд┐рд╢реЗрд╖рдЬреНрдЮреЛрдВ рджреНрд╡рд╛рд░рд╛ рд╡рд┐рднрд┐рдиреНрди рдмреНрд▓реЙрдЧреЛрдВ/рд▓реЗрдЦреЛрдВ рд╕реЗ рд╕рдВрдХрд▓рд┐рдд рдХреА рдЧрдИ рд╣реИрдВред

-> ext4 fs, 5 disks, 64K stripe, units in 4K blocks
mkfs -text4 -E stride=$((64/4))
-> xfs, 5 disks, 64K stripe, units in 512-byte sectors
mkfs -txfs -d sunit=$((64*2)) -d swidth=$((5*64*2))

рдмрдбрд╝реА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП, рдКрдкрд░ рд╕реВрдЪреАрдмрджреНрдз рд╕реНрдЯреНрд░рд╛рдЗрдк рдЖрдХрд╛рд░реЛрдВ рдХреЛ рдмрдврд╝рд╛рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред

рдЪреЗрддрд╛рд╡рдиреА! рдХреБрдЫ рдкреНрд░рдХрд╛рд░ рдХреЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдКрдкрд░ рд╡рд░реНрдгрд┐рдд рд╕рдм рдХреБрдЫ рдЕрддреНрдпрдзрд┐рдХ рд╡реНрдпрдХреНрддрд┐рдкрд░рдХ рд╣реИред рдпрд╣ рдЖрд▓реЗрдЦ рд╕рдВрдмрдВрдзрд┐рдд рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рдкреВрд░реНрд╡ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкрд░реАрдХреНрд╖рдг рдХреЗ рдмрд┐рдирд╛ рдХрд┐рд╕реА рднреА рд╕реБрдзрд╛рд░ рдХреА рдЧрд╛рд░рдВрдЯреА рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреЗрд╡рд▓ рддрднреА рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬрдм рд╕рд┐рд╕реНрдЯрдо рдХреА рд╕рдордЧреНрд░ рдЬрд╡рд╛рдмрджреЗрд╣реА рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ, рдпрд╛ рдпрджрд┐ рдпрд╣ рд╡рд░реНрддрдорд╛рди рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рддрд╛ рд╣реЛред

рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рд╛рдордЧреНрд░реА:

GlusterFS рдХреЗ рд▓рд┐рдП Linux рдХрд░реНрдиреЗрд▓ рдХреА рд╕реНрдерд╛рдкрдирд╛

рдЕрдзрд┐рдХ рдкрдврд╝реЗрдВ

рд╕реНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╝реЗрдВ