You are on page 1of 176

‫اﻻﺻﺪار اﻻول‬

‫‪ 5‬ﻣﺎرس ‪2005‬‬

‫ﺑﺴﻢ اﷲ اﻟﺮﺣﻤﻦ اﻟﺮﺣﻴﻢ‬
‫اﻟﺤﻤﺪ ﷲ رب اﻟﻌﺎﻟﻤﻴﻦ واﻟﺼﻼﻩ واﻟﺴﻼم ﻋﻠﻰ ﻣﺤﻤﺪاً وﻋﻠﻰ أﻟﻪ وﺻﺤﺒﻪ وﺳﻠﻢ ‪ ,‬اﻣﺎ ﺑﻌﺪ‬
‫ﻳﻌﺘﺒﺮ هﺬا اﻟﻌﻤﻞ ﻣﺤﺎوﻟﻪ ﻣﻨﻰ ﻻﻳﺠﺎد آﺘﺎب ﻳﺘﺤﺪث ﻋﻦ ادارﻩ ﻟﻴﻨﻮآﺲ ‪.‬‬
‫واﻟﺪاﻓﻊ اﻟﻰ هﺬﻩ اﻟﻤﺤﺎوﻟﻪ ‪ ،‬هﻮ ﻋﺪم وﺟﻮد اى آﺘﺎب ﺑﺎﻟﻠﻐﻪ اﻟﻌﺮﺑﻴﻪ ﻓﻰ هﺬا اﻟﻤﺠﺎل ‪ ،‬ﻣﻤﺎ ﻳﺸﻜﻞ ﺻﻌﻮﺑﻪ ﻟﻠﺮاﻏﺒﻴﻦ ﻓﻰ‬
‫ﺗﻌﻠﻢ ادارﻩ ﻟﻴﻨﻮآﺲ وﺑﺎﻟﺘﺎﻟﻰ اﻧﺘﺸﺎرﻩ ﻓﻰ ﺑﻼدﻧﺎ اﻟﻌﺮﺑﻴﻪ ‪.‬‬
‫ﻓﻘﺪ ﻗﺎﺑﻠﺘﻨﻰ ﺷﺨﺼﻴﺎ هﺬﻩ اﻟﻤﺸﻜﻠﻪ ﻓﻰ ﺑﺪاﻳﻪ ﺗﻌﻠﻤﻰ ﻟﻠﻨﻈﺎم ‪ ،‬وﺑﺤﺜﺖ آﺜﻴﺮا ﻋﻦ اى آﺘﺎب ﺑﺎﻟﻠﻐﻪ اﻟﻌﺮﺑﻴﻪ ﻟﻜﻰ ﻳﺴﻬﻞ ﻋﻤﻠﻴﻪ‬
‫ﻓﻬﻢ اﻟﻨﻈﺎم وادارﺗﻪ ‪ ،‬وﻟﻢ اﺟﺪ ‪.‬‬
‫واﻧﺎ ﻣﺘﺎآﺪ ان هﺬﻩ اﻟﻤﺴﺎﻟﻪ ﺳﻮف ﺗﺘﻜﺮر ﻣﻊ اﻟﻌﺪﻳﺪ ﻣﻦ اﻟﺮاﻏﺒﻴﻦ ﻓﻰ ﺗﻌﻠﻢ ﻟﻴﻨﻮآﺲ ‪ .‬ﻟﻬﺬا ‪-‬اﺳﺘﻌﻨﺖ ﺑﺎﷲ‪ -‬وﻗﺮرت ان‬
‫اﺑﺪأ ﻓﻰ آﺘﺎﺑﻪ آﺘﺎب ﻳﺸﺮح ادارﻩ ﻟﻴﻨﻮآﺲ ‪.‬‬
‫وهﺬا اﻟﻜﺘﺎب اﻟﺬى ﺑﻴﻦ ﻳﺪﻳﻚ اﻻن ﻋﺒﺎرﻩ ﻋﻦ اﺻﺪار ﻳﺸﻤﻞ اﻟﻌﺪﻳﺪ ﻣﻦ اﻟﻤﻮاﺿﻴﻊ اﻟﻬﺎﻣﻪ ﻟﻠﺮاﻏﺐ ﻓﻰ ﺗﻌﻠﻢ ادارﻩ اﻟﻨﻈﺎم ‪.‬‬
‫وﺑﺎﻻﻃﻼع ﻋﻠﻰ هﺬﻩ اﻟﻤﻮاﺿﻴﻊ ﺳﻴﺠﺪ اﻟﻘﺎرى ﻧﻔﺴﻪ ﻗﺪ اﺳﺘﻄﺎع اﻟﻮﻗﻮف ﻋﻠﻰ ارﺿﻴﻪ ﺛﺎﺑﺘﻪ ‪ ،‬ﺗﻤﻜﻨﻪ ﻣﺆﻗﺘﺎ ﻓﻰ ﺷﻖ‬
‫اﻟﻄﺮﻳﻖ ﻟﺘﻌﻠﻢ ﻟﻴﻨﻮآﺲ ‪ ،‬ﻟﺤﻴﻦ اآﻤﺎل هﺬا اﻟﻜﺘﺎب ‪ ،‬واﻟﺬى اﻧﻮى ﺟﻌﻠﻪ ﻣﺮﺟﻊ ﺑﺎﻟﻠﻐﻪ اﻟﻌﺮﺑﻴﻪ ‪.‬‬
‫ﻣﻊ اﻻﺧﺬ ﻓﻰ اﻻﻋﺘﺒﺎر ‪ ،‬اﻧﻪ ﺣﺘﻰ ﺑﻌﺪ اآﺘﻤﺎل هﺬا اﻟﻜﺘﺎب ‪-‬ﺑﺎذن اﷲ‪ -‬ﻓﺎن اﻟﺮاﻏﺐ ﻓﻰ ﺗﻌﻠﻢ ﻟﻴﻨﻮآﺲ ﻻﻳﺴﺘﻄﻴﻊ اﻻﺳﺘﻐﻨﺎء‬
‫ﻋﻦ اﻟﻠﻐﻪ اﻻﻧﺠﻠﻴﺰﻳﻪ ‪ ،‬ﻻﻧﻬﺎ ﻟﻐﻪ اﻟﻨﻈﺎم ﻓﻰ اﻻﺳﺎس ‪ ،‬وﻻن اﻟﻤﺌﺎت ﻣﻦ اﻟﻤﺮاﺟﻊ ﻣﻜﺘﻮﺑﻪ ﺑﻬﺎ ‪.‬‬
‫وﻟﻌﻞ اﻟﺴﺒﺐ ﻓﻰ ﻋﺪم ﺗﻤﻜﻨﻰ ﻣﻦ اآﻤﺎل هﺬا اﻟﻜﺘﺎب اﻻن ‪ ،‬هﻮ اﻧﻨﻰ ﻟﻢ اﻋﺘﺎد ﻋﻠﻰ آﺘﺎﺑﻪ اﻟﻤﺬآﺮات واﻟﺘﻼﺧﻴﺺ ‪.‬‬
‫ﻓﻼ اﺗﺬآﺮ ﻣﺮﻩ واﺣﺪﻩ اآﻤﻠﺖ ﻓﻴﻬﺎ ﻣﻠﺨﺼﺎ ﻻى ﻣﺎدﻩ اﺛﻨﺎء دراﺳﺘﻰ ‪-‬ﺳﻮاء اﻟﺜﺎﻧﻮﻳﻪ او اﻟﺠﺎﻣﻌﻴﻪ‪ -‬ﻓﻘﺪ آﻨﺖ اﺻﺎب ﺑﺎﻟﻤﻠﻞ‬
‫ﻣﻦ اﻟﻜﺘﺎﺑﻪ واﻟﺘﻠﺨﻴﺺ ‪ ،‬وﻟﻮ ﺣﺘﻰ ﻟﺼﻔﺤﺎت ﻣﻌﺪودﻩ ﻻﻳﺘﻌﺪى ﻋﺪدهﺎ اﺻﺎﺑﻊ اﻟﻴﺪ اﻟﻮاﺣﺪﻩ ‪.‬‬
‫وﻟﻬﺬا ﻓﺎن اﺗﻤﺎم هﺬا اﻟﻌﺪد ﻣﻦ اﻟﺼﻔﺤﺎت ﻳُﻌﺪ ‪-‬ﺑﺎﻟﻨﺴﺒﻪ ﻟﻰ‪ -‬ﻟﻴﺲ اﻣﺮا هﻴﻨﺎ ‪.‬‬
‫وﻟﻜﻦ آﺎن اﻟﺪاﻓﻊ ﻻﺳﺘﻤﺮارى ﻓﻰ اﻟﻜﺘﺎﺑﻪ ‪ ،‬هﻮ اﺑﺘﻐﺎء اﻟﺜﻮاب ﻣﻦ اﷲ ‪-‬ﻋﺰ وﺟﻞ‪ -‬ﺑﺎﻋﺘﺒﺎر هﺬا اﻟﻜﺘﺎب ‪ ،‬ﻋﻠﻤﺎ ﻳﻨﺘﻔﻊ ﺑﻪ‬
‫هﺬا ﻣﻦ ﻧﺎﺣﻴﻪ وﻣﻦ ﻧﺎﺣﻴﻪ اﺧﺮى ﻟﻤﺴﺎﻋﺪﻩ اﺧﻮاﻧﻨﺎ ﻟﺘﻌﻠﻢ ﻋﻠﻢ ﻗﺪ ﻳﺴﺎهﻢ ‪-‬ﺑﺸﻜﻞ او ﺑﺎﺧﺮ‪ -‬ﻓﻰ اﺣﺪاث ﺗﻐﻴﻴﺮ ﻓﻰ ﻣﺠﺘﻤﻌﺎﺗﻨﺎ‬
‫اذا ﻓﺎن هﺬا اﻟﻌﻤﻞ اﻟﺬى ﺑﻴﻦ ﻳﺪﻳﻚ ﻳﻌﺘﺒﺮ‬
‫• اﺻﺪار ﺳﻮف ﻳﺘﺒﻌﻪ ﻋﺪد ﻣﻦ اﻻﺻﺪارات ﻓﻰ ﻓﺘﺮات ﻣﺘﺰاﻣﻨﻪ )ﻣﻦ ﺛﻼث اﻟﻰ ﺳﺘﻪ اﺷﻬﺮ( ﻟﺤﻴﻦ اآﺘﻤﺎﻟﻪ ﻓﻰ ﺷﻜﻞ‬
‫آﺘﺎب آﺎﻣﻞ ‪.‬‬
‫• ﻣﺤﺎوﻟﻪ ﻟﺘﺸﺠﻴﻊ اﻟﻜﺜﻴﺮ ﻣﻨﺎ ﻟﻤﺤﺎوﻟﻪ اﻟﻜﺘﺎﺑﻪ ‪ ،‬ﻻﻧﻪ ﻻ ﻳﻌﻘﻞ وﺟﻮد اﻟﻜﺜﻴﺮ ﻣﻦ اﻟﻤﺘﺤﻤﺴﻴﻦ واﻟﻤﺤﺒﻴﻦ ل ﻟﻴﻨﻮآﺲ ‪ ،‬وﻻ‬
‫ﻳﺤﺎول اﻟﺒﻌﺾ ﻣﻨﻬﻢ ازاﻟﻪ اﻟﻌﻮاﺋﻖ اﻟﻤﻮﺟﻮدﻩ ﻓﻰ ﺳﺒﻴﻞ اﻧﺘﺸﺎرﻩ ‪ ،‬وﻟﻮ ﺣﺘﻰ ﻓﻰ ﺷﻜﻞ اﻟﻤﺴﺎهﻤﻪ ﺑﻜﺘﺎﺑﻪ اى ﻋﺪد ‪-‬وﻟﻮ‬
‫آﺎن ﺑﺴﻴﻄﺎ‪ -‬ﻣﻦ اﻟﺼﻔﺤﺎت ‪.‬‬
‫• ﻳﺮآﺰ ﺑﺸﻜﻞ اﺳﺎﺳﻰ ﻋﻠﻰ ﻣﻮاﺿﻴﻊ ادارﻩ ﻟﻴﻨﻮآﺲ ‪ ،‬وﻟﻬﺬا ﻓﺎن هﺬا اﻻﺻﺪار ‪-‬ﻋﻠﻰ اﻻﻗﻞ‪ -‬ﻳﺘﻄﻠﺐ ﻣﻌﺮﻓﻪ ﺑﺴﻴﻄﻪ ب‬
‫ﻟﻴﻨﻮآﺲ ‪ ،‬ﻻﻧﻨﻰ ﻟﻢ اﺗﻌﺮض ﻟﻤﺴﺎﺋﻞ ﻣﺜﻞ ﺗﻨﺰﻳﻞ اﻟﻨﻈﺎم وﻧﺤﻮهﺎا ‪ ،‬ﻣﻌﺘﻤﺪا ﻓﻰ ذﻟﻚ ﻋﻠﻰ وﺟﻮد ﻋﺪد ﻻ ﺑﺎس ﺑﻪ ﻣﻦ‬
‫اﻟﻤﻘﺎﻻت ﺗﺸﺮح ﻣﺜﻞ هﺬﻩ اﻟﻤﺴﺎﺋﻞ ﺑﺎﻻﺿﺎﻓﻪ اﻟﻰ آﺘﺎب اﻻخ ﻓﻴﺼﻞ ﻳﻮﺳﻒ ‪.‬‬
‫• اﻟﻤﻮاﺿﻴﻊ اﻟﻤﻮﺟﻮدﻩ ﻓﻰ هﺬا اﻟﻜﺘﺎب ﺗﻌﺘﻤﺪ ﻓﻰ ﺗﻄﺒﻴﻘﺎﺗﻬﺎ واﻣﺜﻠﺘﻬﺎ ﻋﻠﻰ ال ‪. cmd line‬‬
‫• ﺗﻤﺖ اﻻﺳﺘﻌﺎﻧﻪ ﺑﻨﺴﺨﻪ ردهﺎت ‪ 9.2‬ﻓﻰ هﺬا اﻟﻜﺘﺎب ‪.‬‬
‫• اذا آﺎن ﻟﻠﻘﺎرى رﺁى او ﻣﻼﺣﻈﻪ او ﺗﺼﺤﻴﺢ ﻋﻠﻰ هﺬا اﻟﻜﺘﺎب ﻓﻴﻤﻜﻦ ارﺳﺎﻟﻪ اﻟﻰ اﻟﻌﻨﻮان اﻻﻟﻜﺘﺮوﻧﻰ اﻟﻮارد‬
‫ﺑﺎﻻﺳﻔﻞ ‪.‬‬
‫ﺷﻜﺮﺧﺎص ﻟﻼخ اﺣﻤﺪ اﺑﻮ ﺑﻜﺮ ‪ ،‬اﻟﺬى ﺳﺎهﻢ ﻓﻰ اﺧﺮاج هﺬا اﻟﻜﺘﺎب ﺑﻬﺬا اﻟﺸﻜﻞ ‪.‬‬

‫اﺣﻤﺪ ﻧﺠﻴﺐ اﻟﺸﻬﺎوى‬
‫‪supernaive3@yahoo.com‬‬

‫اﻟﻔﻬــــﺮس‬ ‫• ﺗﻤﻬﻴﺪ‬ ‫• ﺗﺎرﻳﺦ اﻟﻴﻮﻧﻜﺲ‬ ‫• ﻇﻬﻮر اﻟﻴﻮﻧﻜﺲ‬ ‫• ﻣﻴﺰﻩ ﺧﺎﺻﻪ ﻓﻰ اﻟﻴﻮﻧﻜﺲ‬ ‫• ‪ unix‬و ﻟﻐﻪ اﻟﺒﺮﻣﺠﻪ ‪C‬‬ ‫• ‪ unix‬ﺑﻌﺪ ذﻟﻚ‬ ‫• ﻣﺸﺮوع ‪GNU‬‬ ‫• ﺑﺪاﻳﻪ ﻟﻴﻨﻮآﺲ‬ ‫• ﻧﻈﺮﻩ ﻋﻠﻰ ‪minix‬‬ ‫• ﻋﺎﻟﻢ ﻟﻴﻨﻮآﺲ‬ ‫• آﻴﻒ ﻳﻨﻄﻖ ﻟﻴﻨﻮآﺲ‬ ‫• ﻣﺎ هﻮ ﻟﻴﻨﻮآﺲ ﺑﺎﻟﻀﺒﻂ‬ ‫• ادارﻩ اﻟﻨﻈﺎم‬ ‫• ﺗﻌﺪد اﻟﻤﻬﺎم وﺗﻌﺪد اﻟﻤﺴﺘﺨﺪﻣﻴﻦ‬ ‫• ﻣﻔﺘﻮح اﻟﻤﺼﺪر ‪open source‬‬ ‫• اﻟﻤﻠﻔﺎت اﻟﺘﻨﻔﻴﺬﻳﻪ ﻓﻰ ﻟﻴﻨﻮآﺲ‬ ‫• اﻟﺒﺮاﻣﺞ واﻻواﻣﺮ‬ ‫• اﺻﺪارات اﻟﻜﺮﻧﻞ‬ ‫• اﺻﺪارات ﻟﻴﻨﻮآﺲ‬ ‫•اﻧﻮاع اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ﻓﻰ ﻟﻴﻨﻮآﺲ‬ ‫• رﺧﺼﻪ ‪GPL‬‬ ‫• ﻟﻤﺎذا ﻟﻴﻨﻮآﺲ‬ ‫• ‪) shell‬ﻧﻈﺮﻩ ﻋﺎﻣﻪ(‬ ‫• آﻴﻒ ﺗﻌﻤﻞ ال ‪shell‬‬ ‫• اهﻢ ﻣﻔﺎﺗﻴﺢ اﻟﺘﻌﺎﻣﻞ ﻣﻊ ال ‪shell‬‬ ‫• ال ‪ shell‬ﻻول ﻣﺮﻩ‬ ‫• ‪basic command‬‬ ‫اﻻواﻣﺮ اﻻﺳﺎﺳﻴﻪ‬ ‫• اﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻤﻠﻔﺎت‬ ‫• اﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻤﺠﻠﺪات‬ ‫• ﻧﺴﺦ اﻟﻤﻠﻔﺎت واﻟﻤﺠﻠﺪات‬ ‫• ﻧﻘﻞ اﻟﻤﻠﻔﺎت واﻟﻤﺠﻠﺪات‬ ‫• ﻋﺮض اﻟﻤﻠﻔﺎت واﻟﻤﺠﻠﺪات‬ ‫• اواﻣﺮ ﻋﺎﻣﻪ‬ ‫• ﻣﻠﺨﺺ اﻻواﻣﺮ‬ .

‫•‪the linux documentation‬‬ ‫وﺛﺎﺋﻖ ﻟﻴﻨﻮآﺲ‬ ‫• ﺗﻤﻬﻴﺪ‬ ‫•اﻟﻨﻮع اﻻول ﻣﻦ اﻟﻮﺛﺎﺋﻖ ‪on line help‬‬ ‫• ‪man page‬‬ ‫• ﻣﻔﺎﺗﻴﺢ اﻟﺘﻌﺎﻣﻞ ﻣﻊ ال ‪man page‬‬ ‫• ‪info page‬‬ ‫• ﻣﻔﺎﺗﻴﺢ اﻟﺘﻌﺎﻣﻞ ﻣﻊ ال ‪info page‬‬ ‫• اﻟﻨﻮع اﻟﺜﺎﻧﻰ ﻣﻦ اﻟﻤﺴﺎﻋﺪﻩ‬ ‫اﻟﻮﺛﺎﺋﻖ اﻟﻤﻮﺟﻮدﻩ ﻋﻠﻰ اﻟﻨﻈﺎم‬ ‫• اﻟﻨﻮع اﻟﺜﺎﻟﺚ ﻣﻦ اﻟﻤﺴﺎﻋﺪﻩ‬ ‫اﻟﻮﺛﺎﺋﻖ اﻟﻤﻮﺟﻮدﻩ ﻋﻠﻰ اﻻﻧﺘﺮﻧﺖ‬ ‫اﻟﻨﻮع اﻻول ‪tldp :‬‬ ‫اﻟﻨﻮع اﻟﺜﺎﻧﻰ ‪ :‬ﻗﻮاﺋﻢ اﻟﺒﺮﻳﺪ و ﻣﺠﻤﻮﻋﺎت اﻻﺧﺒﺎر‬ ‫• ‪system startup and shutdown‬‬ ‫ﻋﻤﻠﻴﺎت ﻓﺘﺢ واﻏﻼق اﻟﻨﻈﺎم‬ ‫• اﻟﺨﻄﻮﻩ اﻻوﻟﻰ ‪Bios‬‬ ‫• ال ‪MBR‬‬ ‫• اﻟﺨﻄﻮﻩ اﻟﺜﺎﻧﻴﻪ ‪boot loader‬‬ ‫ﻣﻤﻴﺰات ‪grub‬‬ ‫ﻣﻠﻒ ﺗﻬﻴﺌﻪ ‪grub‬‬ ‫• اﻟﺨﻄﻮﻩ اﻟﺜﺎﻟﺜﻪ ‪kernel booting‬‬ ‫• اﻟﺨﻄﻮﻩ اﻟﺮاﺑﻌﻪ ‪init‬‬ ‫ال ‪runlevel‬‬ ‫آﻴﻔﻴﻪ اﻟﺘﺤﻮل ﻣﻦ ال ‪runlevel‬‬ ‫ﻣﻠﻒ ‪inittab‬‬ ‫ﻣﻼﺣﻈﺎت ﻋﻠﻰ اﻟﻤﻠﻒ ‪inittab‬‬ ‫ﻣﺎذا ﺑﻌﺪاﻟﺘﻌﺪﻳﻞ ﻓﻰ اﻟﻤﻠﻒ ‪Inittab‬‬ ‫ﻧﻈﺮﻩ اﺧﻴﺮﻩ ﻋﻠﻰ ‪init‬‬ ‫ﺷﻜﻞ اﻟﻤﺠﻠﺪ ‪ rc*.d‬ﻣﻦ اﻟﺪاﺧﻞ‬ ‫آﻴﻔﻴﻪ ﺣﺬف ال ‪services‬‬ ‫• اﻏﻼق اﻟﻨﻈﺎم ‪ :‬اﻻﻣﺮ ‪shutdown‬‬ ‫•ال ‪ shell‬ﻟﻠﻤﺮﻩ اﻟﺜﺎﻧﻴﻪ )ﻧﻈﺮﻩ اﻋﻤﻖ(‬ ‫• اﻟﺨﺼﺎﺋﺺ اﻟﻌﺎﻣﻪ ﻟﻞ ‪shell‬‬ ‫• اﻧﻮاع ال ‪shell‬‬ ‫• آﻴﻒ ﺗﻌﻤﻞ ال ‪bash‬‬ ‫• اﻟﻔﺮق ﺑﻴﻦ اﻟﻤﺘﻐﻴﺮات اﻟﻜﻠﻴﻪ واﻟﺠﺰﺋﻴﻪ‬ ‫• ﻣﻦ ﺧﺼﺎﺋﺺ ال ‪bash‬‬ ‫• اﻟﺨﺎﺻﻴﻪ اﻻوﻟﻰ ‪ :‬اﻻﻣﺮ ‪history‬‬ ‫• اﻻﻣﺮ ‪ export‬وﺗﻌﺪﻳﻞ ال ‪variable‬‬ ‫• ﻟﻤﺎذا ﻧﻨﺸﺄ ‪variable‬‬ ‫• ﺗﻌﺪﻳﻞ ال ‪ variable‬ﺑﻄﺮﻳﻘﻪ داﺋﻤﻪ‬ ‫• اﻟﺨﺎﺻﻴﻪ اﻟﺜﺎﻧﻴﻪ ‪ :‬اﻻﻣﺮ‪alias‬‬ .

‫•‪the regular expression‬‬ ‫اﻟﻌﻼﻣﺎت واﻟﺮﻣﻮز‬ ‫• اﺳﺘﺨﺪاﻣﺎت ال ‪metacharacter‬‬ ‫• ﺗﻨﻔﻴﺬ ﻋﺪﻩ اواﻣﺮ ﻓﻰ اﻟﻮﻗﺖ اﻟﻮاﺣﺪ‬ ‫• ال ‪ stdin‬وال ‪stdout‬‬ ‫• ال ‪ piping‬و ‪redirection‬‬ ‫• ‪the hard ware‬‬ ‫اﻟﻬﺎردوﻳﺮ )ﻧﻈﺮﻩ ﻋﺎﻣﻪ(‬ ‫• اﻟﻠﻮﺣﻪ اﻻم ‪mother board‬‬ ‫• اﻻﺟﺰاء اﻟﻤﻜﻮﻧﻪ ﻟﻞ ‪mother board‬‬ ‫• اﻻﺟﺰاء اﻻﺧﺮى ﻓﻰ ال ‪mother board‬‬ ‫• آﻴﻒ ﻳﺘﻌﺎﻣﻞ اﻟﻬﺎرد وﻳﺮ ﻣﻊ ﺑﻌﻀﻪ اﻟﺒﻌﺾ‬ ‫• ‪the text editing‬‬ ‫اﻟﻤﺤﺮر ‪vi‬‬ ‫• اﻟﺒﺪاﻳﻪ‬ ‫• اﻟﺤﺎﻟﻪ اﻻوﻟﻰ ‪command mode‬‬ ‫• اﻟﺤﺎﻟﻪ اﻟﺜﺎﻧﻴﻪ ‪insert mode‬‬ ‫• اﻟﺤﺎﻟﻪ اﻟﺜﺎﻟﺜﻪ ‪ex mode‬‬ ‫• ‪the file permission‬‬ ‫ﺗﺼﺎرﻳﺢ اﻟﻤﻠﻔﺎت‬ ‫• ﻓﻬﻢ ال ‪permission‬‬ ‫• اﻻﺧﺘﻼف ﺑﻴﻦ اﻟﻤﻠﻒ واﻟﻤﺠﻠﺪ‬ ‫• ال ‪ permission‬ﺑﻄﺮﻳﻘﻪ اﺧﺮى‬ ‫• ﺗﻌﺪﻳﻞ ال ‪permission‬‬ ‫اﻟﺘﻌﺪﻳﻞ ﺑﺎﻻرﻗﺎم‬ ‫اﻟﺘﻌﺪﻳﻞ ﺑﺎﻻﺣﺮف‬ ‫• اواﻣﺮ ﻣﺘﻌﻠﻘﻪ ﺑﺎل ‪permission‬‬ ‫اﻻﻣﺮ ‪umask‬‬ ‫ﺿﺒﻂ ال ‪ permission‬ﺑﺎﻻﻣﺮ ‪umask‬‬ ‫اﻻﻣﺮ ‪chown‬‬ ‫اﻻﻣﺮ ‪chgrp‬‬ .

‫• ‪the filesystem & mount‬‬ ‫ﻧﻈﺎم اﻟﻤﻠﻔﺎت وال ‪mount‬‬ ‫• ﺷﻜﻞ ال ‪filesystem‬‬ ‫• ﻋﻤﻠﻴﻪ ال ‪Mount‬‬ ‫• اﻟﻤﻠﻒ ‪fstab‬‬ ‫• اﻻﻣﺮ ‪mount‬‬ ‫• ﺧﻴﺎرات اﻻﻣﺮ ‪Mount‬‬ ‫اﻟﻨﻮع اﻻول ‪cmd line option :‬‬ ‫اﻟﻨﻮع اﻟﺜﺎﻧﻰ ‪mount option :‬‬ ‫• اﻧﻮاع ال ‪filesystem‬‬ ‫• ﻣﺜﺎل ﻋﻤﻠﻰ ﻟﻼﻣﺮ ‪mount‬‬ ‫• اﻻﻣﺮ ‪umout‬‬ ‫• ‪the user adminstration‬‬ ‫ادارﻩ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ واﻟﻤﺠﻤﻮﻋﺎت‬ ‫• ﺗﻤﻬﻴﺪ‬ ‫• اﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ‬ ‫• اﻻﻣﺮ ‪useradd‬‬ ‫ﺗﻌﺪﻳﻞ اﻟﻘﻴﻢ اﻻﻓﺘﺮاﺿﻴﻪ‬ ‫• اﻻﻣﺮ ‪userdel‬‬ ‫• اﻻﻣﺮ ‪usermod‬‬ ‫• ﻣﻠﻔﺎت اﻟﻤﺴﺘﺨﺪم ﻋﻠﻰ اﻟﻨﻈﺎم‬ ‫• اﻟﻤﻠﻒ ‪passwd‬‬ ‫ﻣﻼﺣﻈﺎت ﻋﻠﻰ اﻟﻤﻠﻒ ‪passwd‬‬ ‫• اﻟﻤﻠﻒ ‪shadow‬‬ ‫ﻣﻼﺣﻈﺎت ﻋﻠﻰ اﻟﻤﻠﻒ ‪shadow‬‬ ‫آﻴﻔﻴﻪ ﻋﻤﻞ ‪ disable‬ﻟﻠﻤﺴﺘﺨﺪم‬ ‫• اﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻤﺠﻤﻮﻋﺎت‬ ‫• اﻻﻣﺮ ‪groupadd‬‬ ‫• اﻻﻣﺮ ‪groupdel‬‬ ‫• اﻻﻣﺮ ‪groupmod‬‬ ‫• ﻣﻠﻔﺎت اﻟﻤﺠﻤﻮﻋﺎت ﻋﻠﻰ اﻟﻨﻈﺎم‬ ‫• اﻟﻤﻠﻒ ‪group‬‬ ‫• اﻟﻤﻠﻒ ‪gshadow‬‬ ‫• اواﻣﺮ ﻣﺘﻌﻠﻘﻪ ﺑﺎدارﻩ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ‬ ‫ﻧﻘﻞ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ﻣﻦ ﻧﻈﺎم ﻻﺧﺮ‬ ‫ﻋﺮض ﺑﻴﺎﻧﺎﺗﻚ‬ ‫اﻟﺘﺤﻮل اﻟﻰ ﻣﺠﻤﻮﻋﻪ اﺧﺮى‬ ‫وﺿﻊ ال ‪ passwd‬ﻟﻠﻤﺠﻤﻮﻋﻪ‬ ‫• ‪Filesystem Hierarchy Standard‬‬ ‫اﻟﺘﺮﺗﻴﺐ اﻟﻬﺮﻣﻰ ﻟﻠﻤﻠﻔﺎت ‪FHS‬‬ ‫• ﻣﻠﺨﺺ ‪FHS‬‬ .

.

‬‬ ‫وآﺎن هﺪﻓﻪ ﻣﻦ اﻧﺸﺎء " ﻟﻴﻨﻮآﺲ ‪ " linux‬هﻮ ﺗﺸﻐﻴﻞ ﻧﻈﺎم " ﻳﻮﻧﻜﺲ ‪ " Unix‬اﻟﻘﻮى واﻟﺸﻬﻴﺮﻋﻠﻰ‬ ‫ﺟﻬﺎزﻩ اﻟﺸﺨﺼﻰ ﻓﻰ اﻟﻤﻨﺰل‪ ) . linux‬‬ . linux‬‬ ‫وﻟﻜﻦ ﻟﻜﻰ ﻧﺴﺘﻄﻴﻊ ان ﻧﻔﻬﻢ ﺗﺎرﻳﺦ ﻟﻴﻨﻮآﺲ ‪ linux‬ان ﻧﺘﻌﺮض اوﻻ ﻟﻠﻴﻮﻧﻜﺲ ‪ Unix‬وﺗﺎرﻳﺨﻪ ﺛﻢ ﺑﻌﺪ‬ ‫ذﻟﻚ ﻧﺘﻜﻠﻢ ﺑﺘﻔﺼﻴﻞ اآﺜﺮ ﻋﻦ ﻟﻴﻨﻮآﺲ ‪.‬‬ ‫اﺳﺴﻪ " ﻟﻴﻨﻮس ﺗﻮرﻓﺎﻟﺪس ‪ " Linus Torvalds‬ﻃﺎﻟﺐ دراﺳﺎت اﻟﻜﻤﺒﻴﻮﺗﺮ ﺑﺠﺎﻣﻌﻪ هﻠﻴﺴﻨﻜﻰ‬ ‫ﺑﻔﻨﻠﻨﺪا ‪.‬ﻳﻮﻧﻜﺲ وﻗﺘﻬﺎ آﺎن ﻻ ﻳﻌﻤﻞ ﻋﻠﻰ ﻣﻌﺎﻟﺠﺎت ‪ intel‬اﻟﺨﺎﺻﻪ ﺑﺎﻻﺟﻬﺰﻩ اﻟﺸﺨﺼﻴﻪ‬ ‫‪ Personal Computer‬ﺑﻞ اﻧﻪ ﺻﻤﻢ ﻟﻴﻌﻤﻞ ﻋﻠﻰ اﺟﻬﺰﻩ ﻣﻦ ﻧﻮع ‪ mainframe‬ﻋﻠﻰ اﻻﻗﻞ ‪ ،‬وﻟﻴﺲ ﻋﻠﻰ‬ ‫اﻻﺟﻬﺰﻩ اﻟﺸﺨﺼﻴﻪ(‬ ‫آﺎن ذﻟﻚ ﻓﻰ ﻋﺎم ‪ . 1991‬وهﻮ ﻧﻔﺲ اﻟﻌﺎم اﻟﺬى ﺷﻬﺪ اول اﺻﺪار ﻣﻦ ‪.‫ﺗﻤﻬﻴﺪ‬ ‫ﻟﻴﻨﻮآﺲ ‪ linux‬هﻮ ﻧﻈﺎم ﺗﺸﻐﻴﻞ ﻗﻮى ﻣﺴﺘﻘﺮ ﺛﺎﺑﺖ وﻣﻔﺘﻮح اﻟﻤﺼﺪر ‪.

restart‬‬ ‫اﻣﺎ ﺑﺎﻟﻨﺴﺒﻪ ﻟﻘﻮﺗﻪ ﻓﺘﺮﺟﻊ اﻟﻰ اﻻﺳﺒﺎب اﻟﺘﺎرﻳﺨﻴﻪ ﻟﻨﺸﺌﺘﻪ وﺗﻄﻮﻳﺮﻩ ‪ ،‬وهﻮ ﻣﺎ ﺳﻨﺘﻌﺮف ﻋﻠﻴﻪ ‪.‬‬ . General Electric‬‬ ‫‪ -2‬ﻣﻌﺎﻣﻞ ﺑﻴﻞ ‪ Bell Laboratories‬واﻟﺘﻰ اﺻﺒﺢ اﺳﻤﻬﺎ ﺑﻌﺪ ذﻟﻚ ‪.‬‬ ‫وهﻮ اﻳﻀﺎ اﻗﻮى ﻧﻈﺎم ﺗﺸﻐﻴﻞ واآﺜﺮهﻢ ﺛﺒﺎﺗﺎ ﺣﺘﻰ اﻻن ‪ ،‬واﻟﻤﻘﺼﻮد ﺑﺎﻟﺜﺒﺎت اﻧﻪ ﻳﻤﻜﻨﻪ اﻟﻌﻤﻞ ﺑﻘﻮﻩ‬ ‫وآﻔﺄة ﻟﻔﺘﺮات ﻃﻮﻳﻠﻪ ﻗﺪ ﺗﺴﺘﻤﺮ)ﺑﺪون ﻣﺒﺎﻟﻐﻪ( ﻟﺴﻨﻮات ﺑﺪون اﻏﻼق او ﺣﺘﻰ اﻋﺎدﻩ ﺗﺸﻐﻴﻞ ‪. MIT‬‬ ‫وﺧﺮﺟﺖ هﺬﻩ اﻟﻤﺠﻤﻮﻋﻪ ﻓﻰ ﻋﺎم ‪ 1968‬ﺑﻨﻈﺎم ﺗﺸﻐﻴﻞ ﻳﺴﻤﻰ ‪ MULTICS‬اﺧﺘﺼﺎرا‬ ‫‪multiplexed Information Computing System‬‬ ‫وهﺬا اﻟﻨﻈﺎم ﻣﺪﻣﺞ ﻓﻴﻪ ﻣﻔﺎهﻴﻢ ﺗﻌﺪد اﻟﻤﻬﺎم ‪ multi-tasking‬و ﺗﻌﺪد اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ‪multi-users‬‬ ‫وادارﻩ ﻣﻠﻔﺎت ﻣﺘﻌﺪدﻩ اﻟﻤﺴﺘﻮﻳﺎت ‪ multi-level file management‬وواﺟﻬﻪ اﻟﻤﺴﺘﺨﺪم اﻟﺘﻔﺎﻋﻠﻴﻪ‬ ‫‪) user interaction‬ﻳﺘﻔﺎﻋﻞ وﻳﺘﻌﺎﻣﻞ ﺑﻬﺎ اﻟﻤﺴﺘﺨﺪم ﻣﻊ اﻟﻨﻈﺎم ‪ ،‬وهﻰ ﻃﺒﻌﺎ ﻟﻴﺴﺖ آﺎﻟﻮاﺟﻬﺎت ال‬ ‫‪ graphical‬اﻟﻤﻌﺘﺎدﻩ اﻟﻴﻮم وﻟﻜﻨﻬﺎ واﺟﻬﻪ ﻣﻌﺘﻤﺪﻩ ﻋﻠﻰ ﺳﻄﺮ اﻻواﻣﺮ ‪(command line‬‬ ‫* ﻳﻼﺣﻆ هﻨﺎ ان اﻟﺴﺒﺐ ﻓﻰ وﺟﻮد اﻟﺨﺎﺻﻴﺘﻴﻦ اﻟﺸﻬﻴﺮﺗﻴﻦ واﻟﻤﻤﻴﺰﺗﻴﻦ ﻻﻧﻈﻤﻪ ‪ Unix-like‬ﻋﻤﻮﻣﺎ‬ ‫وهﻤﺎ ﺗﻌﺪد اﻟﻤﻬﺎم و اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ﺳﺒﺒﻪ ﺗﺎرﻳﺨﻰ ‪ ،‬وهﻮاﻟﺤﺎﺟﻪ ﻟﻨﻈﺎم ﺗﺸﻐﻴﻞ ﻳﻌﻤﻞ ﻋﻠﻰ ﺧﺪﻣﻪ اﻟﺒﺎﺣﺜﻴﻦ‬ ‫آﻤﺎ اﺳﻠﻔﻨﺎ ‪.‬‬ ‫ﻓﻰ ﻣﻨﺘﺼﻒ اﻟﺴﺘﻴﻨﻴﺎت ‪ 1965‬ﺗﻜﻮﻧﺖ ﻣﺠﻤﻮﻋﻪ ﻣﻦ اﻟﻤﺘﺨﺼﺼﻴﻦ ﻻﻧﺸﺎء ﻧﻈﺎم ﺗﺸﻐﻴﻞ ﻳﺨﺪم اﻟﺒﺎﺣﺜﻴﻦ‬ ‫وهﺬﻩ اﻟﻤﺠﻤﻮﻋﻪ ﻣﻜﻮﻧﻪ ﻣﻦ‬ ‫‪ -1‬ﺟﻨﺮال اﻟﻴﻜﺘﺮﻳﻚ ‪. AT&T‬‬ ‫‪ -3‬ﻣﻌﻬﺪ ﻣﺎﺳﺎﺷﻮﺳﺘﺲ ﻟﻠﺘﻜﻨﻮﻟﻮﺟﻴﺎ ‪.‫ﺗﺎرﻳﺦ اﻟﻴﻮﻧﻜﺲ ‪. UNIX‬‬ ‫ﻳﻮﻧﻜﺲ ‪ Unix‬هﻮ اﻻب اﻟﺮوﺣﻰ ﻻﻧﻈﻤﻪ اﻟﺘﺸﻐﻴﻞ اﻟﺤﺎﻟﻴﻪ ‪.

Unix‬‬ ‫هﺬا ‪ ،‬وان آﺎﻧﺖ ﺑﺪاﻳﻪ ﻣﺸﺮوع ‪ MULTICS‬ﻟﺜﻼث ﻣﺠﻤﻮﻋﺎت ﻋﻤﻞ آﻤﺎ ذآﺮﻧﺎ ‪ ،‬اﻻ ان ﻣﻌﺎﻣﻞ ﺑﻴﻞ‬ ‫‪ bell lab‬ﻟﻢ ﺗﻜﻤﻞ هﺬا اﻟﻤﺸﺮوع ﻟﻠﻨﻬﺎﻳﻪ وﺳﺤﺒﺖ ﻣﻦ هﺬا اﻟﻤﺸﺮوع ﻣﺠﻤﻮﻋﻪ اﻟﻌﻤﻞ اﻟﺨﺎﺻﻪ ﺑﻬﺎ‬ ‫واﻟﺘﻰ آﺎﻧﺖ ﺑﻘﻴﺎدﻩ " آﻴﻦ ﺗﻮﻣﺴﻮن ‪" Ken Thompson‬‬ ‫اﻻ ان" ﺗﻮﻣﺴﻮن" ﻗﺎم ﻓﻰ ﻋﺎم ‪1969‬هﻮ وﻋﺪد ﻣﻦ اﻟﻤﺒﺮﻣﺠﻴﻦ اﻟﺬﻳﻦ ﻋﻤﻠﻮا‬ ‫ﻓﻰ ﻣﺸﺮوع ‪ MULTICS‬ﺑﺎﺳﺘﺌﻨﺎف اﻟﻌﻤﻞ ﻓﻰ ﻣﻌﺎﻣﻞ ‪ bell‬ﻻﻧﺘﺎج ﻧﻈﺎم‬ ‫ﺗﺸﻐﻴﻞ ﺧﺎص ﺑﻬﻢ داﻣﺠﻴﻦ ﻓﻴﻪ اﻟﻌﺪﻳﺪ ﻣﻦ ﺧﺼﺎﺋﺺ ‪ ، MULTICS‬وآﺎن‬ ‫هﺪﻓﻬﻢ ان ﻳﻌﻤﻞ هﺬا اﻟﻨﻈﺎم ﻋﻠﻰ اﺟﻬﺰﻩ ﻣﻦ ﻧﻮع ‪.‫ﻇﻬﻮر ‪. MULTICS‬‬ ‫)آﺎن ﻗﺪ اﻃﻠﻖ ﻋﻠﻴﻪ ‪ unics‬ﻓﻰ اﻟﺒﺪاﻳﻪ ﺛﻢ ﺗﻢ ﺗﻌﺪﻳﻠﻪ ﻟﻴﺼﺒﺢ ‪(Unix‬‬ ‫ واﺻﺒﺢ ‪ 1‬ﻳﻨﺎﻳﺮ ‪ 1970‬هﻮ ال‪ time zero‬ﻟﻠﻨﻈﺎم ﺣﻴﺚ ﺗﻢ ﺗﺸﻐﻴﻞ اول اﺻﺪارات اﻟﻴﻮﻧﻜﺲ ‪.‬‬ ‫ وﺑﺎﻟﻨﺴﺒﻪ ﻟﺘﺴﻤﻴﺘﻪ ‪ Unix‬ﻓﻘﺪ اُﻃﻠﻖ ﻋﻠﻴﻪ هﺬا اﻻﺳﻢ ﺑﻮاﺳﻄﻪ اﺣﺪ اﻓﺮاد اﻟﻤﺠﻤﻮﻋﻪ وهﻮ" ﺑﺮﻳﺎن‬‫آﺮﻧﻴﺠﻬﺎن ‪ " Brian Kernighan‬وذﻟﻚ ﺗﺸﺒﻬﺎ ﺑﻨﻈﺎم ‪. K bytes 512‬اى ﻣﺎ ﻳﻌﺎدل ﻧﺼﻒ ﺣﺠﻢ ﻗﺮص ﻣﺮن ‪ floppy disk‬ﻣﻦ‬ ‫اﻟﻤﻮﺟﻮد اﻻن(‬ ‫ ﻗﺎﻣﺖ ﻣﻌﺎﻣﻞ ﺑﻴﻞ ‪-‬ﻓﻰ اﻟﺒﺪاﻳﻪ‪ -‬ﺑﺎﻟﺴﻤﺎح ﻟﻠﺠﺎﻣﻌﺎت ﺑﺎﺳﺘﺨﺪام )آﺮﻧﻞ( ‪ Unix‬ﻋﻠﻰ اﻧﻪ ﻣﻨﺘﺞ ﺑﺤﺜﻰ‬‫‪ ، research product‬ﻓﺒﺎﺳﺘﻄﺎﻋﺘﻬﻢ ان ﻳﺴﺘﺨﺪﻣﻮﻩ ﻓﻰ اﺑﺤﺎﺛﻬﻢ وﻳﻄﻮروا ﻓﻴﻪ ﻋﻠﻰ ان ﺗﻈﻞ‬ ‫اﻟﻤﻠﻜﻴﻪ ﻟﻤﻌﺎﻣﻞ ﺑﻴﻞ ‪ ،‬وﺗﻢ ﺗﻮزﻳﻊ اول ﻧﺴﺨﻪ ﻣﻨﻪ ﻣﺠﺎﻧﺎ ‪. (16K bytes‬‬ ‫وهﺎرد دﻳﺴﻚ ﺣﺠﻤﻪ ‪) .‬‬ ‫)وﻟﻴﺲ ﻣﻌﻨﻰ هﺬا ان ﻳﻮﻧﻜﺲ ﻣﺠﺎﻧﺎ او ان اﺳﺘﺨﺪام اﻟﻨﻈﺎم ﻣﺴﻤﻮح ﺑﻪ ﻻى ﺷﺨﺺ )ﻣﺜﻞ ‪ ، (Linux‬ﺑﻞ‬ ‫آﺎﻧﺖ ﻣﻌﺎﻣﻞ ﺑﻴﻞ ﺗﻌﻄﻰ ﺗﺮاﺧﻴﺺ ﻻﺳﺘﺨﺪاﻣﻪ وﻻﻧﺘﺎﺟﻪ ﺑﺎﺳﻤﺎء اﺧﺮى دون اﺳﺘﺨﺪام اﺳﻢ ﻳﻮﻧﻜﺲ(‬ ‫ وآﺎن ﻣﻤﻦ ﺣﺼﻠﻮا ﻋﻠﻰ ﻧﺴﺨﻪ ‪ ، Unix‬ادارﻩ ﻋﻠﻮم اﻟﻜﻤﺒﻴﻮﺗﺮ ﺑﺠﺎﻣﻌﻪ آﺎﻟﻴﻔﻮرﻧﻴﺎ "ﺑﻴﺮآﻠﻰ"‬‫‪.‬‬ ‫ﻓﻘﺪ آﺎن ﻳﺤﻮى ذاآﺮﻩ ﻋﺸﻮاﺋﻴﻪ ‪ RAM‬ذات ‪ 16‬آﻴﻠﻮ ﺑﺎﻳﺖ )‪. minicomputer‬‬ ‫اﻣﺎ ﺑﺎﻟﻨﺴﺒﻪ ﻟﻠﻤﺸﺎرآﻴﻦ ﻓﻰ هﺬا اﻟﻤﺸﺮوع ﻓﻤﻨﻬﻢ‬ ‫– دﻳﻨﺲ رﻳﺘﺸﻰ ‪Dennis Ritchie‬‬ ‫– رود آﺎﻧﺎدى ‪Rudd Canaday‬‬ ‫– دوج ﻣﺎآﻠﻮرى ‪Doug Mcllroy‬‬ ‫وﺻﻤﻢ ﻧﻈﺎم اﻟﺘﺸﻐﻴﻞ هﺬا )‪ (Unix‬وﻋﻤﻞ ﻓﻰ اﻟﺒﺪاﻳﻪ ﻋﻠﻰ ﺟﻬﺎز ﻣﻦ ﻧﻮع ‪) PDP-7‬واﻟﺬى آﺎﻧﺖ‬ ‫ﺗﻨﺘﺠﻪ ﺷﺮآﻪ ‪ (DEC‬ﻣﻊ اﻟﻘﻠﻴﻞ ﻣﻦ اﻟﺒﺮاﻣﺞ ‪ utility‬ﻣﻌﻪ ‪. computer science department‬‬ .‬‬‫ وﻓﻰ اﻟﻌﺎم اﻟﺘﺎﻟﻰ ‪ 1971‬ﺗﻢ ﺗﺸﻐﻴﻞ ‪ Unix‬ﻋﻠﻰ ﺟﻬﺎز ‪ ، PDP-11‬وﻟﻚ ان ﺗﺘﺨﻴﻞ ﻣﻮاﺻﻔﺎت هﺬا‬‫اﻟﺠﻬﺎز اﻟﺘﻰ ﺗﻌﺪ ﺑﺪاﺋﻴﻪ ﺟﺪا هﺬﻩ اﻻﻳﺎم ‪.

‬‬ ‫ وأﺧﺮﺟﺖ ﺟﺎﻣﻌﻪ ﺑﻴﺮآﻠﻰ ﻓﻰ ﻋﺎم ‪ 1977‬اﻟﻰ اﻟﻨﻮر ﻧﻈﺎم اﻟﺘﺸﻐﻴﻞ اﻟﻤﻌﺮوف ‪BSD‬‬‫‪Berkeley Software Distribution‬‬ ‫هﺬا اﻟﻨﻈﺎم اﻟﺨﺎص ﺑﺠﺎﻣﻌﻪ ﺑﻴﺮآﻠﻰ واﻟﻤﻌﺘﻤﺪ ﻋﻠﻰ ﻳﻮﻧﻜﺲ اﺻﺒﺢ ﺑﻌﺪ ذﻟﻚ ﺑﻘﻠﻴﻞ ﻣﻦ اﺷﺪ اﻻﺻﺪارات‬ ‫ﻣﻨﺎﻓﺴﻪ ﻟﻠﻴﻮﻧﻜﺲ ‪ Unix‬اﻟﺬى ﺗﻨﺘﺠﻪ ﻣﻌﺎﻣﻞ ‪bell‬‬ .‫وﻗﺎم اﻟﺒﺎﺣﺜﻮن ﺑﺠﺎﻣﻌﻪ ﺑﻴﺮآﻠﻰ ﺑﺪراﺳﻪ وﺗﻄﻮﻳﺮ ‪ Unix‬واﺿﺎﻓﻮا اﻟﻴﻪ اﻟﻜﺜﻴﺮ ﻣﻦ اﻟﺨﺼﺎﺋﺺ وهﺬﻩ‬ ‫اﻟﺨﺼﺎﺋﺺ آﺎﻧﺖ ﻣﻦ اﻻهﻤﻴﻪ ﺑﻤﻜﺎن ﺣﺘﻰ اﻧﻪ ﻋﻨﺪ اﻟﻜﻼم ﺑﺎﻳﺠﺎز ﻋﻦ ﻣﻦ اﻧﺸﺄ ﻳﻮﻧﻜﺲ ﻓﻴﻘﺎل ﻣﻌﺎﻣﻞ‬ ‫‪ bell‬وﺟﺎﻣﻌﻪ ﺑﻴﺮآﻠﻰ ‪.

Xenix‬‬ ‫وﻳﻼﺣﻆ ان هﺬا اﻻﻣﺮ ﻗﺪ اﻟﻘﻰ ﺑﻈﻼﻟﻪ ﺑﻌﺪ ذﻟﻚ ﻋﻠﻰ اﺻﺪارهﺎ ‪ MS-DOS‬واﻟﺬى ﺧﺮج اﻟﻰ اﻟﻨﻮر ﻓﻰ ﻳﻮﻟﻴﻮ ‪. Unix‬‬ ‫* ﻳﻼﺣﻆ اﻧﻪ ﺑﺎﻻﺿﺎﻓﻪ ﻟﻤﻤﻴﺰات ﻧﻈﺎم اﻟﺘﺸﻐﻴﻞ ﻳﻮﻧﻜﺲ اﻟﻌﺪﻳﺪﻩ إﻻ اﻧﻪ آﺎن ﻳﺘﻤﺘﻊ ﺑﻤﻴﺰﻩ ‪ ،‬وهﻰ آﻮن‬ ‫اﻟﻜﺮﻧﻞ ‪-‬وهﻮ ﻟﺐ اﻟﻨﻈﺎم‪ -‬ﻣﻔﺘﻮح اﻟﻤﺼﺪر وﻗﺘﻬﺎ ‪ ،‬وهﺬﻩ اﻟﻤﻴﺰﻩ ﺳﺎﻋﺪت ﻓﻰ اآﺴﺎﺑﻪ هﺬﻩ اﻟﻘﻮﻩ واﻟﺸﻬﺮﻩ‬ ‫اﻟﻌﺮﻳﻀﻪ ‪ ،‬وﺑﺎﻻﻋﺘﻤﺎد ﻋﻠﻰ هﺬﻩ اﻟﻤﻴﺰﻩ اﺳﺘﻄﺎﻋﺖ اﻟﻌﺪﻳﺪ ﻣﻦ ﻣﺮاآﺰ اﻻﺑﺤﺎث واﻟﺠﺎﻣﻌﺎت ﺑﻞ واﻳﻀﺎ‬ ‫اﻟﺸﺮآﺎت آﺘﺎﺑﻪ ﻧﻈﻢ ﺗﺸﻐﻴﻞ ﻣﻤﺎﺛﻠﻪ ل ﻳﻮﻧﻜﺲ ‪. Unix ware‬‬‫ وﻟﺸﺮآﻪ ‪ (Hewleet Packard) hp‬اﺻﺪار ﻳﺴﻤﻰ ‪. HP-UX‬‬‫ وﻟﺸﺮآﻪ ‪ Compaq‬اﺻﺪار ﻳﺴﻤﻰ ‪.‫ﻣﻴﺰﻩ ﺧﺎﺻﻪ ﻓﻰ ‪. AIX‬‬ ‫ وﺷﺮآﻪ ‪ Macintoch‬ﻣﺎآﻨﺘﻮش )اﻟﻌﺘﻴﻘﻪ( اﻟﺸﻬﻴﺮﻩ ﺑﻨﻈﺎﻣﻬﺎ ‪ ، Apple Macintoch‬ﻟﻬﺎ اﺻﺪار‬‫ﻣﻦ اﻟﻴﻮﻧﻜﺲ ﻳﺪﻋﻰ ‪) .‬‬ ‫ اﻳﻀﺎ ﺷﺮآﻪ ‪ IBM‬ﻟﻬﺎ اﺻﺪار ﺧﺎص ﺑﻬﺎ ﻣﻦ اﻟﻴﻮﻧﻜﺲ ﻳﻌﻤﻞ ﻋﻠﻰ اﺟﻬﺰﻩ ال ‪ work station‬اﻟﺘﻰ‬‫ﺗﻨﺘﺠﻬﺎ ‪ ،‬وﻳﺴﻤﻰ هﺬا اﻻﺻﺪار ‪. AUX‬ﻳﻌﺮف اﻳﻀﺎ ب ‪(AU/X‬‬ ‫ واﺻﺪار ﺷﺮآﻪ ﻧﻮﻓﻞ ‪ Novell‬ﻣﻦ اﻟﻴﻮﻧﻜﺲ ﻳﺴﻤﻰ ‪.1981‬‬ ‫)ﺷﺮآﻪ ﻣﺎﻳﻜﺮوﺳﻮﻓﺖ ﻗﺪ ﺗﺄﺳﺴﺖ ﻓﻰ اﻏﺴﻄﺲ ﻋﺎم ‪1975‬ﻋﻠﻰ ﻳﺪ آﻼ ﻣﻦ "وﻳﻠﻴﺎم هﻨﺮى ﺟﻴﺘﺲ" اﻟﻤﻌﺮوف ب ﺑﻴﻞ‬ ‫ﺟﻴﺘﺲ و " ﺑﻮل أﻟﻴﻦ " (‬ ‫هﺬا ﺑﺎﻻﺿﺎﻓﻪ اﻟﻰ اﻟﻌﺸﺮات واﻟﻌﺸﺮات ﻣﻦ اﻻﺻﺪارات اﻟﺘﻰ ﺗﺎﺳﺴﺖ ﺑﻨﺎء ﻋﻠﻰ ﻣﻔﺎهﻴﻢ ﻗﻮاﻋﺪ ﻳﻮﻧﻜﺲ‬ ‫)‪.‬‬ ‫* ﻣﻦ هﺬا اﻟﻤﻨﻄﻠﻖ ﻓﺎن ﻟﻴﻨﻮآﺲ ‪ linux‬ﻳُﻌﺪ ‪-‬وﻓﻰ اﻟﺤﻘﻴﻘﻪ ﻳُﻌﺮف ﺑﺄﻧﻪ‪ -‬اﺣﺪ اﺻﺪارات ‪Unix‬‬ ‫اﻟﺨﺎﺻﻪ ﺑﺎﻟﻌﻤﻞ ﻋﻠﻰ اﻻﺟﻬﺰﻩ اﻟﺸﺨﺼﻴﻪ ‪. (Unix-Architecture‬‬ ‫وﻟﻬﺬا ﻓﺎﻧﻚ ﺳﺘﺼﺎدف آﺜﻴﺮا اﻟﻤﺼﻄﻠﺢ ‪ Unix-like OS‬واﻳﻀﺎ اﻟﻤﺼﻄﻠﺢ ‪) Unices‬آﺠﻤﻊ ﻃﺮﻳﻒ‬ ‫ل‪ (Unix‬واﻟﻠﺬان ﻳﺸﻴﺮان اﻟﻰ اﻻﺻﺪارات اﻟﻤﺘﻌﺪدﻩ و اﻟﻤﻌﺘﻤﺪﻩ ﻋﻠﻰ ﻳﻮﻧﻜﺲ ‪. Digital Unix‬‬‫* ﺑﻞ إن ﺷﺮآﻪ ﻣﺎﻳﻜﺮوﺳﻮﻓﺖ ‪ MicroSoft‬آﺎﻧﺖ ﻗﺪ اﻧﺘﺠﺖ ﻳﻮﻧﻜﺲ )ﺑﺘﺮﺧﻴﺺ ﻣﻦ ﻣﻌﺎﻣﻞ ﺑﻴﻞ ‪(AT&T‬‬ ‫اﻳﻀﺎ وذﻟﻚ اواﺧﺮﻋﺎم ‪ 1979‬وآﺎن اﺻﺪارهﺎ ﻳﺴﻤﻰ ‪.‬‬ ‫ ﻓﺸﺮآﻪ ‪ sun microsystems‬اﻟﺸﻬﻴﺮﻩ ﻟﻬﺎ اﺻﺪار ﻣﻦ اﻟﻴﻮﻧﻜﺲ وهﻮ ‪ Solaris‬اﻟﺬى ﻳﻌﺪ ﻣﻦ‬‫اآﺜﺮ اﻧﻈﻤﻪ اﻟﻴﻮﻧﻜﺲ ﺷﻬﺮة ‪.‬‬ ‫وهﺬا ﺑﺎﻟﻔﻌﻞ ﻣﺎ ﺣﺪث ﻣﻊ ﺟﺎﻣﻌﻪ ﺑﻴﺮآﻠﻰ واﻳﻀﺎ ﻣﻊ اﻟﻌﺪﻳﺪ واﻟﻌﺪﻳﺪ ﻣﻦ اﻟﺸﺮآﺎت اﻟﻜﺒﻴﺮﻩ واﻟﻤﻌﺮوﻓﻪ ‪،‬‬ ‫ﻓﻠﻜﻞ ﺷﺮآﻪ ﻣﻦ اﻟﺸﺮآﺎت اﻟﻌﺎﻟﻤﻴﻪ ﺗﻘﺮﻳﺒﺎ اﺻﺪار ﺧﺎص ﺑﻬﺎ ﻣﻦ اﻟﻴﻮﻧﻜﺲ ‪. Personal Computer‬‬ .

C language‬‬ ‫–ﻟﻴﺲ هﺬا آﻞ ﺷﻰ ﻓﺒﻌﺪ إﻧﺸﺎء ﻳﻮﻧﻜﺲ ‪) Unix‬ﻋﺎم ‪ (1969‬ﺑﺜﻼث ﺳﻨﻮات وﻓﻰ ﻋﺎم ‪ 1972‬ﺗﻤﺖ‬ ‫اﻋﺎدﻩ آﺘﺎﺑﻪ اﻟﻜﺮﻧﻞ اﻟﺨﺎص ﺑﻪ ﺑﻠﻐﻪ ﺑﺮﻣﺠﻪ ﺟﺪﻳﺪﻩ ‪ ،‬هﺬﻩ اﻟﻠﻐﻪ )واﻟﺘﻰ اﻧﺸﺌﺖ ﻣﻦ اﺟﻞ آﺘﺎﺑﻪ‬ ‫‪ (Unix‬هﻰ ﻟﻐﻪ ‪ C‬اﻟﺸﻬﻴﺮﻩ واﻟﻘﻮﻳﻪ واﻟﻤﺴﺘﻌﻤﻠﻪ ﺣﺘﻰ اﻻن ‪ .‬‬ ‫ﺑﺬﻟﻚ ﻳﺘﻀﺢ ﻟﻨﺎ آﻴﻒ اﺳﺘﻄﺎع ﻧﻈﺎم اﻟﺘﺸﻐﻴﻞ ‪ Unix‬ان ﻳﺼﻞ اﻟﻰ هﺬﻩ اﻟﻘﻮﻩ ‪.‫ال‪ Unix‬و ‪.‬‬ ‫–‬ ‫وﺑﻔﻀﻞ هﺬﻩ اﻟﺨﻄﻮﻩ اﻟﻬﺎﻣﻪ )اﻧﺸﺎء ﻟﻐﻪ اﻟﺒﺮﻣﺠﻪ ‪ (C‬وﻋﻮاﻣﻞ اﺧﺮى ‪ ،‬اﺳﺘﻄﺎع ‪ Unix‬ان ﻳﺼﺒﺢ‬ ‫اﻗﻮى ﻧﻈﺎم ﺗﺸﻐﻴﻞ ﺣﺘﻰ اﻻن واآﺜﺮهﻢ اﺳﺘﻘﺮارا ‪.‬‬ .‬‬ ‫ذﻟﻚ ﻻن وﺟﻮد هﺬﻩ اﻟﻠﻐﻪ اﻟﺠﺪﻳﺪﻩ دﻓﻊ اﻟﻌﺪﻳﺪ ﻣﻦ اﻻآﺎدﻳﻤﻴﻴﻦ وﻃﻠﺒﻪ اﻟﻜﻤﺒﻴﻮﺗﺮ ﻓﻰ اﻟﺠﺎﻣﻌﺎت واﻟﻤﻌﺎهﺪ‬ ‫ﺑﻞ واﻳﻀﺎ اﻟﻬﻮاﻩ واﻟﻤﺤﺘﺮﻓﻴﻦ ‪ -hackers-‬اﻟﻰ ﺗﻌﻠﻢ هﺬﻩ اﻟﻠﻐﻪ اﻟﻘﻮﻳﻪ ‪ ،‬وﺑﺎﻟﺘﺎﻟﻰ رﺟﻌﺖ آﻞ هﺬﻩ‬ ‫اﻟﺠﻬﻮد ﻋﻠﻰ ﻳﻮﻧﻜﺲ ‪ ، Unix‬ﻣﺘﻤﺜﻠﻪ ﻓﻰ اﻟﺘﻄﻮﻳﺮ اﻟﺬى ﻟﺤﻖ ﺑﻪ ﻋﻠﻰ ﻣﺪار ﺳﻨﻮات ‪.‬‬ ‫اﻳﻀﺎ ﺗﻄﻮرت ﻟﻐﻪ ‪ C‬ﺑﻬﺬﻩ اﻟﻄﺮﻳﻘﻪ ‪ ،‬ﻓﻘﺪ آﺎﻧﺖ ﻣﺘﺎﺣﻪ ﻟﻠﺠﻤﻴﻊ وﻋﻠﻰ ﻣﺴﺘﻮى اﻟﻌﺎﻟﻢ ان ﻳﺘﻌﻠﻤﻮهﺎ‬ ‫وآﺎﻧﻮا آﻠﻤﺎ اآﺘﺸﻔﻮا ﺛﻐﺮﻩ اوﻋﻴﺐ ﺑﻬﺎ ﻓﺎﻧﻬﻢ ﻳﺮﺳﻠﻮن ﺑﻬﺬﻩ اﻟﻤﻼﺣﻈﺎت اﻟﻰ " رﻳﺘﺸﻰ " وﻳﻘﻮم هﻮ ﺑﻨﺎء‬ ‫ﻋﻠﻰ ذﻟﻚ ﺑﺴﺪ اﻟﺜﻐﺮات وﺗﻼﻓﻰ اﻟﻌﻴﻮب وﻳﺪﻣﺞ آﻞ هﺬا ﻓﻰ اﻟﻜﻮد اﻟﺨﺎص ﺑﻬﺎ ‪.‬واﻟﺘﻰ ﻗﺎم ﺑﺈﻧﺸﺎﺋﻬﺎ > دﻳﻨﺲ رﻳﺘﺸﻰ‬ ‫و ﺑﺮﻳﺎن آﺮﻧﻴﺠﻬﺎن < ‪.

‫‪ Unix‬ﺑﻌﺪ ذﻟﻚ ‪.‬‬ ‫ﻗﺎﻣﺖ ﻣﻌﺎﻣﻞ ‪ bell‬ﺑﺘﻄﻮﻳﺮ اﻟﻌﺪﻳﺪ ﻣﻦ اﺻﺪارات اﻟﻴﻮﻧﻜﺲ ‪ Unix‬ﺣﺘﻰ آﺎن ﻋﺎم ‪ 1983‬وهﻮ اﻟﻌﺎم‬ ‫اﻟﺬى ﻃﺮﺣﺖ ﻓﻴﻪ اول ﻧﺴﺨﻪ ﺗﺠﺎرﻳﻪ ﻏﻴﺮ ﻣﻔﺘﻮﺣﻪ اﻟﻤﺼﺪرﺳﻤﻴﺖ ‪ system3‬ﺛﻢ اﺗﺒﻌﺖ ﺑﺎﻟﻨﺴﺨﻪ‬ ‫‪. systemV‬‬ ‫وﺑﻨﺎء ﻋﻠﻰ هﺬﻩ اﻻﺻﺪارات ﻣﻨﻌﺖ ﻣﻌﺎﻣﻞ ‪ bell‬ﺗﺪاول آﺮﻧﻞ ﻳﻮﻧﻜﺲ اﻟﻤﻔﺘﻮح اﻟﻤﺼﺪر ‪ ،‬واﺻﺪرت‬ ‫ﺗﺮاﺧﻴﺺ ﺟﺪﻳﺪﻩ ﻏﻴﺮ اﻟﺘﻰ آﺎﻧﺖ ﺳﺎرﻳﻪ ﻟﺴﻨﻮات ﻣﻀﺖ ‪. GNU‬‬ .‬‬ ‫وآﺎﻧﺖ هﺬﻩ اﻟﺨﻄﻮﻩ هﻰ ﺑﺪاﻳﻪ ﻣﺸﺮوع ‪.‬‬ ‫ﻓﻜﺎﻧﺖ هﺬﻩ اﻟﺨﻄﻮﻩ اﻟﻐﻴﺮ ﻣﺴﺒﻮﻗﻪ ﺳﺒﺒﺎ ﻟﻐﻀﺐ اﻟﻜﺜﻴﺮ ﻣﻦ اﻟﻤﺒﺮﻣﺠﻴﻦ واﻟﻤﻬﺘﻤﻴﻦ ب ‪ Unix‬واﻟﺬﻳﻦ‬ ‫ﺳﺎهﻤﻮا ﻓﻰ ﺗﻄﻮﻳﺮﻩ ﻋﻠﻰ ﻣﺪار ﺳﻨﻮات ﻣﻤﺎ دﻓﻊ ﺑﻌﻀﻬﻢ ﺑﻘﻴﺎدﻩ اﺣﺪ اﻟﻤﺒﺮﻣﺠﻴﻦ اﻟﻌﺎﻣﻠﻴﻦ ﺑﻤﻌﻬﺪ‬ ‫ﻣﺎﺳﺎﺷﻮﺳﺘﺲ ﻟﻠﺘﻜﻨﻮﻟﻮﺟﻴﺎ ‪ MIT‬وهﻮ " رﻳﺘﺸﺎرد ﺳﺘﻮﻟﻤﻦ ‪ " Richard Stallman‬اﻟﻰ اﻟﺨﺮوج‬ ‫ﺑﻔﻜﺮﻩ اﻧﺸﺎء اﻧﻈﻤﻪ ﺗﺸﻐﻴﻞ ﻣﻔﺘﻮﺣﻪ اﻟﻤﺼﺪر ‪.

‬‬ ‫واﻟﺴﺒﺐ ﻃﺒﻌﺎ ﻓﻰ ﺟﻌﻞ اﻻﻧﻈﻤﻪ اﻟﺘﻰ ﺳﻴﻨﺘﺠﻬﺎ هﺬا اﻟﻤﺸﺮوع ﻣﺘﻮاﻓﻘﻪ ﻣﻊ ﻳﻮﻧﻜﺲ ﻣﻦ ﺣﻴﺚ اﻟﺒﻨﺎء‬ ‫)اﻟﻜﺮﻧﻞ و ﻧﻈﺎم اﻟﻤﻠﻔﺎت وﺗﻘﺮﻳﺒﺎ آﻞ اواﻣﺮ ﻳﻮﻧﻜﺲ( وﻟﻴﺴﺖ ﻣﺨﺘﻠﻔﻪ ﻣﻌﻪ وﺑﺎﻟﺘﺎﻟﻰ ﻳﻜﻮن ﻟﻬﺎ ﻧﻈﺎم وﺑﻨﺎء اﺧﺮ‪،‬‬ ‫هﻮ ان اﻟﻘﺎﺋﻤﻴﻦ ﻋﻠﻰ اﺗﻤﺎم هﺬا اﻟﻤﺸﺮوع هﻢ ﻓﻰ اﻻﺳﺎس ﻣﺤﺘﺮﻓﻰ ﻳﻮﻧﻜﺲ وﺗﺄﻗﻠﻤﻮا ﻋﻠﻰ اﻟﻌﻤﻞ ﻣﻌﻪ‬ ‫ﻟﺴﻨﻮات ‪.‬وﺗﻨﻄﻖ )ﺟﻨﻮ ‪(guh-noo‬‬ ‫اﻟﺒﻌﺾ ‪-‬واﻧﺎ ﻣﻨﻬﻢ‪ -‬ﻳﻨﻄﻘﻬﺎ )ﺟﻰ إن ﻳﻮ( ‪ ،‬ﻟﻜﻦ اﻟﻨﻄﻖ اﻟﺼﺤﻴﺢ ﻟﻬﺎ ﻃﺒﻘﺎ ل ‪ www.gnu.‫ﻣﺸﺮوع ‪.‬‬ ‫* و‪ GNU‬ﺗﻌﺪ اﺧﺘﺼﺎر ل‪ Gnu is Not Unix‬واﻟﺘﻰ ﺗﻌﻨﻰ اﻧﻈﻤﻪ ﺗﺸﻐﻴﻞ ﻣﻔﺘﻮﺣﻪ اﻟﻤﺼﺪر ﺗﻌﻤﻞ‬ ‫ﺑﻨﻔﺲ ﻗﻮاﻋﺪ ﻳﻮﻧﻜﺲ ﻟﻜﻨﻬﺎ ﻻ ﺗﺴﻤﻰ ﻳﻮﻧﻜﺲ ‪ . system calls‬‬ . (C‬‬ ‫اﻳﻀﺎ ﻣﺎ ﻳﺴﻤﻰ ﺑﺎﻟﻤﻜﺘﺒﺎت ‪ libraries‬ودورهﺎ ﻣﺜﻞ دور اﻟﻤﻜﺘﺒﺎت ﺑﺎﻟﻤﺴﻤﻰ اﻟﻤﻌﺮوف ﻟﺪﻳﻨﺎ ‪ ،‬ﻓﻬﻰ‬ ‫ﺗﺤﻮى ﻓﻬﺎرس وﻣﺮاﺟﻊ وﺗﻌﻠﻴﻤﺎت ﻋﺎﻣﻪ ﻟﻼواﻣﺮ ﻣﻮﺟﻮد ﺑﻬﺎ ﻣﺎ ﺗﺤﺘﺎﺟﻪ اﻻواﻣﺮ ﻋﻤﻮﻣﺎ ﻣﻦ ﻣﻌﻠﻮﻣﺎت‬ ‫وﺗﻮﺟﻴﻬﺎت ﺿﺮورﻳﻪ )ﻟﻜﻰ ﻻ ﺗﺘﻜﺮر هﺬﻩ اﻟﻤﻌﻠﻮﻣﺎت ﻣﻊ آﻞ ﺑﺮﻧﺎﻣﺞ( ﻟﻬﺬﻩ اﻻواﻣﺮ ﻋﻨﺪﻣﺎ ﻳﺘﻢ‬ ‫اﺳﺘﺪﻋﺎؤهﺎ ‪ ،‬وﻟﻬﺬا ﻓﻬﻰ ﺗﺴﻤﻰ ‪. GNU‬‬ ‫ﻋﻨﺪﻣﺎ اﺳﺘﻠﻢ " ﺳﺘﻮﻟﻤﻦ " ﻧﺴﺨﻪ ‪ system3‬ﻋﺎم ‪ 1983‬وﻟﻢ ﻳﺠﺪ اﻟﻜﻮد اﻟﻤﺼﺪر‪source code‬‬ ‫اﻟﺬى اﻋﺘﺎد ان ﻳﺤﺼﻞ ﻋﻠﻴﻪ ﻣﻊ اﻻﺻﺪارات اﻟﺴﺎﺑﻘﻪ ﻣﻦ ‪) Unix‬وذﻟﻚ ﻟﻜﻰ ﻳﻘﻮم ﺑﺎﺟﺮاء اﻟﺘﻐﻴﺮات‬ ‫اﻟﺘﻰ آﺎﻧﺖ ﺗﻨﺎﺳﺒﻪ ﻓﻰ ﻋﻤﻠﻪ وﺗﻨﺎﺳﺐ اﻟﻌﺎﻣﻠﻴﻦ ﻣﻌﻪ ﻓﻰ ‪ (MIT‬ﺣﺎول ان ﻳﺤﺼﻞ ﻋﻠﻴﻪ وﻟﻜﻨﻪ اآﺘﺸﻒ‬ ‫اﻧﻪ ﻻ ﻳﺴﺘﻄﻴﻊ اﻟﺤﺼﻮل ﻋﻠﻴﻪ اﻻ اذا وﻗﻊ )‪ (sign‬ﻋﻠﻰ اﺗﻔﺎﻗﻴﻪ ﻋﺪم ' آﺸﻒ ' اﻟﻜﻮد ‪NDA‬‬ ‫‪ Non-Disclosure Agreement‬اﻻﻣﺮ اﻟﺬى ﻳﺠﻌﻞ ﻣﻦ ﺣﺼﻮﻟﻪ ﻋﻠﻰ اﻟﻜﻮد ﻋﺪﻳﻢ اﻟﻘﻴﻤﻪ ‪.‬‬ ‫واﻳﻀﺎ ‪ -‬وهﻮ اﻻهﻢ ‪ -‬ان ﻧﻈﺎم ﻳﻮﻧﻜﺲ ﻳﻤﺘﺎز ﺑﺎﻟﻌﺪﻳﺪ ﻣﻦ اﻟﻤﻤﻴﺰات ‪ ،‬ﻓﺒﻨﺎء ﻧﻈﺎم اﻟﻤﻠﻔﺎت‬ ‫‪ filesystem Architecture‬ﺑﺎﻻﺿﺎﻓﻪ اﻟﻰ اﻧﺴﺠﺎم اﻟﻌﻤﻞ ﺑﻴﻦ ﺑﺮاﻣﺠﻪ ‪ programs‬وﻣﻨﺎﻓﻌﻪ‬ ‫‪ utilitys‬ﻳﻌﻄﻴﻪ ﻣﻤﻴﺰات ﻋﺪﻳﺪﻩ ﻣﻨﻬﺎ ﻣﺜﻼ ﻋﺪم ﻗﺎﺑﻠﻴﺘﻪ )ﻟﻠﺘﻌﻠﻴﻖ( وهﻮ ﻣﺎ ﻳﺴﻤﻰ ‪ hang‬وﻏﻴﺮهﺎ‬ ‫وﻏﻴﺮهﺎ ﻣﻦ اﻟﻤﻤﻴﺰات ‪ ،‬وﺑﺎﻟﺘﺎﻟﻰ ﻓﺎﻟﺘﻨﺎزل ﻋﻦ هﺬﻩ اﻟﺨﺼﺎﺋﺺ واﻟﻤﻤﻴﺰات اﻟﺘﻰ اآﺘﺴﺒﻬﺎ ﻋﻠﻰ ﻣﺪار‬ ‫ﺳﻨﻮات ﻣﻦ ﺗﻄﻮﻳﺮ اﻻﻻف ﻟﻪ وذﻟﻚ ﻟﻤﺠﺮد اﻟﻤﺨﺎﻟﻔﻪ ﻓﻘﻂ ﻻ ﻳﻌﺪ ﻣﻦ اﻟﺤﻜﻤﻪ ‪.‬‬ ‫وﺑﺎﻟﻔﻌﻞ ﻗﺎم اﻟﻤﺸﺎرآﻮن ﻓﻰ هﺬا اﻟﻤﺸﺮوع ﺑﻜﺘﺎﺑﻪ واﻧﺠﺎز اﻟﻜﺜﻴﺮ ﻣﻦ اﻟﺒﺮاﻣﺞ اﻟﻀﺮورﻳﻪ ﻻﻧﺸﺎء‬ ‫اﻧﻈﻤﻪ ﺟﺪﻳﺪﻩ ‪ ،‬وﻟﻜﻦ اﻟﻌﻘﺒﻪ اﻟﺘﻰ واﺟﻬﺘﻬﻢ هﻰ آﺘﺎﺑﻪ ﺑﺮاﻣﺞ آﺒﻴﺮﻩ وﻣﻬﻤﻪ ﻣﺜﻞ ال‪C compiler‬‬ ‫)واﻟﺬى ﻳﺘﻤﺜﻞ دورﻩ ﻓﻰ اﻟﻮﺳﺎﻃﻪ ﺑﻴﻦ ﻟﻐﻪ اﻟﺠﻬﺎز اﻻﺳﻤﺒﻠﻰ وﺑﻴﻦ ﻟﻐﻪ اﻟﺒﺮﻣﺠﻪ ‪.org‬هﻮ اﻻول ‪.‬‬ ‫وﻋﻠﻰ أﺛﺮ ذﻟﻚ ﻗﺎم " رﻳﺘﺸﺎرد ﺳﺘﻮﻟﻤﻦ " ﺑﺎﻻﻋﻼن ﻋﻦ ﻣﺸﺮوع ‪ GNU‬ﻋﺎم ‪ 1984‬وﺑﻤﻌﺎوﻧﻪ اﻟﻌﺪﻳﺪ‬ ‫ﻣﻦ اﻟﻤﺒﺮﻣﺠﻴﻦ واﻟﺒﺎﺣﺜﻴﻦ اﻻﺧﺮﻳﻦ اﻟﺬﻳﻦ أﻳﺪوا اﻟﻔﻜﺮﻩ ‪.

‬اﻻﻣﺮ اﻟﺬى‬ ‫اﺳﺘﻐﺮق ﻋﺪﻩ ﺳﻨﻮات ﻟﻼﻧﺘﻬﺎء ﻣﻦ آﻞ هﺬﻩ اﻟﺒﺮاﻣﺞ ‪.org‬‬ ‫اﻳﻀﺎ ﺗﻢ اﻧﺸﺎء ﻣﻮﻗﻊ ﻋﻠﻰ اﻻﻧﺘﺮﻧﺖ ﻟﻜﻰ ﻳﻜﻮن ﺑﻤﺜﺎﺑﻪ اﻟﻤﺴﺘﻮدع ﻟﻬﺬﻩ اﻟﺒﺮاﻣﺞ وهﺬا اﻟﻤﻮﻗﻊ هﻮ‬ ‫‪ ، http://www.fsf.org‬و‪ fsf‬اﺧﺘﺼﺎر ل‪.‬اى اﻧﻪ ﻣﻮﺟﻮد وﻳﺘﻢ اﻟﻌﻤﻞ ﺑﻪ ﺑﺎﻟﻔﻌﻞ ‪. http://www. kernel‬‬ ‫آﻞ هﺬﻩ اﻟﺒﺮاﻣﺞ وﻏﻴﺮهﺎ آﺎن ﻻ ﺑﺪ ﻟﻬﺎ ان ﺗُﻨﺠﺰ ﻟﻜﻰ ﻳﺼﺒﺢ هﻨﺎك ﺑﺎﻟﻔﻌﻞ اﻧﻈﻤﻪ ﺗﺸﻐﻴﻞ ‪ . bash‬‬ ‫هﺬا وﻻ ﻧﻨﺴﻰ اهﻢ اﻻﺟﺰاء اﻻ وهﻮ اﻟﻜﺮﻧﻞ ‪.‬‬ ‫وﺑﺎﻟﻔﻌﻞ ﺗﻢ اﻧﺠﺎز هﺬﻩ اﻻﻋﻤﺎل ﻓﻰ ﺑﺪاﻳﻪ اﻟﺘﺴﻌﻴﻨﺎت ‪ .‬‬ .‫وﺑﺮاﻣﺞ اﺳﺎﺳﻴﻪ ﻣﺜﻞ ﻣﺤﺮر اﻟﻨﺼﻮص ‪ ، emacs‬وواﺟﻬﻪ اﻟﻤﺴﺘﺨﺪم ‪.‬وﺗﻢ اﺗﻤﺎم اﻟﻤﺸﺮوع واﺻﺒﺢ ﻟﻪ ﻣﻮﻗﻊ ﻋﻠﻰ‬ ‫اﻻﻧﺘﺮﻧﺖ هﻮ ‪.‬‬ ‫وهﺬا ﻣﺎ ﻳﺘﻢ اﻻن ﺑﺎﻟﻔﻌﻞ وﻟﻜﻦ ﺷﻬﺮﻩ ‪ linux‬ﻃﻐﺖ ﻋﻠﻰ ﻏﻴﺮﻩ ‪ .‬ﺣﺘﻰ وﺻﻞ اﻻﻣﺮ ﺑﺎن اﻃﻼق اﺳﻢ‬ ‫‪ linux‬اﻻن اﺻﺒﺢ ﻳﻌﺒﺮ ﻋﻦ اﻻﻧﻈﻤﻪ ﻣﻔﺘﻮﺣﻪ اﻟﻤﺼﺪر ﺑﺼﻔﻪ ﻋﺎﻣﻪ ‪.‬‬ ‫اﻳﻀﺎ ﻳﻼﺣﻆ ان ﻣﺸﺮوع ‪ GNU‬هﺪﻓﻪ هﻮ اﺧﺮاج اﻧﻈﻤﻪ ﺗﺸﻐﻴﻞ وﻟﻴﺲ ﻧﻈﺎم ﺗﺸﻐﻴﻞ وﺣﻴﺪ و ﻣﻨﻔﺮد ‪. free software foundation‬‬ ‫وﺗﺰاﻣﻦ اﻟﻮﻗﺖ اﻟﺬى ﺗﻢ ﻓﻴﻪ اﻻﻧﺘﻬﺎء ﻣﻦ اﻟﻤﺸﺮوع ‪ ،‬ﺑﺎﻟﻮﻗﺖ اﻟﺬى آﺘﺐ ﻓﻴﻪ ﻟﻴﻨﻮس ﺗﻮرﻓﺎﻟﺪز اول‬ ‫آﺮﻧﻞ ﻟﻪ )آﺎن ﻻ ﻳﺘﻌﺪى ﻓﻰ ﺣﺠﻤﻪ ‪ 63‬آﻴﻠﻮ ﺑﺎﻳﺖ (‬ ‫ﻓﺘﺰاﻣﻦ اﻧﺠﺎز ﻟﻴﻨﻮس ﻟﻠﻜﺮﻧﻞ اﻟﺨﺎص ﺑﻪ اﻧﺘﻬﺎء ﻣﺸﺮوع ‪ GNU‬ﻣﻦ آﺘﺎﺑﻪ آﺎﻓﻪ ﺑﺮاﻣﺠﻪ وﻟﻢ ﻳﺘﺒﻖ اﻻ‬ ‫اﻟﻜﺮﻧﻞ اﻟﺨﺎص ﺑﻤﺸﺮوﻋﻬﻢ واﻟﺬى ﻳﺴﻤﻰ ‪ ) . Hurd‬ﻳﺸﺎر ﻟﻪ ﻓﻰ ال‪ doc‬وﺻﻔﺤﺎت ال‪ man‬وال‪ info‬ب‬ ‫‪( GNU/hurd‬‬ ‫ﻓﺎﺻﺒﺢ آﺮﻧﻞ ﻟﻴﻨﻮس هﻮ اﻟﻤﺘﻤﻢ ﻟﻤﺸﺮوع ‪. GNU‬‬ ‫وﻳﻼﺣﻆ هﻨﺎ‬ ‫اﻧﻬﻢ ﺑﺎﻟﻔﻌﻞ اﻧﺘﻬﻮا ﻣﻦ آﺘﺎﺑﻪ اﻟﻜﺮﻧﻞ ‪ Hurd‬وﻟﻜﻦ ﺗﻢ ذﻟﻚ ﺑﻌﺪ اﺷﺘﻬﺎر اﻟﻜﺮﻧﻞ اﻟﻤﺴﻤﻰ ‪ linux‬اﻟﺨﺎص‬ ‫ب ﻟﻴﻨﻮس‪ .gnu.

‬وﺑﺬﻟﻚ ﻓﻰ ﺣﺎﻟﻪ ﻓﺸﻞ اى ﻋﻤﻠﻴﻪ ﻓﻼ ﻳﺆﺛﺮ ذﻟﻚ ﻋﻠﻰ ﺑﻘﻴﻪ اﻟﻌﻤﻠﻴﺎت ‪.‬ﻋﻠﻢ ان‬ ‫اﻟﻔﻜﺮﻩ ﻧﺠﺤﺖ وان ﺑﺎﺳﺘﻄﺎﻋﺘﻪ ان ﻳﻨﺸﺎ ﻧﻮاﻩ ‪ kernel‬ﺗﻘﻮم ﺑﻤﻬﺎم ﻣﺘﻌﺪدﻩ )‪ (multi tsking‬ﻓﻰ ﻧﻔﺲ‬ ‫اﻟﻮﻗﺖ ‪.‬‬ ‫ﻓﻘﺪ آﺎن ﻟﻴﻨﻮس ﻳﻌﻤﻞ ﻋﻠﻰ ﻣﻌﺎﻟﺞ )‪ (processor‬ﻣﻦ ﻧﻮع ‪intel‬‬ ‫‪) 80386‬واﻟﺬى آﺎﻧﺖ ﺗﻨﺘﺠﻪ ﺷﺮآﻪ اﻧﺘﻞ ﻗﺒﻞ اﻧﺘﺎج اﻟﻤﻌﺎﻟﺠﺎت ‪(pentium‬‬ ‫وآﺎﻧﺖ اﻟﻔﻜﺮﻩ هﻰ ﻣﺤﺎوﻟﻪ اآﺘﺸﺎف وﺗﻄﺒﻴﻖ ﺧﺎﺻﻴﻪ ﺟﺪﻳﺪﻩ ﻟﻢ ﺗﻜﻦ‬ ‫ﻣﻌﺮوﻓﻪ اﻧﺬاك ﺗﺪﻋﻰ )‪ MMU (Memory Management Unit‬وهﺬﻩ اﻟﺨﺎﺻﻴﻪ ﺗﺠﻌﻞ آﻞ‬ ‫ﻋﻤﻠﻴﻪ )‪ (process‬ﺗﻘﻮم ﺑﻬﺎ اﻟﺬاآﺮﻩ ﻣﻨﻔﺼﻠﻪ ﻋﻦ ﺑﻘﻴﻪ اﻟﻌﻤﻠﻴﺎت اﻟﺘﻰ ﻳﺘﻢ ﺗﻨﻔﻴﺬهﺎ اﻻن ‪ ،‬ﻣﻤﺎ ﻳﺴﺎﻋﺪ‬ ‫ﻋﻠﻰ اﺟﺮاء ﻋﺪﻩ ﻋﻤﻠﻴﺎت ﻣﺘﺰاﻣﻨﻪ ﻓﻰ وﻗﺖ واﺣﺪ ‪... system down‬‬ ‫وآﺎﻧﺖ اﻧﻈﻤﻪ اﻟﺘﺸﻐﻴﻞ اﻟﺘﻰ ﺗﻌﻤﻞ ﻋﻠﻰ اﻟﻤﻌﺎﻟﺞ ‪ 80836‬وﻗﺘﻬﺎ هﻰ ‪ Windows‬اﻟﺨﺎص ﺑﺎل‬ ‫‪ work-group‬و ‪ .‬‬ ‫وﻗﺪ آﺎن اﻟﻮﺿﻊ ﻗﺒﻞ ذﻟﻚ ﻳﺘﻤﺜﻞ ﻓﻰ ان اى ﻋﻤﻠﻴﻪ )‪ (process‬ﺗﻔﺸﻞ )‪ (crash‬ﻓﻰ اداء ﻣﻬﻤﺘﻬﺎ‬ ‫ﻓﺎﻧﻬﺎ ﺗﻘﻮم ﺑﻌﻤﻞ اﻧﻬﻴﺎر ﻟﻠﻨﻈﺎم آﻜﻞ ‪. linus‬‬ ‫وهﺬا اﻟﻤﺸﺮوع ﻣﻌﺘﻤﺪ ﻋﻠﻰ ﻓﻜﺮﻩ ﺑﺴﻴﻄﻪ وﻟﻜﻨﻬﺎ هﺎﻣﻪ ‪. B‬‬ ‫* اﻣﺎ اﻟﺜﺎﻟﺚ ﻓﻜﺎن اآﺒﺮ ﻧﺴﺒﻴﺎ ﻣﻦ اﻻول واﻟﺜﺎﻧﻰ ‪ ،‬ووﻇﻴﻔﺘﻪ اﺑﻘﺎء ال‪ processor‬ﻓﻰ وﺿﻊ ﺁﻣﻦ‬ ‫‪ ، protected mode‬واﻳﻀﺎ وﺿﻊ اﻟﺒﺮﻧﺎﻣﺞ اﻻول واﻟﺜﺎﻧﻰ ﻓﻰ ﺟﺪول ‪ schedule‬ﺛﻢ دﻣﺞ‬ ‫اﻟﻨﺎﺗﺞ ﻣﻨﻬﻤﺎ ﻣﻌﺎ و اﺧﺮاﺟﻬﻢ ﻋﻠﻰ اﻟﺸﺎﺷﻪ ‪.‬‬ ‫* وﻟﻜﻦ اﻟﺬى ﺗﺠﺪر اﻻﺷﺎرﻩ اﻟﻴﻪ ‪ ،‬اﻧﻪ ﻓﻰ ذﻟﻚ اﻟﻮﻗﺖ آﺎن ﻣﺸﺮوع ‪ GNU‬ﺗﻘﺮﻳﺒﺎ ﻳﻌﺪ ﻣﻨﺘﻬﻰ ‪ ،‬وهﺬا‬ ‫اﻟﻤﺸﺮوع آﻤﺎ اﺳﻠﻔﻨﺎ ﺳﻴﻨﺘﺞ اﻧﻈﻤﻪ ﺗﺸﻐﻴﻞ آﺎﻣﻠﻪ ‪ ،‬اﻻﻣﺮ اﻟﺬى ﻻ داﻋﻰ ﻣﻌﻪ اﻟﻰ هﺬﻩ اﻟﻤﺤﺎوﻻت‬ ‫اﻟﻔﺮدﻳﻪ اﻟﺘﻰ ﻻ ﺗﺜﻤﺮ ﻣﺜﻞ اﻟﻌﻤﻞ ﻓﻰ ﻣﺠﻤﻮﻋﺎت )آﺎل‪ (GNU‬وﻟﻬﺬا آﺎﻧﺖ ﺑﺪاﻳﻪ ﻟﻴﻨﻮآﺲ ﻣﺨﺘﻠﻔﻪ ‪.‬‬ .‬‬ ‫واﻳﻀﺎ ﻳﻜﻮن ﻟﻜﻞ ﻋﻤﻠﻴﻪ ﺟﺰء ‪ segment‬ﺧﺎص ﺑﻬﺎ ﻓﻰ اﻟﺬاآﺮﻩ )وﻟﻴﺲ آﻞ اﻟﻌﻤﻠﻴﺎت ﻣﺸﺘﺮآﻪ ﻣﻊ‬ ‫ﺑﻌﻀﻬﺎ اﻟﺒﻌﺾ( ‪ .‬‬ ‫وﻋﻨﺪﻣﺎ ﻗﺎم ﺑﺘﺠﺮﺑﻪ هﺬﻩ اﻟﺒﺮاﻣﺞ ووﺟﺪ ان اﻟﻨﺎﺗﺞ اﻟﺬى ﻳﻈﻬﺮ ﻋﻠﻰ اﻟﺸﺎﺷﻪ ‪ ABABAB.‬‬ ‫* واﻟﺜﺎﻧﻰ اﻳﻀﺎ ﻣﺜﻞ اﻻول ﻟﻜﻨﻪ ﻳﻜﺘﺐ اﻟﺤﺮف ‪. Minix‬واﻟﻠﺬان ﻟﻢ ﻳﻜﻮﻧﺎ ﻣﻮﻓﺮان ﻟﻬﺬﻩ اﻟﺨﺎﺻﻴﻪ ﺑﻌﺪ ‪.‬‬ ‫ﻟﻴﻨﻮآﺲ ﻧﻈﺎم اﻟﺘﺸﻐﻴﻞ اﻟﺸﻬﻴﺮ ‪ ،‬ﻗﺎم ﺑﺎﻧﺸﺄﻩ ﻃﺎﻟﺐ )ﻻﺣﻆ اﻧﻪ ﻃﺎﻟﺐ ﻓﻘﻂ( دراﺳﺎت اﻟﻜﻤﺒﻴﻮﺗﺮ ﺑﺠﺎﻣﻌﻪ‬ ‫هﻠﻴﺴﻨﻜﻰ واﺳﻤﻪ‬ ‫“ ﻟﻴﻨﻮس ﺑﻨﺪآﺖ ﺗﻮرﻓﺎﻟﺪس ‪“ Linus Benedict Torvalds‬‬ ‫وﻗﺎم ﺑﺬﻟﻚ ﻓﻰ ﺑﺪاﻳﺎت اﻟﺘﺴﻌﻴﻨﺎت ‪.‫ﺑﺪاﻳﻪ ﻟﻴﻨﻮآﺲ ‪.‬‬ ‫ﻓﺒﺪأ ﺑﻜﺘﺎﺑﻪ ﺛﻼث ﺑﺮاﻣﺞ‬ ‫* اﻻول ﺑﺮﻧﺎﻣﺞ ﺑﺴﻴﻂ ﺟﺪا ‪ ،‬وﻇﻴﻔﺘﻪ آﺘﺎﺑﻪ اﻟﺤﺮف ‪ A‬ﺑﺎﺳﺘﻤﺮار ﻋﻠﻰ اﻟﺸﺎﺷﻪ ‪..‬‬ ‫آﺎﻧﺖ اﻟﺒﺪاﻳﻪ ﻣﻊ ﻣﺸﺮوع ﺑﺤﺜﻰ ‪ research‬آﺎن ﻳﻘﻮم ﺑﻪ ﻟﻴﻨﻮس‬ ‫‪.

CA www.fi) PS.it's free of any minix code. .com The Linux Kernel 111 Hello everybody out there using minix I'm doing a (free) operating system (just a hobby. This has been brewing since april. but I won't promise I'll implement them :-) Linus (torvalds@kruuna.Helsinki. I'd like any feedback on things people like/dislike in minix. I've currently ported bash(1. won't be big and professional like gnu) for 386(486) AT clones. This implies that I'll get something practical within a few months.os.‫وهﺬا هﻮ ﻧﺺ اﻟﺮﺳﺎﻟﻪ‬ From: torvalds@klaava. Any suggestions are welcome.FI (Linus Benedict Torvalds) Newsgroups: comp. Alameda.‫ )ﺳﻴﺘﻢ اﻟﺘﺤﺪث ﻋﻨﻪ ﻻﺣﻘﺎ( ﻳﺨﺒﺮهﻢ ﻓﻴﻬﺎ ﺑﻤﺎ ﺗﻮﺻﻞ اﻟﻴﻪ وﻳﺪﻋﻮهﻢ اﻟﻰ اﻟﻤﺸﺎرآﻪ ﻣﻌﻪ‬Minix .sybex. It is NOT protable [sic](uses 386 task switching etc).Helsinki.helsinki.40). and I'd like to know what features most people would want.9541@klaava.. as that's all I have :-(. Yes . and it probably never will support anything other than AT-harddisks.205708.08) and gcc(1. and is starting to get ready. and it has a multi-threaded fs. Inc. ‫ ﺗﺤﺖ هﺬا اﻟﻜﺮﻧﻞ‬GNU ‫ واﻧﺘﻬﻰ ﻣﻨﻪ ﻓﻰ اﻏﺴﻄﺲ ﺛﻢ ﺑﻌﺚ ﺑﺮﺳﺎﻟﻪ ﻋﻠﻰ اﻻﻧﺘﺮﻧﺖ‬1991 ‫ﺑﺪأ ذﻟﻚ ﻓﻰ ﺷﻬﺮ اﺑﺮﻳﻞ ﻣﻦ ﻋﺎم‬ ‫اﻟﺠﺎﻣﻌﺎت( اﻟﻰ ﻣﺠﻤﻮﻋﻪ اﻻﺧﺒﺎر اﻟﺨﺎﺻﻪ ب‬/‫)واﻟﺬى آﺎن وﻗﺘﻬﺎ ﻋﺒﺎرﻩ ﻋﻦ ﺷﺒﻜﻪ داﺧﻠﻴﻪ آﺒﻴﺮﻩ ﺗﺨﺪم اﻟﺠﺎﻣﻌﻪ‬ . and things seem to work.minix Subject: What would you like to see most in minix? Summary: small poll for my new operating system Message-ID: <1991Aug25. as my OS resembles it somewhat(same physical layout of the file-system (due to practical reasons)among other things).‫ اﻟﺨﺎﺻﻴﻦ ب‬Bash‫ وال‬C compiler ‫اﺳﺘﻄﺎع ﻟﻴﻨﻮس ان ﻳﻜﺘﺐ اول آﺮﻧﻞ ﻟﻪ وﻧﺠﺢ ﻓﻰ ﺗﺸﻐﻴﻞ‬ .FI> Date: 25 Aug 91 20:57:08 GMT Organization: University of Helsinki Copyright ©2000 SYBEX .

Minix‬‬ ‫ﺳﺒﻖ ذآﺮ آﻠﻤﻪ ﻣﻴﻨﻜﺲ ‪ Minix‬ﻣﺮﺗﻴﻦ ﻓﻰ اﻟﺼﻔﺤﺎت اﻟﻘﻠﻴﻠﻪ اﻟﺴﺎﺑﻘﻪ ‪.html‬‬ . Free University in Amsterdam‬‬ ‫ﻓﻘﺪ آﺎن هﺬا اﻟﺒﺮوﻓﻴﺴﻮر ‪-‬اﻻﻟﻤﺎﻧﻰ اﻻﺻﻞ‪ -‬ﻳﺪرس ﻟﻄﻼﺑﻪ ﺑﻄﺮﻳﻘﻪ ﻋﻤﻠﻴﻪ آﻴﻒ ﻳﻜﺘﺐ ﻧﻈﺎم اﻟﺘﺸﻐﻴﻞ‬ ‫وذﻟﻚ ﻋﻠﻰ اﺣﺪ ﻧﺴﺦ ﻳﻮﻧﻜﺲ وهﻰ اﻟﻨﺴﺨﻪ اﻟﻤﻔﺘﻮﺣﻪ اﻟﻤﺼﺪر ﻣﻦ ‪. intel *286‬‬ ‫* آﺎن ﻣﺘﺎﺣﺎ ﻻى ﺷﺨﺺ ﻋﻠﻰ اﻻﻧﺘﺮﻧﺖ وﻟﻜﻦ ﻟﻼﺳﺘﺨﺪاﻣﺎت اﻟﺘﻌﻠﻴﻤﻴﻪ ‪.‬‬ ‫اﻻوﻟﻰ ﻋﻨﺪ اﻟﻜﻼم ﻋﻦ اﻻﺟﻬﺰﻩ اﻟﺘﻰ ﻳﻌﻤﻞ ﻋﻠﻴﻬﺎ اﻟﻤﻌﺎﻟﺞ ‪. MINI uniX‬‬ ‫* وآﺎن ﻳﺘﻜﻮن ﻣﻦ ‪12‬اﻟﻒ ﺳﻄﺮ‪ ،‬وﻟﻬﺬا ﻟﻢ ﻳﻜﻦ ‪ Minix‬ﻏﻨﻴﺎ ﻓﻰ ﺣﺪ ذاﺗﻪ آﻐﻴﺮﻩ ﻣﻦ اﻧﻈﻤﻪ اﻟﻴﻮﻧﻜﺲ‬ ‫* آﺎن اﻟﻬﺪف ان ﻳﻌﻤﻞ هﺬا اﻟﻨﻈﺎم ﻋﻠﻰ ﻣﻌﺎﻟﺠﺎت ‪.‬‬ ‫ﻳﻼﺣﻆ اﻳﻀﺎ ان ﻟﻴﻨﻮس آﺎن ﻋﻠﻰ اﺗﺼﺎل ب ﺗﺎﻧﻴﻨﺒﺎم وذﻟﻚ ﻟﻤﺤﺎوﻟﻪ ﺟﻌﻞ ‪ Minix‬ﻳﻌﻤﻞ ﻋﻠﻰ ‪*386‬‬ ‫واﻳﻀﺎ ﻟﺪﻋﻢ اآﺒﺮ ﻟﻠﻬﺎردوﻳﺮ وﻏﻴﺮهﺎ ﻣﻦ اﻟﺒﻨﺎء اﻟﺪاﺧﻠﻰ ‪ .‬‬ ‫) وهﺬا ﻳﻔﺴﺮ آﻴﻒ آﺎن ﻳﺘﺪارﺳﻪ "ﻟﻴﻨﻮس" وهﻮ ﻓﻰ ﻓﻨﻠﻨﺪا ﺑﻴﻨﻤﺎ آﺎن "اﻧﺪروا" ﻓﻰ هﻮﻟﻨﺪا (‪. intel‬‬ ‫واﻟﺜﺎﻧﻴﻪ ﻓﻰ رﺳﺎﻟﻪ ﻟﻴﻨﻮس اﻟﻰ ﻣﺠﻤﻮﻋﻪ اﻻﺧﺒﺎر ‪.‬‬ ‫آﺘﺒﻪ " أﻧﺪروا ﺗﺎﻧﻴﻨﺒﺎم ‪ " Andrew Tanenbaum‬اﺳﺘﺎذ ﻋﻠﻮم اﻟﻜﻤﺒﻴﻮﺗﺮ ﺑﺎﻟﺠﺎﻣﻌﻪ اﻟﻤﻔﺘﻮﺣﻪ‬ ‫ﺑﺄﻣﺴﺘﺮدام ‪.‫ﻧﻈﺮﻩ ﻋﻠﻰ ‪. news group‬‬ ‫و‪ Minix‬هﺬا ﻋﺒﺎرﻩ ﻋﻦ ﻧﻈﺎم ﺗﺸﻐﻴﻞ ﻣﻔﺘﻮح اﻟﻤﺼﺪر ‪. BSD‬‬ ‫وﻟﻜﻦ ﺑﻌﺪ ﺗﻐﻴﻴﺮ ﻧﻈﺎم رﺧﺼﻪ ال‪ BSD‬ﻓﻰ اﻟﺜﻤﺎﻧﻴﺎت وﻋﺪم ﺗﻤﻜﻨﻪ ﻣﻦ اﻟﺤﺼﻮل ﻋﻠﻰ اﻟﻜﻮد ‪ ،‬ﻗﺮر‬ ‫ﺗﺎﻧﻴﻨﺒﺎم ان ﻳﻜﺘﺐ ﺑﻨﻔﺴﻪ ﻧﻈﺎم ﺗﺸﻐﻴﻞ ﻣﻮاﻓﻖ ل ﻳﻮﻧﻜﺲ )‪ (Unix-like‬ﻟﻴﺤﻞ ﻣﺤﻞ اﻟﻨﺴﺨﻪ اﻟﻌﻤﻠﻴﻪ اﻟﺘﻰ‬ ‫آﺎن ﻳﺴﺘﺨﺪﻣﻬﺎ ‪.‬‬ ‫اﻟﻤﺤﺎدﺛﺎت واﻟﺤﻮارات اﻟﺘﻰ دارت ﺑﻴﻦ ﻟﻴﻨﻮس وﺗﺎﻧﻴﻨﺒﺎم ﻣﻮﺟﻮدﻩ ﻋﻠﻰ اﻟﻤﻮﻗﻊ اﻟﺘﺎﻟﻰ‬ ‫‪http://www.dina.dk/~abraham/Linus_vs_Tanenbaum.‬وﻟﻜﻦ ﻓﻰ اﻟﻨﻬﺎﻳﻪ ﻟﻢ ﻳﺘﻔﻘﺎ ﻋﻠﻰ اﻟﻌﻤﻞ ﻣﻌﺎ ‪.‬‬ ‫* وﻟﻬﺬا اﻃﻠﻖ ﻋﻠﻴﻪ ‪ Minix‬اﺧﺘﺼﺎرا ل‪.‬‬ ‫وﻳﻼﺣﻆ‬ ‫* ان ﺗﺎﻧﻴﻨﺒﺎم ﻋﻨﺪﻣﺎ آﺘﺐ ﻧﻈﺎﻣﻪ آﺎن هﺪﻓﻪ ﺟﻌﻞ اﻟﻨﻈﺎم ﺻﻐﻴﺮا ﻗﺪر اﻻﻣﻜﺎن وذﻟﻚ ﻟﻜﻰ ﻳﺘﻤﻜﻦ ﻣﻦ‬ ‫اﺳﺘﺨﺪاﻣﻪ ﻓﻰ ﻋﻤﻠﻴﻪ اﻟﺸﺮح ﻟﻄﻼﺑﻪ ‪.

.

‬‬ ‫وﻟﻜﻦ آﻴﻒ ﻧﻨﻄﻘﻬﺎ ﻧﺤﻦ آﻌﺮب ‪.‬‬ ‫* اذا ﻣﻤﺎ ﻳﺘﻜﻮن ﻧﻈﺎم اﻟﺘﺸﻐﻴﻞ ‪.‬‬ ‫وﻟﻜﻦ ﺑﺎﻟﻨﺴﺒﻪ ﻟﻠﻤﺨﺘﺼﻴﻦ او ﻟﺪارﺳﻰ ‪ linux‬ﻓﻼ ﺑﺪ ان ﻳﻌﺮﻓﻮا ان ‪ linux‬هﻮ اﻟﻜﺮﻧﻞ ﺑﺎﻟﺘﺤﺪﻳﺪ ‪.‬‬ ‫ﻓﻌﻠﻰ اﻟﻤﻮﻗﻊ ‪/ftp://ftp.‬‬ ‫واﻟﺴﺒﺐ ﻓﻰ ﻋﺪم اﻻﺗﻔﺎق ﻋﻠﻰ ﻧﻄﻖ ﻟﻴﻨﻮآﺲ ﺑﻄﺮﻳﻘﻪ واﺣﺪﻩ ﻓﻰ اﻟﻌﺎﻟﻢ آﻠﻪ هﻮ ذاﺗﻪ اﻻﺧﺘﻼف ﻓﻰ ﻧﻄﻖ‬ ‫آﻠﻤﺎت ﻣﺜﻞ ‪ hello‬ﻣﻦ ﺑﻠﺪ ﻻﺧﺮ وﻣﻦ ﻟﻐﻪ ﻻﺧﺮى ‪..‫ﻋﺎﻟﻢ ﻟﻴﻨﻮآﺲ ‪.‬‬ ‫ﻟﻴﻨﻮآﺲ ‪ ،‬ﻳﻄﻠﻖ وﻳﻘﺼﺪ ﺑﻪ ﻋﻤﻮﻣﺎ ﻧﻈﺎم اﻟﺘﺸﻐﻴﻞ آﻜﻞ ‪.‬‬ ‫اﻻﻣﺮ اﻟﺬى ﺟﻌﻞ ﻟﻴﻨﻮس ﻳﺴﺠﻞ ﺑﻨﻔﺴﻪ آﻴﻒ ﻳﻨﻄﻖ ﻟﻴﻨﻮآﺲ ﻟﻜﻰ ﻳﺤﻞ هﺬﻩ اﻟﻤﺸﻜﻠﻪ ‪.‬‬ ‫ﺳﻴﺘﻢ اﻟﺘﺤﺪث ﻓﻰ اﻟﻨﻘﺎط اﻟﺘﺎﻟﻴﻪ ﻋﻠﻰ ﺑﻌﺾ ﻣﻼﻣﺢ وﺻﻔﺎت ﻟﻴﻨﻮآﺲ ‪.funet.، lee nex‬اذا اﻟﻤﻬﻢ ان ﺗﻜﻮن ﻋﻠﻰ ﻣﻌﺮﻓﻪ ﺑﻜﻴﻔﻴﻪ ﻧﻄﻖ ‪ linux‬ﺛﻢ ﺑﻌﺪ ذﻟﻚ اﻧﻄﻘﻬﺎ آﻤﺎ ﺗﻌﻮدت ‪ ،‬ﻓﺎﻟﻤﺴﺘﻤﻊ ﻟﻚ‬ ‫ﺳﻴﻔﻬﻢ ﻣﺎ ﺗﻘﺼﺪﻩ ‪.‬‬ ‫ﻣﺎ هﻮ ﻟﻴﻨﻮآﺲ ﺑﺎﻟﻈﺒﻂ ‪.‬هﺬا هﻮ )أﻧﺎ( ﻟﻴﻨﻮس ﺗﻮرﻓﺎﻟﺪز ‪ .‬‬ ..fi/pub/linux/PEOPLE/Linus/SillySounds‬‬ ‫ﻳﻮﺟﺪ ﻣﻠﻒ ﺻﻮﺗﻰ )ﺣﺠﻤﻪ ‪ (40kb‬ﻳﻤﻜﻨﻚ ﺗﻨﺰﻳﻠﻪ واﻻﺳﺘﻤﺎع اﻟﻴﻪ )ﺳﺘﺠﺪﻩ ﺑﺎﻟﻠﻐﻪ اﻻﻧﺠﻠﻴﺰﻳﻪ وأﺧﺮ ﺑﺎﻟﺴﻮﻳﺪﻳﻪ(‬ ‫وﻓﻴﻪ ﻳﻘﻮل ﻟﻴﻨﻮس ﺑﺼﻮﺗﻪ ‪،‬‬ ‫‪hello this is linus torvalds .‬‬ ‫آﻴﻒ ﻳﻨﻄﻖ ﻟﻴﻨﻮآﺲ ‪.‬‬ ‫ﺷﻐﻠﺖ هﺬﻩ اﻟﻤﺴﺎﻟﻪ ﺗﻘﺮﻳﺒﺎ آﻞ اﻟﻤﻬﺘﻤﻴﻦ ﺑﻠﻴﻨﻮآﺲ ‪ .. i pronounce linux as linux‬‬ ‫أهﻼ ‪ ..‬‬ ‫* وهﺬا اﻟﻜﺮﻧﻞ ﻟﻴﺲ ﻣﻠﻜﻴﻪ ﺷﺎﺋﻌﻪ ﻟﻠﺠﻤﻴﻊ ﺑﻞ هﻮ ﻣﻤﻠﻮك ‪ CopyRight‬ل ﻟﻴﻨﻮس ‪ ،‬اﻟﺬى ﻳﺴﻤﺢ ﻻى‬ ‫ﻓﺮد آﺎن ان ﻳﺴﺘﺨﺪﻣﻪ ﻓﻰ اى ﻏﺮض ‪.‬‬ ‫واﻟﻜﺮﻧﻞ هﺬا هﻮ اﻟﻤﺴﺌﻮل ﻋﻦ ادارﻩ اﻟﻨﻈﺎم آﻠﻪ ‪ .‬ﻓﻬﻮ اﻟﺬى ﻳﺪﻳﺮ اﻟﻬﺎرد واﻟﺴﻮﻓﺖ وﻳﺮ ‪.‬وﻟﻴﺴﺖ اﻟﻤﺸﻜﻠﻪ ﻋﻨﺪﻧﺎ ﻧﺤﻦ اﻟﻌﺮب ﻓﻘﻂ ﺑﻞ هﻰ‬ ‫ﻣﻮﺟﻮدﻩ اﻳﻀﺎ ﻋﻨﺪ اﻻورﺑﻴﻴﻦ واﻻﻣﺮﻳﻜﺎن وﻏﻴﺮهﻢ ‪.‬اﻧﺎ اﻧﻄﻖ ﻟﻴﻨﻮآﺲ ك ﻟﻴﻨﻮآﺲ ‪.‬‬ ‫ﻓﺘﻘﺮﻳﺒﺎ آﻠﻤﻪ ‪ hello‬ﻣﻮﺟﻮدﻩ ﻓﻰ ﻣﻌﻈﻢ ﻟﻐﺎت اورﺑﺎ ‪ ،‬وﻟﻜﻦ ﻟﻜﻞ ﺑﻠﺪ ﻃﺮﻳﻘﺘﻪ ﻓﻰ ﻧﻄﻘﻬﺎ ‪ ،‬وآﺬﻟﻚ‬ ‫ﻟﻴﻨﻮآﺲ ‪..‬‬ ‫اذا اردﻧﺎ ﻧﻄﻘﻬﺎ ﺑﻄﺮﻳﻘﻪ ﺻﺤﻴﺤﻪ ﻓﻼ ﺑﺪ ﻣﻦ ﻧﻄﻘﻬﺎ ﻣﺜﻞ ﻧﻄﻖ ‪) lee nox‬اى ﻧﻜﺴﺮ اﻟﻼم وﻧﻀﻢ اﻟﻨﻮن‬ ‫ِﻟﻴﻨُﻮآﺲ (‬ ‫*ﺣﻘﻴﻘﻪً ﻳﻮﺟﺪ اﻟﻌﺪﻳﺪ ﻣﻦ ﺧﺒﺮاء ﻟﻴﻨﻮآﺲ ﻳﻨﻄﻘﻮﻧﻬﺎ ‪) lee nex‬ﻟﻴﻨﻜﺲ( ‪ ،‬وﻣﺎ زﻟﺖ اﻧﺎ اﻳﻀﺎ اﻧﻄﻘﻬﺎ ﻓﻰ ﺑﻌﺾ اﻻﺣﻴﺎن‬ ‫‪ .

‬‬ ‫إدارﻩ اﻟﻨﻈﺎم ‪.‬‬ ‫)ﻣﻦ اﻟﻤﻌﺮوف ﻋﻦ ﻟﻴﻨﻮآﺲ اﻧﻪ ﻧﻈﺎم اﻟﺘﺸﻐﻴﻞ اﻟﻤﻔﻀﻞ ﻟﻠﻤﺤﺘﺮﻓﻴﻦ ‪ hackers‬واﻳﻀﺎ ﻟﻤﺨﺘﺮﻗﻰ اﻻﻧﻈﻤﻪ ‪crackers‬‬ ‫ﻻﺧﺘﺮاق اﻟﺸﺒﻜﺎت ﻋﻠﻰ اﻻﻧﺘﺮﻧﺖ ذﻟﻚ ﻻﻧﻬﻢ ﻳﺴﺘﺨﺪﻣﻮن ال‪ cmd line‬وﻗﺪراﺗﻬﺎ ‪ ،‬واﻟﺘﻰ ﺗﻮﻓﺮ ﻟﻬﻢ آﻞ ﻣﺎ ﻳﺤﺘﺎﺟﻮﻧﻪ‬ ‫ﻻداء هﺬﻩ اﻟﻤﻬﺎم(‬ .‬‬ ‫• ‪ Programs package‬وهﻰ اﻟﺒﺮاﻣﺞ اﻟﻤﺨﺘﻠﻔﻪ ﺳﻮاء ﻣﻦ اﻧﺘﺎج ‪ fsf‬او ﻣﻦ اﻧﺘﺎج اﻟﺸﺮآﺎت‬ ‫اﻟﺘﻰ ﺗﻨﺘﺞ ﻟﻴﻨﻮآﺲ ‪. cmd line‬‬ ‫ذﻟﻚ ﻻن ‪ linux‬او ‪ Unix‬واﻻﻧﻈﻤﻪ اﻟﻤﺘﻮاﻓﻘﻪ ﻣﻌﻪ ﻓﻰ اﻻﺳﺎس إﻧُﺸﺌﺖ ﺑﻬﺬا اﻻﺳﻠﻮب ﻣﻦ اﻟﺒﺪاﻳﻪ ﻓﻬﺬا‬ ‫اﻟﻨﻮع ﻣﻦ اﻻدارﻩ هﻮ اﻻﻗﺪم ﺑﻞ واﻻآﻔﺄ ‪.‬‬ ‫• ﺗﻮﻗﻊ داﺋﻤﺎ اﻣﻜﺎﻧﻴﻪ ﻋﺪم اﺳﺘﺠﺎﺑﻪ ال ‪ X window‬ﻟﻠﻌﻤﻞ ﻋﻨﺪ ﻣﺤﺎوﻟﻪ ﺗﺸﻐﻴﻞ اﻟﻨﻈﺎم ‪start up‬‬ ‫وﻓﻰ هﺬﻩ اﻟﺤﺎﻟﻪ ﺳﺘﺠﺪ ﻧﻔﺴﻚ وﺟﻬﺎ ﻟﻮﺟﻪ ﻣﻊ ال ‪ cmd line‬اﻟﺬى آﻨﺖ ﺗﺘﻬﺮب ﻣﻨﻪ ‪ .‬ﻓﻼ ﺑﺪ ﻣﻦ‬ ‫اﻻﺳﺘﻌﺪاد ﻟﻬﺬا اﻟﻴﻮم ‪.‬‬ ‫ذﻟﻚ ﻻﻧﻬﺎ ﺗﺠﻌﻞ اﻟﻤﺪﻳﺮ ﻣﻠﺰم ﺑﻤﺎ ﺗﻮﻓﺮﻩ ﻟﻪ ﻣﻦ اﻣﻜﺎﻧﻴﺎت ﻓﻼ ﻳﺴﺘﻄﻴﻊ ﺗﺠﺎوزهﺎ )ﻓﺎﻟﺰر ‪tab‬‬ ‫اﻟﻔﻼﻧﻰ ﻳﻔﻌﻞ آﺬا وهﺬا ﻳﻔﻌﻞ آﺬا وﺑﺎﻟﺘﺎﻟﻰ ﻓﺎﻟﻤﺪﻳﺮ ﻣﺤﺼﻮر ﺑﻬﺬﻩ اﻻدوات ﻓﻰ ادارﺗﻪ ‪ ،‬ﺑﻌﻜﺲ ال‬ ‫‪ ، cmd line‬ﻓﺒﻪ ﺗﺴﺘﻄﻴﻊ ان ﺗﻔﻌﻞ ﺑﺎﻟﻨﻈﺎم ﻣﺎ ﺗﺸﺎءﻩ اﻧﺖ وﻟﻴﺲ ﻣﺎ ﻳﺮﻳﺪﻩ هﻮ ﺑﻚ(‬ ‫• ال ‪ gui‬ﺗﺴﺘﺨﺪم وﺗﺴﺘﻬﻠﻚ اﻟﻜﺜﻴﺮ ﻣﻦ ﻣﻮارد اﻟﻨﻈﺎم ‪ ،‬ﻓﻠﺘﺸﻐﻴﻞ ال ‪ gui‬او ال‪ X window‬ﺗﺤﺘﺎج‬ ‫ﻋﻠﻰ اﻻﻗﻞ اﻟﻰ ‪ RAM 128‬ﻓﻰ ﺣﻴﻦ ان اﻟﻨﻈﺎم ﻳﺴﺘﻄﻴﻊ اﻟﻌﻤﻞ ﺑﻜﻔﺄﻩ وﻋﻦ ﻃﺮﻳﻖ ال‪cmd line‬‬ ‫ب‪ RAM 64‬واﻗﻞ ‪ ،‬ﻣﻤﺎ ﻳﻌﻨﻰ اﺳﺘﻬﻼك ﻣﻮارد اﻟﺠﻬﺎز ﻓﻰ ﻋﻤﻠﻴﺎت ﺑﺎﻣﻜﺎﻧﻨﺎ اﻻﺳﺘﻐﻨﺎء ﻋﻨﻬﺎ ‪.‫ﻳﺘﻜﻮن ﻧﻈﺎم اﻟﺘﺸﻐﻴﻞ ﻣﻦ ﻋﺪﻩ اﺟﺰاء‬ ‫• ‪ kernel‬اﻟﻜﺮﻧﻞ‬ ‫• ‪ Environment‬وهﻰ اﻟﺒﻴﺌﺎت اﻟﺘﻰ ﻳﺘﻌﺎﻣﻞ ﻣﻌﻬﺎ اﻟﻤﺴﺘﺨﺪم ﻟﻴﺘﺼﻞ ﺑﺎﻟﻨﻈﺎم ‪ ،‬وهﻰ اﻣﺎ ان ﺗﻜﻮن‬ ‫‪ graphical‬ﻣﺜﻞ ‪ gnome‬او ‪ ، kde‬او ﺗﻜﻮن ﻣﺘﻤﺜﻠﻪ ﻓﻰ ﺳﻄﺮ اﻻواﻣﺮ ‪. cmd line‬‬ ‫• ‪ File structure‬اﻟﻤﺴﺌﻮل ﻋﻦ ادارﻩ ﻧﻈﺎم اﻟﻤﻠﻔﺎت ‪.‬‬ ‫اﻟﺜﺎﻧﻴﻪ وهﻰ اﻻدارﻩ ﻋﻦ ﻃﺮﻳﻖ ال‪ gui‬اى اﻟﻮاﺟﻬﻪ اﻟﺮﺳﻮﻣﻴﻪ ‪Graphical User Interface‬‬ ‫وهﻰ اﻟﻄﺮﻳﻘﻪ اﻻﺣﺪث ‪ ،‬وﻟﻜﻦ هﺬﻩ اﻟﻄﺮﻳﻘﻪ ﻟﻬﺎ ﺑﻌﺾ اﻟﻌﻴﻮب ﻣﻨﻬﺎ‬ ‫• اﻻﻋﺘﻤﺎد ﻋﻠﻴﻬﺎ ﻓﻰ اﻻدارﻩ ﻻ ﻳُﻤﻜﻦ اﻟﻤﺪﻳﺮ ﻣﻦ اﻻﺳﺘﻔﺎدﻩ ﺑﻜﻞ ﻣﻤﻴﺰات اﻟﻨﻈﺎم ‪.‬‬ ‫ﻻدارﻩ اﻟﻨﻈﺎم ﻓﻰ ‪ linux‬ﻧﻮﻋﺎن‬ ‫اﻻوﻟﻰ اﻻدارﻩ ﻋﻦ ﻃﺮﻳﻖ ال ‪) cmd line‬ﺳﻄﺮ اﻻواﻣﺮ( ‪ .‬ﻓﻜﻞ ﺷﻰ ﻳﻤﻜﻦ ان ﻳﻨﻔﺬ ﺑﺎل ‪.‬وﻣﻴﺰﻩ هﺬﻩ اﻻدارﻩ اﻧﻬﺎ ﺗﻮﻓﺮ ﻟﻠﻤﺪﻳﺮ‬ ‫اﻟﺘﺤﻜﻢ اﻟﻜﺎﻣﻞ ﻓﻰ اﻟﻨﻈﺎم ‪ .

‬‬ ‫ﻓﻨﻈﺎم وﻳﻨﺪوز ان اردت ان ﺗﺨﺘﺒﺮﻩ ‪ ،‬ﻓﻠﺘﺠﻌﻠﻪ ﻳﻌﻤﻞ ﻳﻮﻣﺎ آﺎﻣﻼ ﻣﺜﻼ ﺑﺪون اﻏﻼق ‪ ،‬ﺛﻢ ﺑﻌﺪ ذﻟﻚ ﺣﺎول ان ﺗﺨﺘﺒﺮﻩ ‪،‬‬ ‫وﺳﺘﺠﺪ ان اﻟﻨﻈﺎم ﻗﺪ ﻓﻘﺪ اﻟﻜﺜﻴﺮ ﻣﻦ ﻗﺪراﺗﻪ‬ ‫اﻣﺎ ﺗﻌﺪد اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ‪ ،‬ﻓﻴﻌﻨﻰ ان اآﺜﺮ ﻣﻦ ﻣﺴﺘﺨﺪم ﺑﺎﺳﺘﻄﺎﻋﺘﻪ اﻻﺗﺼﺎل ﺑﺎﻟﻨﻈﺎم ﻓﻰ ﻧﻔﺲ اﻟﻮﻗﺖ ‪،‬‬ ‫وﺑﺎﻟﺘﺎﻟﻰ اداء اﻟﻤﻬﺎم اﻟﺬى ﻳﺮﻳﺪهﺎ‬ ‫وﻗﺪ ﻧﻼﺣﻆ ان اﻟﻤﻴﺰﺗﻴﻦ اﻟﺴﺎﺑﻘﺘﻴﻦ ﻣﺘﺪاﺧﻠﺘﺎن‪. open source‬‬ ‫ﻳﻌﻨﻰ ﻣﺼﻄﻠﺢ ﻣﻔﺘﻮح اﻟﻤﺼﺪر او ‪ ، open source‬ان اﻟﻜﻮد اﻟﻤﻜﺘﻮب ﺑﻪ ﻧﻈﺎم اﻟﺘﺸﻐﻴﻞ ﻣﺘﺎح ﻻى‬ ‫ﻓﺮد ﻳﺮﻳﺪ ان ﻳﺮى آﻴﻒ آﺘﺐ ﻧﻈﺎم اﻟﺘﺸﻐﻴﻞ ﻟﻴﻨﻮآﺲ ‪.‬ﻓﻤﻌﻨﻰ اﺗﺼﺎل اآﺜﺮ ﻣﻦ ﻣﺴﺘﺨﺪم ﺑﺎﻟﻨﻈﺎم هﻮ اداء اآﺜﺮ‬ ‫ﻣﻦ ﻣﻬﻤﻪ ﻓﻰ ﻧﻔﺲ اﻟﻮﻗﺖ‬ ‫وﻳﻼﺣﻆ ان ﻣﻌﻨﻰ ﺗﻌﺪد اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ﺑﺎﻟﻨﻈﺎم ‪ ،‬ﻻ ﻳﻌﻨﻰ وﺟﻮد ﻣﺜﻼ ﺧﻤﺴﻪ او ﺣﺘﻰ ﻋﺸﺮﻩ ﻣﺴﺘﺨﺪﻣﻴﻦ‬ ‫ﻳﺴﺘﻌﻤﻠﻮن ال‪ key board‬و ‪ mouse‬ﻓﻰ ﻧﻔﺲ اﻟﻮﻗﺖ ‪ ،‬ﻓﺎﺗﺼﺎل اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ﺑﺎﻟﻨﻈﺎم ﻟﻪ ﺻﻮر‬ ‫ﻋﺪﻳﺪﻩ ‪ ،‬ﻣﻨﻬﺎ ﻋﻠﻰ ﺳﺒﻴﻞ اﻟﻤﺜﺎل ‪-‬ﻻ اﻟﺤﺼﺮ‪ -‬اﻻﺗﺼﺎل ﺑﺴﻴﺮﻓﺮ ﻓﻰ وﻗﺖ واﺣﺪ ﻻآﺜﺮ ﻣﻦ ﻓﺮد‬ ‫ﻣﻔﺘﻮح اﻟﻤﺼﺪر ‪.‬‬ .‬ﺗﻌﺪ هﺬﻩ اﻟﻤﺴﺎﻟﻪ هﺎﻣﻪ ﺟﺪا ‪ ،‬ذﻟﻚ ﻻن اﻟﺪول ﺗﻤﺘﻠﻚ اﻟﻌﺪﻳﺪ ﻣﻦ اﻻﺟﻬﺰﻩ‬ ‫اﻟﺤﺴﺎﺳﻪ ﺟﺪا ‪ ،‬ﻣﺜﻞ اﻟﻮزارات واﻟﻬﻴﺌﺎت اﻟﻤﺨﺘﻠﻔﻪ ‪ .‬ﻳﻤﻜﻦ ﻻى ﺷﺨﺺ ﻋﻨﺪﻩ اﻟﺮﻏﺒﻪ ﻓﻰ ﺗﻌﻠﻢ آﻴﻔﻴﻪ آﺘﺎﺑﻪ اﻧﻈﻤﻪ اﻟﺘﺸﻐﻴﻞ ان‬ ‫ﻳﺴﺘﻌﻴﻦ ﺑﻬﺬا " اﻟﻜﻮد اﻟﻤﻔﺘﻮح " ﻟﻴﺮى آﻴﻒ ﺗﻌﻤﻞ وﺗﻜﺘﺐ اﻧﻈﻤﻪ اﻟﺘﺸﻐﻴﻞ ‪.‫ﺗﻌﺪد اﻟﻤﻬﺎم و ﺗﻌﺪد اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ‪.‬‬ ‫ﻓﻴﻌﺘﺒﺮاﻟﻜﻮد اﻟﻤﻔﺘﻮح ﻓﻰ هﺬﻩ اﻟﺤﺎﻟﻪ ‪ ،‬ﻣﺜﺎل ﻋﻤﻠﻰ ﻋﻠﻰ آﺘﺎﺑﻪ اﻟﺒﺮاﻣﺞ واﻻﻧﻈﻤﻪ ‪.‬‬ ‫• ﻓﻤﻦ ﻧﺎﺣﻴﻪ اﻟﻔﺮد ‪ .‬‬ ‫• وﻣﻦ ﻧﺎﺣﻴﻪ اﻟﺪول ‪ .‬وﺑﺎﻟﺘﺎﻟﻰ ﻓﺎن ﻧﻈﺎم ﺗﺸﻐﻴﻞ ﻣﻔﺘﻮح اﻟﻤﺼﺪر ﻳﻌﺪ‬ ‫اﻟﺤﻞ اﻻﻣﺜﻞ ﻟﻬﺬﻩ اﻟﺤﺎﻻت ‪ ،‬ﻻﻧﻪ ﻳﻤﻨﻊ ﺷﻔﺮات اﻟﺘﺠﺴﺲ ‪ ،‬اﻟﺘﻰ ﻻ ﻳﻤﻜﻦ اﻟﺘﻌﺮف ﻋﻠﻴﻬﺎ ﺑﺴﻬﻮﻟﻪ ﻣﻊ‬ ‫اﻻﻧﻈﻤﻪ واﻟﺒﺮاﻣﺞ ﻣﻐﻠﻘﻪ اﻟﻤﺼﺪر ‪.‬‬ ‫ﻳﺘﻤﻴﺰ ﻟﻴﻨﻮآﺲ ﺑﺨﺎﺻﻴﻪ ﻣﻤﻴﺰﻩ ﺟﺪا ‪ ،‬ﺑﻞ ان اﻟﺘﺤﺪث ﻋﻦ ﻣﻤﻴﺰات ﻟﻴﻨﻮآﺲ ﻻ ﺑﺪ ان ﻳﺘﺼﺪرﻩ هﺎﺗﻴﻦ‬ ‫اﻟﻤﻴﺰﺗﻴﻦ ‪ ،‬وهﻤﺎ ‪ ،‬ﺗﻌﺪد اﻟﻤﻬﺎم وﺗﻌﺪد اﻟﻤﺴﺘﺨﺪﻣﻴﻦ‬ ‫ﻓﺘﻌﺪد اﻟﻤﻬﺎم ﻳﻌﻨﻰ ان اﻟﻨﻈﺎم ﺑﺎﺳﺘﻄﺎﻋﺘﻪ اداء اآﺜﺮ ﻣﻦ ﻣﻬﻤﻪ ﻓﻰ ﻧﻔﺲ اﻟﻮﻗﺖ‬ ‫وﻗﺪ ﻳﺘﻤﺜﻞ اﻟﻔﺮق ﺑﻴﻦ ﻟﻴﻨﻮآﺲ وﺑﻴﻦ وﻳﻨﺪوز ﻋﻠﻰ ﺳﺒﻴﻞ اﻟﻤﺜﺎل ‪-‬اذا اﻋﺘﺒﺮﻧﺎ ان هﺬا اﻻﺧﻴﺮ ﻣﺘﻌﺪد اﻟﻤﻬﺎم اﻳﻀﺎ‪ -‬ﻓﻰ‬ ‫اﻟﻮﻗﺖ اﻟﺬى ﻳﺴﺘﻄﻴﻊ ﻓﻴﻪ ﻧﻈﺎم اﻟﺘﺸﻐﻴﻞ اﻻﺳﺘﻤﺮار ﻓﻰ اداء ﻣﻬﺎﻣﻪ ‪.‬‬ ‫وهﺬﻩ اﻟﻤﺴﺎﻟﻪ ﻗﺪ ﺗﻜﻮن ﻓﻰ ﻧﻈﺮ اﻟﺒﻌﺾ ﻗﻠﻴﻠﻪ اﻻهﻤﻴﻪ ‪ ،‬اﻻ ان اﻟﺤﻘﻴﻘﻪ ان هﺬﻩ اﻟﻤﺴﺎﻟﻪ هﺎﻣﻪ ﺟﺪا ﻣﻦ‬ ‫ﻋﺪﻩ ﻧﻮاح ‪.‬‬ ‫واﻟﻴﻚ ﺑﻌﺾ اﻻﻣﺜﻠﻪ ﻋﻠﻰ اهﻤﻴﻪ هﺬﻩ اﻟﻤﺴﺎﻟﻪ‬ ‫• ﺗﺴﺘﺨﺪم وزارﻩ اﻟﺪﻓﺎع اﻻﻣﺮﻳﻜﻴﻪ ﻟﻴﻨﻮآﺲ ‪ ،‬ﺑﺴﺒﺐ هﺬﻩ اﻟﻤﻴﺰﻩ ‪ ،‬وﻋﻨﺪهﺎ ﺧﺒﺮاء ﻳﻌﺮﻓﻮن ﻣﺎ اﻟﺬى‬ ‫ﻳﻌﻨﻴﻪ آﻞ ﺳﻄﺮ ﻓﻰ ﻧﻈﺎم ﻟﻴﻨﻮآﺲ ‪.

‬‬ ‫وهﺬﻩ اﻻواﻣﺮ ﺗﺴﻤﻰ اﻳﻀﺎ ﻓﻰ ﻟﻴﻨﻮآﺲ ﺑﺎﻟﺒﺮاﻣﺞ ‪ ،‬ﻓﺎن ﺳﻤﻌﺖ اﺣﺪا ﻳﻘﻮل ‪ ،‬ان ﺑﺮﻧﺎﻣﺞ ‪ ls‬ﻳﻘﻮم‬ ‫ﺑﻌﺮض ﻣﺤﺘﻮﻳﺎت اﻟﻤﺠﻠﺪ ﺑﺎآﺜﺮ ﻣﻦ ﺻﻴﻐﻪ ‪ .‬‬ ‫ﻣﻦ اﻻﺳﺌﻠﻪ اﻟﺘﻰ ﺗﺪور ﻓﻰ اذهﺎن اﻟﻤﺴﺘﺨﺪﻣﻴﻦ اﻟﺠﺪد ﻟﻠﻨﻈﺎم ‪ ،‬ﻟﻤﺎذا ﻻ ﺗﻮﺟﺪ اﻟﺒﺮاﻣﺞ ذات اﻻﻣﺘﺪاد‬ ‫‪ exe‬ﻓﻰ ﻟﻴﻨﻮآﺲ ‪.‬وآﺬﻟﻚ ﻓﻌﻠﺖ اﺳﺮاﺋﻴﻞ ﻣﻦ ﻗﺒﻞ ‪.‬ﻓﻼ ﺗﻨﺪهﺶ ﻟﺬﻟﻚ ‪.‬‬ ‫اﻟﺒﺮاﻣﺞ واﻻواﻣﺮ ‪.‬‬ ‫واﻻﺟﺎﺑﻪ ﺑﺴﻴﻄﻪ وهﻰ ‪ ،‬اﻟﻤﻠﻔﺎت ﻓﻰ ﻟﻴﻨﻮآﺲ ﻏﻴﺮهﺎ ﻓﻰ وﻳﻨﺪوز ‪ ،‬ﻓﺎﻟﻘﺎﻋﺪﻩ اﻟﻌﺎﻣﻪ ﻓﻰ ﻟﻴﻨﻮآﺲ اﻧﻪ ﻻ‬ ‫ﻳﻮﺟﺪ ﻟﻤﻠﻔﺎﺗﻪ اى اﻣﺘﺪاد ‪. x‬‬ ‫وﺑﻬﺬا اﻟﻜﺘﺎب ﻓﺼﻞ آﺎﻣﻞ ﻳﺸﺮح هﺬﻩ اﻟﺘﺼﺎرﻳﺢ ‪ ،‬وﻣﺎ ﺗﻌﻨﻴﻪ ﺑﺎﻟﻀﺒﻂ ‪ ،‬آﻴﻔﻴﻪ ﺗﻐﻴﻴﺮهﺎ واﻟﺘﺤﻜﻢ ﻓﻴﻬﺎ ‪. w‬‬ ‫وهﺬا اﻟﻤﻠﻒ اﻳﻀﺎ ﻗﺪ ﻳﺼﺒﺢ ﺑﺮﻧﺎﻣﺞ اذا ﺗﺤﻮل اﻟﺘﺼﺮﻳﺢ اﻟﻤﻤﻨﻮح ﻟﻪ اﻟﻰ ‪.‬‬ ‫وﻟﻌﻞ ﺳﺒﺐ وﺟﻮد هﺎﺗﻴﻦ اﻟﺘﺴﻤﻴﺘﻴﻦ ﻳﺘﻠﺨﺺ ﻓﻰ ان "اﻻﻣﺮ" ﻗﺪ ﻳُﻌﺮف ﺑﺎﻧﻪ ﻣﺎ ﻳﻜﺘﺐ ﻋﻠﻰ ﺳﻄﺮ‬ ‫اﻻواﻣﺮ ‪ ، cmd line‬اﻣﺎ "اﻟﺒﺮﻧﺎﻣﺞ" ﻓﻬﻮ اﺳﻢ هﺬا "اﻻﻣﺮ" ﻋﻨﺪ ﺗﺸﻐﻴﻠﻪ )‪.‬‬ ‫ﻓﺒﻬﺬا اﻟﺘﺼﺮﻳﺢ ﻳﻜﻮن اﻟﻤﻠﻒ ‪ doc‬اذا آﺎن اﻟﺘﺼﺮﻳﺢ اﻟﻤﻤﻨﻮح ﻟﻪ ‪ r‬او ‪.‬‬ ‫ﺑﻞ ان اﻟﺬى ﻳﺤﺪد ﻧﻮﻋﻴﻪ اﻟﻤﻠﻒ هﻮ اﻟﺘﺼﺮﻳﺢ اﻟﻤﻤﻨﻮح ﻟﻬﺬا اﻟﻤﻠﻒ ‪.‬‬ ‫ﻳﺘﻢ اﻟﺘﻌﺎﻣﻞ ﻣﻊ ﻟﻴﻨﻮآﺲ ﻣﻦ ﺧﻼل اﻻواﻣﺮ ‪.‬‬ ‫اﻟﻤﻠﻔﺎت اﻟﺘﻨﻔﻴﺬﻳﻪ ﻓﻰ ﻟﻴﻨﻮآﺲ ‪.‫• ﻃﻠﺒﺖ روﺳﻴﺎ ﻣﻦ ﺷﺮآﻪ ﻣﺎﻳﻜﺮوﺳﻮﻓﺖ ال ‪ source code‬ﻟﻨﻈﺎﻣﻬﺎ وﻳﻨﺪوز ‪ ،‬ﻟﻜﻰ ﺗﺴﻤﺢ‬ ‫ﺑﺎﺳﺘﺨﺪاﻣﻪ ﻓﻰ هﻴﺌﺎﺗﻬﺎ اﻟﻤﺨﺘﻠﻔﻪ ‪ . (run‬‬ .

2.‬‬ ‫ﻓﺎن آﺎن هﺬا اﻟﺮﻗﻢ " ﻓﺮدى " ﻓﻤﻌﻨﻰ هﺬا ان هﺬا اﻟﻜﺮﻧﻞ ﺗﺤﺖ اﻟﺘﻄﻮﻳﺮ واﻟﺘﺠﺮﺑﻪ ‪ ،‬وﺑﺎﻟﺘﺎﻟﻰ ﻓﺎن‬ ‫اﻟﻤﺘﻌﺎﻣﻠﻴﻦ ﻣﻌﻪ هﻢ اﻟﺒﺎﺣﺜﻴﻦ واﻟﻤﻄﻮرﻳﻦ اﻟﺬﻳﻦ ﻳﺨﺘﺒﺮون هﺬا اﻻﺻﺪار ﻣﻦ اﻟﻜﺮﻧﻞ وﺑﺎﻟﺘﺎﻟﻰ ﻳﺘﻢ‬ ‫ﺗﺼﺤﻴﺢ اﻟﻜﻮد ان آﺎن ﻓﻴﻪ ﺧﻄﺎ ‪.4.‬‬ ‫وﻳﺴﻤﻰ اﻟﻜﺮﻧﻞ ذو اﻟﺮﻗﻢ اﻟﻔﺮدى ب ‪ development release‬او اﻻﺻﺪار اﻟﺬى ﺗﺤﺖ اﻟﺘﻄﻮﻳﺮ‪.6‬‬ ‫• اﺻﺪار ﻓﺮدى وﻳﻜﻮن ﻣﺜﻞ ‪ 2.‫اﺻﺪارات اﻟﻜﺮﻧﻞ ‪.4‬و ‪.22‬‬ ‫ﻓﺮﻗﻢ ‪ 2‬دﻟﻴﻞ ﻋﻠﻰ ال ‪ major‬وﻣﺜﺎﻟﻪ ‪ ،‬ﻋﻨﺪﻣﺎ ﺗﻢ اﺻﺪار اﻟﻜﺮﻧﻞ ‪ 2‬هﺬا ‪-‬ﻋﺎم ‪ -1996‬ﻓﺎﻧﻪ اﺻﺒﺢ‬ ‫آﺮﻧﻞ ﻳﻌﻤﻞ ﺑﻨﻈﺎم ال‪) modules‬ﻗﺪرﻩ اﻟﻜﺮﻧﻞ ﻋﻠﻰ ﺗﺤﻤﻴﻞ اﺟﺰاء ﻣﻦ اﻟﻜﻮد اﻟﺨﺎص ﺑﻪ اﺛﻨﺎء ﻋﻤﻠﻪ(‬ ‫واﻟﺮﻗﻢ ‪ 4‬دﻟﻴﻞ ﻋﻠﻰ ال ‪ ، minor‬واﻟﺘﻰ ﺗﻌﻨﻰ ﺑﻤﻌﻨﻰ ﺑﺴﻴﻂ ‪ ،‬ﻋﻤﻞ ‪ up grade‬ﻟﻠﺨﺼﺎﺋﺺ اﻟﺘﻰ‬ ‫ﻳﻮﻓﺮهﺎ اﻟﻜﺮﻧﻞ ‪ ،‬وهﻰ ﺑﺎﻟﻔﻌﻞ ﻣﻮﺟﻮدﻩ ﻓﻴﻪ ‪.2‬و ‪ 2.5‬وهﻜﺬا ‪.‬‬ ‫اﻳﻀﺎ رﻗﻢ اﻟﻜﺮﻧﻞ هﺬا ﻋﺒﺎرﻩ ﻋﻦ ﺛﻼﺛﻪ اﺟﺰاء‬ ‫• ‪ major‬وﻳﻌﻨﻰ اﻟﺘﻐﻴﻴﺮات اﻟﻜﺒﻴﺮﻩ اﻟﺘﻰ ﺗﻄﺮأ ﻋﻠﻰ اﻟﻜﺮﻧﻞ‬ ‫• ‪ minor‬واﻟﺘﻰ ﺗﻌﻨﻰ اﻟﺘﻐﻴﻴﺮات اﻟﺼﻐﻴﺮﻩ ﻓﻰ اﻟﻜﺮﻧﻞ‬ ‫• ‪ revision number‬واﻟﺘﻰ ﺑﺪورهﺎ ﺗﻌﻨﻰ اﻟﺘﻌﺪﻳﻼت اﻟﺘﻰ ﻳﺘﻢ ادﻣﺎﺟﻬﺎ ﻓﻰ اﻟﻜﺮﻧﻞ‬ ‫وآﻤﺜﺎل ﻟﻬﺬﻩ اﻻرﻗﺎم ﻓﺎن اﻟﻜﺮﻧﻞ ﻳﻜﻮن ﻟﻪ اﻟﺸﻜﻞ اﻟﺘﺎﻟﻰ ‪2.4.‬‬ ‫وﻳﺴﻤﻰ اﻟﻜﺮﻧﻞ ذو اﻟﺮﻗﻢ اﻟﺰوﺟﻰ ب ‪ stable release‬او اﻻﺻﺪار اﻟﻤﺴﺘﻘﺮ ‪.‬‬ ‫اﺣﺪى اﻟﺼﻔﺎت اﻟﺘﻰ ﺗﻤﻴﺰ اﻟﻜﺮﻧﻞ هﻰ ارﻗﺎم اﺻﺪارات هﺬا اﻟﻜﺮﻧﻞ ‪.‬‬ ‫ﻓﺎﻟﺮﻗﻢ اﻟﺬى ﻳﺨﺮج ﺑﻪ اﻟﻜﺮﻧﻞ ﻟﻪ ﻣﻌﻨﻰ اﺑﻌﺪ ﻣﻦ آﻮﻧﻪ رﻗﻢ ﻣﺴﻠﺴﻞ ‪ ،‬وﻟﻬﺬا اﻟﺮﻗﻢ اﺻﺪاران‬ ‫• اﺻﺪار زوﺟﻰ ﻣﺜﻞ ‪ 2.‬‬ ‫اﻣﺎ اﻟﺮﻗﻢ ‪ 22‬ﻓﻬﻮ دﻟﻴﻞ ﻋﻠﻰ ال ‪ revision‬واﻟﺘﻰ ﺗﻌﻨﻰ ‪ ،‬ﻋﻨﺪﻣﺎ ﻳﺘﻢ اآﺘﺸﺎف ‪ bugs‬ﻓﻰ اﻟﻜﺮﻧﻞ‬ ‫وﻳﺘﻢ اﺻﻼﺣﻪ ﻓﺎﻧﻪ ﻳﺎﺧﺬ رﻗﻢ ‪ revision‬ﺟﺪﻳﺪ )وﻻ ﻓﺮق ان ﻳﻜﻮن ﻓﺮدى او زوﺟﻰ ‪ ،‬ﺑﻌﻜﺲ اﻻﺛﻨﺎن اﻟﺴﺎﺑﻘﺎن(‬ ‫وﻗﺪ ﺗﻀﻴﻒ اﻻﺻﺪارت اﻟﻤﺨﺘﻠﻔﻪ ﻣﺜﻞ ردهﺎت و ﻏﻴﺮهﺎ ‪ ،‬رﻗﻢ اﺿﺎﻓﻰ اﻟﻰ هﻮﻻء اﻟﺜﻼﺛﻪ ‪ ،‬وﻳﻜﻮن‬ ‫ﺑﺎﻟﺘﺎﻟﻰ رﻗﻢ اﻟﻜﺮﻧﻞ ﺑﻬﺬا اﻟﺸﻜﻞ ‪ .‬‬ . 2.‬‬ ‫وان آﺎن هﺬا اﻟﺮﻗﻢ " زوﺟﻰ " ﻓﻤﻌﻨﻰ هﺬا ان هﺬا اﻟﻜﺮﻧﻞ ﺗﻢ اﺧﺘﺒﺎرﻩ وﺑﺎﻟﺘﺎﻟﻰ ﻳﻤﻜﻦ اﻻﻋﺘﻤﺎد ﻋﻠﻴﻪ ‪.‬‬ ‫وهﺬا ﺑﺎﻟﻄﺒﻊ اﻟﻜﺮﻧﻞ اﻟﺬى ﻧﺘﻌﺎﻣﻞ ﻣﻌﻪ ﻧﺤﻦ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ‪.3‬و ‪ 2.22-8‬وهﺬا اﻟﺮﻗﻢ اﻻﺿﺎﻓﻰ ﺑﻤﺜﺎﺑﻪ ‪ patch‬ﺧﺎص‬ ‫ﺑﺎﻻﺻﺪارﻩ ذات ﻧﻔﺴﻬﺎ ‪.

‬‬ ‫وﻋﻠﻰ اﻟﻤﻮﻗﻊ ‪ www.‬‬ ‫وﻟﻬﺬا ﻓﺎن اﺳﺘﺨﺪام ال ‪ root‬ﻓﻰ اﻟﻌﻤﻠﻴﺎت اﻟﻌﺎدﻳﻪ ) آﻘﺮأﻩ اﻟﻤﻠﻔﺎت وﻏﻴﺮهﺎ( ﺧﻄﻴﺮ ﺟﺪا وﻻ ﻳﻨﺼﺢ ﺑﻪ‬ ‫اﺑﺪا ‪ ،‬اﻻ اذا آﻨﺖ ﺗﻨﻮى اﻻﻧﻀﻤﺎم اﻟﻰ اوﻟﺌﻚ اﻟﺬﻳﻦ )ﻳﺨﺮﺑﻮن( اﻧﻈﻤﺘﻬﻢ ﺑﻐﻴﺮ ﻗﺼﺪ ‪ .‬‬ ‫وآﻞ هﻮﻻء ‪-‬ﻣﻊ ﺗﻌﺪد دواﻓﻌﻬﻢ ﻻﺳﺘﺨﺪام ﻟﻴﻨﻮآﺲ‪ -‬ﻳﺸﺎرآﻮن ﻓﻰ ﺗﻄﻮﻳﺮ هﺬا اﻟﻨﻈﺎم ﻓﻰ ﺷﻜﻞ‬ ‫اﻻﺻﺪارات اﻟﺘﻰ ﺗﺨﺮج اﻟﻴﻨﺎ ‪.‬‬ ‫واﻟﺠﺎﻣﻌﺎت ﺗﻘﻮم ﺑﺘﻌﻠﻴﻤﻪ اﻟﻰ ﻃﻼﺑﻬﺎ ‪.‬ﻓﻼ ﻳﺴﺘﻄﻴﻊ‬ ‫اﺳﺘﻴﻌﺎب آﻮن ﻧﻈﺎم ﺗﺸﻐﻴﻞ ﻟﻪ اآﺜﺮ ﻣﻦ ﺧﻤﺴﻴﻦ ﺷﻜﻼ ‪.‬‬ .org‬ﻳﻮﺟﺪ اﻟﻜﺜﻴﺮ ﻣﻦ اﺻﺪارات ﻟﻴﻨﻮآﺲ ‪ ،‬وﻋﺪدهﻢ ﻗﺮﻳﺐ ﻣﻦ‬ ‫اﻟﺨﻤﺴﻴﻦ اﺻﺪارﻩ ‪.‬‬ ‫ﻓﺎﻟﺸﺮآﺎت ﺗﺴﺘﺨﺪﻣﻪ ﺑﻬﺪف اﻟﺮﺑﺢ ‪.linux-iso.‬‬ ‫وﻗﺪ ﻳﺴﺒﺐ هﺬا اﻻﻣﺮ ﺳﻮء ﻓﻬﻢ ﻋﻨﺪ اﻟﺒﻌﺾ ‪-‬ﺧﺎﺻﻪ اﻟﺠﺪد‪ ، -‬ﺑﺴﺒﺐ اﻟﺘﻌﻮد ﻋﻠﻰ ان ﻧﻈﺎم اﻟﺘﺸﻐﻴﻞ ﻻ‬ ‫ﺑﺪ ان ﻳﻜﻮن ﻣﻤﻠﻮك ﻟﺸﺮآﻪ "ﺗﺠﺎرﻳﻪ" ﻣﺜﻠﻤﺎ هﻮ اﻟﺤﺎل ﻣﻊ وﻳﻨﺪوز وﻣﺎﻳﻜﺮوﺳﻮﻓﺖ ‪ .‬‬ ‫ﻓﻜﻤﺎ ﺣﺪث ﻣﻊ ‪ Unix‬ﻣﻦ ﻗﺒﻞ ‪ ،‬ﻳﺤﺪث اﻻن ﻣﻊ ﻟﻴﻨﻮآﺲ وﺑﺼﻮرﻩ اآﺜﺮ ﺳﺮﻋﻪ واﺗﺴﺎﻋﺎ ‪. root‬‬ ‫واﻟﻤﺪﻳﺮ او ال ‪ ، root‬ﻳﺴﺘﻄﻴﻊ ﻓﻌﻞ اى ﺷﻰ وآﻞ ﺷﻰ ﻓﻰ اﻟﻨﻈﺎم ‪ ،‬ﻓﻰ ﺣﻴﻦ ان اﻟﻤﺴﺘﺨﺪم اﻟﻌﺎدى‬ ‫ﻣﻘﻴﺪ ﻓﻰ ﺗﻌﺎﻣﻠﻪ ﻣﻊ اﻟﻨﻈﺎم ﺑﻮﻇﺎﺋﻔﻪ ﻓﻘﻂ ‪ ،‬وﻟﻬﺬا ﻓﻬﻮﻻ ﻳﺴﺘﻄﻴﻊ اﺗﻼف ﺷﻰ ‪.‫اﺻﺪارات ﻟﻴﻨﻮآﺲ ‪.‬‬ ‫واﻟﻤﻨﻈﻤﺎت ‪-‬اﻟﻐﻴﺮ رﺑﺤﻴﻪ‪ -‬ﻣﺜﻞ ‪ debian‬ﺗﺴﺘﺨﺪﻣﻪ ﻻﻏﺮاض اﻟﺒﺤﺚ واﻟﺘﻄﻮﻳﺮ وﺧﻼﻓﻪ ‪.‬‬ ‫ﻳﻮﺟﺪ ﻓﻰ ﻟﻴﻨﻮآﺲ ﻧﻮﻋﺎن ﻣﻦ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ‬ ‫‪ -1‬ﻣﺪﻳﺮ اﻟﻨﻈﺎم وﻳﺴﻤﻰ ‪ Adminstrator‬او ‪root‬‬ ‫‪ -2‬اﻟﻤﺴﺘﺨﺪم اﻟﻌﺎدى ‪ ،‬وهﻮ اى ﻣﺴﺘﺨﺪم اﺧﺮ ﻣﻮﺟﻮد ﺑﺎﻟﻨﻈﺎم ﻏﻴﺮ ال ‪.‬‬ ‫اﻧﻮاع اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ﻓﻰ ﻟﻴﻨﻮآﺲ ‪.‬‬ ‫واﻟﺴﺒﺐ ﻓﻰ وﺟﻮد هﺬا اﻟﻌﺪد اﻟﻜﺒﻴﺮ ﻣﻦ اﺻﺪارات ﻟﻴﻨﻮآﺲ هﻮ آﻮن هﺬا اﻟﻨﻈﺎم ﻣﻔﺘﻮح اﻟﻤﺼﺪر‬ ‫وﻣﺠﺎﻧﻰ )ﻻ ﻳﺴﻤﺢ ﻟﻴﻨﻮس ﺑﺒﻴﻊ اﻟﻜﺮﻧﻞ ﻋﻠﻰ اﻻﻃﻼق( ﻣﻤﺎ ﻳﺠﻌﻞ اﻟﻌﺪﻳﺪ ﻣﻦ اﻟﺸﺮآﺎت واﻟﺠﺎﻣﻌﺎت‬ ‫واﻟﻤﻨﻈﻤﺎت ﺗﺴﺘﺨﺪﻣﻪ ﻻﻏﺮاﺿﻬﺎ اﻟﻤﺨﺘﻠﻔﻪ ‪.‬واﻟﺴﺒﺐ آﻤﺎ‬ ‫اﺳﻠﻔﻨﺎ هﻮ ان اﻟﻨﻈﺎم ﻻ ﻳﻌﺎرﺿﻪ ‪-‬اﺑﺪا‪ -‬ﻓﻰ اىﻮﻇﻴﻔﻪ ﻳﻘﻮم ﺑﻬﺎ ‪.‬‬ ‫ﻣﻦ اﻻواﻣﺮ اﻟﺸﺎﺋﻌﻪ واﻟﻤﻌﺮوﻓﻪ ﻋﻦ ﻟﻴﻨﻮآﺲ ‪ ،‬اﻧﻪ ﻳﻮﺟﺪ اﻟﻌﺪﻳﺪ واﻟﻌﺪﻳﺪ ﻣﻦ اﺻﺪاراﺗﻪ ‪.

‬وهﻰ ﺗﻌﻨﻰ رﺧﺼﻪ ‪gnu‬‬ ‫اﻟﻌﺎﻣﻪ ‪ ،‬او ‪.‬‬ .‫رﺧﺼﻪ ‪.‬‬ ‫)ﻳﻜﺘﺐ اﻟﺒﺮﻧﺎﻣﺞ اوﻻ ﺑﻠﻐﻪ ﺑﺮﻣﺠﻪ ‪-‬وهﺬﻩ هﻰ ﻧﺴﺨﻪ ال ‪ -source code‬ﺛﻢ ﺑﻌﺪ ذﻟﻚ ﻳﺤﺪث ﻟﻪ ‪ compile‬اى ﺗﺠﻤﻴﻊ‬ ‫‪-‬وهﺬﻩ هﻰ ﻧﺴﺨﻪ ال ‪ -binary‬وﻣﺎ ﻧﺤﺼﻞ ﻋﻠﻴﻪ ﻧﺤﻦ آﻤﺴﺘﺨﺪﻣﻴﻦ ‪ ،‬هﻰ اﻟﻨﺴﺨﻪ ال ‪(binary‬‬ ‫وهﺬا هﻮ ﻣﻌﻨﻰ آﻠﻤﻪ ‪ free‬اﻟﻤﻼزﻣﻪ ﻟﻤﺸﺮوع ‪ ، gnu‬اى ﻣﺘﺎﺣﻪ ﺑﺎﻟﻜﻮد اﻟﻤﺼﺪر ‪ ،‬وﻗﺪ ﺗﻜﻮن ﺑﻌﺪ‬ ‫ذﻟﻚ ﺑﻤﻘﺎﺑﻞ ﻣﺎدى او ﺣﺘﻰ ﻣﺠﺎﻧﻴﻪ ‪. GPL‬‬ ‫اﻟﻤﺼﻄﻠﺢ ‪ GPL‬ﺳﻴﻘﺎﺑﻠﻚ آﺜﻴﺮا واﻧﺖ ﺗﺘﻌﺎﻣﻞ ﻣﻊ ﻟﻴﻨﻮآﺲ وﺑﺮاﻣﺠﻪ ‪ .‬‬ ‫وﻣﺜﺎل ﻋﻠﻰ ذﻟﻚ ‪ ،‬اﻟﺸﺮآﺎت اﻟﺘﻰ ﺗﻨﺘﺞ ﻟﻴﻨﻮآﺲ ‪ ،‬ﻓﻬﺬﻩ اﻟﺸﺮآﺎت ﺗﺤﺼﻞ ﻋﻠﻰ اﻟﻜﻮد اﻟﻤﺼﺪر ﻟﻠﺒﺮاﻣﺞ‬ ‫اﻟﻤﺨﺘﻠﻔﻪ ﻣﻦ اﻣﺎآﻦ ﻣﺘﻌﺪدﻩ ‪ ،‬ﺛﻢ ﺗﻘﻮم ﺑﺎﺟﺮاء اﻟﺘﻌﺪﻳﻼت اﻟﺘﻰ ﺗﺮاهﺎ ﻣﻨﺎﺳﺒﻪ ‪ ،‬ﺛﻢ ﺗﻘﻮم ﺑﺒﻴﻊ ﻣﺎ ﻗﺎﻣﺖ‬ ‫ﺑﺎﻧﺘﺎﺟﻪ ‪. gnu general public licence‬‬ ‫وﺑﻤﻌﺮﻓﻪ ﺗﺎرﻳﺦ ال ‪ ، unix‬واﻟﺘﻄﻮر اﻟﺬى ﻣﺮت ﺑﻪ رﺧﺼﻪ ‪ ،‬ﻳﺘﻀﺢ ﻟﻨﺎ ﻣﻌﻨﻰ هﺬﻩ اﻟﺮﺧﺼﻪ ‪.‬‬ ‫وﺑﻌﺪ هﺬا آﻠﻪ ﻓﻬﻰ ﻣﻠﺰﻣﻪ ﺑﺎﺗﺎﺣﻪ ال ‪ source code‬اﻟﻨﺎﺗﺞ ﻋﻦ آﻞ اﻟﻌﻤﻠﻴﺎت اﻟﺘﻰ ﻗﺎﻣﺖ ﺑﻬﺎ ﻓﻰ‬ ‫ﺗﻌﺪﻳﻞ اﻟﺒﺮاﻣﺞ ‪.‬‬ ‫ﻓﺮﺧﺼﻪ ‪ gpl‬ﻇﻬﺮت ﺑﻈﻬﻮر ﻣﺸﺮوع ‪ gnu‬واﻟﺬى ﻇﻬﺮ ﺑﺪورﻩ آﻨﺘﻴﺠﻪ ﻟﺮﺧﺼﻪ ‪ unix‬اﻟﺼﺎدرﻩ‬ ‫ﻋﺎم ‪ 84‬واﻟﺘﻰ ﺟﻌﻠﺖ ‪ unix‬ﻣﻐﻠﻖ اﻟﻤﺼﺪر ‪.‬‬ ‫وﺗﻬﺪف رﺧﺼﻪ ‪ gpl‬اﻟﻰ اﺗﺎﺣﻪ اﻟﺒﺮاﻣﺞ ﻟﻴﺲ ﻓﻘﻂ ﻓﻰ ﺻﻮرﺗﻬﺎ اﻻﺧﻴﺮﻩ )‪ (binary‬ﺑﻞ اﻳﻀﺎ ﻣﻊ ال‬ ‫)‪ (source code‬اﻟﺨﺎص ﺑﻬﺎ ‪.‬‬ ‫وﺑﺬﻟﻚ ﺗﻌﻄﻰ رﺧﺼﻪ ‪ gpl‬ﻟﻠﻤﺴﺘﺨﺪم ﻋﺪﻩ ﺣﻘﻮق‬ ‫• ﻓﻬﻰ ﺗﺘﻴﺢ ﻟﻪ اﻟﻜﻮد اﻟﻤﺼﺪر ﻟﻼﻏﺮاض اﻟﺘﻌﻠﻴﻤﻴﻪ‬ ‫• وﺗﺴﻤﺢ ﻟﻪ ﺑﺎن ﻳﻨﺴﺦ اﻟﺒﺮاﻣﺞ‬ ‫• واﻳﻀﺎ ﺑﺎن ﻳﻌﺪل ﻓﻴﻬﺎ‬ ‫• وﺑﺎﻣﻜﺎﻧﻪ اﻋﺎدﻩ ﺑﻴﻌﻬﺎ ‪ ،‬وﻟﻜﻦ آﻞ هﺬا ﺑﺸﺮط ﺗﻮﻓﻴﺮ اﻟﻜﻮد اﻟﻤﺼﺪر ﻟﻤﺎ ﻗﺎم ﺑﻪ ﻣﻦ ﺗﻌﺪﻳﻼت ﻟﻐﻴﺮﻩ ‪.

‬اذا ﻓﺎﻧﺖ ﺗﻌﺮف وﻻ ﺗﺴﺘﻄﻴﻊ ان ﺗﻨﻔﺬ وﺗﻄﺒﻖ ‪. consol‬‬ ‫وﻏﻴﺮهﺎ ﻣﻦ اﻟﺘﺴﺄوﻻت وﻋﻼﻣﺎت اﻻﺳﺘﻔﻬﺎم ‪.‬‬ ‫اﻟﻤﺴﺄﻟﻪ ﻟﻴﺴﺖ آﻤﺎ ﻳﺘﺼﻮر اﻟﺒﻌﺾ ‪ .‬‬ ‫ﻓﺎﻟﺘﻌﺎﻣﻞ ﻣﻊ ﻟﻴﻨﻮآﺲ وﻋﺎﻟﻤﻪ ﻣﺨﺘﻠﻒ ‪ ،‬ذﻟﻚ ﻻن ﺗﺎرﻳﺦ اﻟﻨﻈﺎم وﻃﺮﻳﻘﻪ ﻧﺸﺌﺘﻪ و ﺗﻄﻮﻳﺮﻩ ﻻ ﺑﺪ ان‬ ‫ﺗﻠﻘﻰ ﺑﻈﻼﻟﻬﺎ ﻋﻠﻰ ﺗﻔﻜﻴﺮك وﻧﻈﺮﺗﻚ اﻟﻰ ﻋﺎﻟﻢ ال ‪ -Information Technology.‬‬ ‫ان آﺎن هﺬا هﻮ اﻟﻮﺿﻊ ﻣﻊ ﻣﺎﻳﻜﺮوﺳﻮﻓﺖ ‪ ،‬ﻓﺎﻟﻮﺿﻊ ﻓﻰ ﻟﻴﻨﻮآﺲ ﻳﺨﺘﻠﻒ‬ ‫ﻓﺎن آﻨﺖ ﻻ ﺗﻌﻠﻢ ‪ .IT‬ﻋﻤﻮﻣﺎ ‪.‬‬ ‫ﻟﻴﺲ هﺬا ﻓﺤﺴﺐ ‪ ،‬ﺗﺮﻳﺪ اﻳﻀﺎ ان ﺗﻄﺒﻖ ﻣﺎ ﺗﻌﻠﻤﺘﻪ ﻋﻠﻰ ﻣﺸﺮوﻋﻚ اﻟﺼﻐﻴﺮ ذو اﻟﻤﻴﺰاﻧﻴﻪ اﻟﻤﺤﺪودﻩ ‪،‬‬ ‫ﻃﺒﻖ اﻳﻀﺎ وﺑﺪون ﻣﻘﺎﺑﻞ وﻻ ﺗﺮاﺧﻴﺺ ‪.‬ﻟﻬﺬا ﻓﻠﻴﺲ ﻣﻦ اﻟﻐﺮﻳﺐ ‪ ،‬اﻟﻘﻮل اﻧﻚ ﻣﻊ ﻣﺎﻳﻜﺮوﺳﻮﻓﺖ ﻗﺪ ﺗﺤﻮﻟﺖ‬ ‫ﻣﻦ ﻣﺠﺮد ‪ user‬اﻟﻰ ‪ ، super user‬ﻓﺎﻧﺖ ﺗﺤﻔﻆ ﻓﻘﻂ ﻣﺎ اﻟﺬى ﺗﻔﻌﻠﻪ هﺬﻩ اﻻداﻩ وآﻴﻒ ‪.‬‬ ‫اﻣﺎ ﻣﻊ ﻣﺎﻳﻜﺮوﺳﻮﻓﺖ ﻓﺎﻧﺖ ﻓﻰ ﻣﻌﺰل ﻋﻦ آﻞ هﺬا ‪ ،‬واﻧﺖ ﻓﻘﻂ اﻟﺨﻄﻮﻩ اﻻﺧﻴﺮﻩ ﻓﻰ ﻋﻤﻠﻴﻪ اﻻﻧﺘﺎج‬ ‫اﻟﻌﻤﻼﻗﻪ اﻟﺘﻰ ﺗﺪرﻋﻠﻴﻬﺎ اﻟﻤﻠﻴﺎرات ‪ .‬‬ ‫اﻳﻀﺎ ﻟﻤﺎذا هﺬا اﻟﻌﻨﺎء ﻓﻰ ﺣﻔﻆ آﻞ هﺬﻩ اﻻواﻣﺮ واﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻟﺸﺎﺷﻪ اﻟﺴﻮداء ‪.‬‬ ‫اذا اﻧﺖ ﻣﻊ اﻟﻮﻗﺖ وﺑﺴﻬﻮﻟﻪ ﻳﻤﻜﻨﻚ ان ﺗﻜﻮن ﻣﻄﻮر )‪ (developer‬ﻟﻬﺬﻩ اﻻﻧﻈﻤﻪ او ﻣﺒﺮﻣﺞ‬ ‫‪ (programer‬او ﺻﺎﻧﻊ ﻟﺒﺮوﺗﻮآﻮل او ﺣﺘﻰ ﻟﻨﻈﺎم ﺗﺸﻐﻴﻞ ﺟﺪﻳﺪ ‪.‬‬ ‫وﻟﻠﺮد ﻋﻠﻰ ﻣﻦ ﺗﺪور ﻓﻰ رأﺳﻪ هﺬﻩ اﻻﺳﺌﻠﻪ ‪ ،‬ﻳﺠﺐ ان‬ ‫• اوﻻ اﻟﻨﻈﺮ ﻣﻦ زاوﻳﻪ اﻟﻔﺮد وﻣﺎ ﻳﺠﻨﻴﻪ ﻣﻦ ﺗﻌﻠﻢ ﻟﻴﻨﻮآﺲ‬ ‫• ﺛﺎﻧﻴﺎ اﻟﻨﻈﺮ ﻣﻦ زاوﻳﻪ اﺻﺤﺎب اﻟﻌﻤﻞ‬ ‫• ﺛﺎﻟﺜﺎ اﻟﻨﻈﺮ ﻣﻦ زاوﻳﻪ ﺑﻼدﻧﺎ وﻣﺼﺎﻟﺤﻬﺎ‬ ‫ﻓﺎوﻻ ﻣﻦ ﻧﺎﺣﻴﻪ اﻟﻔﺮد ‪.‬‬ ‫ﻗﺪ ﻳﺘﺴﺄل اﻟﺒﻌﺾ ‪ ،‬ﻟﻤﺎذا اﻟﺒﺪاﻳﻪ ﻣﻦ ﺟﺪﻳﺪ ﻣﻊ ﻧﻈﺎم ﺗﺸﻐﻴﻞ ﻟﻢ ﻧﺘﻌﻮد ﻋﻠﻴﻪ ﻣﺜﻞ ‪ ، windows‬وﻳﺤﺘﺎج‬ ‫ﻟﻮﻗﺖ اﻃﻮل ﻣﻦ ﻏﻴﺮﻩ ﻟﻜﻰ ﻧﺘﻌﻠﻤﻪ ‪.‬‬ ‫ف ﻟﻴﻨﻮآﺲ آﻤﺎ هﻮ ﻣﻌﺮوف ﻋﻨﻪ ﺻﻨﻌﻪ اﻟﻤﺒﺮﻣﺠﻮن ﺑﺎﻧﻔﺴﻬﻢ وﻻﻧﻔﺴﻬﻢ ‪.‬‬ .‫ﻟﻤﺎذا ﻟﻴﻨﻮآﺲ ‪.‬‬ ‫وﺑﺎﻟﺘﺎﻟﻰ ﻓﻼ ﺗﺘﻮﻗﻊ ﺑﻌﺪ ﻣﺮور ﻋﺪﻩ ﺳﻨﻮات ان ﻗﺪراﺗﻚ وﻣﻌﻠﻮﻣﺎﺗﻚ اﻟﺸﺨﺼﻴﻪ ﺳﺘﺘﺴﺎوى ﻓﻰ اﻟﺤﺎﻟﺘﻴﻦ‬ ‫)ﻣﻊ ﻟﻴﻨﻮآﺲ وﻣﻊ وﻳﻨﺪوز(‪.‬‬ ‫ﻟﻴﺲ هﺬا ﻓﻘﻂ ‪ ،‬ﺑﻞ ﻓﺤﺘﻰ ﺑﻌﺪ دراﺳﻪ ﻣﻨﺎهﺞ ﻣﺎﻳﻜﺮوﺳﻮﻓﺖ ﻻ ﺗﺴﺘﻄﻴﻊ ﺗﻄﺒﻴﻖ هﺬﻩ اﻟﺪراﺳﺎت ‪-‬ﺑﺸﻜﻞ‬ ‫ﻗﺎﻧﻮﻧﻰ‪ -‬اﻻ ﺑﻌﺪ دﻓﻊ اﻟﺘﺮاﺧﻴﺺ ‪.‬ان ﻣﺎ ﻳﻔﻌﻠﻪ ﻟﻴﻨﻮآﺲ ﻳﻔﻌﻠﻪ اﻳﻀﺎ وﻳﻨﺪوز ‪ ،‬ﻓﻬﺬﻩ اﻟﻨﻈﺮﻩ ﻗﺎﺻﺮﻩ‬ ‫ﺟﺪا ‪.‬ﻓﻘﻂ اﺗﺼﻞ ﺑﺎﻻﻧﺘﺮﻧﺖ واﺣﺼﻞ )وﺑﺪون ﻣﺒﺎﻟﻐﻪ( ﻋﻠﻰ اﻟﻤﺌﺎت ﻣﻦ اﻟﻜﺘﺐ ‪.‬‬ ‫ﻓﻌﺪم اﻣﺘﻼك ﺗﻜﺎﻟﻴﻒ هﺬﻩ اﻟﺘﺮاﺧﻴﺺ )وهﻮ ﻣﺎ ﻳﻬﻢ ﻣﺎﻳﻜﺮوﺳﻮﻓﺖ( ﻳﻌﻨﻰ ان دراﺳﺘﻚ ﻟﻤﻨﺎهﺠﻬﺎ ﻗﺪ ﺗﻌﺘﺒﺮ‬ ‫اآﺘﺴﺎب ﻣﻌﻠﻮﻣﺎت ﻋﺎﻣﻪ ﺟﺪﻳﺪﻩ وﻣﻤﺘﺎزﻩ وﻟﻜﻦ ﺑﻤﺒﻠﻎ آﺒﻴﺮ ‪.

‬‬ ‫ﻓﺎﻻن ﻳﻮﺟﺪ ﻧﻈﺎم ﺗﺸﻐﻴﻞ اﻗﻮى ﻣﻦ وﻳﻨﺪوز و‪ ،.‬‬ ‫ﻓﺒﻌﺪ دﺧﻮل اﻟﺸﺨﺺ اﻟﻰ ﻣﺠﺎل ال‪ IT‬وﻳﺘﻌﺮف ﻋﻠﻰ اﻣﻜﺎﻧﻴﺎت ﻟﻴﻨﻮآﺲ واﺣﺘﻴﺎﺟﺎت اﻟﺴﻮق ‪ ،‬ﻓﺘﺮاﻩ‬ ‫ﻗﺪ ﺗﺤﻮل ﺑﻌﺪ ذﻟﻚ اﻟﻰ ‪.‫ﺛﺎﻧﻴﺎ اﻟﻨﻈﺮ ﻣﻦ زاوﻳﻪ ﺻﺎﺣﺐ اﻟﻌﻤﻞ ‪.‬‬ ‫)ﻓﻰ اﻟﺤﻘﻴﻘﻪ ﺗﻢ آﺘﺎﺑﻪ هﺬا اﻟﻜﺘﺎب ﺑﻮاﺳﻄﻪ ‪ open office‬وهﻮ اﻻوﻓﻴﺲ اﻟﺮﺋﻴﺴﻰ ﻣﻊ ﻣﻌﻈﻢ اﺻﺪارات ﻟﻴﻨﻮآﺲ ‪ ،‬ﺑﻞ‬ ‫اﻧﻨﻰ اﺳﺘﺨﺪم اﻟﻨﺴﺨﻪ اﻟﺘﻰ ﺗﻌﻤﻞ ﺗﺤﺖ وﻳﻨﺪوز !! وﻳﻤﻜﻨﻚ ﺗﻨﺰﻳﻞ هﺬا اﻻوﻓﻴﺲ ﻣﺠﺎﻧﺎ ﻣﻦ ‪( www. linux‬‬ .‬‬ ‫هﺬا ﺑﺎﻻﺿﺎﻓﻪ اﻟﻰ آﻮن اﻟﺒﺮاﻣﺞ اﻟﻤﻜﺘﺒﻴﻪ اﻟﺘﻰ ﺗﺴﺘﺨﺪم ﻏﺎﻟﺒﺎ )ﻣﺜﻞ ال ‪ (Office‬واﻟﺨﺎﺻﻪ ﺑﻠﻴﻨﻮآﺲ‬ ‫ﻣﺸﺎﺑﻬﻪ ﻟﺘﻠﻚ اﻟﺘﻰ ﺗﻨﺘﺠﻬﺎ ﻣﺎﻳﻜﺮوﺳﻮﻓﺖ ‪..،.،.org‬‬ ‫وﺣﺠﻤﻪ اآﺒﺮ ﺑﻘﻠﻴﻞ ﻣﻦ ‪ 60‬ﻣﻴﺠﺎ ﺑﺎﻳﺖ ‪..‬‬ ‫ﺑﻞ ﻋﻠﻰ اﻟﻌﻜﺲ ‪ ،‬ﻳﻨﺘﺸﺮ ﻟﻴﻨﻮآﺲ وﺑﺴﺮﻋﻪ وﺧﺎﺻﻪ ﺑﻴﻦ اﻟﻤﺘﺨﺼﺼﻴﻦ واﻟﺨﺒﺮاء ﻓﻰ ﻣﺠﺎل ال‪.‬ﻓﻠﻤﺎذا ﻳﺪﻓﻊ ﺻﺎﺣﺐ اﻟﻌﻤﻞ اﻻن‬ ‫اﻻﻻف ﻟﻠﺤﺼﻮل ﻋﻠﻰ ﻧﻈﺎم ﻳﻮﺟﺪ اﻻﻗﻮى ﻣﻨﻪ واﻻرﺧﺺ ‪. IT‬‬ ‫وهﺬﻩ ﻋﻦ ﺗﺠﺮﺑﻪ وﻣﻼﺣﻈﻪ ﺷﺨﺼﻴﻪ ‪.‬‬ ‫اى ان ﻣﺎﻳﻜﺮوﺳﻮﻓﺖ ﺗﺘﺮآﻨﺎ اﻻن ﻧﻨﺴﺦ ﺑﺮاﻣﺠﻬﺎ ﻟﻨﻜﻮن ﻧﺤﻦ ﻏﺪا ورﻗﻪ اﻟﻀﻐﻂ)اﻟﺘﻰ ﻻ ﺗﻀﻐﻂ ﺑﻬﺎ هﻰ(‬ ‫ﻋﻠﻰ اﺻﺤﺎب اﻟﻌﻤﻞ ‪.‬‬ ‫ﺑﻌﺪ ذﻟﻚ هﻞ ﺗﻌﺘﻘﺪ ان اى ﺻﺎﺣﺐ ﻋﻤﻞ ﻋﻨﺪﻣﺎ ﻳﺮﻳﺪ ﺗﺤﺪﻳﺚ ﻋﻤﻠﻪ ‪ ،‬هﻞ ﺳﻴﺎﺗﻰ ﻣﺜﻼ ﺑﺎل ‪Office‬‬ ‫اﻟﺨﺎص ﺑﺸﺮآﻪ ‪ Novell‬او ‪ Macintoch‬ﻣﺜﻼ ‪..‬او ﺑﻤﻌﻨﻰ اﺧﺮ اﺗﺮك‬ ‫ﻟﻠﻌﻤﻴﻞ ﻗﺮش اﻟﻴﻮم واﺣﺼﻞ ﻏﺪا ﻣﻨﻪ ﻋﻠﻰ ﻣﺎﺋﻪ ﻗﺮش ‪.‬‬ ‫وﻟﻜﻦ اﻻﻣﺮ ﻣﻊ ﻟﻴﻨﻮآﺲ ﻣﺨﺘﻠﻒ ﻧﻮﻋﺎ ﻣﺎ ﺑﺎﻟﻨﺴﺒﻪ ﻟﺼﺎﺣﺐ اﻟﻌﻤﻞ ‪..‬وﻣﺠﺎﻧﻰ ‪ ..‬‬ ‫ﻓﻤﻌﻈﻤﻨﺎ ﻋﻨﺪﻣﺎ ﺑﺪأ ﺗﻌﻠﻢ اﻟﻜﻤﺒﻴﻮﺗﺮ آﺎﻧﺖ ﺑﺪاﻳﺘﻪ ﻣﻊ ‪ Windows‬و ‪ ، Microsoft Office‬واﻟﻌﺪﻳﺪ‬ ‫ﻣﻨﺎ ﻣﺘﻘﻦ اﻟﻌﻤﻞ ﺑﻬﻤﺎ ‪.openoffice.‬‬ ‫اﻻﺟﺎﺑﻪ ‪ ،‬ﻃﺒﻌﺎ ﺳﻴﺎﺗﻰ ﺑﻤﺎ هﻮﻣﻌﺮوف ﻟﻠﺠﻤﻴﻊ وﻣﺎ ﺗﻌﻠﻤﻪ اﻟﺠﻤﻴﻊ ‪ ،‬وﺑﺬﻟﻚ ﻓﻬﻮ اﻻن ﻻ ﻳﻤﻠﻚ اﻟﻘﺮار ‪.‬‬ ‫هﻞ ﺳﺄﻟﺖ ﻧﻔﺴﻚ ﻳﻮﻣﺎ ﻟﻤﺎذا ﺗﺘﺮآﻨﺎ ﺷﺮآﻪ ﻣﺎﻳﻜﺮوﺳﻮﻓﺖ ﻧﻨﺴﺦ ﺑﺮاﻣﺠﻬﺎ اﻟﺘﻰ ﺗﻜﺒﺪهﺎ ﺑﻼ ﺷﻚ ﺧﺴﺎﺋﺮ‬ ‫آﺒﻴﺮﻩ ﻇﺎهﺮﻳﺎ ؟‬ ‫ﻣﻊ اﻧﻬﺎ ﻓﻰ اﺳﺘﻄﺎﻋﺘﻬﺎ ‪-‬ﻋﻦ ﻃﺮﻳﻖ ﻣﺒﺮﻣﺠﻴﻬﺎ‪ -‬ان ﺗﺠﻌﻞ ﺑﺮاﻣﺠﻬﺎ ﻏﻴﺮ ﻗﺎﺑﻠﻪ ﺣﺘﻰ ﻟﻔﻜﺮﻩ اﻟﻨﺴﺦ !!‬ ‫واﻻﺟﺎﺑﻪ ‪ :‬هﺬﻩ هﻰ اﻟﻄﺮﻳﻘﻪ اﻟﺠﺪﻳﺪﻩ واﻟﻐﻴﺮ ﺗﻘﻠﻴﺪﻳﻪ ﻓﻰ اﻟﺒﻴﻊ وآﺴﺐ اﻟﻌﻤﻴﻞ ‪.‬‬ ‫وﻻ ﻳﺘﺼﻮر اﻟﺒﻌﺾ ان اﻟﻜﺜﻴﺮ ﺳﻴﻌﺰف ﻋﻦ ﺗﻌﻠﻢ ﻟﻴﻨﻮآﺲ وﺑﺎﻟﺘﺎﻟﻰ ﺳﻴﻀﻄﺮ اﺻﺤﺎب اﻟﻌﻤﻞ اﻟﻰ‬ ‫اﻟﺮﺟﻮع ﺛﺎﻧﻴﻪ اﻟﻰ وﻳﻨﺪوز ‪.

99. with discounts.99. as listed on 2001-02-03.99.‫ دوﻻر‬849‫ واﻟﺘﻰ ﺗﺒﺪأ ب‬windows server ‫ﻻﺣﻆ اﺳﻌﺎر‬ (linux for dummies) ‫اﺳﺘﻌﺮﺗﻬﺎ ﻣﻦ اﻟﻜﺘﺎب اﻟﺠﻴﺪ‬ . Proxy Server 2.(‫ﺗﺤﺘﻪ‬ .092. Microsoft Visual Sourcesafe 6.Plus Game Pack--$19.99. Windows NT Server Prod Upgrade From BackOffice SBS Small Bus Server (25-client)--$558.5 NT (Add-On 5-CAL)--$264.99.99. the hardware for Linux is MUCH cheaper.99.0 CD--$469. ‫ﻟﻴﻨﻮآﺲ ﻓﻰ اﻟﻌﺪﻳﺪ ﻣﻦ اﻻﻋﻤﺎل‬ ‫ال‬ ‫ ﺗﻮﻓﻴﻖ اﻟﺮﺑﻴﻌﺔ واﻟﺘﻲ ﺳﺒﻖ ﻧﺸﺮهﺎ ﻓﻲ ﺟﺮﻳﺪة "اﻟﺮﻳﺎض" ﺑﻌﻨﻮان "ﻟﻴﻨﻜﺲ هﻮ اﻟﺤﻞ" اﻟﺘﻲ ﺗﺤﺪث ﺑﻬﺎ ﻋﻦ‬. ‫ اﻟﺘﻰ ﻗﺪ ﻳﺴﺘﻌﺎض ﻋﻨﻬﺎ ب ﻟﻴﻨﻮآﺲ‬.0 Professional Edition with Plus Pack--$525.99.99. Site Server Commerce 3.99. Systems Management Server 2. All prices are in $USA. Adobe Photoshop 6.‫اﻟﻤﺼﺪر ﻣﻦ ﻣﻘﺎﻟﺔ اﻟﺪآﺘﻮر د‬ .‫ ﺳﻨﻮات ﻓﻲ ﺣﺎﻟﺔ اﻋﺘﻤﺎد ﻧﻈﺎم ﻟﻴﻨﻜﺲ ﺑﺪﻳﻼ ﻋﻦ ﻧﻈﺎم اﻟﻮﻳﻨﺪوز‬10 ‫ ﻣﻠﻴﺎرات رﻳﺎل ﺳﻌﻮدي ﺧﻼل‬7 ‫اﻣﻜﺎﻧﻴﺔ ﺗﻮﻓﻴﺮ ﻣﺒﻠﻎ ﻳﺼﻞ اﻟﻰ‬ .99. Microsoft Internet Security and Acceleration Server --$664.. ‫ ﻳﻌﻨﻰ ﺑﺒﺴﺎﻃﻪ اﺳﺘﻨﺰاف ﺑﻼدﻧﺎ اآﺜﺮ واآﺜﺮ‬، ‫ﺗﻌﺎﻣﻠﻨﺎ ﻣﻊ اﻟﺸﺮآﺎت اﻟﻤﺤﺘﻜﺮﻩ اﻟﻌﺎﻟﻤﻴﻪ‬ ‫ وﻗﺪ ﻧﺪﻓﻊ‬، ‫ ﻗﺪ ﻧﺤﺼﻞ ﻋﻠﻴﻬﺎ ﻣﺠﺎﻧﺎ‬، ‫ وهﺬﻩ اﻟﺨﺪﻣﺎت ﻣﺜﻞ ﻏﻴﺮهﺎ‬، ‫وﻣﺎ ﻧﺤﺼﻞ ﻋﻠﻴﻪ ﻟﻴﺲ اﻻ ﺧﺪﻣﺎت‬ .229.99. Microsoft .amazon.279. Microsoft Windows 2000 Advanced Server Upgrade (25-client)--$3. 2001/2/3 ‫ ﺑﺘﺎرﻳﺦ‬amazon.99.com. ‫وهﺬﻩ ﺑﻌﺾ اﻻﺳﻌﺎر ﻟﻠﺒﺮاﻣﺞ اﻟﺘﺠﺎرﻳﻪ‬ .0 (25-client)--$4. Microsoft SQL Server 2000 Standard Edition (5-client)--$1.0--$551.128. Microsoft SQL Server 2000 Standard Edition (1-user License)--$4. Visual C++ 6.99. ‫ﺛﺎﻟﺜﺎ اﻟﻨﻈﺮ ﻣﻦ زاوﻳﻪ ﺑﻼدﻧﺎ‬ . here are some prices for commercial software as listed at www.com ‫واﻟﺬى ﻗﺪ اﺳﺘﻌﺎرهﺎ هﻮ اﻳﻀﺎ ﻣﻦ ﻣﻮﻗﻊ‬ online bookstore ‫ هﻮ اول ﻣﻮﻗﻊ ﺗﻢ اﻧﺸﺄﻩ ﻟﺒﻴﻊ اﻟﻜﺘﺐ ﻋﻠﻰ ﺷﺒﻜﻪ اﻻﻧﺘﺮﻧﺖ‬، ‫ ﻣﻮﻗﻊ اﻣﺎزون هﺬا‬: ‫)ﻣﻼﺣﻈﻪ‬ ‫ اﺳﺘﻄﺎع ﺗﻮﻓﻴﺮ ﺣﻮاﻟﻰ‬2001‫ ﺑﻤﺪﻳﻨﻪ ﺳﻴﺎﺗﻞ اﻻﻣﺮﻳﻜﻴﻪ وﻋﻨﺪﻣﺎ ﺗﺤﻮل اﻟﻰ ﻟﻴﻨﻮآﺲ ﻋﺎم‬1995 ‫واﻟﺬى ﺗﺎﺳﺲ ﻓﻰ ﻳﻮﻟﻴﻮ‬ (‫ﻣﻠﻴﻮن دوﻻر ﺳﻨﻮﻳﺎ‬27 To get a flavour of the value of Linux. Microsoft Exchange 2000 Server (5-client)--$1. ‫ﻓﻰ ﺳﺒﻴﻠﻬﺎ ﻣﻠﻴﺎرات‬ ‫ ﻣﻠﻴﺎرات رﻳﺎل اذا اﻋﺘﻤﺪت ﻋﻠﻰ ﻧﻈﺎم‬7 ‫ ﻓﺒﻠﺪ ﻣﺜﻞ اﻟﺴﻌﻮدﻳﻪ ﻳﻤﻜﻨﻬﺎ ﺗﻮﻓﻴﺮ‬، ‫وهﺬا ﺑﺎﻟﻔﻌﻞ ﻣﺎ ﻳﺤﺪث‬ . Microsoft Visual Basic Enterprise 6. ‫وﻳﻜﻔﻴﻨﺎ ﻓﻘﻂ هﺬا اﻟﻤﺜﺎل‬ ‫ واﻳﻀﺎ اﻟﻤﺌﺎت ﻣﻦ اﻟﺒﺮاﻣﺞ اﻟﺘﻰ ﺗﻌﻤﻞ‬، ‫)ﻳﻼﺣﻆ ان هﺬا اﻟﻤﺒﻠﻎ اﻟﺬى ﺳﻴﺘﻢ ﺗﻮﻓﻴﺮﻩ ﻧﺎﺗﺞ ﻋﻦ ﺗﺮاﺧﻴﺺ اﺳﺘﺨﺪام وﻳﻨﺪوز‬ .99 .0 (10-Cals)--$994.99.121.99.443. Roughly equivalent Linux software is included on almost any Linux CD (but with no restrictions on the number of clients). Microsoft FrontPage 2000--$129. Microsoft Outlook 2000 (1-client)--$94. Microsoft Office 2000 Standard (1-client)--$384. since Linux can run all services on a single server.0--$886. Microsoft BackOffice Small Business Server 4.0 with Plus Pack--$1.99.99. Microsoft Windows 2000 Server (5-client)--$848. In addition.

.

command line‬‬ ‫وﺑﻨﻈﺮﻩ اآﺜﺮ دﻗﻪ ﻓﻬﻰ اﻟﻮاﺟﻬﻪ اﻟﺘﻰ ﻧﺘﻌﺎﻣﻞ ﺑﻬﺎ ﻣﻊ اﻟﻜﺮﻧﻞ ‪ ،‬اﻟﻤﺴﺌﻮل اﻟﺮﺋﻴﺴﻰ ﻋﻦ ادارﻩ ال‬ ‫‪ hardware‬و ال‪ software‬ﺑﺎﻟﻨﻈﺎم‪.‬‬ ‫آﻴﻒ ﻧﺘﻌﺎﻣﻞ ﻣﻌﻬﺎ‬ ‫ﺻﻴﻐﻪ اﻻواﻣﺮ اﻟﺬى ﺗﺪﺧﻞ اﻟﻰ ال‪ shell‬ﻣﺘﻌﺪدﻩ‬ ‫‪ 1‬ﻓﺎﺑﺴﻄﻬﺎ آﺘﺎﺑﻪ اﻻﻣﺮ ﻣﻨﻔﺮدا ﻣﺜﻞ اﻻﻣﺮ ‪) ls‬ﻟﻌﺮض اﻟﻤﺤﺘﻮﻳﺎت( ﺛﻢ ﺿﻐﻂ زر ‪enter‬‬ ‫‪ 2‬وﻗﺪ ﻳﺎﺗﻰ ﻣﻊ اﻻﻣﺮ ﺣﺮف ‪ ،‬اﻟﻬﺪف ﻣﻨﻪ ﺗﻌﺪﻳﻞ اﻟﺼﻴﻐﻪ اﻻﺳﺎﺳﻴﻪ ﻟﻬﺬا اﻻﻣﺮ ﻓﺎﻻﻣﺮ ‪ ls‬اذا اﺗﻰ‬ ‫ﻣﻌﻪ ﺣﺮف ‪ L‬ﻣﺜﻼ ﻓﺎﻧﻪ ﻳﻐﻴﻴﺮ ﺷﻜﻞ اﻟﻨﺎﺗﺞ ﻣﻦ هﺬا اﻻﻣﺮ ‪ ،‬وهﺬا اﻟﺤﺮف ﻳﺴﻤﻰ "ﺧﻴﺎر" او ‪option‬‬ ‫وﻳﻜﻮن ﻣﺴﺒﻮق ﻓﻰ اﻟﻐﺎﻟﺐ ﺑﺎﻟﻌﻼﻣﻪ "‪ ، dash " -‬ﻣﺜﻞ ‪ ls -l‬او ‪.‬‬ ‫اﻟﺨﻴﺎرات‪ options‬اﻟﺨﻴﺎر هﻮﻣﺎﻳﻠﻰ اﻻﻣﺮ آﻤﺎ ذآﺮﻧﺎ ‪ ،‬وﻻﺑﺪ ان ﻳﺴﺒﻘﻪ ﻋﻼﻣﻪ )‪dash (-‬‬ ‫ﻓﻰ اﻏﻠﺐ اﻻﺣﻴﺎن ‪.‫ال ‪ ) shell‬ﻧﻈﺮة ﻋﺎﻣﻪ ( ‪. ls -L‬‬ ‫‪ 3‬وﻗﺪ ﻳﺎﺗﻰ ﺑﺎﻻﺿﺎﻓﻪ اﻟﻰ هﺬا ال‪ option‬ﻣﻠﻒ )ﻳﻜﻮن ﺑﻤﺜﺎﺑﻪ اﻟﻬﺪف اﻟﺬى ﺳﻴﻨﻔﺬ ﻋﻠﻴﻪ اﻻﻣﺮ(‬ ‫وﻳﺴﻤﻰ ‪argument‬‬ ‫اذا ﻓﻌﻨﺪﻧﺎ ﺛﻼث ﺻﻴﻎ ﻟﻼواﻣﺮ اﻟﺘﻰ ﺗﺪﺧﻞ اﻟﻰ ال‪shell‬‬ ‫اﻻﻣﺮ وﺣﺪﻩ‬ ‫اﻻﻣﺮ ﻣﻊ ‪option‬‬ ‫اﻻﻣﺮ ﻣﻊ ‪ option‬و ‪argument‬‬ ‫‪ls‬‬ ‫‪ls -l‬‬ ‫‪ls -L file‬‬ ‫وﻃﺒﻌﺎ ﺑﻌﺪ آﻞ ﺻﻴﻐﻪ ﻻ ﺑﺪ ﻣﻦ اﻟﻀﻐﻂ ‪. enter‬‬ ‫ﻟﻴﺲ هﺬا آﻞ ﺷﻰ ‪ ،‬ﻓﺎل‪ shell‬او ال‪ command line‬ﻟﻬﺎ ﻗﻮاﻋﺪ ﻻ ﺑﺪ ان ﺗﺮاﻋﻰ ﻣﻦ هﺬﻩ اﻟﻘﻮاﻋﺪ‬ ‫اﻟﻤﺴﺎﻓﺎت‬ ‫ﺣﺎﻟﻪ اﻻﺣﺮف‬ ‫ﻓﺒﻴﻦ اﻻﻣﺮ و ال ‪ option‬وﺑﻴﻦ هﺬا اﻻﺧﻴﺮ وال ‪ argument‬ﻻ ﺑﺪ ﻣﻦ‬ ‫وﺿﻊ ﻣﺴﺎﻓﺎت )آﻤﺎ هﻮ واﺿﺢ ﺑﺎﻟﻤﺜﺎل(‬ ‫او ﻣﺎ ﻳﺴﻤﻰ ‪ ، case sensitive‬ﻓﺎﻟﺤﺮف ال‪ capital‬ﻟﻪ ﻣﻌﻨﻰ ﻏﻴﺮ اﻟﺤﺮف‬ ‫ال ‪ small‬واﻏﻠﺐ اﻟﺘﻌﺎﻣﻞ ﻣﻊ ال‪shell‬ﺑﺎﻟﺤﺮوف ‪ ، small‬ﻓﺎﻻﻣﺮ )‪ (ls‬هﻮ‬ ‫اﻣﺮ ﺗﻌﺮﻓﻪ ال‪ shell‬وﻣﻦ ﺛﻢ ﻋﻨﺪﻣﺎ ﻳﺪﺧﻞ ﻟﻬﺎ ﻓﺎﻧﻬﺎ ﺗﻨﻔﺬﻩ ‪ ،‬اﻣﺎ اﻻﻣﺮ )‪ (LS‬ﻓﻬﻰ‬ ‫ﻻ ﺗﻌﺮﻓﻪ وﻟﻦ ﺗﺘﻌﺎﻣﻞ ﻣﻌﻪ‪.‬‬ .‬‬ ‫ال‪ shell‬هﻰ اﻟﺸﺎﺷﻪ اﻟﺴﻮداء اﻟﺘﻰ ﻧﺘﻌﺎﻣﻞ ﻣﻦ ﺧﻼﻟﻬﺎ ﻣﻊ اﻟﻨﻈﺎم ﻓﻤﻦ ﺧﻼﻟﻬﺎ ﻧﻤﺮر ﻟﻪ اﻻواﻣﺮ وﻣﻦ‬ ‫ﺧﻼﻟﻬﺎ اﻳﻀﺎ ﻧﺴﺘﻘﺒﻞ ﻣﻨﻪ ﻧﺘﻴﺠﻪ هﺬﻩ اﻻواﻣﺮ‪ ،‬وﻟﻬﺬا ﻓﻬﻰ ﺗﺴﻤﻰ اﻳﻀﺎ ال ‪.

‬‬ ‫)هﻨﺎك ‪ 6‬ﺷﺎﺷﺎت ‪ consol‬ﺗﺒﺪأ ﻣﻦ ‪ F1‬وﺣﺘﻰ ‪ ، F6‬اﻣﺎ ‪ F7‬ﻓﺘﺮﺟﻊ ﺑﻚ‬ ‫ﺛﺎﻧﻴﻪ اﻟﻰ ال ‪(graphic‬‬ .‬‬ ‫ﻣﺜﻼ اذا اردت اﻻﻣﺮ ‪ mkdir‬ﻓﻤﺎﻋﻠﻴﻚ اﻻ آﺘﺎﺑﻪ اﻻﺣﺮف ‪ mkd‬وﻣﻦ ﺛﻢ‬ ‫ﺳﺘﻜﻤﻞ ﻟﻚ ال‪ shell‬ﺑﻘﻴﻪ اﻻﻣﺮ اذا ﺿﻐﻄﺖ ‪ tab‬ﻣﺮﺗﻴﻦ ‪. shell‬‬ ‫‪space‬‬ ‫ﺑﻪ ﻳﺘﻢ اﻟﻔﺼﻞ ﺑﻴﻦ اﻻﻣﺮ واﻟﺨﻴﺎر اﻟﺬى ﻳﺘﺒﻌﻪ ‪.‬‬ ‫‪enter‬‬ ‫ﺑﻌﺪ آﺘﺎﺑﻪ اﻻﻣﺮ هﺬا اﻟﻤﻔﺘﺎح هﻮ اﻟﺬى ﻳﺨﺒﺮ ال‪ shell‬اﻧﻚ اﻧﺘﻬﻴﺖ ﻟﻜﻰ ﺗﺒﺪأ‬ ‫ﻓﻰ اﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻻﻣﺮ ‪.‬‬ ‫‪Shift+pageup‬‬ ‫ﻋﻨﺪ اﻣﺘﻼء اﻟﺸﺎﺷﻪ اﻣﺎﻣﻚ واردت اﺳﺘﺮﺟﺎع اﻟﺠﺰء اﻟﺬى اﺧﺘﻔﻰ ﺑﺎﻻﻋﻠﻰ‬ ‫ﻓﻴﻤﻜﻨﻚ ﺑﻬﺬﻳﻦ اﻟﻤﻔﺘﺎﺣﻴﻦ رؤﻳﺘﻬﺎ‪.‬‬ ‫‪up or down‬‬ ‫‪alt+ctrl+F1‬‬ ‫اﻻﺳﻬﻢ ﻓﻮق وﺗﺤﺖ ‪ ،‬هﺬﻩ اﻳﻀﺎ ﺗﻈﻬﺮ ﺧﺎﺻﻴﻪ ﻣﻦ اﻟﺨﺼﺎﺋﺺ اﻟﻬﺎﻣﻪ ﻟﻞ‬ ‫‪ shell‬ﻓﺎل ‪ up arrow‬ﻳﺎﺗﻰ ﻟﻚ ﺛﺎﻧﻴﻪ ﺑﺎﻻﻣﺮاﻟﺴﺎﺑﻖ دون اﻟﺤﺎﺟﻪ ﻻﻋﺎدﻩ‬ ‫آﺘﺎﺑﺘﻪ ﺛﺎﻧﻴﻪ )ﺧﺎﺻﻪ ﻋﻨﺪﻣﺎ ﻳﻜﻮن اﻻﻣﺮ ﻃﻮﻳﻞ( ‪.‫اهﻢ اﻟﻤﻔﺎﺗﻴﺢ ﻟﻠﺘﻌﺎﻣﻞ ﻣﻊ ال‪.‬‬ ‫‪ shift+pagedown‬ﻋﻜﺲ اﻟﺬى ﻗﺒﻠﻪ ‪.‬‬ ‫اذا آﻨﺖ ﺗﻌﻤﻞ ﻋﻠﻰ اﻟﺸﺎﺷﻪ ال‪ graphic‬واردت اﻻﻧﺘﻘﺎل اﻟﻰ ال ‪consol‬اى‬ ‫اﻟﺸﺎﺷﻪ اﻟﺴﻮداء‪ ،‬ﻓﺒﻬﺬﻩ اﻟﻤﻔﺎﺗﻴﺢ اﻟﺜﻼﺛﻪ ﻳﻤﻜﻦ اﻻﻧﺘﻘﺎل اﻟﻴﻬﺎ ‪.‬‬ ‫‪Tab‬‬ ‫ﻳﻌﺪ هﺬا اﻟﻤﻔﺘﺎح ﻣﻦ اهﻢ اﻟﻤﻔﺎﺗﻴﺢ‪ ،‬ﻓﻬﻮ ﻳﻈﻬﺮ ﺧﺎﺻﻴﻪ ﻣﻦ اهﻢ ﺧﺼﺎﺋﺺ ال‬ ‫‪ shell‬اﻻ وهﻰ اآﻤﺎل اﻻﻣﺮ ‪.‬‬ ‫‪back space‬‬ ‫ﻋﻨﺪ آﺘﺎﺑﻪ اﻣﺮ او ﺧﻴﺎر ﺧﻄﺄ ﻳﺘﻢ ﺑﻪ ﻣﺴﺢ اﻟﺤﺮوف اﻟﺨﺎﻃﺌﻪ ‪.‬‬ ‫وﻳﻼﺣﻆ‬ ‫اﻧﻪ اذا ﺗﻢ اﻟﻀﻐﻂ ﻋﻠﻰ ال‪ tab‬ﺑﺪون آﺘﺎﺑﻪ اى اﺣﺮف ﻓﺴﻴﻌﺮض ﻋﻠﻴﻚ اﻟﻨﻈﺎم ﻋﺮض آﻞ‬ ‫اﻻواﻣﺮ اﻟﻤﻮﺟﻮدﻩ ﺑﻪ ‪) ،‬ﻳﻤﻜﻨﻚ ﺗﺠﺮﺑﻪ هﺬﻩ اﻟﻤﻼﺣﻈﻪ( ‪.‬‬ ‫اﻣﺎ ان آﺎن هﻨﺎك اآﺜﺮ ﻣﻦ اﻣﺮ ﻳﺒﺪأ ب ‪) mkd‬ﻣﺜﻼ ‪ mkdir‬و ‪mkdev‬‬ ‫ﻓﺴﻴﺘﻢ ﻋﺮﺿﻬﻢ اﻣﺎﻣﻚ ﻟﻜﻰ ﺗﺨﺘﺎر اﻻﻣﺮ اﻟﻤﻨﺎﺳﺐ ‪.

‫ال ‪ shell‬ﻻول ﻣﺮﻩ ‪.localdomain‬‬ .‬‬ ‫ﺑﺪاﻳﻪ وﻋﻨﺪﻣﺎ ﺗﺪﺧﻞ اﻟﻰ ال‪ shell‬ﺳﻮف ﺗﺠﺪ ﺷﻜﻞ اﻟﻤﺤﺚ ‪ prompt‬آﺎﻟﺘﺎﻟﻰ‬ ‫‪[username@localhost userhome] $‬‬ ‫• ﻓﻤﻦ اﻟﻴﺴﺎر‪ -‬اﺳﻢ اﻟﻤﺴﺘﺨﺪم اﻟﺬى دﺧﻠﺖ ﺑﻪ اﻟﻰ اﻟﻨﻈﺎم)وﻋﺎدﻩ ﻳﺘﻢ ﺗﺴﺠﻴﻞ هﺬا اﻟﻤﺴﺘﺨﺪم ﺑﻌﺪ اﺗﻤﺎم‬ ‫ﻋﻤﻠﻴﻪ اﻟﺘﻨﺰﻳﻞ(‬ ‫• ﺛﻢ ﻳﻠﻴﻪ اﺳﻢ اﻟﻨﻈﺎم وهﻮ هﻨﺎ ﻳﺴﻤﻰ ‪، localhost‬وهﺬﻩ اﻟﺘﺴﻤﻴﻪ هﻰ ال ‪ default‬ﻋﻨﺪ اﻟﺘﻨﺰﻳﻞ ‪،‬‬ ‫وﻳﻼﺣﻆ اﻧﻪ ﻳﻔﺼﻞ ﺑﻴﻨﻬﻤﺎ ﻋﻼﻣﻪ @‬ ‫• ﺛﻢ ﺑﻌﺪ ذﻟﻚ اﺳﻢ اﻟﻤﺠﻠﺪ اﻟﺬى ﻳﺘﻢ اﻟﻌﻤﻞ ﻓﻴﻪ اﻻن اى ال ‪ ، working directory‬وهﻮ هﻨﺎ ال‬ ‫‪ home‬اﻟﺨﺎص ﺑﺎﻟﻤﺴﺘﺨﺪم ‪ ،‬وﻻ ﻳﻮﺟﺪ ﺑﻴﻦ اﺳﻢ اﻟﻨﻈﺎم ‪ localhost‬وﺑﻴﻦ ﻣﻜﺎن اﻟﻌﻤﻞ اى‬ ‫ﻋﻼﻣﻪ ‪ ،‬ﻓﻘﻂ) ﻣﺴﺎﻓﻪ ‪(white space‬‬ ‫• وهﺬﻩ اﻟﺒﻴﺎﻧﺎت اﻟﺜﻼﺛﻪ ﻣﺤﺼﻮرﻩ داﺧﻞ ﻗﻮﺳﻴﻦ ] [‬ ‫• ﺛﻢ ﺑﻌﺪ ذﻟﻚ ﻋﻼﻣﻪ اﻟﺪوﻻر ‪ $‬واﻟﺘﻰ ﺗﻌﻨﻰ ان اﻟﻤﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻨﻈﺎم هﻮ اﻟﻤﺴﺘﺨﺪم اﻟﻌﺎدى وﻟﻴﺲ‬ ‫ﻣﺪﻳﺮ اﻟﻨﻈﺎم ‪Adminstrator‬‬ ‫هﺬﻩ ﺑﺒﺴﺎﻃﻪ اول ﻣﺎ ﺳﻴﻘﺎﺑﻠﻚ ﻋﻨﺪﻣﺎ ﺗﺘﻌﺎﻣﻞ ﻣﻊ ال ‪shell‬‬ ‫وﺑﺪاﻳﻪ اﻻواﻣﺮ اﻟﺘﻰ ﺳﻨﺘﻌﻠﻤﻬﺎ هﻰ آﻴﻔﻴﻪ ﺗﻐﻴﺮ هﺬﻩ اﻟﺒﻴﺎﻧﺎت‬ ‫ﻓﺎﻻﻣﺮ ‪ su‬وﻇﻴﻔﺘﻪ ﺗﻐﻴﻴﺮ او ﺗﺒﺪﻳﻞ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ‪ ،‬اﻧﺖ ﻗﺪ دﺧﻠﺖ ﻟﻠﻨﻈﺎم )‪ (login‬آﻤﺴﺘﺨﺪم ﻋﺎدى‬ ‫وﻟﻜﻰ ﺗﻘﻮم ﺑﺎداء ﻣﻬﻤﻪ ﻣﻦ ﻣﻬﺎم اﻟﻤﺪﻳﺮ )‪ (Adminstrator‬ﻓﻼ ﺑﺪ ان ﺗﺘﺤﻮل اﻟﻰ اﻟﻤﺴﺘﺨﺪم ‪root‬‬ ‫وﻳﺘﻢ هﺬا اﻟﺘﺤﻮل ﻋﻦ ﻃﺮﻳﻖ اﻻﻣﺮ ‪su‬‬ ‫ﻃﺒﻖ اﻻﻣﺮ اﻻن آﻤﺎ هﻮ ﻣﻮﺿﺢ‬ ‫‪[username@localhost userhome] $ su‬‬ ‫ﺳﻮف ﺗﺠﺪ اﻟﻤﺤﺚ ‪ prompt‬ﻗﺪ ﻇﻬﺮ ﻓﻰ اﻟﺴﻄﺮ اﻟﺜﺎﻧﻰ ﻳﺴﺎﻟﻚ ﻋﻦ آﻠﻤﻪ اﻟﺴﺮ اﻟﺨﺎﺻﻪ ﺑﺎﻟﻤﺪﻳﺮ‬ ‫‪) root‬واﻟﺘﻰ ﺳﺒﻖ ﺗﺤﺪﻳﺪهﺎ اﺛﻨﺎء اﻟﺘﻨﺰﻳﻞ(‬ ‫وﻣﺎ ﻋﻠﻴﻚ اﻻ ادﺧﺎﻟﻬﺎ ‪ ،‬وﻳﻼﺣﻆ اﻧﻬﺎ ﻟﻦ ﺗﻜﺘﺐ ﻋﻠﻰ اﻟﺸﺎﺷﻪ ‪ ،‬وهﺬا ﻣﻦ اﺟﺮاءات اﻻﻣﺎن ﺑﺤﻴﺚ ﻟﻮ‬ ‫ﻧﻈﺮ ﺷﺨﺺ اﻟﻰ اﻟﺸﺎﺷﻪ ﻓﻠﻦ ﻳﻌﺮف ﻣﻤﺎ ﺗﺘﻜﻮن آﻠﻤﻪ اﻟﺴﺮ‪.‬‬ ‫*ﺑﻌﺪ ذﻟﻚ ﻣﺎ ﺳﺘﻼﺣﻈﻪ ان اﺳﻢ اﻟﻤﺴﺘﺨﺪم اﻟﻤﻮﺟﻮد ﻋﻠﻰ اﻟﻴﺴﺎر ﻗﺪ ﺗﺤﻮل اﻟﻰ ‪ ، root‬وﻟﻜﻦ ﻣﺎ زال‬ ‫ﻳﻌﻤﻞ ﻓﻰ ال‪ home directory‬اﻟﺨﺎص ﺑﺎﻟﻤﺴﺘﺨﺪم ‪ .‬وﻟﻜﻰ ﺗﺘﺤﻮل اﻟﻰ ال‪home directory‬‬ ‫اى ﺑﻴﺖ ال ‪ root‬ﺳﺘﻀﻴﻒ ﺑﻌﺪ اﻻﻣﺮ ‪ su‬ﻋﻼﻣﻪ ) ‪ ( -‬اى ال ‪ ، dash‬ﻓﻴﻜﻮن ﺷﻜﻞ اﻻﻣﺮ‪.su -‬‬ ‫)ﻃﺒﻌﺎ اذا ﺿﻐﻄﺖ ﻋﻠﻰ زر ال ‪ tab‬ﻣﺮﺗﻴﻦ ﺳﺘﻼﺣﻆ ان ﻋﺪد اﻻواﻣﺮ اﻟﻤﺘﺎﺣﻪ اﻻن ﻟﻞ ‪ root‬اآﺜﺮ‬ ‫ﻣﻦ اﻟﺘﻰ آﺎﻧﺖ ﻣﺘﺎﺣﻪ ﻟﻠﻤﺴﺘﺨﺪم(‬ ‫*ﺳﺘﻼﺣﻆ اﻳﻀﺎ ان اﻟﻌﻼﻣﻪ ‪ $‬ﻗﺪ ﺗﺤﻮﻟﺖ اﻟﻰ اﻟﻌﻼﻣﻪ ‪ ، #‬دﻟﻴﻞ ان اﻟﻤﺴﺘﺨﺪم اﻟﺤﺎﻟﻰ هﻮ اﻟﻤﺪﻳﺮ ‪root‬‬ ‫ﺛﺎﻧﻰ هﺬﻩ اﻻواﻣﺮ هﻮ اﻻﻣﺮ ‪ hostname‬وهﺬا اﻻﻣﺮ ﻟﻪ اﺳﺘﻌﻤﺎﻻن‬ ‫اﻻول اذا آﺘﺒﺘﻪ ﻣﻨﻔﺮدا اى ‪ hostname‬ﻓﻴﺨﺒﺮك ﺑﺎﺳﻢ اﻟﻨﻈﺎم )وال ‪ deafult‬هﻮ‬ ‫‪( localhost.

.‫اﻟﺜﺎﻧﻰ ‪ ،‬وهﻮ ﻣﺎ ﻧﺮﻳﺪﻩ ‪ ،‬آﺘﺎﺑﻪ اﻻﻣﺮ ﻳﺘﺒﻌﻪ اﻻﺳﻢ اﻟﺠﺪﻳﺪ ﻟﻠﻨﻈﺎم ﻓﻤﺜﻼ ‪hostname elnajeeb‬‬ ‫ﻓﻤﺎ ﺳﻴﺤﺪث هﻮ ان اﺳﻢ اﻟﻨﻈﺎم ﺳﻴﺘﻐﻴﺮ ﻣﻦ ‪ localhost‬اﻟﻰ ‪) elnajeeb‬وﻳﻼﺣﻆ آﻤﺎ هﻮ ﻣﻮﺿﺢ‬ ‫ﺑﺎﻟﻤﺜﺎل ﻻ ﺑﺪ ﻣﻦ آﻮﻧﻚ ‪<#> root‬ﻻن ﻣﺪﻳﺮ اﻟﻨﻈﺎم هﻮ ﻓﻘﻂ ﻣﻦ ﻳﻤﻠﻚ ﺗﻐﻴﻴﺮ اﺳﻢ اﻟﻨﻈﺎم(‬ ‫*وﻳﻼﺣﻆ هﻨﺎ ان اﻻﺳﻢ ﻟﻦ ﻳﺘﻐﻴﺮ ﻓﻰ اﻟﺤﺎل )ﻻن ال‪ shell‬ﻟﻬﺎ ﻣﻠﻔﺎت ﺗﻬﻴﺌﻪ ﺗﻘﺮأهﺎ ﻗﺒﻞ اﻟﺪﺧﻮل‬ ‫ﻟﻠﻨﻈﺎم( وﻟﻬﺬا ﻻ ﺑﺪ ﻣﻦ اﻟﺨﺮوج ﻣﻦ ال ‪ shell‬وﻳﺘﻢ ذﻟﻚ ﺑﺎﻻﻣﺮ ‪ logout‬او ﺑﺒﺴﺎﻃﻪ ﺑﻀﻐﻂ‬ ‫‪ctrl+d‬‬ ‫ﺛﺎﻟﺚ هﺬﻩ اﻻواﻣﺮ هﻮ اﻻﻣﺮ ‪ ، cd‬وهﺬا اﻻﻣﺮ اﺧﺘﺼﺎر ل ‪ change directory‬اى ارﻳﺪ ﺗﻐﻴﻴﺮ‬ ‫ﻣﻜﺎن اﻟﻌﻤﻞ‪.‬‬ ‫اﻣﺎ اﻟﻌﻼﻣﻪ]~[ ﻓﺎﻧﻬﺎ ﺗﻌﻨﻰ ال ‪ home dir‬ﻟﻠﻤﺴﺘﺨﺪم ‪،‬اى اﻟﻤﺠﻠﺪ ال ‪ deafult‬اﻟﺬى ﻳﻘﻒ ﻋﻠﻴﻪ‬ ‫اﻟﻤﺴﺘﺨﺪم ﺑﻌﺪ دﺧﻮﻟﻪ ﻟﻠﻨﻈﺎم ‪ ،‬ﻣﺜﺎل ﻋﻠﻰ ذﻟﻚ اذا ذهﺒﺖ اﻟﻰ ﻣﻜﺎن ﺑﺎﻟﻨﻈﺎم ووﻗﻔﺖ ﻋﻠﻴﻪ وﻟﻨﻘﻞ ﻣﺜﻼ‬ ‫‪cd /var/mail‬‬ ‫ﻓﻠﻜﻰ ﺗﺮﺟﻊ ﺛﺎﻧﻴﻪ اﻟﻰ ال ‪ home‬اﻟﺨﺎص ﺑﻚ ﻓﺒﺪﻻ ﻣﻦ ان ﺗﻜﺘﺐ ‪cd /home/your home‬‬ ‫ﻓﻘﻂ اآﺘﺐ ~ ‪ cd‬ﺳﺘﺠﺪ ﻧﻔﺴﻚ ﻗﺪ رﺟﻌﺖ اﻟﻰ ﻣﺠﻠﺪك ال ‪).‬‬ ‫)ﻳﻤﻜﻨﻚ ﺗﺠﺮﺑﻪ هﺬا اﻻﻣﺮ ﻻآﺘﺸﺎف اﻟﻨﻈﺎم وﻣﺠﻠﺪاﺗﻪ اﻟﻤﺨﺘﻠﻔﻪ(‬ ‫*وهﺬا اﻻﻣﺮ ‪ cd‬ﻟﻪ رﻣﺰان ﻳﺴﺘﺨﺪﻣﺎن ﻣﻌﻪ هﻢ } ‪{ ~ ، .‬‬ ‫وﻋﻨﺪﻣﺎ ﺗﺪﺧﻞ ﻟﻠﻨﻈﺎم ﻓﺎﻧﻪ ﻳﺪﺧﻞ ﺑﻚ اﻟﻰ ال ‪ home dir‬اى ﻣﺠﻠﺪ اﻟﺒﻴﺖ ﻟﻠﻤﺴﺘﺨﺪم اﻟﺬى دﺧﻠﺖ ﺑﻪ‬ ‫)ﻃﺒﻌﺎ اﻟﻜﻼم هﻨﺎ ﻟﻞ ‪ root‬ﻻن اﻟﻤﺴﺘﺨﺪم اﻟﻌﺎدى ﻟﻴﺲ ﻟﻪ اﻻ ان ﻳﺪﺧﻞ ﻓﻘﻂ ﺑﺎﺳﻤﻪ وﺑﺎﻟﺘﺎﻟﻰ ﺳﻴﺪﺧﻞ‬ ‫اﻟﻰ ﻣﻨﺰﻟﻪ هﻮ ‪(user home dir‬‬ ‫وﻻى ﺳﺒﺐ ان اردت ﺗﻐﻴﻴﺮ ﻣﻜﺎن اﻟﻌﻤﻞ ﻣﺎ ﻋﻠﻴﻚ اﻻ آﺘﺎﺑﻪ اﻻﻣﺮ ﻳﺘﺒﻌﻪ اﻟﻤﻜﺎن اﻟﺬى ﺗﺮﻳﺪ اﻟﺬهﺎب‬ ‫اﻟﻴﻪ ‪ ،‬ﻣﺜﻞ‬ ‫‪ cd /home‬ﻓﻔﻰ هﺬا اﻟﻤﺜﺎل اﻟﺒﺴﻴﻂ ﺳﺘﻨﺘﻘﻞ ﻣﻦ ‪ /home/user‬اﻟﻰ ‪ /home‬اى ﺳﻨﻘﻒ ﻋﻠﻰ‬ ‫اﻟﻤﻜﺎن اﻟﺬى ﻳﺤﻮى آﻞ ﻣﺠﻠﺪات اﻟﻤﺴﺘﺨﺪﻣﻴﻦ‪ ،‬ﻃﺒﻌﺎ هﺬا اﻻﻣﺮ هﺎم ﻟﻞ ‪ root‬ﻻﻧﻪ ﻳﻤﻜﻦ اﻧﺠﺎز ﻣﻬﻤﻪ‬ ‫داﺧﻞ ﻣﺠﻠﺪ ﻣﺴﺘﺨﺪم ﻣﻌﻴﻦ ﺛﻢ اﻟﺬهﺎب اﻟﻰ ﻣﺠﻠﺪ ﻣﺴﺘﺨﺪم اﺧﺮ ﻻﻧﺠﺎز ﻣﻬﻤﻪ اﺧﺮى هﻨﺎك‪.‬‬ ‫ﻓﺎل ‪ double dot‬ﺗﻌﻨﻰ اﻟﻤﺠﻠﺪ اﻟﺬى ﻳﻌﻠﻮ اﻟﻤﺠﻠﺪ اﻟﺤﺎﻟﻰ )اى اﻟﺘﺤﺮك ﺧﻄﻮﻩ ﻻﻋﻠﻰ( وﻳﺴﻤﻰ‬ ‫‪ ، parent dir‬ﻣﺜﺎل ‪cd .. home‬ﻳﻤﻜﻦ اﻳﻀﺎ ﺑﻜﺘﺎﺑﻪ اﻻﻣﺮ ‪cd‬‬ ‫وﺣﺪﻩ اﻟﺬهﺎب اﻟﻰ ال ‪( home‬‬ .

‫ﻣﻠﺨﺺ‬ ‫‪su‬‬ ‫‪hostname‬‬ ‫‪cd‬‬ ‫‪logout‬‬ ‫ﻟﺘﻐﻴﻴﺮ اﻟﻤﺴﺘﺨﺪم ﺳﻮاء ﻣﻦ ﻣﺴﺘﺨﺪم ﻟﻤﺪﻳﺮ‪ ،‬اوﻣﻦ ﻣﺴﺘﺨﺪم ﻟﻤﺴﺘﺨﺪم اﺧﺮ‪.‬‬ ‫ﻟﻠﺨﺮوج ﻣﻦ ال ‪.‬‬ ‫ﻟﻠﺘﻨﻘﻞ ﺑﻴﻦ ﻣﺠﻠﺪات اﻟﻨﻈﺎم ‪.‬‬ ‫ﻟﻌﺮض اﺳﻢ اﻟﻨﻈﺎم او ﻟﺘﻐﻴﻴﺮﻩ ‪. shell‬‬ .

‬‬ ‫‪rm -2‬‬ ‫ﺻﻴﻐﺘﻪ ‪rm file‬‬ ‫وﻇﻴﻔﺘﻪ إﻟﻐﺎء اﻟﻤﻠﻒ ‪ rm filename‬ﺳﻴﻠﻐﻰ اﻟﻤﻠﻒ ‪.‫‪basic command‬‬ ‫ﺑﻌﺪ ذﻟﻚ ﻧﺘﻌﺮض ﻟﻼواﻣﺮ اﻻﺳﺎﺳﻴﻪ اﻟﺘﻰ ﻳﺠﺐ ان ﺗﻜﻮن ﻣﻠﻤﺎ ﺑﻬﺎ ﻟﻠﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻨﻈﺎم‬ ‫أوﻻ اواﻣﺮاﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻤﻠﻔﺎت ‪.‬‬ ‫‪cat > file‬‬ ‫ﻟﻬﺬا اﻻﻣﺮ ﻋﺪﻩ وﻇﺎﺋﻒ‬ ‫*ﻓﺎﻻﻣﺮ ‪ cat‬ﻳﺴﺘﺨﺪم ﻟﻘﺮأة ﻣﺤﺘﻮى ﻣﻠﻒ واﺣﺪ ﻓﻘﻂ ﻋﻠﻰ اﻟﺸﺎﺷﻪ )ﻳﻌﺮض ﻋﻠﻰ اﻟﺸﺎﺷﻪ دون ان‬ ‫ﺗﺘﻤﻜﻦ ﻣﻦ اﻟﺘﻐﻴﻴﺮﻓﻴﻪ( ‪.‬ﻳﻼﺣﻆ ان اﻟﻤﻠﻒ ان ﻟﻢ ﻳﻜﻦ ﻣﻮﺟﻮد ﻣﻦ اﻻﺳﺎس ﻓﺒﻌﺪ هﺬا اﻟﻤﺜﺎل اﻟﺴﺎﺑﻖ ﺳﺘﺠﺪ ان‬ ...‬‬ ‫‪touch -1‬‬ ‫‪touch file‬‬ ‫ﺻﻴﻐﺘﻪ‬ ‫‪touch [option] file‬‬ ‫هﺬا اﻻﻣﺮ ﺧﺎص ﺑﺎﻧﺸﺎء اﻟﻤﻠﻔﺎت ‪ ،‬ﻣﺜﺎل ‪ touch filename‬ﺳﻴﻨﺸﺄ اﻟﻤﻠﻒ اﻟﻤﺴﻤﻰ‪filename‬‬ ‫*)اﻻﻣﺮ ‪ touch‬ﻓﻰ اﻻﺳﺎس ﻳﻐﻴﺮ اﻟﻮﻗﺖ اﻟﺨﺎص ﺑﺎﻧﺸﺎء اﻟﻤﻠﻒ ‪ ،‬ﻓﺎن اﻧﺸﺄﺗﻪ اﻣﺲ ﻓﻴﻤﻜﻦ ﺗﻌﺪﻳﻠﻪ‬ ‫ﻟﻴﻈﻬﺮ اﻧﻪ ﻗﺪ ﺗﻢ اﻧﺸﺎﺋﻪ اﻟﻴﻮم( ﻣﺜﺎل ‪ touch existfile‬ﻓﺎن اﻟﻤﻠﻒ ‪ existfile‬اﻟﻤﻔﺘﺮض وﺟﻮدﻩ‬ ‫ﺳﻠﻔﺎ ﺳﻴﺘﻐﻴﺮ ﺗﺎرﻳﺦ اﻧﺸﺄﻩ اﻟﻰ اﻟﻮﻗﺖ اﻟﺤﺎﻟﻰ ‪. filename‬‬ ‫‪cat -3‬‬ ‫‪cat file‬‬ ‫ﺻﻴﻐﺘﻪ‬ ‫‪cat file1 file2 file3. cat filename‬‬ ‫* وﻟﻜﻦ وﻇﻴﻔﺘﻪ اﻻﺳﺎﺳﻴﻪ هﻰ ﺳﻠﺴﻠﻪ اﻟﻤﻠﻔﺎت ‪ concatinate‬اى دﻣﺞ اﻟﻤﻠﻒ اﻻول ﻣﻊ اﻟﺜﺎﻧﻰ ﻣﻊ‬ ‫اﻟﺜﺎﻟﺚ ‪ .‬واﻇﻬﺎر ﻣﺤﺘﻮى اﻟﺜﻼﺛﻪ ﻣﻌﺎ ﻋﻠﻰ اﻟﺸﺎﺷﻪ ‪،‬‬ ‫ﻓﻠﻮ ﻋﻨﺪك ﺛﻼث ﻣﻠﻔﺎت او اآﺜﺮ وﺗﺮﻳﺪ ان ﺗﻌﺮﺿﻬﻢ آﻠﻬﻢ ﻣﺮﻩ واﺣﺪﻩ ﻋﻠﻰ اﻟﺸﺎﺷﻪ ‪ ،‬دون ان ﻳﺘﺄﺛﺮ‬ ‫ﻣﺤﺘﻮى اى واﺣﺪا ﻣﻨﻬﻢ ﺑﺎﻻﺧﺮ ارﺑﻄﻬﻢ ﻣﻌﺎ ﻓﻰ ﺳﻠﺴﻠﻪ ﻋﻦ ﻃﺮﻳﻖ اﻻﻣﺮ ‪ ، cat‬ﻣﺜﺎل‬ ‫‪cat file1 file2 file3‬‬ ‫* اﻳﻀﺎ ﻳﺴﺘﺨﺪم ﻟﻠﻜﺘﺎﺑﻪ داﺧﻞ اﻟﻤﻠﻒ وذﻟﻚ ﺑﺎﺿﺎﻓﻪ اﻟﺮﻣﺰ > او اﻟﻤﺴﻤﻰ ‪ ، redirection‬ﻣﺜﺎل‬ ‫‪ cat > file‬ﻓﺘﺠﺪ اﻟﻤﺤﺚ ‪ prompt‬ﻗﺪ ﻇﻬﺮ ﻓﻰ اﻟﺴﻄﺮ اﻟﺜﺎﻧﻰ ﻳﻨﺘﻈﺮ ﻣﻨﻚ ادﺧﺎل ﻣﺎ ﺗﺮﻳﺪ‬ ‫آﺘﺎﺑﺘﻪ ‪ ،‬وﺑﻌﺪاﻟﻜﺘﺎﺑﻪ ﻓﻘﻂ إﺿﻐﻂ ‪ enter‬ﺛﻢ ‪ ctrl+d‬ﻟﻜﻰ ﻳﺤﻔﻆ ﻣﺎ آﺘﺒﺖ داﺧﻞ اﻟﻤﻠﻒ وﻳﺨﺮج اﻟﻰ ال‬ ‫‪ shell‬ﺛﺎﻧﻴﻪ ‪).....

‫اﻟﻤﻠﻒ ﻗﺪ أﻧﺸﺄ‪ ،‬اى ان ‪ cat‬ﺗﻨﺸﺄ اﻟﻤﻠﻔﺎت اﻳﻀﺎ ﺑﻬﺬﻩ اﻟﻄﺮﻳﻘﻪ(‬ ‫* ﻳﺴﺘﺨﺪم اﻳﻀﺎ ﻟﻼﺿﺎﻓﻪ ﻓﻰ ﻣﻠﻒ ﻣﻮﺟﻮد وﻣﻜﺘﻮب ﻓﻴﻪ ﻣﻦ ﻗﺒﻞ ‪ ،‬وﻟﻜﻦ ﻓﻰ هﺬﻩ اﻟﺤﺎﻟﻪ ﺳﻴﻜﻮن‬ ‫اﻟﺮﻣﺰ هﻜﺬا>> اى ﻣﻀﺎﻋﻒ وﻳﺴﻤﻰ ‪.‬‬ ‫‪tac -4‬‬ ‫آﻤﺎ هﻮ واﺿﺢ ﻓﻬﻮ ﻋﻜﺲ ‪ cat‬اى اﻧﻪ ﻳﻌﺮض اﻟﻤﻠﻒ او اﻟﻤﻠﻔﺎت وﻟﻜﻦ ﺑﻄﺮﻳﻘﻪ ﻋﻜﺴﻴﻪ ‪ ،‬اى ﻣﻦ‬ ‫اﺧﺮﻩ ﻻوﻟﻪ )ﻳﺒﺪأ ﻣﻦ اﺧﺮ ﺳﻄﺮ(‬ . append‬ﻣﺜﺎل‬ ‫اﻟﻤﻠﻒ اﻟﺬى اﻧﺸﺄﻧﺎﻩ ﻣﻦ ﻗﻠﻴﻞ واﻟﻤﺴﻤﻰ ‪ file‬ﻳﻔﺘﺮض اﻧﻨﺎ ﻗﺪ آﺘﺒﻨﺎ ﺑﻪ ﺑﻌﺾ اﻟﺒﻴﺎﻧﺎت ‪ ،‬وﻟﻜﻰ ﻻ ﻧﻤﺴﺢ‬ ‫هﺬﻩ اﻟﺒﻴﺎﻧﺎت ﻧﺴﺘﺨﺪم >> ‪ ،‬ﻻﻧﻨﺎ ان ﺟﻌﻠﻨﺎهﺎ > ﻓﻘﻂ ﻓﺴﻴﺘﻢ ﻣﺴﺢ اﻟﺒﻴﺎﻧﺎت اﻟﻤﻮﺟﻮدﻩ واﺣﻼل اﻟﺒﻴﺎﻧﺎت‬ ‫اﻟﺠﺪﻳﺪﻩ ﻣﻜﺎﻧﻬﺎ ‪.

‬وهﻜﺬا ‪ ،‬ﻣﺜﺎل‬ ‫‪) mkdir new1/new2/new3‬ﻻﺣﻆ اﻟﻔﺮق ﻓﻰ اﺳﺘﺨﺪام اﻟﻤﺴﺎﻓﺎت ﺟﻴﺪا(‬ ‫‪rmdir -2‬‬ ‫‪rmdir dir‬‬ ‫ﺻﻴﻐﺘﻪ‬ ‫‪rmdir -p dir/dir‬‬ ‫وﻇﻴﻔﺘﻪ اﻟﻐﺎء اﻟﻤﺠﻠﺪات اﻟﻔﺎرﻏﻪ )اﻟﻐﻴﺮ ﻣﺤﺘﻮﻳﻪ ﻋﻠﻰ ﻣﻠﻔﺎت داﺧﻠﻬﺎ(‬ ‫واذا ﺟﺎء ﺑﺎﻟﺨﻴﺎر ‪ -p‬ﻣﻌﻪ ﻓﻴﻠﻐﻰ اﻟﻤﺠﻠﺪات اﻟﺘﻰ ﺗﺤﻮى داﺧﻠﻬﺎ ﻣﺠﻠﺪات وﻟﻜﻦ ﺑﺸﺮط آﻮن آﻞ‬ ‫اﻟﻤﺠﻠﺪات ﻓﺎرﻏﻪ ‪.‬‬ .‬‬ ‫‪rm -3‬‬ ‫)هﻮ اﻟﺨﺎص ﺑﺎﻟﻐﺎء اﻟﻤﻠﻔﺎت( وﻟﻜﻨﻪ هﻨﺎ ﻳﻠﻐﻰ اﻟﻤﺠﻠﺪات ﺑﺸﺮط اﻗﺘﺮاﻧﻪ ﺑﺎﻟﺨﻴﺎرﻳﻦ ‪ r f-‬ﻓﻴﻜﻮن‬ ‫اﻟﻤﺜﺎل آﺎﻟﺘﺎﻟﻰ ‪) rm -r f dir1/dir2/dir3‬ﻳﻼﺣﻆ ان اﻻﻣﺮ ‪ rm‬ك ‪ deafult‬ﻳﻠﻐﻰ اﻟﻤﻠﻔﺎت‬ ‫ﻓﻘﻂ ‪ ،‬وﻟﻜﻦ ﻋﻨﺪ اﺳﺘﺨﺪام اﻟﺨﻴﺎرات ﻣﻌﻪ ﻓﻴﻤﻜﻨﻪ إﻟﻐﺎء اﻟﻤﺠﻠﺪات اﻟﺘﻰ ﺗﺤﻮى ﻣﻠﻔﺎت ‪ ،‬وﻣﻌﻨﻰ اﻟﺨﻴﺎر ‪r‬‬ ‫هﻮ ‪ recursive‬اى اﺑﺪأ اﻻﻟﻐﺎء ﻣﻦ اﺳﻔﻞ ﻻﻋﻠﻰ )ﻳﺒﺪأ ﺑﺄﻟﻐﺎء اﻟﻤﻠﻔﺎت ﺛﻢ اﻟﻤﺠﻠﺪ اﻟﺬى ﻳﺤﻮﻳﻬﻢ ﺛﻢ‬ ‫اﻟﻤﺠﻠﺪ ال‪ (parent‬وﻣﻌﻨﻰ اﻟﺨﻴﺎر ‪ f‬هﻮ ‪ force‬أى اﻟﻐﻬﻢ ﺑﺎﻟﻘﻮﻩ‪.‫ﺛﺎﻧﻴﺎ اﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻤﺠﻠﺪات ‪...‬‬ ‫‪mkdir -1‬‬ ‫‪mkdir dir‬‬ ‫ﺻﻴﻐﺘﻪ‬ ‫‪mkdir -p dir/dir‬‬ ‫‪mkdir dir1 dir2 dir3‬‬ ‫وﻇﻴﻔﺘﻪ إﻧﺸﺄء ﻣﺠﻠﺪ ‪ directory‬او ﻣﺠﻠﺪات )ﺑﺠﺎﻧﺐ ﺑﻌﻀﻬﻢ او داﺧﻞ ﺑﻌﻀﻬﻢ( ﻣﺜﺎل‬ ‫‪ mkdir newdir‬ﺳﻴﻨﺸﺄ اﻟﻤﺠﻠﺪ ‪newdir‬‬ ‫اﻣﺎ اذا اردﻧﺎ إﻧﺸﺎء ﻋﺪﻩ ﻣﺠﻠﺪات ﻓﻰ ﻧﻔﺲ اﻟﻮﻗﺖ ﻓﻴﻜﻮن ﺷﻜﻞ اﻻﻣﺮ ‪mkdir new1 new2‬‬ ‫‪ new3‬اى ﻧﻀﻊ ﺑﻴﻨﻬﻢ ﻣﺴﺎﻓﺎت‪ ،‬وﻋﻨﺪ اﺳﺘﺨﺪام ال‪ option‬اﻟﺨﻴﺎر ‪ mkdir -p‬ﺳﻴﻨﺸﺄ ﻣﺠﻠﺪ‬ ‫داﺧﻞ ﻣﺠﻠﺪ‪ ..

‫ﻧﺴﺦ اﻟﻤﻠﻔﺎت و اﻟﻤﺠﻠﺪات ‪. /file‬ﻓﻤﺎ ﺳﻴﺤﺪث هﻮ ان اﻻﻣﺮ ‪ cp‬ﺳﻴﺬهﺐ اﻟﻰ اﻟﻤﺠﻠﺪ ‪ (.... cp ..) child‬‬ ‫*اﻟﺨﻴﺎرات اﻟﺘﻰ ﺗﺎﺗﻰ ﻣﻊ ‪cp‬‬ ‫‪ -f‬واﻟﺬى ﻳﻌﻨﻰ ‪ force‬اى اﻧﻘﻞ اﻟﻤﻠﻒ او اﻟﻤﺠﻠﺪ ﺑﺪون ﻧﻘﺎش‬ ‫‪ -r or -R‬اﻻﺛﻨﻴﻦ ﺑﻨﻔﺲ اﻟﻤﻌﻨﻰ اى ‪ recursive‬وﻳﺴﺘﺨﺪم ﻟﻨﻘﻞ ﻣﺠﻠﺪ داﺧﻠﻪ ﻣﺠﻠﺪات او ﻣﻠﻔﺎت‬ ‫)ﻻﻧﻪ ﻳﺒﺪأ ﻣﻦ اﻻﺳﻔﻞ اﻟﻰ اﻻﻋﻠﻰ(‬ ‫‪ -i‬وﺗﻌﻨﻰ ﺗﻔﺎﻋﻞ ﻣﻌﻰ واﻧﺖ ﺗﻨﻘﻞ‪ ،‬وﺳﺘﺠﺪ اﻻﻣﺮ ﻳﺴﺎﻟﻚ ﻋﻦ آﻞ ﻣﻠﻒ هﻞ ﻳﻨﻘﻠﻪ ام ﻻ)هﺬا ﺑﺎﻟﻨﺴﺒﻪ‬ ‫ﻟﻨﻘﻞ ﻋﺪد ﻣﻦ اﻟﻤﻠﻔﺎت(‬ ‫‪ -p‬وﺗﻌﻨﻰ اﻧﻘﻞ اﻟﻤﻠﻒ او اﻟﻤﺠﻠﺪ ﻣﻊ اﻻﺣﺘﻔﺎظ ‪ preserve‬ﺑﻜﻞ ﺑﻴﺎﻧﺎﺗﻪ )اﻟﻤﺎﻟﻚ ‪ ،‬اﻟﺘﺼﺎرﻳﺢ ‪(..double dot‬ال‪ dot‬ﻋﻼﻣﻪ ﻋﻠﻰ‬ ‫ال‪ current dir‬اى اﻟﻤﺠﻠﺪ اﻟﺤﺎﻟﻰ‪ ،‬اﻣﺎ ال‪ double dot‬ﻓﻌﻼﻣﻪ ﻋﻠﻰ اﻟﻤﺠﻠﺪ اﻻﻋﻠﻰ ﺑﺪرﺟﻪ او‬ ‫ﺑﻤﻌﻨﻰ اﺧﺮ اﻟﻤﺠﻠﺪ اﻻﺻﻞ ﻟﻠﻤﺠﻠﺪ اﻟﺤﺎﻟﻰ( ﻓﺎﻻﻣﺮ ‪ mkdir -p parent/child‬ﺳﻴﻨﺸﺄ ﻣﺠﻠﺪ‬ ‫داﺧﻠﻪ ﻣﺠﻠﺪ ‪ ،‬اﻻن ﺗﺤﺮك اﻟﻰ اﻟﻤﺠﻠﺪ ‪ parent‬ﺑﺎﻻﻣﺮ ‪ cd parent‬واﻧﺸﺄ داﺧﻠﻪ ﻣﻠﻒ ﺑﺎﻻﻣﺮ ‪file‬‬ ‫‪ ، touch‬ﺑﻌﺪ ذﻟﻚ ﺗﺤﺮك اﻟﻰ اﻟﻤﺠﻠﺪ ‪ child‬ﺛﻢ ﻧﻔﺬ هﺬا اﻻﻣﺮ‬ ‫‪ .) parent‬وﻳﻨﻘﻞ اﻟﻤﻠﻒ‬ ‫اﻟﻤﺴﻤﻰ ‪ file‬اﻟﻰ اﻟﻤﺠﻠﺪ ‪(.‬‬ .‬‬ ‫‪cp‬‬ ‫ﺻﻴﻐﺘﻪ ‪cp [options] source target‬‬ ‫ﻳﻘﻮم اﻻﻣﺮ ‪ copy‬ﺑﻬﺬﻩ اﻟﻤﻬﻤﻪ ‪ ،‬وﻻ ﺑﺪ ﻣﻦ ﺗﺤﺪﻳﺪ )ﻣﻦ اﻳﻦ ﺳﺘﻨﺴﺦ واﻟﻰ اﻳﻦ ﺳﺘﻨﺴﺦ( ‪ ،‬ﻧﻔﺘﺮض‬ ‫ﻣﺜﻼ ان ﻓﻰ ال‪ home‬اﻟﺨﺎص ﺑﻚ‪ ،‬ﻣﻠﻒ و ﻣﺠﻠﺪ ‪ ،‬وﺗﺮﻳﺪ ﻧﺴﺦ اﻟﻤﻠﻒ ﻟﺪاﺧﻞ اﻟﻤﺠﻠﺪ ﻓﻴﻜﻮن اﻟﻤﺜﺎل‬ ‫آﺎﻟﺘﺎﻟﻰ ‪) /cp myfile mydir‬وﻳﻼﺣﻆ ان ال ‪ / slash‬ﻗﺪ ﺗﻜﺘﺐ وﻗﺪ ﻻ ﺗﻜﺘﺐ (‬ ‫هﺬا ﺑﺎﻟﻨﺴﺒﻪ ﻟﻠﻨﺴﺦ داﺧﻞ ال‪ home dir‬اﻣﺎ ﺑﺎﻟﻨﺴﺒﻪ ﻟﻠﻨﺴﺦ ﻻى ﻣﻜﺎن ﺑﺎﻟﻨﻈﺎم ﻓﻼ ﺑﺪ ﻣﻦ آﺘﺎﺑﻪ اﻟﻤﺴﺎر‬ ‫‪ path‬ﺳﻮاء ﻣﻦ اﻟﻤﻨﺴﻮخ ﻣﻨﻪ او اﻟﻴﻪ ‪ ،‬ﻓﻨﻔﺘﺮض اﻧﻚ ال‪ root‬وﺗﺮﻳﺪ ﻧﺴﺦ اﻟﻤﻠﻒ ‪ 11‬ﻣﻦ ال‬ ‫‪ home‬اﻟﺨﺎص ﺑﺎﻟﻤﺴﺘﺨﺪم ‪ user1‬اﻟﻰ ال‪ home‬اﻟﺨﺎص ﺑﺎﻟﻤﺴﺘﺨﺪم ‪ user2‬ﻓﻴﻜﻮن اﻟﻤﺜﺎل‬ ‫آﺎﻟﺘﺎﻟﻰ‬ ‫‪cp /home/user1/file /home/user2‬‬ ‫* واﻻﻣﺮ ‪ cp‬ﻳﺴﺘﺨﺪم اﻟﻌﻼﻣﺘﻴﻦ) اﻟﻨﻘﻄﻪ واﻟﻨﻘﻄﺘﻴﻦ( ‪) dot .

‬‬ .‬‬ ‫‪mv‬‬ ‫ﺻﻴﻐﺘﻪ ‪mv [options] source destination‬‬ ‫ﺑﺎﻻﻣﺮ ‪ move‬ﻳﻤﻜﻦ ﻧﻘﻞ اﻟﻤﻠﻔﺎت او اﻟﻤﺠﻠﺪات ‪ ،‬وﻳﺘﻄﻠﺐ هﺬا اﻻﻣﺮ اﻳﻀﺎ )ﻣﺼﺪر و ﻣﻜﺎن ﻳﻨﻘﻞ‬ ‫اﻟﻴﻪ( ‪، source and destination‬ﻣﺜﻞ‬ ‫‪mv dir/file /dir2‬‬ ‫ﻳﺴﺘﺨﺪم هﺬا اﻻﻣﺮ اﻳﻀﺎ ﻻﻋﺎدﻩ اﻟﺘﺴﻤﻴﻪ )وﻳﺘﻢ ذﻟﻚ ﺑﺪون ﺗﺤﺪﻳﺪ ﻣﻜﺎن ﻳﻨﻘﻞ اﻟﻴﻪ( ﻣﺜﻞ ‪mv‬‬ ‫‪filename newname‬‬ ‫*اﻟﺨﻴﺎرات )‪(options‬‬ ‫ ‪ f‬ﻣﺜﻞ اﻻﻣﺮ ‪cp‬‬‫ ‪ i‬ﻣﺜﻞ اﻻﻣﺮ ‪cp‬‬‫ﻋﺮض اﻟﻤﻠﻔﺎت واﻟﻤﺠﻠﺪات ‪.bash_profile‬‬ ‫اﻣﺎ اﻟﺼﻴﻐﻪ اﻟﺜﺎﻧﻴﻪ ﻓﻠﻌﺮض ﻣﺤﺘﻮى ﻣﺠﻠﺪ ﺑﻌﻴﻨﻪ ﻣﺜﻞ ‪ls -al dir‬‬ ‫* اﻟﺨﻴﺎرات ‪options‬‬ ‫‪ -a‬ﺗﻌﻨﻰ اﻋﺮض آﻞ اﻟﻤﺤﺘﻮﻳﺎت ﺑﻤﺎ ﻓﻴﻬﺎ ﻣﻠﻔﺎت اﻟﻨﻈﺎم )اﻟﻤﺨﻔﻴﻪ(‬ ‫‪ -L‬اﻋﺮض ﺑﺼﻴﻐﻪ ‪long format‬‬ ‫‪ -i‬اﻋﺮض ال‪inode‬‬ ‫‪dir‬‬ ‫ﻣﺜﻞ اﻻﻣﺮ ‪ ls‬ﻓﺎﻧﻪ ﻳﻌﺮض اﻟﻤﻠﻔﺎت واﻟﻤﺠﻠﺪات ‪ ،‬وﻳﺄﺧﺬ ﻧﻔﺲ ﺧﻴﺎراﺗﻪ ‪.‬‬ ‫‪ls‬‬ ‫]‪ls [options‬‬ ‫ﺻﻴﻐﺘﻪ‬ ‫‪ls [options] directory‬‬ ‫اﻟﺼﻴﻐﻪ اﻻوﻟﻰ ﻟﻌﺮض ﻣﺤﺘﻮﻳﺎت اﻟﻤﺠﻠﺪ )ﻣﻠﻔﺎت و ﻣﺠﻠﺪات( اﻟﺬى اﻗﻒ ﻋﻠﻴﻪ وﻏﺎﻟﺒﺎ ﻳﺴﺘﺨﺪم‬ ‫اﻟﺨﻴﺎرﻳﻦ ]‪ [-a -l‬ﻓﺎﻟﺨﻴﺎر ‪ L‬ﻳﻌﻨﻰ اﻋﺮض ﺑﺎﻟﺘﻔﺼﻴﻞ ‪ ،‬اﻣﺎ اﻟﺨﻴﺎر ‪ a‬ﻓﻴﻌﻨﻰ اﻋﺮض اﻟﻤﻠﻔﺎت ال‬ ‫‪ hidden‬وهﻰ ﻣﻠﻔﺎت ﻳﺘﻌﺎﻣﻞ ﻣﻌﻬﺎ اﻟﻨﻈﺎم ‪ ،‬وﺗﺒﺪأ ب‪ dot‬ﻣﺜﻞ‪.‫ﻧﻘﻞ اﻟﻤﻠﻔﺎت واﻟﻤﺠﻠﺪات ‪.

‫اواﻣﺮ ﻋﺎﻣﻪ‬ ‫‪man‬‬ ‫ﺻﻴﻐﺘﻪ ‪man comand‬‬ ‫وﻇﻴﻔﺘﻪ اﺳﺘﺪﻋﺎء ﺻﻔﺤﺎت اﻟﻤﺴﺎﻋﺪﻩ اﻟﻤﺘﺎﺣﻪ ﻋﻠﻰ ال‪ ، system‬ﻣﺜﻞ ‪ man dir‬ﻓﻴﻈﻬﺮ ﻟﻚ‬ ‫ﻣﻌﻠﻮﻣﺎت ﻋﻦ اﻻﻣﺮ وآﻴﻒ ﺗﺴﺘﺨﺪﻣﻪ ‪.‬‬ ‫‪pwd‬‬ ‫وﻇﻴﻔﻪ هﺬا اﻻﻣﺮ هﻮ اﻻﺧﺒﺎر ﻋﻦ ﻣﻜﺎن اﻟﻌﻤﻞ اﻟﺤﺎﻟﻰ او ‪، present working directory‬‬ ‫وﻳﺴﺘﺨﺪم هﺬا اﻻﻣﺮ ﻋﻨﺪ اﻻﻧﺘﻘﺎل ﻣﻦ ﻣﻜﺎن ﻻﺧﺮ ﻓﻰ اﻟﻨﻈﺎم ﻟﻌﺪﻩ ﻣﺮات وﻻ ﺗﻜﻮن ﻋﻠﻰ دراﻳﻪ اﻳﻦ‬ ‫اﻧﺖ ﺗﻤﺎﻣﺎ‪،‬‬ ‫‪whoami‬‬ ‫ﺑﻬﺬا اﻻﻣﺮ ﺗﺴﺄل اﻟﻨﻈﺎم ﻣﻦ اﻧﺎ؟ )ﻓﻰ ﺣﺎﻟﻪ آﻮﻧﻚ ‪ root‬وﺗﻨﻘﻠﺖ ﺑﻴﻦ ﻋﺪﻩ ﻣﺴﺘﺨﺪﻣﻴﻦ وﻻ ﺗﻌﺮف ﻣﻦ‬ ‫اﻧﺖ اﻻن(‬ ‫‪passwd‬‬ ‫‪passwd‬‬ ‫ﺻﻴﻐﺘﻪ آﻤﺴﺘﺨﺪم‬ ‫ﺻﻴﻐﺘﻪ ك ‪root passwd username‬‬ ‫ﻟﺘﻐﻴﻴﺮ ال ‪password‬‬ ‫ﻓﻰ اﻟﺼﻴﻐﻪ اﻻوﻟﻰ اذا آﻨﺖ ﺗﺮﻳﺪ ﺗﻐﻴﻴﺮ آﻠﻤﻪ اﻟﺴﺮ اﻟﺨﺎﺻﻪ ﺑﻚ )واﻧﺖ ‪ ، (user‬ﻓﻴﻜﺘﺐ اﻻﻣﺮ ﻣﻨﻔﺮدا‬ ‫‪ ،‬ﻓﻴﺮد ﻋﻠﻴﻚ اﻟﻨﻈﺎم وﻳﺴﺄﻟﻚ ﻋﻦ آﻠﻤﻪ اﻟﺴﺮ اﻟﺤﺎﻟﻴﻪ )ﻟﻴﺘﺎآﺪ اﻧﻚ اﻧﺖ اﻟﻤﺴﺘﺨﺪم اﻟﻔﻌﻠﻰ وﻟﻴﺲ ﻣﺴﺘﺨﺪم‬ ‫اﺧﺮ(‬ ‫ﻓﻰ اﻟﺼﻴﻐﻪ اﻟﺜﺎﻧﻴﻪ ‪ ،‬وﻋﻨﺪﻣﺎ ﻳﺮﻳﺪ ال‪ root‬ﺗﻐﻴﻴﺮ ال ‪ password‬ﻻﺣﺪ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ﻓﺎﻧﻪ ﻳﺪﺧﻞ اﺳﻢ‬ ‫ال‪ user‬اﻟﻤﺮاد ﺑﻌﺪ اﻻﻣﺮ )اﻣﺎ ﻟﻮ آﺘﺐ اﻻﻣﺮ ﻓﻘﻂ ﺑﺪون ‪ user‬ﻓﻴﻔﺘﺮض اﻟﻨﻈﺎم اﻧﻪ ﻳﺮﻳﺪ ﺗﻐﻴﻴﺮ‬ ‫‪ password‬اﻟﺨﺎﺻﻪ ﺑﻪ ‪ ،‬وﻻﻧﻪ ‪ root‬ﻓﻼ ﻳﺴﺄﻟﻪ اﻟﻨﻈﺎم ﻋﻦ ال‪ password‬اﻟﻘﺪﻳﻤﻪ(‬ ‫‪history‬‬ ‫وﻇﻴﻔﺘﻪ ﻋﺮض آﻞ اﻻواﻣﺮ اﻟﺘﻰ ادﺧﻠﻬﺎ ال‪ user‬اﻟﻰ اﻟﻨﻈﺎم )وهﻮ ﻳﺤﺘﻔﻆ ﺑﺎﺧﺮ‪1000‬اﻣﺮ ادﺧﻞ‬ ‫اﻟﻴﻪ(‬ .

‫‪clear‬‬ ‫وﻇﻴﻔﺘﻪ ﻣﺴﺢ اﻟﺸﺎﺷﻪ وارﺟﺎع ال ‪ prompt‬ﻓﻘﻂ ‪ ،‬اﻳﻀﺎ اﻟﻤﻔﺘﺎﺣﺎن‪ ctrl+L‬ﻳﻘﻮﻣﺎ ﻧﻔﺲ اﻟﻮﻇﻴﻔﻪ ‪.‬‬ ‫‪date‬‬ ‫ﺻﻴﻐﺘﻪ ‪date‬‬ ‫ﺻﻴﻐﺘﻪ ‪date MMDDHHmmCCYY‬‬ ‫وﻇﻴﻔﺘﻪ ﻋﺮض اﻟﺴﺎﻋﻪ واﻟﻴﻮم واﻟﺸﻬﺮ واﻟﺴﻨﻪ‬ ‫وﻳﺴﺘﺨﺪم اﻳﻀﺎ ﻟﻀﺒﻂ اﻟﺒﻴﺎﻧﺎت اﻟﺴﺎﺑﻘﻪ)ﻻ ﺑﺪ ان ﺗﻜﻮن ‪ (root‬وﺗﻜﻮن ﺻﻴﻐﺘﻪ )ﺷﻬﺮ‪-‬ﻳﻮم‪-‬ﺳﺎﻋﻪ‪-‬‬ ‫دﻗﻴﻘﻪ‪-‬ﺳﻨﻪ‪ -‬ﻳﻼﺣﻆ ان آﻞ ﻗﻴﻤﻪ ﻻ ﺑﺪ ان ﺗﺘﻜﻮن ﻣﻦ رﻗﻤﻴﻦ( ﻣﺜﻞ ‪date 100114002004‬‬ ‫ﻓﺎول رﻗﻤﻴﻦ ﻟﺸﻬﺮ ‪10‬ﺛﻢ ﻳﻮم ‪) 1‬ﻻﺑﺪ ﻣﻦ ال‪ 0‬ﻗﺒﻞ‪ (1‬ﺛﻢ اﻟﺴﺎﻋﻪ ‪ 2‬ﻇﻬﺮا واﻟﺪﻗﻴﻘﻪ ‪ 00‬واﻟﺴﻨﻪ‬ ‫‪2004‬‬ ‫‪cal‬‬ ‫ﺻﻴﻐﺘﻪ ‪cal‬‬ ‫ﺻﻴﻐﺘﻪ ‪cal month year‬‬ ‫ﻟﻌﺮض اﻟﺘﻘﻮﻳﻢ ‪ ، calender‬اﻟﻨﺘﻴﺠﻪ اﻟﺸﻬﺮﻳﻪ ‪.‬‬ ‫اﻟﺼﻴﻐﻪ اﻻوﻟﻰ ﻟﻌﺮض اﻟﺸﻬﺮ اﻟﺤﺎﻟﻰ ‪ ،‬اﻣﺎ اﻟﺼﻴﻐﻪ اﻟﺜﺎﻧﻴﻪ ﻓﻠﻌﺮض ﺷﻬﺮ ﻣﻌﻴﻦ ﺑﺴﻨﻪ ﻣﻌﻴﻨﻪ ‪،‬‬ ‫ﻓﻠﻌﺮض ﺷﻬﺮ ﻳﻨﺎﻳﺮ ﺳﻨﻪ ‪ 2000‬ﻣﺜﻼ ﻧﻜﺘﺐ ‪cal 1 2000‬‬ ‫واذا آﺘﺒﻨﺎ ‪ cal 2000‬ﻓﻘﻂ ﻓﺴﻴﻌﺮض آﻞ ﺷﻬﻮر ﺳﻨﻪ ‪. 2000‬‬ .

‫ﻣﻠﺨﺺ‬ ‫ﻻﻧﺸﺎء اﻟﻤﻠﻔﺎت‬ ‫‪touch‬‬ ‫‪rm‬‬ ‫‪cat‬‬ ‫‪tac‬‬ ‫ﻻﻧﺸﺎء ﻣﻠﻒ‬ ‫ﻻﻟﻐﺎء ﻣﻠﻒ‬ ‫ﻟﻘﺮأة ﻣﻠﻒ ﻣﻦ اﻋﻠﻰ ﻻﺳﻔﻞ‬ ‫ﻟﻘﺮأة ﻣﻠﻒ ﻣﻦ اﺳﻔﻞ ﻻﻋﻠﻰ‬ ‫ﻻﻧﺸﺎء اﻟﻤﺠﻠﺪات‬ ‫‪mkdir‬‬ ‫‪rmdir‬‬ ‫‪rm‬‬ ‫ﻻﻧﺸﺎء ﻣﺠﻠﺪ‬ ‫ﻻﻟﻐﺎء ﻣﺠﻠﺪ‬ ‫ﻻﻟﻐﺎء ﻣﺠﻠﺪ‬ ‫ﻟﻨﻘﻞ اﻟﻤﻠﻔﺎت واﻟﻤﺠﻠﺪات‬ ‫ﻟﻨﻘﻞ ﻣﻠﻒ او ﻣﺠﻠﺪ‬ ‫‪mv‬‬ ‫ﻟﻌﺮض اﻟﻤﺤﺘﻮﻳﺎت‬ ‫ﻟﻌﺮض ﻣﺤﺘﻮﻳﺎت ﻣﺠﻠﺪ‬ ‫‪ls‬‬ ‫ﻟﻌﺮض ﻣﺤﺘﻮﻳﺎت ﻣﺠﻠﺪ‬ ‫‪dir‬‬ ‫اواﻣﺮ ﻋﺎﻣﻪ‬ ‫‪man‬‬ ‫اﺳﺘﺪﻋﺎء ﺻﻔﺤﻪ اﻟﻤﺴﺎﻋﺪﻩ‬ ‫‪pwd‬‬ ‫ﻋﺮض ﻣﻜﺎن اﻟﻌﻤﻞ اﻟﺤﺎﻟﻰ‬ ‫‪whoami‬‬ ‫اﻻﺧﺒﺎر ﻣﻦ اﻟﻤﺴﺘﺨﺪم اﻟﺤﺎﻟﻰ‬ ‫‪passwd‬‬ ‫ﻟﺘﻐﻴﻴﺮ آﻠﻤﻪ اﻟﺴﺮ‬ ‫‪history‬‬ ‫ﻟﻌﺮض اﻻواﻣﺮ اﻟﺴﺎﺑﻘﻪ‬ ‫‪clear‬‬ ‫ﻟﻤﺴﺢ اﻟﺸﺎﺷﻪ‬ .

.

‬‬ .‬‬ ‫و ﺑﺎﻟﻨﻈﺎم ﻧﻮﻋﻴﻦ ﻣﻦ اﻟﻤﺴﺎﻋﺪﻩ اﻻوﻟﻰ هﻰ ﺻﻔﺤﺎت ال ‪manual‬‬ ‫واﻟﺜﺎﻧﻴﻪ هﻰ ﺻﻔﺤﺎت ال ‪information‬‬ ‫وﺻﻔﺤﺎت ال‪ man‬هﻰ ﻓﻰ اﻻﺳﺎس ﻣﻦ ﻧﻈﺎم اﻟﻴﻮﻧﻜﺲ ‪.‫‪linux documentation‬‬ ‫ﻓﻰ هﺬا اﻟﻔﺼﻞ ﺳﻨﺘﻌﺮف ﻋﻠﻰ‬ ‫اﻟﻤﺴﺎﻋﺪﻩ اﻟﻔﻮرﻳﻪ اﺛﻨﺎء اﻟﻌﻤﻞ ﻣﻊ اﻟﻨﻈﺎم ‪on line help‬‬ ‫اﻟﻤﺴﺘﻨﺪات واﻟﻮﺛﺎﺋﻖ اﻟﻤﻮﺟﻮدﻩ ﺑﺎﻟﻨﻈﺎم‬ ‫اﻟﻤﺴﺘﻨﺪات اﻟﻤﻮﺟﻮدﻩ ﻋﻠﻰ اﻻﻧﺘﺮﻧﺖ‬ ‫أوﻻ اﻟﻤﺴﺎﻋﺪﻩ اﻟﻔﻮرﻳﻪ ‪on line help‬‬ ‫اﻟﻤﺴﺎﻋﺪﻩ اﻟﻔﻮرﻳﻪ هﻰ اﻟﺘﻰ ﻳﻠﺠﺄ اﻟﻴﻬﺎ اﻟﻤﺴﺘﺨﺪم اﺛﻨﺎء اﻟﻌﻤﻞ ﻣﻊ اﻟﻨﻈﺎم ‪ ،‬وﺳﻤﻴﺖ ﻓﻮرﻳﻪ ﻻن‬ ‫اﻟﻤﺴﺘﺨﺪم ﻻ ﻳﺤﺘﺎج ﻟﻠﺮﺟﻮع اﻟﻰ آﺘﺐ ﺧﺎﺻﻪ ﻳﻤﻠﻜﻬﺎ وﻟﻜﻨﻪ ﻳﺴﺘﺪﻋﻴﻬﺎ وهﻮ ﺟﺎﻟﺲ ﻋﻠﻰ اﻟﺠﻬﺎز ‪،‬‬ ‫ﺑﻤﻌﻨﻰ اﺧﺮ هﻰ ﻣﺴﺎﻋﺪﻩ ﻣﻮﺟﻮدﻩ اﺳﺎﺳﺎ ﻓﻰ اﻟﻨﻈﺎم ﺗﻨﺰل ﺗﻠﻘﺎﺋﻴﺎ ﻣﻊ اﻻواﻣﺮ و اﻟﺒﺮاﻣﺞ اﻟﺘﻰ ﻳﺘﻜﻮن‬ ‫ﻣﻨﻬﺎ اﻟﻨﻈﺎم ‪. UNIX‬‬ ‫اﻣﺎ ﺻﻔﺤﺎت ال‪ info‬ﻓﻬﻰ ﻣﻦ اﻧﺸﺎء ﻣﺸﺮوع ‪.‬هﺬا ﺑﺎﻻﺿﺎﻓﻪ اﻟﻰ ﻋﺪد‬ ‫اﻻواﻣﺮ اﻟﻜﺒﻴﺮ اﻳﻀﺎ ‪. GNU‬‬ ‫وﺗﻌﺪد اﻻﻧﻮاع هﻨﺎ ﺳﺒﺒﻪ ان ﻣﺸﺮوع ‪ GNU‬ﻳﻬﺪف ﻣﻨﺬ ﻧﺸﺄﺗﻪ اﻟﻰ ﺑﻨﺎء اﻧﻈﻤﻪ ﺗﺸﻐﻴﻞ)ﻣﻌﺘﻤﺪﻩ ﻋﻠﻰ‬ ‫ﻳﻮﻧﻜﺲ( آﺎﻣﻠﻪ ﺑﺬاﺗﻬﺎ ﻻ ﺗﻌﺘﻤﺪ ﻋﻠﻰ اﻧﻈﻤﻪ اﺧﺮى ﻓﻜﺎن ﻻ ﺑﺪ ﻟﻬﺬﻩ اﻻﻧﻈﻤﻪ ﻣﻦ ﺻﻔﺤﺎت ﻣﺴﺎﻋﺪﻩ‬ ‫ﻣﺴﺘﻘﻠﻪ )وﻳﻈﻬﺮ ذﻟﻚ ﻟﻴﺲ ﻓﻘﻂ ﻓﻰ ﺻﻔﺤﺎت اﻟﻤﺴﺎﻋﺪﻩ وﻟﻜﻦ اﻳﻀﺎ ﻓﻰ ﺑﺮاﻣﺞ وادوات ﺗﻬﻴﺌﻪ وﻏﻴﺮهﺎ(‬ ‫اﻣﺎ ﺳﺒﺐ ادﻣﺎج ﺻﻔﺤﺎت ال‪ man‬هﻨﺎ ﻣﻊ وﺟﻮد ﺑﺪﻳﻞ ﻟﻪ وهﻮ )‪ (info‬ﻓﻬﻮ ‪،‬‬ ‫ اﺛﺮاء ﻧﻈﺎم اﻟﺘﺸﻐﻴﻞ ﺑﺎدوات وﺑﺮاﻣﺞ ﻣﺴﺘﻘﺮﻩ ﺑﺴﺒﺐ ﺗﻄﻮﻳﺮهﺎ ﻋﻠﻰ ﻣﺪار ﺳﻨﻮات ‪.‬‬ ‫وﻣﻊ ان اﻟﻨﻮﻋﻴﻦ ﻳﻮﻓﺮان ﻣﺴﺎﻋﺪﻩ ﻗﺪ ﺗﻜﻮن ﻣﺘﺸﺎﺑﻬﻪ ﻓﻰ اﻟﺸﻜﻞ واﻟﻤﻀﻤﻮن اﻻ إﻧﻨﺎ اﺣﻴﺎﻧﺎ ﻧﺠﺪ اﺧﺘﻼف‬ ‫او اﺗﻔﺎق ﺑﻴﻦ اﻟﻨﻮﻋﻴﻦ ‪ ،‬وهﺬا ﻣﺎ ﺳﻨﺬآﺮﻩ‬ ‫أوﺟﻪ اﻻﺧﺘﻼف ﺑﻴﻦ اﻟﻨﻮﻋﻴﻦ ‪.‬‬ ‫* ﺻﻔﺤﺎت ال‪ man‬ﻣﻜﻮﻧﻪ ﻣﻦ ﺻﻔﺤﻪ واﺣﺪﻩ وﻳﺘﻢ اﻻﻧﺘﻘﺎل ﻓﻴﻬﺎ ﻻﻋﻠﻰ واﺳﻔﻞ ﻓﻘﻂ ‪ ،‬اﻣﺎ ﺻﻔﺤﺎت ال‬ ‫‪ info‬ﻓﻬﻰ ﻣﺘﺸﻌﺒﻪ ﻳﺘﻢ اﻻﻧﺘﻘﺎل ﻓﻴﻬﺎ ﻻﻋﻠﻰ واﺳﻔﻞ )داﺧﻞ اﻟﺼﻔﺤﻪ( وﻟﻼﻣﺎم واﻟﺨﻠﻒ )اﻟﺼﻔﺤﺎت‬ ‫اﻟﺴﺎﺑﻘﻪ واﻻﺣﻘﻪ( ‪.‬‬‫ واﻳﻀﺎ ﻻ ﻧﻨﺴﻰ ان آﻞ اﻟﻤﺸﺎرآﻴﻦ ﻓﻰ ﻣﺸﺮوع ‪ GNU‬هﻢ ﻓﻰ اﻻﺳﺎس ﻣﻄﻮروا ‪ UNIX‬اﻟﻘﺪاﻣﻰ ‪،‬‬‫وهﺬﻩ اﻻدوات )آﺎﻟﻤﺴﺎﻋﺪﻩ وﻏﻴﺮهﺎ( ﻗﺪ أﻟﻔﻮهﺎ وﺗﻌﺎﻣﻠﻮا ﻣﻌﻬﺎ ﻋﻠﻰ ﻣﺪار ﺳﻨﻮات ‪.‬‬ ‫واﻟﺴﺒﺐ ﻓﻰ وﺟﻮد ﻣﺜﻞ هﺬﻩ اﻟﻤﺴﺎﻋﺪﻩ هﻮ آﻤﺎ رأﻳﻨﺎ ان آﻞ اﻣﺮ ﻟﻪ ﺧﻴﺎرات ‪ options‬ﻋﺪﻳﺪﻩ ﻗﺪ‬ ‫ﺗﺼﻞ اﻟﻰ اﻟﻌﺸﺮات اﻻﻣﺮ اﻟﺬى ﻳﺼﻌﺐ ﻣﻌﻪ ﺑﺎﻟﺘﺎآﻴﺪ ﺣﻔﻆ آﻞ هﺬﻩ اﻟﺨﻴﺎرات ‪.

‬اواﻣﺮ‪ . q‬‬ ‫* ﻟﻠﻐﺎﻟﺒﻴﻪ اﻟﻌﻈﻤﻰ ﻣﻦ اﻻواﻣﺮ ﺻﻔﺤﺎت ﻣﺴﺎﻋﺪﻩ ﻋﻨﺪ ال‪ man‬وﻋﻨﺪ ‪) info‬اى ان ﻟﻼﻣﺮ ﺻﻔﺤﺘﺎن‬ ‫واﺣﺪﻩ ﻋﻨﺪ ال‪ man‬واﻻﺧﺮى ﻋﻨﺪ ال‪ (info‬واﻻﻗﻠﻴﻪ آﻤﺎ اﺳﻠﻔﻨﺎ ﻣﻮﺟﻮدﻩ ﻓﻘﻂ ﻋﻨﺪ ال‪. info‬‬ ‫* ان آﺎﻧﺖ ﻃﺮﻳﻘﻪ اﻟﺘﻨﻘﻞ داﺧﻞ اﻟﺼﻔﺤﺘﻴﻦ ﻣﺨﺘﻠﻔﺘﺎن ﻧﻮﻋﺎ ﻣﺎ ‪ ،‬اﻻ ان ﺷﻜﻞ اﻟﺼﻔﺤﺘﻴﻦ ﻣﺘﻔﻘﺘﺎن ﻣﻦ‬ ‫ﺣﻴﺚ اﻟﺸﻜﻞ واﻟﺘﺮﺗﻴﺐ )ﻓﺎذا آﻨﺖ ﻣﻌﺘﺎد ﻋﻠﻰ ﻗﺮأة ﺻﻔﺤﺎت ال ‪ man‬ﻓﻘﻂ واردت ﻗﺮأة ﺻﻔﺤﺎت ال‬ ‫‪ Info‬ﻓﻠﻦ ﺗﺠﺪ اى ﻣﺸﻜﻠﻪ ﻋﻠﻰ اﻻﻃﻼق(‬ .‬‬ ‫* اﻟﺸﺮح اﻟﺘﻰ ﺗﻘﺪﻣﻪ ﺻﻔﺤﺎت ال‪ info‬ﻗﺪ ﻳﻜﻮن اآﺜﺮ ﺗﻔﺼﻴﻼ ﻣﻦ ﺻﻔﺤﺎت ال‪).‫* ﺑﺎﻟﻨﺴﺒﻪ ﻟﻼواﻣﺮ واﻟﺒﺮاﻣﺞ اﻟﺘﻰ اﻧﺘﺠﻬﺎ ﻣﺸﺮوع ‪ GNU‬ﻓﻐﺎﻟﺒﺎ اﻟﻤﺴﺎﻋﺪﻩ اﻟﻤﺘﻮﻓﺮﻩ ﻟﻬﺎ ﻓﻰ ﺻﻴﻐﻪ ال‬ ‫‪ info‬ﻓﻘﻂ دون ال‪ ، man‬ﻓﻘﺪ ﺗﺤﺎول اﻟﺒﺤﺚ ﻋﻦ اﻣﺮ ﻣﻌﻴﻦ ﻓﻰ ال‪ man‬وﻻ ﺗﺠﺪﻩ وﻋﻨﺪﻣﺎ ﺗﺒﺤﺚ‬ ‫ﻋﻠﻴﻪ ﻓﻰ ال‪ info‬ﺗﺠﺪﻩ ﻣﻮﺟﻮد ‪.‬ﺑﺮاﻣﺞ( اﻣﺎ ﻣﻊ ﺻﻔﺤﺎت ال‪ info‬ﻓﺎﻻﻣﺮ ﻟﻴﺲ آﺬﻟﻚ ‪.‬‬ ‫اﻣﺎ ﺑﺎﻟﻨﺴﺒﻪ ﻻوﺟﻪ اﻻﺗﻔﺎق ﺑﻴﻨﻬﻢ ﻓﻌﺪﻳﺪﻩ ﻣﻨﻬﺎ‬ ‫* ﻃﺮﻳﻘﻪ اﺳﺘﺪﻋﺎء اﻟﻤﺴﺎﻋﺪﻩ واﻟﺨﺮوج ﻣﻨﻬﺎ واﺣﺪﻩ ‪ ،‬ﻓﻼﺳﺘﺪﻋﺎء ال‪ info‬ﺗﻜﺘﺐ ‪info‬‬ ‫‪ command‬وﻟﺼﻔﺤﺎت ال‪ man‬ﺗﻜﺘﺐ ‪man command‬‬ ‫وﻟﻜﻰ ﺗﺨﺮج ﻣﻦ اﻟﻨﻮﻋﻴﻦ ﺗﻜﺘﺐ ﺣﺮف ‪. man‬وﻓﻰ ﺑﻌﺾ‬ ‫اﻻﺣﻴﺎن ﺗﺠﺪﻩ ﻧﺴﺨﻪ ﻣﻦ ال ‪. ( man‬‬ ‫•ﺻﻔﺤﺎت ال ‪ man‬ﻟﻬﺎ ﺗﺮﻗﻴﻢ ﺗﺼﻨﻒ ﺑﻪ اﻻواﻣﺮ ‪ ،‬ﻓﺎﻟﺮﻗﻢ ‪ 5‬ﻣﺜﻼ ﺧﺎص ﺑﻤﻠﻔﺎت ﺗﻬﻴﺌﻪ اﻟﻨﻈﺎم و‪8‬‬ ‫ﺧﺎص ﺑﺎواﻣﺮ ادارﻩ اﻟﻨﻈﺎم ‪ ،‬وﻣﻦ ﺛﻢ ﻓﺎﻧﺖ ﺗﻌﺮف ﻣﻊ اى ﻧﻮﻋﻴﻪ ﻣﻦ ﺻﻔﺤﺎت اﻟﻤﺴﺎﻋﺪﻩ ﺗﺘﻌﺎﻣﻞ ‪،‬‬ ‫)ﻣﻠﻔﺎت ‪.

‫‪man page‬‬ ‫ﺻﻔﺤﺎت ال‪ man‬هﻰ اﻻﻗﺪم ﻓﻰ ال ‪ ، unix-like os‬ﻓﻘﺪ آﺎﻧﺖ هﻰ وﺳﻴﻠﻪ اﻟﻤﺴﺎﻋﺪﻩ اﻟﻔﻮرﻳﻪ اﻟﺘﻰ‬ ‫آﺎن ﻳﺘﻴﺤﻬﺎ ‪.‬‬ ‫وال‪ man page‬ﻣﻜﺘﻮﺑﻪ ﺑﻄﺮﻳﻘﻪ ﻣﺨﺘﺼﺮﻩ ﺟﺪا ‪ ،‬واﻟﻬﺪف ﻣﻦ ذﻟﻚ ﺟﻤﻊ اآﺒﺮ ﻗﺪر ﻣﻤﻜﻦ ﻣﻦ‬ ‫اﻟﻤﻌﻠﻮﻣﺎت ﻓﻰ اﻗﻞ ﻣﺴﺎﺣﻪ ﻣﻤﻜﻨﻪ )ﻻﺣﻆ اﻟﺨﻴﺎرات وﻣﺎ ﻳﻠﻴﻬﺎ ﻣﻦ ﺷﺮح ﻣﻮﺟﺰ ﻟﺪورهﺎ( ‪ ) ،‬ﻓﺒﻌﺾ‬ ‫اﻻواﻣﺮ وﺧﻴﺎراﺗﻬﺎ ﺗﺤﺘﺎج ﻓﻰ ﺑﻌﺾ اﻻﺣﻴﺎن ﻟﺸﺮح اآﺒﺮ ﺑﻜﺜﻴﺮ ﻣﻤﺎ هﻮ ﻣﻮﺟﻮد ﺑﺎل ‪(man page‬‬ ‫* ﺷﻜﻞ ال ‪man page‬‬ ‫ﻧﻔﺬ هﺬا اﻻﻣﺮ ‪ man ls‬وﻻﺣﻆ ﺷﻜﻞ ﺻﻔﺤﻪ ال ‪man‬‬ ‫ﻓﻨﺠﺪ اﻟﻨﺎﺗﺞ ﻣﻦ اﻻﻣﺮ‬ . UNIX‬‬ ‫وال ‪) man page‬واﻳﻀﺎ ال ‪ ( info‬ﻟﻴﺴﺖ وﺳﻴﻠﻪ ﺗﻌﻠﻴﻤﻴﻪ ﺗﺘﻌﻠﻢ ﻣﻨﻬﺎ اﻟﻨﻈﺎم ‪ ،‬ﻓﻬﻰ ﻣﻮﺟﻮدﻩ ﻟﻜﻰ‬ ‫ﺗﺬآﺮك ﺑﻜﻴﻔﻴﻪ اﺳﺘﺨﺪام اﻻﻣﺮ وﺑﺎﻟﺨﻴﺎرات اﻟﻤﺘﻮﻓﺮﻩ ﻣﻌﻪ ﻣﻊ ﺷﺮح ﻣﻮﺟﺰ ﻟﻨﺘﺎﺋﺞ آﻞ هﺬا‪ ،‬ﺑﺎﻻﺿﺎﻓﻪ‬ ‫اﻟﻰ ﺗﻮﺟﻴﻬﻚ اﻟﻰ اﻻواﻣﺮ اﻟﻤﺘﻌﻠﻘﻪ ﺑﻨﻔﺲ اﻟﻤﻮﺿﻮع ‪ ،‬اى اﻧﻬﺎ ﺗﻔﺘﺮض اﻧﻚ ﻣﻦ اﻻﺳﺎس ﺗﻌﺮف آﻴﻒ‬ ‫ﺗﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻨﻈﺎم ‪.‬‬ ‫ﺑﻤﻌﻨﻰ اﺧﺮ ﻻ ﺗﺤﺎول ﻓﺘﺤﻬﺎ وان ﺗﻌﺘﻘﺪ اﻧﻚ ﺳﺘﺘﻌﻠﻢ ﻟﻴﻨﻮآﺲ ﻣﻦ ﺧﻼﻟﻬﺎ‪ ،‬ﻻن هﺬﻩ وﻇﻴﻔﻪ وﺛﺎﺋﻖ‬ ‫‪ documentation‬اﺧﺮى آﻤﺎ ﺳﻨﺮى ‪.

‫‪ 1‬ﻧﺠﺪ اﺳﻢ اﻻﻣﺮ ﻳﺘﺒﻌﻪ رﻗﻢ ‪ ،‬وهﺬا اﻟﺮﻗﻢ ﻳﺪﻟﻚ ﻋﻠﻰ اى ﻧﻮع ﻣﻦ اﻻواﻣﺮ ﺗﺘﻌﺎﻣﻞ‬ ‫ﻓﺮﻗﻢ ‪ 1‬هﻰ اﻻواﻣﺮ اﻟﺘﻘﻠﻴﺪﻳﻪ اﻟﺘﻰ ﻳﻤﻜﻦ ﻻى ﻣﺴﺘﺨﺪم ﺗﻨﻔﻴﺬهﺎ ‪user command‬‬ ‫اﻻواﻣﺮ اﻟﺨﺎﺻﻪ ﺑﺎﻟﻜﺮﻧﻞ ‪(system call)kernel function‬‬ ‫‪2‬‬ ‫اﻻواﻣﺮ اﻟﺨﺎﺻﻪ ﺑﺎﻟﻤﻜﺘﺒﺎت ‪library function‬‬ ‫‪3‬‬ ‫اﻻواﻣﺮ اﻟﺨﺎﺻﻪ ﺑﺎل‪ devices‬ﻣﺜﻞ اﻟﻬﺎرد ﻣﺜﻼ‬ ‫‪4‬‬ ‫اﻻواﻣﺮ اﻟﺨﺎﺻﻪ ﺑﻤﻠﻔﺎت اﻟﺘﻬﻴﺌﻪ ‪configuration files‬‬ ‫‪5‬‬ ‫اﻻواﻣﺮ اﻟﺨﺎﺻﻪ ﺑﺎل ‪games‬‬ ‫‪6‬‬ ‫اواﻣﺮ ﻣﺘﻔﺮﻗﻪ ‪miscellaneous‬‬ ‫‪7‬‬ ‫اﻻواﻣﺮ اﻟﺨﺎﺻﻪ ﺑﺎدارﻩ اﻟﻨﻈﺎم ‪Adminstration comand‬‬ ‫‪8‬‬ ‫وﻟﻜﻦ اﻟﻤﻬﻢ ﻣﻌﺮﻓﺘﻪ ﻣﻦ هﺆﻻء اﻻرﻗﺎم هﻢ ‪8 ، 5 ، 2 ، 1‬‬ ‫وهﻜﺬا ‪ ،‬ﻓﺎﻟﻤﺜﺎل اﻟﺬى اﻣﺎﻣﻨﺎ اﻻن ﻟﻼﻣﺮ ‪ ls‬ﻳﺒﻴﻦ ﻟﻨﺎ ان هﺬا اﻻﻣﺮ ﻣﺘﺎح ﻟﻠﺠﻤﻴﻊ ﺳﻮاء آﺎﻧﻮا‬ ‫ﻣﺴﺘﺨﺪﻣﻴﻦ او ﻣﺪﻳﺮﻳﻦ ﻻﻧﻪ ﻣﺮﻗﻢ ﺑﺮﻗﻢ ‪ ،1‬ﻓﺎﻟﻤﺴﺘﺨﺪم ﻳﻤﻜﻨﻪ ﺗﻨﻔﻴﺬ هﺬا اﻻﻣﺮﻋﻠﻰ اﻟﻤﺠﻠﺪات اﻟﺘﻰ‬ ‫ﻳﻤﻠﻚ ﺣﻖ اﺳﺘﻌﺮاﺿﻬﺎ ‪. kill‬‬ ‫اﻣﺎ اﻟﻘﺴﻢ )‪ (5‬ﻓﻬﻮ ﻳﺸﺮح ﻟﻨﺎ ﻣﻠﻔﺎت اﻟﻨﻈﺎم و آﻴﻔﻴﻪ اﻟﺘﻌﺎﻣﻞ ﻣﻌﻬﺎ‪ ،‬ﻣﻦ ﺣﻴﺚ ﺗﻬﻴﺌﺘﻬﺎ وﻣﺎ هﻰ‬ ‫وﻇﺎﺋﻔﻬﺎ وﻧﺤﻮ ذﻟﻚ ‪.‬‬ .‬‬ ‫واﻻواﻣﺮ اﻟﺘﻰ ﺗﺤﺖ اﻟﻘﺴﻢ )‪ (2‬هﻰ اﻻواﻣﺮ اﻟﺘﻰ ﺗﺴﺘﺪﻋﻰ اﻟﻨﻈﺎم ﻟﻴﻘﻮم ﺑﻌﻤﻠﻴﻪ ﻣﻌﻴﻨﻪ ﻣﺜﻞ اﻻﻣﺮ‬ ‫‪.‬‬ ‫وﻟﻜﻦ ﻗﺪ ﻳﻜﻮن ﻟﻼﻣﺮ اﻟﻮاﺣﺪ اآﺜﺮ ﻣﻦ رﻗﻢ )اى ﻣﻮﺟﻮد ﺑﺎآﺜﺮ ﻣﻦ ﻗﺴﻢ( ﻣﺜﻞ اﻻﻣﺮ ‪ kill‬ﻓﻬﻮ ﻣﻮﺟﻮد‬ ‫ﺑﺎﻟﻘﺴﻢ ‪ 1‬واﻳﻀﺎ ﺑﺎﻟﻘﺴﻢ ‪ ، 2‬وهﺬا ﻳﻌﻨﻰ ان هﺬا اﻻﻣﺮ ﻳﺴﺘﻄﻴﻊ اﻟﻤﺴﺘﺨﺪم اﺳﺘﺪﻋﺎؤﻩ وﺗﻨﻔﻴﺬﻩ ﻣﺒﺎﺷﺮﻩ‬ ‫ﺑﻨﻔﺴﻪ )ارﺳﺎل ‪ signal‬اﻟﻰ ال‪ process‬اﻟﻤﻌﻴﻨﻪ( وهﻮ ﻓﻰ ذات اﻟﻮﻗﺖ وﻇﻴﻔﻪ ﻣﻦ وﻇﺎﺋﻒ اﻟﻨﻈﺎم‬ ‫)ﻳﻮآﻞ اﻟﻤﺴﺘﺨﺪم اﻟﻨﻈﺎم ﻓﻰ ارﺳﺎل هﺬﻩ ال‪(signal‬‬ ‫هﺬا ﻣﻦ ﻧﺎﺣﻴﻪ اﻟﺘﻘﺴﻴﻢ وﻟﻜﻦ هﻨﺎك ﻣﺴﺄﻟﻪ اﺧﺮى ﻣﻬﻤﻪ اﻻ وهﻰ آﻴﻔﻴﻪ اﺳﺘﺪﻋﺎء ال ‪man page‬‬ ‫اﻟﺨﺎﺻﻪ ﺑﻜﻼ ﻣﻨﻬﻤﺎ ‪،‬ذﻟﻚ ﻻﻧﻪ ﻋﻨﺪ ﺗﻨﻔﺬ اﻻﻣﺮ ‪ man kill‬ﻓﺎن اﻻﻣﺮ‪ man‬ﻳﺬهﺐ وﻳﺒﺤﺚ ﻓﻰ ﻗﺎﻋﺪﻩ‬ ‫ﺑﻴﺎﻧﺎﺗﻪ وﻳﺎﺗﻰ ﺑﺎول ﻧﺘﻴﺠﻪ ﺗﺼﺎدﻓﻪ ‪ ،‬اى اﻧﻪ داﺋﻤﺎ ﺳﻴﺎﺗﻰ ﻟﻚ ب ‪ kill 1‬ﻻﻧﻪ اول ﻣﺎ ﻳﺠﺪﻩ ‪ ،‬وﻟﺘﻔﺎدى‬ ‫هﺬﻩ اﻟﻌﻘﺒﻪ ﻓﻼ ﺑﺪ ﻣﻦ ﺗﺤﺪﻳﺪ اﻻﻣﺮ ﺑﺬاﺗﻪ ﻟﻜﻰ ﻳﺘﺠﻨﺐ اﻟﺨﻠﻂ وذﻟﻚ ﻋﻦ ﻃﺮﻳﻖ رﻗﻤﻪ‪ ،‬ﻓﺘﻜﺘﺐ ﻟﻪ‬ ‫‪) man 2 kill‬ﻳﺠﺐ ﻣﺮاﻋﺎﻩ اﻟﻤﺴﺎﻓﺎت( ﺣﻴﻨﺌﺬ ﺳﻴﻌﻮد ﻟﻚ ﺑﺎﻟﻨﺘﻴﺠﻪ اﻟﺘﻰ ﺗﺮﻳﺪهﺎ ‪.‬‬ ‫ﻓﻬﺆﻻء اﻻﻗﺴﺎم اﻻرﺑﻌﻪ هﻢ ﻓﻘﻂ ﻣﺎ ﺗﺤﺘﺎج ﻣﻌﺮﻓﺘﻬﻢ اﻻن ‪.‬‬ ‫واﺧﻴﺮا اﻟﻘﺴﻢ )‪ (8‬اﻟﺨﺎص ﺑﺎﻻواﻣﺮ اﻟﻤﺘﻌﻠﻘﻪ ﺑﺎﻟﻤﺪﻳﺮ ‪ root‬اى اﻟﺘﻰ ﻳﺴﻤﺢ ﻟﻪ ﻓﻘﻂ ﺑﺘﻨﻔﻴﺬهﺎ ﻣﺜﻞ‬ ‫اﻻﻣﺮ ‪ fdisk‬ﻋﻠﻰ ﺳﺒﻴﻞ اﻟﻤﺜﺎل ‪.

‬اى ﺧﻴﺎر واﺣﺪ او اآﺜﺮ ‪ ،‬وآﺬﻟﻚ ﻣﻊ ‪ [file]....‬‬ ‫‪ *6‬ﻗﺪ ﻳﺘﻢ دﻣﺞ اﻻﻗﻮاس ﻣﻊ ﺑﻌﻀﻬﻢ ‪ ،‬ﻓﻘﺪ ﺗﺮى ﻣﺜﻼ ]>‪ ls [< file‬اى اﻧﻚ ﻣﺨﻴﺮ ﺑﻴﻦ ادﺧﺎل‬ ‫اﻟﻘﻴﻤﻪ اﻟﺘﻰ ﺑﻴﻦ > < او ﻻ ﺗﺪﺧﻠﻬﺎ ‪.‬‬ .‬وﻟﻬﺬا ﻻ ﺑﺪ ان ﺗﻀﻊ ﻓﻰ اﻋﺘﺒﺎرك‬ ‫ﻋﺪﻩ ﻧﻘﺎط هﺎﻣﻪ وهﻰ‬ ‫‪ *1‬ﻋﻨﺪﻣﺎ ﺗﺠﺪ اﻻﻣﺮ ﻗﺎﺋﻤﺎ ﺑﺬاﺗﻪ )اى ﻟﻴﺲ داﺧﻞ اﻗﻮاس او ﻣﺎ ﺷﺎﺑﻪ( ﻳﻜﺘﺐ آﻤﺎ هﻮ ﻣﻮﺿﺢ ‪ ،‬وآﻞ‬ ‫ﻧﺺ ﻗﺎﺋﻢ ﺑﺬاﺗﻪ ﻳﺠﺐ آﺘﺎﺑﺘﻪ آﻤﺎ هﻮ ‪ ،‬ﻣﺜﻞ اﻻواﻣﺮ آﻠﻬﺎ )ﻓﻬﻰ ﺗﻜﺘﺐ آﻤﺎ هﻰ( ‪.‬‬ ‫‪ *2‬اﻟﻘﻮﺳﺎن ] [ ﻳﺪﻻن ﻋﻠﻰ ان ﻣﺎ ﻳﺎﺗﻰ ﺑﻴﻨﻬﻤﺎ هﻮ اﻣﺮ اﺧﺘﻴﺎرى ‪ ،‬ﻗﺪ ﺗﻜﺘﺒﻬﻢ وﻗﺪ ﻻ ﺗﻔﻌﻞ ‪ ،‬وﻧﺮى‬ ‫ﻓﻰ اﻟﻤﺜﺎل اﻧﻪ آﺘﺐ ﺑﻴﻨﻬﻤﺎ ‪ options‬ﻓﻴﻤﻜﻦ ان ﻳﻜﻮن اﻻﻣﺮهﻜﺬا ‪ ls -la‬او هﻜﺬا ‪ ls‬ﻓﻘﻂ او‬ ‫ﺣﺘﻰ هﻜﺬا ‪) ls -l dir‬وهﺬا وﻓﻖ اﺣﺘﻴﺎﺟﺎﺗﻚ ﻣﻦ اﻻﻣﺮ( وﺳﻴﻨﺠﺢ اﻻﻣﺮ ﻓﻰ آﻞ اﻟﺤﺎﻻت ‪ ،‬ذﻟﻚ ﻻن‬ ‫ال‪ option‬وال‪ file‬اﻣﺮ ﺧﻴﺎرى وﻟﻴﺲ اﺟﺒﺎرى آﺘﺎﺑﺘﻬﻤﺎ ‪...‫‪NAME 2‬‬ ‫ﻓﻰ هﺬا ال‪ section‬ﻧﺠﺪ ﺑﺴﻬﻮﻟﻪ اﺳﻢ اﻻﻣﺮ ﺗﺘﺒﻌﻪ وﻇﻴﻔﺘﻪ ‪ ،‬ﻓﺎﻻﻣﺮ ‪ ls‬وﻇﻴﻔﺘﻪ ﻋﺮض ﻣﺤﺘﻮﻳﺎت‬ ‫اﻟﻤﺠﻠﺪ‪/‬اﻟﻤﺠﻠﺪات ‪ ،‬وﻻﻧﻪ ﻳﺼﻒ اﻻﻣﺮ ﺑﺘﻠﺨﻴﺺ ﻓﺎﻧﻨﺎ ﻧﺠﺪﻩ ﻣﻜﻮن ﻣﻦ ﺳﻄﺮ واﺣﺪ ‪،‬‬ ‫وﻳﻤﻜﻨﻚ اذا اردت ﻓﻘﻂ ﻣﻌﺮﻓﻪ وﻇﻴﻔﻪ اﻻﻣﺮ )اى اﺳﺘﻌﺮاض هﺬا اﻟﺴﻄﺮ( دون ارادﻩ اﻟﺪﺧﻮل ﻟﻞ‬ ‫‪ man page‬اﻟﺨﺎص ﺑﻬﺬا اﻻﻣﺮ ‪ ،‬ان ﺗﺴﺘﺨﺪم اﻻﻣﺮ ‪ whatis‬ﻳﺘﺒﻌﻪ اﻻﻣﺮ‪،‬اﻳﻀﺎ اﻻﻣﺮ ‪man -f‬‬ ‫ﻳﻘﻮم ﺑﻨﻔﺲ هﺬﻩ اﻟﻮﻇﻴﻔﻪ ‪..‬‬ ‫‪SYNOPSIS 3‬‬ ‫هﺬا ال ‪ section‬ﻳﺒﻴﻦ ﻟﻨﺎ آﻴﻒ ﻧﺴﺘﺨﺪام اﻻﻣﺮ )ﺻﻴﻐﻪ اﻻﻣﺮﺣﻴﻦ ﺗﻄﺒﻴﻘﻪ( ﻓﻨﺠﺪ اﻧﻪ ﻣﻜﺘﻮب‬ ‫‪ls [option] . piping‬‬ ‫‪ *5‬ﻋﻼﻣﻪ اﻟﺜﻼث ﻧﻘﺎط )‪ (.‬‬ ‫‪ *4‬اﻟﻘﻮﺳﺎن } { ﻳﺪﻻن ﻋﻠﻰ اﻧﻚ ﻻ ﺑﺪ ان ﺗﻜﺘﺐ ﻋﻠﻰ اﻻﻗﻞ واﺣﺪ )او اآﺜﺮ ﻣﻦ واﺣﺪ( ﻣﺎ ﻳﻘﻊ‬ ‫ﺑﻴﻨﻬﻤﺎ )ﺗﺨﺘﺎر ﻣﺎ ﻳﻨﺎﺳﺒﻚ(‪ ،‬ﻣﺜﺎل ﻟﻮ اﻓﺘﺮﺿﻨﺎ ان اﻻﻣﺮ ‪ ls‬ﻣﻜﺘﻮب ﺑﺎﻟﺼﻴﻐﻪ اﻻﺗﻴﻪ }‪ls {acdfgh‬‬ ‫ﻓﻤﻌﻨﻰ هﺬا ان اﻻﻣﺮ ‪ ls‬ﻟﻦ ﻳﻌﻤﻞ اﻻ اذا اﺧﺬ اﺣﺪ هﺆﻻء ال ‪ ، options‬ﻗﺪ ﻳﻔﺼﻞ ﺑﻴﻦ ال‪options‬‬ ‫ﺑﻌﻼﻣﻪ | ‪...‬‬ ‫ﻣﻼﺣﻈﺎت هﺎﻣﻪ‬ ‫ﻟﻔﻬﻢ ﺻﻴﻐﻪ آﺘﺎﺑﻪ اﻻواﻣﺮ اهﻤﻴﻪ آﺒﺮى ﻓﻰ ﺗﻌﺎﻣﻠﻚ ﻣﻊ اﻟﻨﻈﺎم ‪ . [file]..‬‬ ‫‪ *3‬اﻟﻘﻮﺳﺎن > < ﻳﺪﻻن ﻋﻠﻰ اﻧﻪ ﻻ ﺑﺪ ﻣﻦ آﺘﺎﺑﻪ ﻣﺎ ﻳﻘﻊ ﺑﻴﻨﻬﻤﺎ ﻣﻊ اﺑﺪاﻟﻪ ﺑﺎﻟﻨﺺ اﻟﻤﻨﺎﺳﺐ ‪ ،‬ﻓﻠﻮ‬ ‫آﺎن اﻟﻤﺜﺎل ﻳﻘﻮل > ‪ < file‬ﻓﻤﺎ ﻋﻠﻴﻚ اﻻ اﺑﺪال اﻟﻜﻠﻤﻪ ‪ file‬ﺑﺎﻟﻤﻠﻒ اﻟﺬى ﺳﺘﺘﻌﺎﻣﻞ ﻣﻌﻪ ‪.‬دﻟﻴﻞ ﻋﻠﻰ آﻠﻤﻪ )وهﻜﺬا او اﻟﺦ( ﻓﻔﻰ ﻣﺜﺎل ‪ ls‬ﻧﺠﺪ ﻣﻜﺘﻮﺑﺎ‬ ‫‪ [option] .‬‬ ‫ﻓﺎﻻﻣﺮ ﻳﻜﺘﺐ اوﻻ ‪ ،‬ﺛﻢ ﻳﺘﺒﻌﻪ ال‪ option‬ﺳﻮاء آﺎن واﺣﺪا او اآﺜﺮ ‪ ،‬ﺛﻢ ﺑﻌﺪ ذﻟﻚ ال‪ argument‬او‬ ‫اﻟﻤﻠﻒ)ﻏﺎﻟﺒﺎ( اﻟﺬى ﻳﻄﺒﻖ ﻋﻠﻴﻪ اﻻﻣﺮ‪.‬اى ﻣﻠﻒ واﺣﺪ او اآﺜﺮ ‪..

‫)ﻳﻼﺣﻆ ان اﻟﺮﻣﻮز اﻟﻤﺴﺘﺨﺪﻣﻪ هﻨﺎهﻰ ﻗﻮاﻋﺪ ﻳﺘﺒﻌﻬﺎ آﻞ ﻣﻦ ﻳﺘﻌﺎﻣﻞ ﻣﻊ ﻟﻴﻨﻮآﺲ ﻓﻰ ﺷﺮح ﻣﺮادﻩ ‪،‬‬ ‫ﺳﻮاء آﺎن هﺬا اﻟﻤﺘﻌﺎﻣﻞ ﻣﻮﻟﻔﺎ ﻟﻜﺘﺎب او آﺎﺗﺒﺎ ل‪ man page‬او ﻏﻴﺮﻩ ‪ ،‬اى اﻧﻬﺎ ﻗﻮاﻋﺪ ﺗﻮﻗﻊ ان‬ ‫ﺗﺠﺪهﺎ ﺑﺎآﺜﺮ ﻣﻦ ﻣﻜﺎن ﻓﻰ ﻣﺠﺘﻤﻊ اﻟﻠﻴﻨﻮآﺲ(‬ ‫‪DESCRIPTION 4‬‬ ‫ﻓﻰ هﺬا ال ‪ section‬ﻧﺠﺪ ﺷﺮح ﻟﻼﻣﺮ وﻣﺎ ﻳﻘﻮم ﺑﻪ )وﻃﺒﻌﺎ ﺑﺈﻳﺠﺎز( ﻓﻰ ﻋﺪﻩ ﺳﻄﻮر ‪ ،‬وﻓﻰ ﻣﺜﺎل ال‬ ‫‪ ls‬اﻟﻤﻮﺿﺢ ﺑﺎﻋﻠﻰ ﻧﺠﺪﻩ ﻳﻘﻮل‬ ‫) ﻋﺮض ﻣﻌﻠﻮﻣﺎت ﻋﻦ اﻟﻤﻠﻒ او اﻟﻤﻠﻔﺎت وﻳﻔﺘﺢ ﻗﻮس وﻳﻘﻮل اﻧﻪ اذا اﺳﺘﺨﺪم ﻣﻨﻔﺮدا ﺳﻴﻌﺮض اﻟﻤﺠﻠﺪ‬ ‫اﻟﺤﺎﻟﻰ ‪ ، current dir‬ﺛﻢ ﻳﻜﻤﻞ ‪ ،‬واﻻﻣﺮ ﻳﺼﻨﻒ اﻟﺬى ﺳﻴﻌﺮض ﺑﻄﺮﻳﻘﻪ اﺑﺠﺪﻳﻪ اذا ﻟﻢ ﻳﺴﺘﺨﺪم اى‬ ‫ﻣﻦ هﺬﻩ اﻟﺨﻴﺎرات ﺛﻢ ﻳﻮرد اﻟﺨﻴﺎرات (‬ ‫ﺛﻢ ﺑﻌﺪ ذﻟﻚ ﻳﺒﺪأ ﻓﻰ ﻋﺮض اﻟﺨﻴﺎرات ﻣﻊ ﺷﺮح ﻣﺒﺴﻂ ﻟﻜﻞ ﺧﻴﺎر ‪. double dash‬‬ ‫وﻳﺮﺟﻊ هﺬا اﻻﺧﺘﻼف اﻟﻰ ان ال‪ UNIX‬ﻓﻰ اﻻﺳﺎس آﺎن ﻳﺴﺘﺨﺪم اﻟﺨﻴﺎر اﻟﻤﻜﻮن ﻣﻦ ﺣﺮف واﺣﺪ ‪،‬‬ ‫وﻋﻨﺪﻣﺎ ﺗﺎﺳﺲ ﻣﺸﺮوع ‪ GNU‬ادﺧﻠﻮا ﻋﻠﻰ اﻻﻧﻈﻤﻪ اﻟﺘﻰ ﻳﻨﺘﺠﻮﻧﻬﺎ اﻟﺨﻴﺎرات اﻟﻤﻤﻴﺰﻩ ﻟﻬﻢ وهﻰ ذات‬ ‫اﻟﻜﻠﻤﻪ وال ‪ double dash‬وﻟﺬﻟﻚ ﺳﺘﺠﺪ ان اﻻﻣﺮ ‪ ls -a‬ﻳﺨﺮج ﻧﻔﺲ ﻧﺘﻴﺠﻪ اﻻﻣﺮ ‪.‬ﺑﺎﻟﻨﺴﺒﻪ ﻟﻼﻣﺮ ‪ ls‬ﻧﺠﺪ ان آﺎﺗﺒﻪ هﻮرﻳﺘﺸﺎرد‬ ‫ﺳﺘﻮﻟﻤﻦ ﻣﻮﺳﺲ ﻣﺸﺮوع‪(GNU‬‬ ‫‪BUGS 6‬‬ ‫ﻓﻰ هﺬا ال‪ section‬ﻧﺠﺪ ﺑﺮﻳﺪ اﻟﻴﻜﺘﺮوﻧﻰ ﻳﺮﺳﻞ ﻋﻠﻴﻪ ﻋﻠﻰ ﺳﺒﻴﻞ اﻟﻤﺜﺎل اﻟﻤﺸﺎآﻞ اﻟﺘﻰ واﺟﻬﺘﻚ اﺛﻨﺎء‬ ‫ﺗﻨﻔﻴﺬ اﻟﺒﺮﻧﺎﻣﺞ ‪. ls --all‬‬ ‫*ﻳﻼﺣﻆ اﻳﻀﺎ ان اﻟﺨﻴﺎرات ‪ options‬اﻣﺎ ان ﺗﻜﻮن ‪ capital‬او ‪) small‬ﺑﻌﻜﺲ اﻻواﻣﺮ ﻓﻐﺎﻟﺒﻴﺘﻬﺎ‬ ‫اﻟﻌﻈﻤﻰ‪(small‬‬ ‫* ﻳﻼﺣﻆ اﻳﻀﺎ ان ﺧﻴﺎرات ال‪ GNU‬ذات اﻟﻜﻠﻤﻪ و ال ‪ double dot‬ﻗﺪ ﻳﺎﺗﻰ ﺑﻌﺪهﺎ =‪WORD‬‬ ‫)ﻋﻼﻣﻪ ﻳﺴﺎوى وآﻠﻤﻪ‪ ( capital word‬وهﺬا ﻳﻌﻨﻰ اﻧﻚ ﻗﺪ ﺗﻜﺘﺐ ﻋﻼﻣﻪ = وﺗﺪﺧﻞ ﺑﻌﺪهﺎ اﻟﻘﻴﻤﻪ‬ ‫اﻟﺘﻰ ﺗﺮﻳﺪهﺎ ﻣﻜﺎن آﻠﻤﻪ‪. WORD‬‬ ‫‪AUTHOR 5‬‬ ‫ﺛﻢ ﺑﻌﺪ ذﻟﻚ ﺗﺠﺪ ﻓﻰ هﺬا ال ‪ section‬اﺳﻢ اﻟﻤﺒﺮﻣﺞ اﻟﺬى آﺘﺐ هﺬا اﻟﺒﺮﻧﺎﻣﺞ وال‪، man page‬‬ ‫وﻗﺪ ﻳﻜﺘﺐ ﺑﺮﻳﺪﻩ اﻻﻟﻴﻜﺘﺮوﻧﻰ ﻟﺘﺴﻬﻴﻞ ﻋﻤﻠﻴﻪ اﻻﺗﺼﺎل ﺑﻪ‪).‬‬ .‬‬ ‫*وﻧﻼﺣﻆ ان اﻟﺨﻴﺎرات ‪ options‬اﻣﺎ ان ﺗﻜﻮن ﺣﺮف واﺣﺪ ﻣﺴﺒﻮق ب ‪ one dash‬او ﻋﺒﺎرﻩ ﻋﻦ‬ ‫آﻠﻤﻪ ﻣﺴﺒﻮﻗﻪ ب ‪.‬‬ ‫‪COPYRIGHT 7‬‬ ‫ﻳُﺬآﺮ ﺑﻪ ﻣﻌﻠﻮﻣﺎت ﺣﻘﻮق اﻟﻤﻠﻜﻴﻪ ﻟﻬﺬا اﻟﺒﺮﻧﺎﻣﺞ ‪.

‫‪SEE ALSO 8‬‬ ‫ﻳﻌﺪ هﺬا ال ‪ section‬ﻣﻦ اﻓﻴﺪ اﻟﺘﻘﺴﻴﻤﺎت اﻟﻤﻮﺟﻮدﻩ ﺑﺼﻔﺤﻪ ال‪ man page‬اذ اﻧﻪ ﻳﺪﻟﻚ ﻋﻠﻰ‬ ‫اﻻواﻣﺮ اﻟﻤﺘﻌﻠﻘﻪ ﺑﻨﻔﺲ اﻟﻤﻮﺿﻮع او ﻋﻠﻰ اﻻﻗﻞ اﻟﺘﻰ ﺑﻴﻨﻬﺎ وﺑﻴﻦ هﺬا اﻻﻣﺮ ﻋﻼﻗﻪ ﻣﻦ ﻧﻮع ﻣﺎ ‪ .BSD‬‬ .‬ﻓﻨﺮى‬ ‫ﺑﺬﻟﻚ اﻧﻪ ﺗﻜﻔﻰ ﻣﻌﺮﻓﻪ اﻣﺮ واﺣﺪ ﺛﻢ ﺑﻌﺪ اﻻﻃﻼع ﻋﻠﻰ ﺻﻔﺤﻪ اﻟﻤﺴﺎﻋﺪﻩ اﻟﺨﺎﺻﻪ ﺑﻪ ﺳﺘﺨﺮج ﻣﻨﻬﺎ‬ ‫ﺑﻄﺮف ﺧﻴﻂ ﻳﻘﻮم ﺑﻌﻤﻞ اﻟﻤﺮﺷﺪ ﻟﻚ )ﻳﻼﺣﻆ اﻳﻀﺎ ان ﺑﻌﺾ اﻻواﻣﺮ ﻟﻴﺲ ﻟﻬﺎ ﻋﻼﻗﻪ ﻣﻊ اواﻣﺮ‬ ‫اﺧﺮى(‬ ‫‪FILES 9‬‬ ‫ﻧﺠﺪ هﺬا ال‪ section‬ﻓﻰ اﻻواﻣﺮ اﻟﺘﻰ ﻟﻬﺎ ﻣﻠﻔﺎت ﺗﻬﻴﺌﻪ ‪ ،‬اﻧﻈﺮ ﻣﺜﻼ ‪. man mount‬‬ ‫‪HISTORY 10‬‬ ‫ﻳﺬآﺮ هﺬا ال‪ section‬ﺗﺎرﻳﺦ اﻻﻣﺮ اذا آﺎن ﻳﺴﺘﻌﻤﻞ ﻣﺜﻼ ﻓﻰ اﻧﻈﻤﻪ ﺗﺸﻐﻴﻞ اﺧﺮى ﻣﺜﻞ ‪ UNIX‬او‬ ‫‪.

‫ﻣﻔﺎﺗﻴﺢ اﻟﺘﻌﺎﻣﻞ ﻣﻊ ﺻﻔﺤﺎت ال‪man‬‬ ‫ﻻ ﺑﺪ واﻧﺖ ﺗﺘﻌﺎﻣﻞ ﻣﻊ ال‪ man page‬ﻣﻦ ﻣﻌﺮﻓﻪ اﻟﻤﻔﺎﺗﻴﺢ اﻟﺘﻰ ﺗﺘﻴﺢ ﻟﻚ اﻟﺘﻔﺎﻋﻞ ﻣﻌﻬﺎ ‪.‬‬ ‫وهﺬﻩ اﻟﻤﻔﺎﺗﻴﺢ هﻰ‬ ‫‪ up & down arrow‬ﻻﺳﺘﻌﺮاض اﻟﺼﻔﺤﻪ ﻻﻋﻠﻰ واﺳﻔﻞ ‪ ،‬اﻳﻀﺎ ﻳﻘﻮم ﺑﻬﺬا اﻟﺪور اﻟﻤﻔﺎﺗﻴﺢ ‪f‬‬ ‫‪) space‬اﺳﻔﻞ( وال ‪) b‬اﻋﻠﻰ(‬ ‫‪Q‬‬ ‫‪/‬‬ ‫?‬ ‫‪shift + g‬‬ ‫‪g‬‬ ‫ﻟﻠﺨﺮوج ﻣﻦ اﻟﺼﻔﺤﻪ‬ ‫ﻟﻠﺒﺤﺚ داﺧﻞ ﺻﻔﺤﻪ ال‪ man‬ﻋﻦ آﻠﻤﻪ ﻣﻌﻴﻨﻪ ﻣﻦ اﻋﻠﻰ ﻻﺳﻔﻞ‬ ‫~~~~~~~~~~~~~~~~~~~~~~~~ ﻣﻦ اﺳﻔﻞ ﻻﻋﻠﻰ‬ ‫ﻟﻠﻨﺰول ﻣﺒﺎﺷﺮﻩ اﻟﻰ اﺧﺮاﻟﺼﻔﺤﻪ)اذا اردت اﻟﺬهﺎب ﻣﺒﺎﺷﺮﻩ اﻟﻰ اﻟﻨﻬﺎﻳﻪ(‬ ‫ﻓﻘﻂ ‪ ،‬ﺗﺼﻌﺪ ﺑﻚ اﻟﻰ ﻗﻤﻪ اﻟﺼﻔﺤﻪ)اذا آﻨﺖ ﻓﻰ ﻣﻨﺘﺼﻔﻬﺎ او اﺧﺮهﺎ(‬ ‫)ﻳﻼﺣﻆ اﻧﻪ ﻣﻊ آﺜﺮﻩ ﺗﻌﺎﻣﻠﻚ وﺗﻤﺮﺳﻚ ﺑﺎﻟﻨﻈﺎم ﻳﻤﻜﻨﻚ ان ﺗﻌﺘﻤﺪ ﻧﺴﺒﻴﺎ ﻋﻠﻰ ﺻﻔﺤﺎت ال‪man page‬‬ ‫او ﺣﺘﻰ ال‪ info page‬ﻓﻰ ﻓﻬﻢ اﻻواﻣﺮاﻟﺘﻰ ﺗﺘﻌﺎﻣﻞ ﻣﻌﻬﺎ ﻻول ﻣﺮﻩ ‪ ،‬وان آﺎﻧﺖ اﻟﻘﺎﻋﺪﻩ ان هﺬﻩ‬ ‫اﻟﺼﻔﺤﺎت ﻟﻠﻤﺴﺎﻋﺪﻩ اﻟﻔﻮرﻳﻪ ‪ ،‬اﻻ ان آﺜﺮﻩ اﻃﻼﻋﻚ ﻋﻠﻴﻬﺎ وﻓﻬﻢ ﻟﻐﺘﻬﺎ اﻟﻤﺨﺘﺼﺮﻩ ﺟﺪا ﻳﻜﺴﺒﻚ ﺧﺒﺮﻩ‬ ‫ﻓﻰ ﻓﻬﻢ اﻻواﻣﺮ اﻟﺠﺪﻳﺪﻩ(‬ .

‫‪info page‬‬ ‫ﻻﺳﺘﺪﻋﺎء ﻣﻌﻠﻮﻣﺎت ﻋﻦ ال‪ info page‬ﻧﻔﺬ اﻻﻣﺮ‬ ‫‪info info‬‬ ‫وآﻤﺎ هﻮ ﻣﻼﺣﻆ ان اﺳﻢ اﻟﺼﻔﺤﻪ اﻟﺘﻰ ﺗﻘﻒ ﻋﻠﻴﻬﺎ اﻻن ﺗﺴﻤﻰ ‪node‬‬ ‫واﺳﻢ اﻟﺼﻔﺤﻪ اﻻﺣﻘﻪ ﻳﻮﺟﺪ ﺑﺠﺎﻧﺐ آﻠﻤﻪ ‪Next‬‬ ‫واﻟﺼﻔﺤﻪ اﻟﺴﺎﺑﻘﻪ اﺳﻤﻬﺎ ﺑﺠﺎﻧﺐ ‪Prev‬‬ .

‬‬ .‫ال ‪ info page‬هﻰ اﻟﻨﻮع اﻻﺧﺮ ﻣﻦ اﻟﻤﺴﺎﻋﺪﻩ اﻟﻔﻮرﻳﻪ اﻟﺘﻰ ﻳﺘﻴﺤﻬﺎ اﻟﻨﻈﺎم ‪ ،‬وﻟﺼﻔﺤﺎت ال‪info‬‬ ‫ﺧﺼﺎﺋﺺ ﺗﻔﻮق ﺗﻠﻚ اﻟﻤﺘﻮﻓﺮﻩ ﻟﻞ‪ ، man page‬ﺑﺎﻋﺘﺒﺎر اﻧﻬﺎ اﻻﺣﺪث ﻣﻦ هﺬﻩ اﻻﺧﻴﺮﻩ ‪.‬‬ ‫ﻃﺮﻳﻘﻪ اﺳﺘﺪﻋﺎﺋﻬﺎ هﻰ ﻧﻔﺲ ﻃﺮﻳﻘﻪ اﺳﺘﺪﻋﺎء ال‪ ، man page‬وﻟﻜﻦ اﻻﺧﺘﻼف ﻓﻰ ﻧﺘﻴﺠﻪ هﺬا‬ ‫اﻻﺳﺘﺪﻋﺎء ‪ ،‬ﻓﻌﻨﺪﻣﺎ ﻻ ﻳﺠﺪ اﻟﺒﺮﻧﺎﻣﺞ ‪ man‬اﻻﻣﺮ اﻟﺬى ﻳﺒﺤﺚ ﻋﻨﻪ ﻓﺎﻧﻪ ﻳﺠﻴﺒﻚ اﻧﻪ ‪no manual-‬‬ ‫‪ ، -entery for this command‬اﻣﺎ ال‪ info‬ﻓﻌﻨﺪﻣﺎ ﻻ ﺗﺠﺪ اﻻﻣﺮ اﻟﺬى ﺗﺒﺤﺚ ﻋﻨﻪ ﻓﺎﻧﻬﺎ ﺗﻔﺘﺢ‬ ‫ﻟﻚ اﻟﺼﻔﺤﻪ اﻟﺮﺋﻴﺴﻴﻪ ﻟﻬﺎ ‪.‬‬ ‫ﻣﻦ هﺬﻩ اﻟﺨﺼﺎﺋﺺ اﻣﻜﺎﻧﻴﻪ ﻃﺒﻌﻬﺎ ‪ ،‬اﻳﻀﺎ ﻃﺒﻴﻌﻪ ﺑﻨﺎﺋﻬﺎ ﻓﻬﻰ ذات ﻃﺒﻴﻌﻪ ﺗﺸﻌﺒﻴﻪ ‪ ،‬ﺑﻤﻌﻨﻰ اﻧﻚ‬ ‫ﺗﺴﺘﻄﻴﻊ اﻟﺘﺘﻨﻘﻞ داﺧﻠﻬﺎ ذهﺎﺑﺎ وإﻳﺎﺑﺎ ‪.‬‬ ‫اﻳﻀﺎ ﻧﻔﺬ اﻻﻣﺮ ‪ info info‬ﻟﻜﻰ ﺗﺮى ﻣﻌﻠﻮﻣﺎت ﻣﻔﺼﻠﻪ ﻋﻦ ال‪ info‬وآﻴﻔﻴﻪ اﻟﺘﻌﺎﻣﻞ ﻣﻊ ﺻﻔﺤﺎﺗﻬﺎ‪.‬‬ ‫ﻟﻠﺘﺤﺮك ﻟﻼﻣﺎم )رأﺳﻴﺎ( اﻟﺼﻔﺤﻪ اﻟﻤﻘﺒﻠﻪ‬ ‫‪N‬‬ ‫ﻟﻠﺘﺤﺮك ﻟﻠﺨﻠﻒ ~~~ اﻟﺼﻔﺤﻪ اﻟﺴﺎﺑﻘﻪ‬ ‫‪P‬‬ ‫ﻟﻠﺘﺤﺮك ﻻﻋﻠﻰ )اﻓﻘﻴﺎ(‬ ‫‪U‬‬ ‫ﻋﻨﺪ اﻟﺘﻌﻤﻖ داﺧﻞ اﻟﺼﻔﺤﺎت ﻓﻬﺬا اﻟﻤﻔﺘﺎح ﻳﺮﺟﻌﻚ اﻟﻰ اﻟﺼﻔﺤﻪ اﻟﺮﺋﻴﺴﻴﻪ ﻟﻞ‪info‬‬ ‫‪D‬‬ ‫ﻟﻠﺒﺤﺚ داﺧﻞ اﻟﺼﻔﺤﻪ‬ ‫ﺑﺤﺚ ﻣﻦ اﻋﻠﻰ ﻻﺳﻔﻞ‪ ،‬ﻣﺜﻞ ﺻﻔﺤﺎت ال‪man‬‬ ‫‪/‬‬ ‫ﻟﻠﺒﺤﺚ ﺑﺪون ﻣﺮاﻋﺎﻩ ﺣﺎﻟﻪ اﻟﺤﺮوف‬ ‫‪s‬‬ ‫ﻟﻠﺒﺤﺚ ﻣﻊ ﻣﺮاﻋﺎﻩ ﺣﺎﻟﻪ اﻟﺤﺮوف ‪case-sensetive‬‬ ‫‪S‬‬ ‫ﻟﻠﺨﺮوج ﻣﻦ ال‪info‬‬ ‫‪Q‬‬ ‫ﺣﺎول ﺗﺠﺮﺑﻪ اﻟﻤﻔﺘﺎح ? وﻟﺴﻮف ﺗﺠﺪ ﻋﺪد آﺒﻴﺮﺟﺪا ﻣﻦ اﻟﻤﻔﺎﺗﻴﺢ اﻟﺘﻰ ﻳﻤﻜﻨﻚ اﻟﺘﻌﺎﻣﻞ ﻣﻊ ال‪ info‬ﺑﻬﺎ‪.‬‬ ‫وﻓﻰ اﻋﻠﻰ ﺻﻔﺤﻪ ال‪ info‬ﺳﻄﺮ ﻳﺤﺪد ﻟﻚ ﻋﻠﻰ اى اﻣﺮاو ﻋﻨﻮان ﺗﻘﻒ وﻳﺴﻤﻰ ‪ ، node‬اﻳﻀﺎ‬ ‫ﻳﺨﺒﺮك ﻣﺎ اﻟﻌﻨﻮان اﻟﺬى ﻳﺴﺒﻖ هﺬﻩ اﻟﺼﻔﺤﻪ وﻣﺎ اﻟﺬى ﻳﻠﻴﻬﺎ اى ‪ next‬و‪ ) prev‬رأﺳﻴﺎ( ‪ ،‬وﻣﺎ اﻟﺬى‬ ‫ﻳﻌﻠﻮهﺎ )اﻓﻘﻴﺎ(‪.‬‬ ‫ﻣﻔﺎﺗﻴﺢ اﻟﺘﻌﺎﻣﻞ ﻣﻊ ال ‪info page‬‬ ‫اﻟﺘﻨﻘﻞ ﻓﻰ اﻟﺼﻔﺤﻪ‬ ‫‪e‬‬ ‫‪space‬‬ ‫‪b‬‬ ‫‪ del‬او‪b-space‬‬ ‫ﻟﻠﺬهﺎب ﻟﻨﻬﺎﻳﻪ اﻟﺼﻔﺤﻪ ‪ end‬ﻣﺒﺎﺷﺮﻩ‬ ‫ﻟﻠﺬهﺎب ﻻﺧﺮ اﻟﺼﻔﺤﻪ ﺧﻄﻮﻩ ﺧﻄﻮﻩ‬ ‫ﻟﻠﺮﺟﻮع ﻻول اﻟﺼﻔﺤﻪ ‪ begain‬ﻣﺒﺎﺷﺮﻩ‬ ‫ﻟﻠﺮﺟﻮع ﻻول اﻟﺼﻔﺤﻪ ﺧﻄﻮﻩ ﺧﻄﻮﻩ‬ ‫اﻟﺘﻨﻘﻞ ﺑﻴﻦ اﻟﺼﻔﺤﺎت‬ ‫هﺬﻩ اﻟﻌﻼﻣﻪ ﻓﻰ اول اﻟﺴﻄﺮ دﻟﻴﻞ ﻋﻠﻰ وﺟﻮد ﺻﻔﺤﻪ ﺟﺪﻳﺪﻩ ‪ ،‬ﺗﺤﺮك ﺑﺎﻻﺳﻬﻢ‬ ‫)*(‬ ‫وﻗﻒ ﻋﻠﻴﻬﺎ واﺿﻐﻂ ‪ enter‬ﻟﻠﺪﺧﻮل ﻟﻬﺬﻩ اﻟﺼﻔﺤﻪ ‪.

‬‬ .‬‬ ‫اﻳﻀﺎ ﻣﻦ اﻟﻤﻠﻔﺎت اﻟﻬﺎﻣﻪ ﻣﻠﻒ ‪ README‬اﻟﺬى ﻳﺸﺮح ﻟﻚ ﻣﺎ هﺬﻩ ال‪ package‬وﻣﺎ اﻟﺬى ﺗﺆدﻳﻪ‬ ‫ﺑﺎﻻﺿﺎﻓﻪ اﻟﻰ ﻧﺒﺬﻩ ﻣﻔﻴﺪﻩ ﻋﻨﻬﺎ‪.‬‬ ‫‪ FAQ‬او آﻤﺎ هﻮ ﻣﻌﺮوف ‪ ،‬اﺧﺘﺼﺎر ل ‪ frequently asked questions‬اﻳﻀﺎ هﻮ ﻣﻦ‬ ‫اﻟﻤﻠﻔﺎت اﻟﻤﻔﻴﺪﻩ واﻟﺬى ﻳﺠﻴﺐ ﻋﻦ اﻻﺳﺌﻠﻪ اﻟﺘﻰ ﻣﻦ اﻟﻤﻔﺘﺮض اﻧﻬﺎ ﺳﺘﺪور ﻓﻰ ذهﻦ اﻟﻤﺴﺘﺨﺪم اﻟﺠﺪﻳﺪ ‪.bash‬‬ ‫ﻣﺎ اﻟﺬى ﺗﻘﺮأﻩ ﺑﺎﻟﻀﺒﻂ‬ ‫ﺗﺘﻜﻮن اﻟﻮﺛﺎﺋﻖ ﻣﻦ ﻋﺪﻩ ﻣﻠﻔﺎت وﻳﺘﺤﺪد ﻣﺎ اﻟﺬى ﺳﺘﻘﺮأﻩ ﻋﻠﻰ ﺣﺴﺐ ﻣﺎ اﻟﺬى ﺗﺮﻳﺪﻩ ‪.‬‬ ‫وهﻨﺎك ﻣﻠﻔﺎت اﺧﺮى ذات ﻗﻴﻤﻪ ‪ ،‬ﺣﺎول اﺳﺘﻌﺮاﺿﻬﺎ ﻟﻜﻰ ﺗﺘﻌﺮف اآﺜﺮ واآﺜﺮ ﻋﻠﻰ هﺬا اﻟﻨﻮع ﻣﻦ‬ ‫اﻟﻤﺴﺎﻋﺪﻩ ‪.‬‬ ‫واﻟﻤﻜﺎن اﻟﺮﺋﻴﺴﻰ ﻟﻬﺬﻩ اﻟﻮﺛﺎﺋﻖ هﻮ اﻟﻤﺴﺎر ‪/usr/share/doc/xxxxx‬‬ ‫ﻓﻴﻤﻜﻨﻚ اﻻن اﺳﺘﻌﺮاض اﻟﻜﺘﻴﺒﺎت اﻟﻤﻮﺟﻮدﻩ )اذا آﻨﺖ ﺗﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻨﻈﺎم ﻣﻦ ﺧﻼل ال‪ GUI‬ﻓﻼﺣﻆ‬ ‫اﻧﻪ ﻋﻦ ﻓﺘﺢ ﻣﺴﺘﻌﺮض اﻻﻧﺘﺮﻧﺖ ‪ mozilla-‬ﻣﺜﻼ‪ -‬ﺳﺘﺠﺪ ان اﻟﺼﻔﺤﻪ ال‪ deafult‬ﻟﻪ هﻰ ﻣﻜﺎن ال‬ ‫‪ documantation‬اﻻﺳﺎﺳﻴﻪ ﺑﺎﻟﻨﻈﺎم وهﻮ اﻟﻤﺴﺎر اﻟﺴﺎﺑﻖ ذآﺮﻩ( ‪.‬‬ ‫اﻣﺎ ان آﻨﺖ ﺗﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻨﻈﺎم ﻣﻦ ﺧﻼل ال‪ consol‬او ال‪ ، terminal‬ﻣﺜﻞ ﻣﺎ اﻓﻌﻞ ‪ ،‬ﻓﻴﻤﻜﻨﻚ‬ ‫اﺳﺘﻌﺮاﺿﻬﺎ ﺑﻌﺪﻩ اواﻣﺮ ﻣﺜﻞ ) ‪ cat‬او ‪ less‬او‪ more‬او ﺣﺘﻰ ‪ ( vi‬ﻓﻘﻂ ﻧﻔﺬ اﻻﻣﺮ اﻟﺘﺎﻟﻰ‬ ‫‪cat /usr/share/doc‬‬ ‫وﻃﺒﻌﺎ ﺳﺘﻀﻐﻂ ‪ double tab‬ﻟﻜﻰ ﺗﺠﻌﻞ اﻟﻨﻈﺎم ﻳﻌﺮض ﻋﻠﻴﻚ ﺳﺮد آﻞ ﻣﺎ ﻳﺤﻮﻳﻪ هﺬا اﻟﻤﺠﻠﺪ‬ ‫اﻣﺎﻣﻚ ﻟﺘﺨﺘﺎر ﻣﻨﻬﺎ ‪،‬‬ ‫اﻣﺎ اذا آﻨﺖ ﺗﻌﻠﻢ ﻣﺎاﻟﺬى ﺗﺮﻳﺪﻩ ﺑﺎﻟﻀﺒﻂ ﻓﻤﺎ ﻋﻠﻴﻚ اﻻ آﺘﺎﺑﻪ اﻻﺳﻢ آﻠﻪ او ﻋﻠﻰ اﻻﻗﻞ ﺟﺰء ﻣﻨﻪ ﻣﺜﻞ‬ ‫‪ bas‬ﻟﻞ‪ bash‬وذﻟﻚ ﻋﻨﺪ ارادﻩ اﻟﺒﺤﺚ ﻋﻦ ﻣﻌﻠﻮﻣﺎت او آﺘﻴﺒﺎت ﻋﻦ ال‪.‫اﻟﻨﻮع اﻟﺜﺎﻧﻰ ﻣﻦ اﻟﻤﺴﺎﻋﺪﻩ‬ ‫اﻟﻮﺛﺎﺋﻖ اﻟﻤﻮﺟﻮدﻩ ﻣﻊ اﻟﻨﻈﺎم‬ ‫هﺬا اﻟﻨﻮع ﻣﻦ اﻟﻤﺴﺎﻋﺪﻩ اﻟﻤﻘﺼﻮد ﺑﻪ اﻟﻮﺛﺎﺋﻖ اﻟﺘﻰ ﺗﺎﺗﻰ ﻣﻊ اﻻواﻣﺮ واﻟﺒﺮاﻣﺞ ‪ ،‬وهﺬد اﻟﻨﻮع ﻣﻦ‬ ‫اﻟﻤﺴﺎﻋﺪﻩ هﻮ اﻟﺬى ﻳﻤﻜﻦ اﻻﻋﺘﻤﺎد ﻋﻠﻴﻪ ﻓﻰ ﺗﻌﻠﻢ اﻟﻠﻴﻨﻮآﺲ او اﻟﻨﻈﺎم ‪.‬‬ ‫اﻣﺎ ان آﻨﺖ ﺗﺒﺤﺚ ﻋﻦ آﺎﺗﺐ هﺬا اﻟﺒﺮﻧﺎﻣﺞ وﺑﺮﻳﺪﻩ اﻻﻟﻴﻜﺘﺮوﻧﻰ ﻓﻤﻠﻒ ‪ AUTHORS‬هﻮ اﻻﻧﺴﺐ ﻓﻰ‬ ‫هﺬﻩ اﻟﺤﺎﻟﻪ‪.‬‬ ‫ﻓﻌﻨﺪﻣﺎ ﺗﺤﺎول ﺗﻨﺰﻳﻞ ﺑﺮﻧﺎﻣﺞ ﺟﺪﻳﺪ ‪ program package‬ﻟﻠﻨﻈﺎم او ﺣﺘﻰ ﺗﺤﺪﻳﺜﻪ ‪، up grade‬‬ ‫ﻓﺎﻟﻤﻨﺎﺳﺐ هﻨﺎ هﻮ ﻗﺮأة ﻣﻠﻒ‪ ، INSTALL‬اﻟﺬى ﻳﺸﺮح ﻟﻚ آﻴﻔﻴﻪ اﻧﺠﺎز ﻣﺜﻞ هﺬﻩ اﻟﻌﻤﻠﻴﻪ ‪.

‬‬ ‫ﻣﻼﺣﻈﻪ‬ ‫)ﻋﺎﻟﻢ ﻟﻴﻨﻮآﺲ ﻏﻨﻰ ﺑﻬﺬا اﻟﻨﻮع ﻣﻦ اﻟﻮﺛﺎﺋﻖ‪ ،‬ﻓﺴﺘﺠﺪ اﻟﻌﺸﺮات واﻟﻌﺸﺮات ﻣﻦ هﺬﻩ اﻟﻨﻮﻋﻴﻪ‪ ،‬وﻃﺒﻌﺎ‬ ‫ﻟﻴﺲ ﻣﻄﻠﻮب ﻣﻨﻚ ان ﺗﻘﺮاهﺎ آﻠﻬﺎ‪ ،‬وﻟﻜﻦ ﺛﻖ‪ ،‬ﻓﻌﻨﺪﻣﺎ ﺗﺤﺘﺎج اﻟﻰ ﻣﺴﺎﻋﺪﻩ ﻻداء ﻣﻬﻤﻪ ﻣﻌﻴﻨﻪ‪ ،‬ﻓﺤﻴﻨﺌﺬ‬ ‫هﺬا هﻮ دور ال‪(HOWTO‬‬ . documentation‬‬ ‫اﻟﺜﺎﻧﻰ وهﻮ اﻟﻤﺘﻌﻠﻖ ﺑﺎﻟﻤﺴﺎﻋﺪﻩ اﻟﻤﺘﺨﺼﺼﻪ‪.‫اﻟﻨﻮع اﻟﺜﺎﻟﺚ ﻣﻦ اﻟﻤﺴﺎﻋﺪﻩ‪.org‬‬ ‫ﻳﻌﺪ هﺬا اﻟﻤﻮﻗﻊ ﻣﻦ اهﻢ اﻟﻤﻮاﻗﻊ اﻟﺘﻰ ﺗﻮﻓﺮ ال‪ doc‬ﻟﻤﺴﺘﺨﺪم ﻟﻴﻨﻮآﺲ ‪ ،‬اﻣﺎ ﺑﺎﻟﻨﺴﺒﻪ ﻻﻧﻮاع ال ‪doc‬‬ ‫اﻟﺘﻰ ﺗﻮﻓﺮهﺎ ﻓﻬﻰ‬ ‫‪the guides -1‬‬ ‫اى آﻤﺎ اﺳﻠﻔﻨﺎاﻟﻜﺘﺐ اﻟﺘﻰ ﺗﻘﻮم ﺑﺸﺮح اﻟﻤﻮﺿﻮﻋﺎت اﻟﻤﺨﺘﻠﻔﻪ ﻓﻰ ﻟﻴﻨﻮآﺲ‪.‬‬ ‫‪HOWTO -2‬‬ ‫هﺬا اﻟﻨﻮع ﻣﻦ ال‪ doc‬ﻳﺮآﺰﻋﻠﻰ ﻣﻬﻤﻪ واﺣﺪﻩ ﻣﻌﻴﻨﻪ وﻳﺸﺮﺣﻬﺎ ﺧﻄﻮﻩ ﺑﺨﻄﻮﻩ ﺣﺘﻰ ﻳﺘﻢ اﻧﺠﺎز هﺬﻩ‬ ‫اﻟﻤﻬﻤﻪ ‪ ،‬ﻣﺜﻼ ان وﺟﺪت وﺛﻴﻘﻪ ﺗﺴﻤﻰ ‪ linux installation HOWTO‬اذا ﻓﻬﻰ ﺗﺮآﺰ ﻋﻠﻰ‬ ‫ﻣﻬﻤﻪ ﺗﻨﺰﻳﻞ اﻟﻨﻈﺎم ﻣﻦ اﻻﻟﻒ اﻟﻰ اﻟﻴﺎء ‪.‬‬ ‫اﻟﻮﺛﺎﺋﻖ واﻟﻤﺴﺘﻨﺪات ﻋﻠﻰ اﻻﻧﺘﺮﻧﺖ‬ ‫هﺬا اﻟﻘﺴﻢ ﻣﻦ اﻟﻮﺛﺎﺋﻖ هﻮ اﻟﻤﺘﻌﻠﻖ ﺑﺎﻟﻤﺴﺎﻋﺪﻩ اﻟﻤﻮﺟﻮدﻩ ﻋﻠﻰ ﺷﺒﻜﻪ اﻻﻧﺘﺮﻧﺖ ‪ ،‬ﺳﻮاء آﺎﻧﺖ هﺬﻩ‬ ‫اﻟﻮﺛﺎﺋﻖ ﻓﻰ ﺷﻜﻞ ﻣﺠﻤﻮﻋﺎت اﻻﺧﺒﺎر او ال‪ mailing list‬او اﻟﻤﺠﻼت اﻟﻤﺘﻌﻠﻘﻪ ﺑﻠﻴﻨﻮآﺲ او ﻏﻴﺮهﺎ ‪. security‬‬ ‫واذا ﺣﺎوﻟﺖ اﻟﺒﺤﺚ ﻋﻦ ﻟﻴﻨﻮآﺲ ﻓﻰ اﺣﺪ ﻣﺤﺮآﺎت اﻟﺒﺤﺚ )‪ (search engine‬ﻣﺜﻞ ‪ google‬او‬ ‫‪ altavista‬ﻋﻠﻰ ﺳﺒﻴﻞ اﻟﻤﺜﺎل ﻓﺴﺘﺠﺪ آﻢ هﺎﺋﻞ ﻣﻦ اﻟﻜﺘﺐ اﻟﺘﻰ ﺗﺘﺤﺪث ﻋﻦ ﻟﻴﻨﻮآﺲ ‪ ،‬وﻟﻜﻦ ﻟﺘﻮﻓﻴﺮ‬ ‫اﻟﻮﻗﺖ واﻟﺠﻬﺪ ﻓﻬﻨﺎك ﻋﺪﻩ ﻣﻮاﻗﻊ )‪ (sites‬هﺪﻓﻬﺎ ﺟﻤﻊ اﻟﻮﺛﺎﺋﻖ )‪ (doc‬اﻟﻤﻬﻤﻪ واﻟﻤﻔﻴﺪﻩ ﻟﻠﻤﻬﺘﻤﻴﻦ‬ ‫ﺑﻠﻴﻨﻮآﺲ‪ ،‬ﺑﺪاﻳﻪ ﻣﻦ اﻟﻤﺴﺘﺨﺪم اﻟﻌﺎدى اﻟﻰ اﻟﻤﺴﺘﺨﺪم اﻟﻤﺘﺨﺼﺺ ‪ ،‬ﻣﻦ هﺬﻩ اﻟﻤﻮاﻗﻊ‬ ‫‪ LDP‬اﺧﺘﺼﺎرا ل ‪ the Linux Documentation Project‬وﻣﻮﻗﻌﻪ ﻋﻠﻰ اﻻﻧﺘﺮﻧﺖ هﻮ‬ ‫‪http://www.‬‬ ‫ﻓﻴﻤﻜﻨﻨﺎ ﺗﺼﻨﻴﻒ اﻟﻤﺴﺎﻋﺪﻩ اﻟﻤﻮﺟﻮدﻩ ﻋﻠﻰ اﻻﻧﺘﺮﻧﺖ اﻟﻰ ﻧﻮﻋﻴﻦ‬ ‫اﻻول هﻮ اﻟﻤﺘﻌﻠﻖ ﺑﺎﻟﻮﺛﺎﺋﻖ اﻟﻤﻜﺘﻮﺑﻪ اوال ‪.‬‬ ‫اﻟﻨﻮع اﻻول‬ ‫وهﺬااﻟﻨﻮع ﻣﻦ اﻟﻮﺛﺎﺋﻖ ‪ doc‬ﻟﻪ ﻋﺪﻩ ﺻﻮر‬ ‫اﻟﻜﺘﺐ ﺑﺸﻜﻠﻬﺎ اﻟﻤﻌﺮوف )‪ (guides‬ﻓﻬﻨﺎك اﻟﻌﺪﻳﺪ واﻟﻌﺪﻳﺪ ﻣﻦ اﻟﻜﺘﺐ اﻟﺘﻰ ﺗﺸﺮح ﻟﻴﻨﻮآﺲ ‪ ،‬ﺑﺪاﻳﻪ ﻣﻦ‬ ‫اﻟﻜﺘﺐ اﻟﺘﻰ ﺗﺸﺮح ﻣﻮاﺿﻴﻊ ﻟﻴﻨﻮآﺲ اﻟﻤﺨﺘﻠﻔﻪ‪ ،‬اﻟﻰ اﻟﻜﺘﺐ اﻟﺘﻰ ﺗﺮآﺰ ﻋﻠﻰ ﻣﻮﺿﻮﻋﺎت ﺑﻌﻴﻨﻬﺎ اﻣﺎ‬ ‫ﻻهﻤﻴﺘﻬﺎ او ﺑﺴﺒﺐ ﺗﺨﺼﺺ آﺎﺗﺒﻬﺎ ﻓﻴﻬﺎ‪ ،‬ﻣﺜﻞ اﻻﻣﺎن ‪.tldp.

‫وهﺬا اﻟﻨﻮع ﻣﻦ اﻟﻮﺛﺎﺋﻖ)‪ (HOWTO‬ﻟﻪ ﺷﻜﻼن‬ ‫اﻻول هﻮ ال‪ HOWTO‬ﻓﻘﻂ ‪ ،‬اى ‪normal HOWTO‬‬ ‫اﻣﺎ اﻟﺜﺎﻧﻰ ﻓﻬﻮ ال ‪ mini HOWTO‬وﻳﺘﻤﻴﺰ ﻋﻦ اﻻول ﺑﺼﻐﺮ ﺣﺠﻤﻪ ‪.‬‬ ‫)وﻟﻜﻦ ﻳﻼﺣﻆ اﻧﻪ ﺑﻌﺪ ﺗﺎرﻳﺦ ‪ 24/7/2003‬ﻗﺪ ﺗﻢ دﻣﺞ اﻟﻨﻮع اﻟﺜﺎﻧﻰ ‪ mini‬ﻓﻰ اﻻول ‪normal‬‬ ‫واﺻﺒﺢ هﻨﺎك ﺻﻴﻐﻪ واﺣﺪﻩ ﻟﻼﺛﻨﺎن هﻰ‪ HOWTO‬ﻓﻘﻂ(‬ ‫وال‪ HOWTO‬ﻣﺘﻮاﻓﺮﻩ ﻓﻰ ﺻﻴﻎ آﺜﻴﺮﻩ ﻓﺘﺠﺪهﺎ ‪ pdf‬او ‪ plain text‬او ‪. ( /usr/share/doc/HOWTO‬‬ ‫اﻣﺎ ﻓﻰ ﺣﺎﻟﻪ ﻋﺪم وﺟﻮدهﺎ ﻓﻰ هﺬا اﻟﻤﻜﺎن ﻓﻴﻤﻜﻨﻚ ﺗﻨﺰﻳﻠﻬﺎ ﺑﻨﻔﺴﻚ ﻳﺪوﻳﺎ ‪ ،‬وذﻟﻚ ﺑﺎﻧﺸﺎء ﻣﺠﻠﺪ ﻳﺴﻤﻰ‬ ‫‪ howto‬وﻧﺴﺦ هﺬﻩ ال‪ doc‬ﺑﺪاﺧﻠﻪ ‪.‬‬ ‫وهﻨﺎك اﻳﻀﺎ ﻧﻮع اﺧﺮ ﻣﻦ ال‪ doc‬وﻟﻜﻨﻪ ﻟﻴﺲ ﻣﻮﺟﻮد ﻓﻰ ﻣﻮﻗﻊ ‪،LDP‬هﺬا اﻟﻨﻮع هﻮ‬ . html‬‬ ‫اﻣﺎ ﺑﺎﻟﻨﺴﺒﻪ ﻟﻌﺪد ﺻﻔﺤﺎﺗﻬﺎ ﻓﻬﻮ ﻣﺘﺒﺎﻳﻦ‬ ‫ﻓﻘﺪ ﺗﺠﺪ وﺛﻴﻘﻪ ‪ 4‬ﺻﻔﺤﺎت ﻣﺜﻞ ‪linux+win+grub HOWTO‬‬ ‫وﻗﺪ ﺗﺠﺪهﺎ ‪ 23‬ﺻﻔﺤﻪ ﻣﺜﻞ ‪installation HOWTO‬‬ ‫اﻣﺎ ﺑﺎﻟﻨﺴﺒﻪ ل ‪ hardware HOWTO‬ﻓﺎﻧﻚ ﺗﺠﺪهﺎ ‪ 183‬ﺻﻔﺤﻪ – ﻳﺘﺤﺪث آﺎﺗﺒﺎهﺎ ‪Steven‬‬ ‫‪ Pritchard‬و‪ Patrick Reijnen‬ﻋﻦ آﻞ اﻧﻮاع ال‪ ،devices‬اﻟﺘﻰ ﺗﺘﻮاﻓﻖ واﻟﺘﻰ ﻻﺗﺘﻮاﻓﻖ ﻣﻊ‬ ‫ﻟﻴﻨﻮآﺲ ‪ ،‬ﺑﺪاﻳﻪ ﻣﻦ اﻟﻤﻌﺎﻟﺠﺎت اﻟﺘﻰ ﺗﺨﺪم اﻟﺴﻴﺮﻓﺮات اﻟﻰ آﺮوت اﻟﺼﻮت واﻟﻤﻮدم‪.‬‬ ‫ﻣﻠﺤﻮﻇﻪ‬ ‫)ﻗﺪ ﺗﻨﺰل ال‪ HOWTO‬ﻣﻊ ال ‪ documentation‬اﻟﺘﻰ ﺗﻨﺰل ﺑﺎﻟﻨﻈﺎم ك ‪، default‬‬ ‫هﺬا اذا آﺎﻧﺖ اﻟﻨﺴﺨﻪ اﻟﺘﻰ ﻟﺪﻳﻚ ﻣﻦ ﻟﻴﻨﻮآﺲ ﺗﺪﻋﻢ هﺬا اﻟﻨﻮع ﻣﻦ ال‪ ،doc‬ﺣﻴﻨﺌﺬ ﺳﻴﻜﻮن ﻣﻜﺎﻧﻬﺎ هﻮ‬ ‫‪.‬‬ ‫‪ linux gazette -5‬و ‪linux focus‬‬ ‫ﻳﻮﻓﺮ ‪ LPD‬اﻳﻀﺎ ﻣﺠﻠﺘﺎن ‪ online‬ﻋﻦ ﻟﻴﻨﻮآﺲ واﺳﺮارﻩ‪ ،‬هﻤﺎ ﻟﻴﻨﻮآﺲ ﻓﻮآﺲ و ﻟﻴﻨﻮآﺲ ﺟﺎزﻳﺖ ‪.‬‬ ‫‪man page -3‬‬ ‫ﻳﻮﻓﺮ ‪ LDP‬اﻳﻀﺎ ﺻﻔﺤﺎت اﻟﻤﺴﺎﻋﺪﻩ ‪ man page‬واﻟﺘﻰ ﻳﻤﻜﻨﻚ ان ﺗﻨﺰﻟﻬﺎ ‪ download‬ﻣﻦ‬ ‫اﻟﻤﻮﻗﻊ وﺗﻔﻚ ﺿﻐﻄﻬﺎ ﺛﻢ ﺗﻨﺰﻟﻬﺎ ‪ install‬ﻋﻠﻰ ﻧﻈﺎﻣﻚ)هﺬا ان ﻟﻢ ﺗﻜﻦ ﻗﺪ ﻧﺰﻟﺖ ‪ install‬ﻣﻊ اﻟﻨﻈﺎم ك‬ ‫‪ default‬آﻤﺎ هﻰ اﻟﻌﺎدﻩ ‪ ،‬او اذا اردت ان ﺗﻨﺰﻟﻬﺎ ﺑﻠﻐﻪ اﺧﺮى ﻏﻴﺮ اﻻﻧﺠﻠﻴﺰﻳﻪ ‪ -‬ﻓﺎﻧﻬﺎ ﺗﺘﻮاﻓﺮ ﻓﻰ ‪8‬‬ ‫ﻟﻐﺎت ﺑﺠﺎﻧﺐ اﻻﻧﺠﻠﻴﺰﻳﻪ(‬ ‫‪ FAQ -4‬او‪Frequently Asked Questions‬‬ ‫ﻗﺪ ﺗﺠﺪ ﻓﻰ هﺬا اﻟﻤﻮﻗﻊ ﻋﺪد ﻻ ﺑﺎس ﺑﻪ ﻣﻦ ال‪ faq‬واﻟﺘﻰ ﺗﺸﺮح ﻣﻮﺿﻮع ﻣﻌﻴﻦ ﻋﻦ ﻃﺮﻳﻖ ﻃﺮح‬ ‫اﻻﺳﺌﻠﻪ اﻟﺒﺪﻳﻬﻴﻪ ﺣﻮل هﺬا اﻟﻤﻮﺿﻮع ‪ ،‬ﻓﺘﺠﺪهﺎ ﻋﺒﺎرﻩ ﻋﻦ ﺳﺆال واﺟﺎﺑﺘﻪ ‪ ،‬وذﻟﻚ ﻟﻴﻤﻬﺪ واﻳﻀﺎ ﻟﻴﺠﻴﺐ‬ ‫ﻋﻠﻰ اﻻﺳﺌﻠﻪ اﻟﺘﻰ ﺗﺪور ﻓﻰ ذهﻦ اﻟﻤﺴﺘﺨﺪم اﻟﺠﺪﻳﺪ ﻋﻦ ﻣﻮﺿﻮع ﺑﻌﻴﻨﻪ ‪ ،‬ﻓﻤﺜﻼ ‪ linux faq‬ﻳﺴﺎل‬ ‫اﺳﺌﻠﻪ ﻣﺜﻞ ﻣﺎ هﻮ ﻟﻴﻨﻮآﺲ ‪ ،‬هﻞ ﻟﻴﻨﻮآﺲ هﻮ ﻳﻮﻧﻜﺲ ‪ ،‬آﻴﻒ ﻳﻨﻄﻖ ﻟﻴﻨﻮآﺲ وهﻜﺬا ﺛﻢ ﻳﺠﻴﺐ ﻋﻨﻬﺎ‪.

unc.‬‬ .edu/pub/docs/rfc‬‬ ‫اﻟﺜﺎﻧﻰ هﻮ اﻟﻤﺘﻌﻠﻖ ﺑﺎﻟﻤﺴﺎﻋﺪﻩ اﻟﻤﺘﺨﺼﺼﻪ ‪. news groups‬‬ ‫وﻟﻜﻦ ﺑﺪاﻳﻪ ﻣﺎ هﻰ ﻗﻮاﺋﻢ اﻟﺒﺮﻳﺪ وﻣﺠﻤﻮﻋﺎت اﻻﺧﺒﺎر‪.‫‪RFC -6‬‬ ‫اﻟﺬى ﻳﻌﺪ اﺧﺘﺼﺎر ل‪ request for comments‬او )ﻃﻠﺐ ﻟﻠﺘﻌﻘﻴﺐ ﻋﻠﻴﻪ(‪،‬وهﺬا اﻟﻨﻮع ﻣﻦ ال‬ ‫‪ doc‬ﻳﻌﺪ )ﻣﻌﻴﺎرﻋﻠﻰ ﺷﺒﻜﻪ اﻻﻧﺘﺮﻧﺖ( ‪ internet standard‬اﻟﻬﺪف ﻣﻨﻪ ﺗﻌﺮﻳﻒ آﻞ ﺷﻰ ﻋﻦ‬ ‫اﺗﺼﺎﻻت اﻻﻧﺘﺮﻧﺖ او ﻋﻦ ﻣﻮﺿﻮع ﺑﻌﻴﻨﻪ‪ ،‬ﺑﻤﻌﻨﻰ اﺧﺮ اذا وﺟﺪت ﻣﺜﻼ ﻓﻰ ﺻﻔﺤﺎت ال‪ man‬هﺬﻩ‬ ‫اﻟﺠﻤﻠﻪ)‪ (RFC1290‬ﻓﻬﺬا ﻳﻌﻨﻰ اﻻﺗﻰ ) ﻟﻜﻰ ﺗﻜﻮن ﻣﻠﻤﺎ ﺑﺘﻔﺎﺻﻴﻞ هﺬا اﻟﻤﻮﺿﻮع ﻓﻴﺴﺘﺤﺴﻦ اﻟﺮﺟﻮع‬ ‫ﻟﻬﺬﻩ اﻟﻮﺛﻴﻘﻪ ذات اﻟﺮﻗﻢ اﻟﻔﻼﻧﻰ ﻟﻜﻰ ﺗﻘﻒ ﻋﻠﻰ اﻟﺘﻔﺎﺻﻴﻞ اﻟﺪﻗﻴﻘﻪ ﻟﻬﺬا اﻟﻤﻮﺿﻮع (‬ ‫وآﻤﺎ اﺳﻠﻔﺖ ﻓﺎن ﻣﻮﻗﻊ ‪ LDP‬ﻟﻴﺲ ﺑﻪ هﺬا اﻟﻨﻮع ﻣﻦ اﻟﻮﺛﺎﺋﻖ وﻟﻜﻨﻬﺎ ﺗﻮﺟﺪ ﻓﻰ ﻣﻮﻗﻊ‬ ‫‪ftp://metalab.‬‬ ‫ﻗﻮاﺋﻢ اﻟﺒﺮﻳﺪ‪ ،‬هﻰ ﺑﺒﺴﺎﻃﻪ ﻗﺎﺋﻤﻪ )ﻃﻮﻳﻠﻪ او ﻗﺼﻴﺮﻩ( ﻣﻦ ﻋﻨﺎوﻳﻦ اﻟﺒﺮﻳﺪ اﻻﻟﻜﺘﺮوﻧﻰ‪ ،‬ﻟﻬﺎ ﻋﻨﻮان‬ ‫رﺋﻴﺴﻰ وﻋﻨﺪﻣﺎ ﻳﺮﺳﻞ اى ﺷﺨﺺ رﺳﺎﻟﻪ اﻟﻰ اﻟﻌﻨﻮان اﻟﺮﺋﻴﺴﻰ ﻟﻬﺬﻩ اﻟﻘﺎﺋﻤﻪ ﻓﺎن هﺬﻩ اﻟﺮﺳﺎﻟﻪ ﺗﺼﻞ‬ ‫اﻟﻰ آﻞ ﻋﻨﺎوﻳﻦ اﻻﺷﺨﺎص اﻟﺘﻰ ﺗﺤﻮﻳﻬﺎ هﺬﻩ اﻟﻘﺎﺋﻤﻪ‪.‬‬ ‫وﺗﻌﻤﻞ هﺬﻩ اﻟﻤﺠﻤﻮﻋﺎت ﺑﻄﺮﻳﻘﻪ ﻣﺨﺘﻠﻔﻪ ﻋﻦ ﻗﻮاﺋﻢ اﻟﺒﺮﻳﺪ‪ ،‬ﻓﻔﻰ ﻗﻮاﺋﻢ اﻟﺒﺮﻳﺪ ﻣﺎ ﻋﻠﻴﻚ اﻻ ﻓﺘﺢ ال‪mail‬‬ ‫اﻟﺨﺎص ﺑﻚ واﺳﺘﻌﺮاض اﻟﺮﺳﺎﺋﻞ اﻟﺘﻰ ارﺳﻠﺖ اﻟﻰ اﻟﻤﺠﻤﻮﻋﻪ)اﻟﻘﺎﺋﻤﻪ( اﻟﻤﻮﺟﻮد ﺑﻬﺎ ﻋﻨﻮاﻧﻚ اﻟﺒﺮﻳﺪى‬ ‫اﻣﺎ ﺑﺎﻟﻨﺴﺒﻪ ﻟﻤﺠﻤﻮﻋﺎت اﻻﺧﺒﺎر ‪ news groups‬ﻓﺎﻧﺖ ﺗﻘﻮم ﺑﺰﻳﺎرﻩ اﻟﻤﻜﺎن اﻟﺬى ﺑﻪ هﺬﻩ اﻟﺮﺳﺎﺋﻞ‬ ‫واﻟﺬى ﻳﺴﻤﻰ ‪) news server‬ﺧﺎدم اﻻﺧﺒﺎر(‪.‬‬ ‫هﺬا ﻣﻦ ﻧﺎﺣﻴﺘﻚ اﻧﺖ آﻘﺎرى ﻟﻬﺬﻩ اﻻﺧﺒﺎر وﻟﻜﻦ آﻴﻒ ﺗﺴﻴﺮ اﻻﻣﻮرﻗﺒﻞ ﻗﺮاءﺗﻚ ﻟﻠﺮﺳﺎﺋﻞ؟‬ ‫اوﻻ ﻣﺮﺳﻞ اﻟﺮﺳﺎﻟﻪ ﻣﺎ ﻋﻠﻴﻪ اﻻ ارﺳﺎﻟﻬﺎ اﻟﻰ ال ‪، news server‬‬ ‫وهﺬا اﻻﺧﻴﺮ ﻳﻘﻮم ﺑﻨﺸﺮهﺎ ﻋﻠﻰ ﺑﻘﻴﻪ ال‪ news servers‬اﻟﻤﻨﺘﺸﺮﻳﻦ ﺣﻮل اﻟﻌﺎﻟﻢ واﻟﻤﺸﺘﺮآﻴﻦ ﻣﻌﻪ‬ ‫ﻓﻰ ﺧﺪﻣﻪ ﻧﻔﺲ اﻟﻤﺠﻤﻮﻋﻪ اﻻﺧﺒﺎرﻳﻪ‪،‬‬ ‫اى اﻧﻪ هﻨﺎك ﻣﺠﻤﻮﻋﻪ اﺧﺒﺎر ‪ news group‬واﺣﺪﻩ ‪ ،‬واﻟﻌﺪﻳﺪ ﻣﻦ ال‪ news servers‬ﻣﻨﺘﺸﺮﻩ‬ ‫ﺣﻮل اﻟﻌﺎﻟﻢ‪.‬‬ ‫وﻗﺪ آﺎﻧﺖ هﺬﻩ اﻟﻄﺮﻳﻘﻪ ﻓﻴﻤﺎ ﻣﻀﻰ ﻣﻦ اهﻢ ﻣﻤﻴﺰات اﻻﻧﺘﺮﻧﺖ واﻟﻄﺮﻳﻘﻪ اﻟﻮﺣﻴﺪﻩ ﻟﻠﺤﺼﻮل ﻋﻠﻰ‬ ‫اﻟﻤﻌﻠﻮﻣﺎت‪ ،‬وﻟﻜﻨﻬﺎ اﻻن ﻗﺪ اﺳﺘﺒﺪﻟﺖ ﺑﻄﺮﻳﻘﻪ ﺟﺪﻳﺪﻩ ﻓﻰ ﻧﻘﻞ اﻻﺧﺒﺎر اﻻ وهﻰ ﻣﺠﻤﻮﻋﺎت اﻻﺧﺒﺎر و‬ ‫)ﻣﺎ زاﻟﺖ ﻗﻮاﺋﻢ اﻟﺒﺮﻳﺪ هﺬﻩ ﻗﻴﺪ اﻻﺳﺘﺨﺪام وﻟﻜﻨﻬﺎ ﻓﻰ ﻧﻄﺎق ﺿﻴﻖ ﻧﻈﺮا ﻻﻧﻬﺎ ﺗﺘﻌﺎﻣﻞ ﻣﻊ ﻣﺠﻤﻮﻋﺎت‬ ‫ﻣﻐﻠﻘﻪ(‬ ‫ﻣﺠﻤﻮﻋﺎت اﻻﺧﺒﺎر هﻰ اﻟﻄﺮﻳﻘﻪ اﻻﺣﺪث ﻓﻰ ﻧﻘﻞ اﻻﺧﺒﺎر واﻟﻤﻌﻠﻮﻣﺎت‪ ،‬ﻓﻴﻤﻜﻦ اﻋﺘﺒﺎرهﺎ آﻠﻮﺣﻪ‬ ‫اﻋﻼﻧﺎت ﻋﺎﻟﻤﻴﻪ ‪.‬‬ ‫وﻟﺘﻮﺿﻴﺢ هﺬا اﻟﻨﻮع اآﺜﺮ‪ ،‬ﻧﻘﻮل هﻮاﻟﻤﺴﺎﻋﺪﻩ اﻟﺘﻰ ﺗﺘﻢ ﻋﻦ ﻃﺮﻳﻖ ﻗﻮاﺋﻢ اﻟﺒﺮﻳﺪ‪ mailing list‬وﻋﻦ‬ ‫ﻃﺮﻳﻖ ﻣﺠﻤﻮﻋﺎت اﻻﺧﺒﺎر ‪.

com‬‬ ‫ﺛﺎﻟﺜﺎ ﻋﻦ ﻃﺮﻳﻖ ال‪ web browser‬ﻣﺜﻞ ‪ mozilla‬او ‪، netscape‬‬ ‫ﻓﻜﻼهﻤﺎ ﻳﻮﻓﺮان ‪news & mail reader application‬‬ ‫ﻣﻼﺣﻈﻪ‬ ‫)ﻳﻼﺣﻆ اﻧﻪ ﻓﻰ اﻟﻌﺎﻟﻢ اﻻن اآﺜﺮ ﻣﻦ ‪16‬اﻟﻒ ﻣﺠﻤﻮﻋﻪ اﺧﺒﺎرﻳﻪ ﺗﻐﻄﻰ آﻞ ﻧﻮاﺣﻰ اﻟﺤﻴﺎﻩ اﻟﺘﻰ‬ ‫ﺗﺘﺼﻮرهﺎ واﻟﺘﻰ اﻳﻀﺎ ﻻ ﺗﺘﺼﻮرهﺎ ‪. USENET‬‬ .‬‬ ‫آﻴﻒ ﺗﺴﺘﻄﻴﻊ ﻗﺮأة هﺬﻩ ‪ news groups‬؟‬ ‫ﻳﺘﻢ ﻗﺮأة هﺬﻩ اﻟﺮﺳﺎﺋﻞ ﺑﻌﺪﻩ ﻃﺮق ‪،‬‬ ‫ﻓﺎوﻻ ان آﺎن )ﻣﻮﻓﺮ ﺧﺪﻣﺎت اﻻﻧﺘﺮﻧﺖ( اﻟﺬى ﺗﺘﻌﺎﻣﻞ ﻣﻌﻪ ﻳﻮﻓﺮ ﺧﺪﻣﻪ ال‪ news groups‬ﻓﻴﻤﻜﻨﻚ‬ ‫اﻻﺗﺼﺎل ﺑﺎ‪ news server‬اﻟﺨﺎص ﺑﻪ وﻣﻦ ﺛﻢ اﺳﺘﻌﺮاض اﻟﺮﺳﺎﺋﻞ اﻟﺘﻰ ﻳﺤﺘﻔﻆ ﺑﻬﺎ ‪.‬‬ ‫ﻓﻬﻰ ﺷﺒﻜﻪ ﻋﻤﻼﻗﻪ ﺟﺪا ﻳﻌﺪهﺎ اﻟﺨﺒﺮاء ﻣﺮادﻓﻪ ﻟﻼﻧﺘﺮﻧﺖ وﺗﺴﻴﺮ ﺑﻤﺤﺎزاﺗﻪ ‪ ،‬وﻳﻄﻠﻖ ﻋﻠﻴﻬﺎ اﻳﻀﺎ‬ ‫اﻟﻤﺼﻄﻠﺢ ‪(.‬‬ ‫ﺛﺎﻧﻴﺎ ‪-‬وهﻰ اﻟﻄﺮﻳﻘﻪ اﻻﺳﻬﻞ‪ -‬اﺳﺘﺨﺪام ﺧﺪﻣﻪ ﻗﺮأة اﻟﺮﺳﺎﺋﻞ واﻟﺘﻰ ﺗﻮﻓﺮهﺎ ﻣﻮاﻗﻊ ﻣﺜﻞ ‪ google‬ﻋﻠﻰ‬ ‫اﻟﻌﻨﻮان اﻟﺘﺎﻟﻰ‬ ‫‪http://groups.‬‬ ‫واﻟﻤﻔﺘﺮض ان آﻞ ‪) ISP‬ﻣﻮﻓﺮ ﺧﺪﻣﺎت ﻟﻼﻧﺘﺮﻧﺖ( ﻳﺠﺐ ﻋﻠﻴﻪ ﺗﻮﻓﻴﺮ هﺬا ال‪ news server‬وﻟﻜﻦ‬ ‫ﻃﺒﻌﺎ ﻻن ال‪ news server‬وﻇﻴﻔﺘﻪ اﻟﺮﺋﻴﺴﻴﻪ هﻰ ﺗﺨﺰﻳﻦ وﺣﻔﻆ اﻟﺮﺳﺎﺋﻞ ﻟﻜﻰ ﻳﺴﺘﻄﻴﻊ اﻟﻘﺎرى‬ ‫ﻗﺮأﺗﻬﺎ ﻓﻴﻤﺎ ﺑﻌﺪ ‪ ،‬ﻓﻬﻮ ﻣﻦ وﺟﻬﻪ ﻧﻈﺮ ال‪) ISP‬وهﻰ ﺷﺮآﺎت ﺗﺠﺎرﻳﻪ ﻓﻰ اﻟﻤﻘﺎم اﻻول( ﺗﻜﻠﻔﻪ ﻓﻰ اﻻﻣﻜﺎن‬ ‫اﻻﺳﺘﻐﻨﺎء ﻋﻨﻬﺎ ‪ .‬وﻟﻜﻦ ﻣﻊ ذﻟﻚ هﻨﺎك اﻟﻌﺪﻳﺪ ﻣﻦ ال‪ ISP‬اﻟﺘﻰ ﺗﻮﻓﺮ ﺧﺎدم ﻟﻼﺧﺒﺎر‪.yahoo.com‬‬ ‫اﻳﻀﺎ اﻟﺘﻰ ﻳﻮﻓﺮهﺎ ‪ yahoo‬ﻋﻠﻰ اﻟﻌﻨﻮان ‪http://groups.‫وﻟﻜﻦ ﻟﻤﺎذا هﺬا اﻟﺘﻌﺪد ﻣﻦ ﺟﻬﻪ ﺧﻮادم اﻻﺧﺒﺎر ‪ news servers‬؟‬ ‫اﻻﻣﺮ ﺑﺒﺴﺎﻃﻪ هﻮ ﻟﺘﻘﻠﻴﻞ اﻟﺤﺮآﻪ ‪ traffic‬اﻟﻐﻴﺮ ﺿﺮورﻳﻪ ﻋﻠﻰ اﻻﻧﺘﺮﻧﺖ واﻟﺘﻰ ﺑﺪورهﺎ ﺳﺘﺴﺒﺐ ﻓﻰ‬ ‫ﺣﺪوث ‪ high traffic‬او ازدﺣﺎم ﺷﺪﻳﺪ ﻟﻴﺲ ﻟﻪ داع ﻋﻠﻰ ﺷﺒﻜﻪ اﻻﻧﺘﺮﻧﺖ ‪.google.

.

shutdown‬‬ ‫ﻓﻰ هﺬا اﻟﻔﺼﻞ ﺳﻨﺘﻌﺮض ﻟﻤﺴﺎﻟﻪ ﺗﺸﻐﻴﻞ اﻟﻨﻈﺎم واﻏﻼﻗﻪ ‪.‫ﻋﻤﻠﻴﺎت ال ‪ startup‬و ‪.‬‬ ‫ﻓﻤﺴﺎﻟﻪ ﺗﺸﻐﻴﻞ اﻟﻨﻈﺎم ﺗﺸﻤﻞ‬ ‫• ال ‪ Bios‬وﻣﺎ ﻳﺠﺮﻳﻪ ﻣﻦ ﻋﻤﻠﻴﺎت‬ ‫• ال ‪boot loader‬‬ ‫• ﺗﺤﻤﻴﻞ اﻟﻜﺮﻧﻞ ﻓﻰ ال ‪Ram‬‬ ‫ﺛﻢ ﺑﻌﺪ ذﻟﻚ ﻳﺼﺒﺢ اﻟﻨﻈﺎم ﻣﺴﺘﻌﺪ ﻟﻠﻌﻤﻞ‬ ‫وﻗﺪ ﻳﺼﻮر اﻟﺸﻜﻞ اﻟﺘﺎﻟﻰ هﺬﻩ اﻟﻌﻤﻠﻴﺎت‬ .

‫اﻟﺨﻄﻮﻩ اﻻوﻟﻰ ‪ :‬ال ‪. MBR‬‬ ‫وﺑﻬﺬﻩ اﻟﺨﻄﻮات ﻳﻜﻮن ال ‪ Bios‬ﻗﺪ ادى وﻇﺎﺋﻔﻪ ‪ ،‬واﻋﻄﻰ اﻟﺒﺮﻧﺎﻣﺞ اﻟﻤﻮﺟﻮد ﻓﻰ ال ‪ MBR‬اﺷﺎرﻩ‬ ‫اﻟﺒﺪء ﻟﻜﻰ ﻳﻘﻮم هﺬا اﻻﺧﻴﺮ ﺑﺎﻋﻤﺎﻟﻪ ‪. cdrom‬‬ ‫• ﺗﺤﻤﻴﻞ اﻟﺒﺮﻧﺎﻣﺞ اﻟﻤﻮﺟﻮد ﻓﻰ ال ‪.‬‬ ‫وﻣﻦ هﺬﻩ اﻟﻮﻇﺎﺋﻒ‬ ‫• ﻓﺤﺺ اﻟﺬاآﺮﻩ اﻟﻌﺸﻮاﺋﻴﻪ )‪(Ram‬‬ ‫• اداء ﻋﺪد ﻣﻦ اﻟﻮﻇﺎﺋﻒ واﻟﺨﻴﺎرات ‪ ،‬ﻋﻠﻰ ﺳﺒﻴﻞ اﻟﻤﺜﺎل ‪ ،‬ﺗﺤﺪﻳﺪ وﺗﺮﺗﻴﺐ ال ‪ device‬اﻟﺬى ﺳﻴﺒﺪأ‬ ‫ﻣﻨﻪ ﻧﻈﺎم اﻟﺘﺸﻐﻴﻞ ﻋﻤﻠﻪ او ﻣﺎ ﻳﺴﻤﻰ ‪ ، the order of boot device‬وﻏﻴﺮهﺎ ﻣﻦ اﻟﻮﻇﺎﺋﻒ‬ ‫واﻟﺘﻰ ﻳﻤﻜﻦ ﺗﻌﺪﻳﻠﻬﺎ ﻋﻦ ﻃﺮﻳﻖ اﻟﻀﻐﻂ ﻋﻠﻰ اﻟﻤﻔﺘﺎح ‪ Del‬اﺛﻨﺎء ﻋﻤﻠﻴﻪ اﺧﺘﺒﺎر اﻟﺬاآﺮﻩ ‪. MBR‬‬ ‫• اوﻻ ال ‪ mbr‬اﺧﺘﺼﺎرا ل ‪.‬‬ ‫• وهﺬا ال ‪ mbr‬ﻳﻮﺟﺪ ﻗﺒﻞ آﻞ ال‪ partition‬اﻟﻤﻮﺟﻮدﻩ ﻋﻠﻰ ال‪ ، hard‬ﺑﻤﻌﻨﻰ اﻧﻪ ﻟﻴﺲ ﺟﺰء ﻣﻦ‬ ‫اول ‪. boot sector‬‬ ‫وﻳﻮﺟﺪ ﺑﻬﺬا ال ‪ mbr‬ﺷﻴﺌﺎن‬ ‫اوﻻ ‪ ،‬ﺑﺮﻧﺎﻣﺞ ال ‪ boot loader‬وهﻮ اﻣﺎ ‪) lilo‬وهﻮ اﻻﻗﺪم( او ‪) grub‬وهﻮ اﻻﺣﺪث واﻟﻤﺴﺘﺨﺪم ﺣﺎﻟﻴﺎ(‬ ‫ﺛﺎﻧﻴﺎ ‪ ،‬ﻣﺎ ﻳﺴﻤﻰ ﺑﺎل ‪ ، partition table‬وﻳﻮﺟﺪ ﺑﻪ ﻣﻌﻠﻮﻣﺎت ﻋﻦ ال ‪. Bios‬‬ ‫ال ‪ Bios‬هﺬا ﻋﺒﺎرﻩ ﻋﻦ ﺑﺮﻧﺎﻣﺞ ﻣﺨﺰن ﻓﻰ ذاآﺮﻩ ‪ Rom‬ووﻇﻴﻔﺘﻪ اﻟﻘﻴﺎم ﺑﻮﻇﺎﺋﻒ ﺑﺴﻴﻄﻪ وﻣﺤﺪدﻩ ‪. partition‬‬ ‫• وﻳﻄﻠﻖ ﻋﻠﻴﻪ اﻳﻀﺎ ال ‪. hard disk‬‬ .‬‬ ‫ﻣﺎ هﻮ ال ‪.‬‬ ‫• اﺧﺘﺒﺎر ال ‪ device‬اﻟﺬى ﺳﻴﺒﺪأ ﻣﻨﻪ ﻧﻈﺎم اﻟﺘﺸﻐﻴﻞ ‪ ،‬ﻣﺜﻞ ال ‪ hard disk‬او ال ‪. Master Boot Record‬‬ ‫• وهﻮ ﻋﺒﺎرﻩ ﻋﻦ اول ‪ sector‬ﻣﻮﺟﻮد ﻓﻰ ال ‪ ، hard disk‬وال ‪ sector‬آﻤﺎ هﻮ ﻣﻌﺮوف‬ ‫ﻋﺒﺎرﻩ ﻋﻦ ‪) 512byte‬ﻻﺣﻆ اﻧﻪ ﺑﺎﻟﺒﺎﻳﺖ وﻟﻴﺲ ﺑﺎﻟﻜﻴﻠﻮ ﺑﺎﻳﺖ( اى اﻧﻪ ﺟﺰء ﺻﻐﻴﺮ ﺟﺪا ‪.

boot loader‬وﻟﻜﻦ اﺷﻬﺮهﻢ اﺛﻨﺎن ‪ ،‬وهﻢ‬ ‫ﺑﺮﻧﺎﻣﺞ ‪ lilo‬وهﻮ اﺧﺘﺼﺎر ل ‪. linux loader‬‬ ‫ﺑﺮﻧﺎﻣﺞ ‪ grub‬وهﻮ اﺧﺘﺼﺎر ل ‪. boot loader‬‬ ‫وهﺬا ال ‪ boot loader‬ﻋﺒﺎرﻩ ﻋﻦ ﺑﺮﻧﺎﻣﺞ ‪ ،‬وﻇﻴﻔﺘﻪ اﻻﺳﺎﺳﻴﻪ هﻰ اﺳﺘﻼم اﻟﺒﻴﺎﻧﺎت واﻟﻤﻌﻠﻮﻣﺎت ﻣﻦ‬ ‫ال ‪ ، Bios‬واﻟﺒﺤﺚ ﻋﻦ ﻧﻈﺎم اﻟﺘﺸﻐﻴﻞ ‪ ،‬وﺗﺤﻤﻴﻞ هﺬا اﻻﺧﻴﺮ ﻓﻰ ال ‪ Ram‬آﺨﻄﻮﻩ اوﻟﻰ ﻟﺒﺪاﻳﻪ‬ ‫ﺗﺸﻐﻴﻠﻪ ‪. grand unifind boot loader‬‬ ‫واﻟﻤﺴﺘﺨﺪم ﺣﺎﻟﻴﺎ هﻮ ال ‪ ، grub‬ﻓﻬﻮ اﻻﺣﺪث واﻻﻓﻀﻞ ﺑﺴﺒﺐ ﻋﺪد ﻣﻦ اﻟﻤﻤﻴﺰات اﻟﻤﻮﺟﻮدﻩ ﺑﻪ ‪.‬‬ ‫وﺑﺮﻧﺎﻣﺞ ال ‪ grub‬هﺬا ‪ ،‬هﻮ ﺑﺒﺴﺎﻃﻪ اﻟﺸﺎﺷﻪ اﻟﺰرﻗﺎء اﻟﺘﻰ ﺗﺮاهﺎ ﻋﻨﺪ ﺗﺸﻐﻴﻞ اﻟﺠﻬﺎز‬ ‫ﺷﻜﻞ ﺑﺮﻧﺎﻣﺞ ‪grub‬‬ .‫اﻟﺨﻄﻮﻩ اﻟﺜﺎﻧﻴﻪ ‪ :‬ال ‪.‬‬ ‫وﻳﻮﺟﺪ اآﺜﺮ ﻣﻦ ﺑﺮﻧﺎﻣﺞ ﻳﻘﻮم ﺑﻮﻇﻴﻔﻪ ال ‪ .

stage 2‬‬ ‫ﺑﺎﻟﻨﺴﺒﻪ ﻟﻠﺒﺮﻧﺎﻣﺞ ‪ grub‬ﻓﺎن ﻟﻪ ﺛﻼث ﻣﺮاﺣﻞ‬ ‫‪ stage 1‬وهﻰ اﻟﻤﻮﺟﻮدﻩ ﺑﺎل ‪mbr‬‬ ‫‪ stage 1.‬‬ .‬‬ ‫ﺷﻜﻞ ﺑﺮﻧﺎﻣﺞ ‪lilo‬‬ ‫وﻣﻦ اﻟﻤﻼﺣﻆ ان اﻟﻤﺴﺎﺣﻪ اﻟﻤﻮﺟﻮدﻩ ﻓﻰ ال ‪ (512byte) mbr‬ﺗﻌﺪ ﺻﻐﻴﺮﻩ وﻣﺤﺪودﻩ ﺟﺪا ﻟﻮﺿﻊ‬ ‫اى ﺑﺮﻧﺎﻣﺞ ﺑﻬﺎ ‪ ،‬وﻟﻬﺬا ﻓﺎن اﻟﺒﺮﻧﺎﻣﺞ اﻟﺬى ﻳﻮﺿﻊ ﻓﻰ ال ‪ mbr‬ﺳﻮاء آﺎن ‪ lilo‬او ‪ ، grub‬ﻳﺠﺰأ اﻟﻰ‬ ‫اآﺜﺮ ﻣﻦ ﻣﺮﺣﻠﻪ )‪ ، (stage‬ﻓﻴﻮﺿﻊ ﺑﺎل ‪ mbr‬ﺟﺰء وﻳﺴﻤﻰ ‪ ، stagr 1‬وﻳﻮﺿﻊ ﺟﺰء اﺧﺮ ﻓﻰ‬ ‫ال ‪ hard disk‬وﺑﺎﻟﻀﺒﻂ ﻓﻰ ‪ /boot‬وﻳﺴﻤﻰ ‪.5‬وهﻰ اﻟﻤﻮﺟﻮدﻩ ﺑﺎﻟﻤﺠﻠﺪ ‪/boot‬‬ ‫‪ stage 2‬وهﻰ ﻋﺒﺎرﻩ ﻋﻦ اﻟﺸﺎﺷﻪ اﻟﺰرﻗﺎء اﻟﺘﻰ ﺳﺒﻖ ﻋﺮﺿﻬﺎ ‪. bash‬‬ ‫• ﺑﺮﻧﺎﻣﺞ ‪ grub‬ﻳﻮﻓﺮ ﺧﺎﺻﻴﻪ اﻟﺘﺸﻔﻴﺮ )‪ (encryption‬ﻟﻜﻠﻤﺎت اﻟﺴﺮ اﻟﻤﻮﺟﻮدﻩ ﺑﻤﻠﻒ ﺗﻬﻴﺌﺘﻪ ‪.‬‬ ‫• ﺑﺎﻻﺿﺎﻓﻪ اﻟﻰ اﻟﻌﺪﻳﺪ ﻣﻦ اﻟﻤﻤﻴﺰات اﻻﺧﺮى ‪.‬‬ ‫• ﻳﺴﺘﺨﺪم ﺑﺮﻧﺎﻣﺞ ‪ grub‬ﻣﻊ اﻟﻌﺪﻳﺪ ﻣﻦ اﻧﻈﻤﻪ ‪ unix‬اﻻﺧﺮى ‪ ،‬ﻓﻬﻮ ﻳﺴﺘﻌﻤﻞ ﻣﻊ ‪GNU/hurd‬‬ ‫وﻣﻊ ‪ BSD‬وﻣﻊ ﻏﻴﺮهﻢ اﻳﻀﺎ ‪ ،‬اﻣﺎ ‪ lilo‬ﻓﻬﻮ ﺧﺎص ب ﻟﻴﻨﻮآﺲ ﻓﻘﻂ ‪. lilo‬‬ ‫• ﻟﺒﺮﻧﺎﻣﺞ ‪ minimal shell ، grub‬ﺧﺎﺻﻪ ﺑﻪ ‪،‬ﺷﺒﻴﻪ ﺑﺎل ‪ shell‬اﻟﺘﻰ ﻧﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻨﻈﺎم ﺑﻬﺎ ‪،‬‬ ‫واﻟﻤﺴﻤﺎﻩ ‪.‫وﻣﻦ ﻣﻤﻴﺰات ‪grub‬‬ ‫• اﻧﻪ ﺑﺮﻧﺎﻣﺞ اآﺜﺮ ﻣﺮوﻧﻪ وﺳﻬﻮﻟﻪ ﻓﻰ اﻟﺘﻌﺎﻣﻞ ﻣﻦ ‪.

splashimage‬‬ ‫وﺛﺎﻧﻰ ﺟﺰء هﻮ ﺑﻘﻴﻪ اﻻﺳﻄﺮ اﻟﻤﻮﺟﻮدﻩ ﻟﻨﻬﺎﻳﻪ هﺬا اﻟﻤﻠﻒ ‪ ،‬ﺣﺘﻰ ﻟﻮ آﺎﻧﺖ ﻋﺸﺮات اﻻﺳﻄﺮ ‪. grub‬‬ ‫ﻳﻮﺟﺪ ﻟﺒﺮﻧﺎﻣﺞ ‪ grub‬ﻣﻠﻒ ﺗﻬﻴﺌﻪ ﻣﻮﺟﻮد ﻓﻰ اﻟﻤﺴﺎر ‪ /etc‬وﻳﺴﻤﻰ ‪.‬‬ ‫اﻣﺎ اﻟﺠﺰء اﻟﺜﺎﻧﻰ ﻓﻬﻮ اﻟﺬى ﻧﺘﻌﺎﻣﻞ ﻣﻌﻪ ‪ ،‬وهﻮ اﻳﻀﺎ ﻣﺎ ﻳﻘﺮأﻩ اﻟﻨﻈﺎم وﻳﻨﻔﺬﻩ ‪.‫ﻣﻠﻒ ﺗﻬﻴﺌﻪ ال ‪.‬‬ ‫ﻓﺎﻟﺠﺰء اﻻول ﺑﻤﺜﺎﺑﻪ اﻟﻤﻌﻠﻮﻣﺎت اﻟﻌﺎﻣﻪ ﻟﺒﺮﻧﺎﻣﺞ ‪ grub‬وﻣﻌﺎﻧﻴﻬﻢ هﻰ‬ ‫‪ default‬ﺗﻌﻨﻰ ‪ ،‬ﻧﻈﺎم اﻟﺘﺸﻐﻴﻞ اﻟﺬى ﺳﻴﻘﻮم اﻟﻨﻈﺎم ﺑﺘﺸﻐﻴﻠﻪ ﻣﺒﺎﺷﺮﻩ اذا ﻟﻢ ﻳﺘﻢ اﻻﺧﺘﻴﺎر ﺑﻴﻦ اﻻﻧﻈﻤﻪ‬ ‫اﻟﻤﻮﺟﻮدﻩ ‪-‬وﻳﺘﻀﺢ ذﻟﻚ اآﺜﺮ ﻓﻰ ﺣﺎﻟﻪ وﺟﻮد اآﺜﺮ ﻣﻦ ﻧﻈﺎم ﻋﻠﻰ اﻟﺠﻬﺎز‪ -‬ﻓﺎﻟﺮﻗﻢ ‪ 0‬ﻟﻠﻨﻈﺎم اﻻول واﻟﺮﻗﻢ ‪1‬‬ ‫ﻟﻠﺜﺎﻧﻰ وهﻜﺬا ‪.‬‬ ‫ﻓﺎﻟﺠﺰء اﻻول ﻋﺒﺎرﻩ ﻋﻦ ‪) comment‬ﺗﻌﻠﻴﻖ( اى اﻧﻪ ﻳﻘﺮأ وﻟﻜﻦ ﻻ ﻳﻨﻔﺬ ﻣﻦ ﻗﺒﻞ اﻟﻨﻈﺎم ‪ ،‬ﺑﻤﻌﻨﻰ‬ ‫اﺧﺮ هﻮ ﺑﻤﺜﺎﺑﻪ اﻟﺘﻌﻠﻴﻤﺎت ﻟﻠﻤﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻤﻠﻒ ‪.‬‬ ‫‪ timeout‬وﺗﻌﻨﻰ آﻢ ﻣﻦ اﻟﻮﻗﺖ ﺳﻴﻨﺘﻈﺮ ﻟﻜﻰ ﻳﺒﺪء ﺗﺤﻤﻴﻞ اﻟﻨﻈﺎم اﻟﻤﻌﻴﻦ ‪ ،‬وﻧﺮى ان اﻟﻮﻗﺖ ﻣﺤﺪد ب‬ ‫‪ 10‬ﺛﻮاﻧﻰ ‪.conf‬‬ ‫وﺷﻜﻞ هﺬا اﻟﻤﻠﻒ آﺎﻻﺗﻰ‬ ‫ﻓﻜﻤﺎ ﻧﺮى ‪ ،‬ان هﺬا اﻟﻤﻠﻒ ﻋﺒﺎرﻩ ﻋﻦ ﺟﺰﺋﻴﻦ ‪ ،‬اﻟﺠﺰء اﻻول هﻮ ذو اﻟﻠﻮن اﻟﻠﺒﻨﻰ ‪ ،‬واﻟﺠﺰء اﻟﺜﺎﻧﻰ‬ ‫ﻋﺒﺎرﻩ ﻋﻦ اﻟﻠﻮن اﻻﺑﻴﺾ اﻟﻌﺎدى ‪. grub.‬‬ .‬‬ ‫)ال ‪ comment‬ﺑﺼﻔﻪ ﻋﺎﻣﻪ ‪-‬ﻓﻰ آﻞ ﻣﻠﻔﺎت اﻟﻨﻈﺎم‪ -‬هﻮ اﻟﺴﻄﺮ اﻟﺬى ﻳﺒﺪأ ﺑﺎﻟﻌﻼﻣﻪ ‪ ، #‬ﻓﻠﻮ ازﻳﻠﺖ هﺬﻩ اﻟﻌﻼﻣﻪ‬ ‫ﻟﺘﻐﻴﺮ ﻟﻮن اﻟﺴﻄﺮ واﺻﺒﺢ ﻣﻦ اﻻﺳﻄﺮ اﻟﺘﻰ ﻳﻘﺮأهﺎ اﻟﻨﻈﺎم وﻳﻨﻔﺬهﺎ(‬ ‫وﻧﻼﺣﻆ اﻳﻀﺎ ان هﺬا اﻟﺠﺰء اﻟﺜﺎﻧﻰ )ذو اﻟﻠﻮن اﻻﺑﻴﺾ( ﻳﻘﺴﻢ اﻟﻰ ﺟﺰﺋﻴﻦ‬ ‫اول ﺟﺰء هﻮ ﻓﻘﻂ اﻟﺜﻼث اﺳﻄﺮ اﻻوﻟﻰ ﻣﻨﻪ ‪ ،‬وهﻢ ‪ default‬و ‪ timeout‬و‪.‬‬ ‫‪ splashimage‬وهﻰ ﺻﻮرﻩ اﻟﺸﺎﺷﻪ اﻟﺰرﻗﺎء اﻟﺘﻰ ﺗﻈﻬﺮ ﻋﻨﺪ ﺗﺸﻐﻴﻞ اﻟﺠﻬﺎز ‪.

‫ﺛﻢ ﺑﻌﺪ ذﻟﻚ ﻧﺮى اﻟﺠﺰء اﻟﺜﺎﻧﻰ ‪ ،‬وهﻮ اﻟﺬى ﻳﺒﺪأ ﺑﻜﻠﻤﻪ ‪title‬‬
‫وﺑﺠﺎﻧﺐ هﺬﻩ اﻟﻜﻠﻤﻪ ﻳﻮﺟﺪ اﻻﺳﻢ اﻟﺬى ﺗﺴﻤﻰ ﺑﻪ ﻧﻈﺎﻣﻚ ‪.‬‬
‫ﻣﻼﺣﻈﻪ ‪ :‬اذا آﺎن ﺑﺎﻟﺠﻬﺎز اآﺜﺮﻣﻦ ﻧﻈﺎم ﺗﺸﻐﻴﻞ ‪ ،‬ﻓﺎﻧﻨﺎ ﺳﻨﺮى ﻟﻜﻞ ﻧﻈﺎم ﻋﺪد ﻣﻦ اﻻﺳﻄﺮ ﺑﻤﺜﺎﺑﻪ ﻣﻌﻠﻮﻣﺎت ﻋﻨﻪ ‪ ،‬وﺗﺒﺪأ‬
‫هﺬﻩ اﻻﺳﻄﺮ ﺑﺎﻟﻜﻠﻤﻪ ‪ . title‬ﺑﻤﻌﻨﻰ اﺧﺮ‪ ،‬ﻓﻰ ﺣﺎﻟﻪ وﺟﻮد وﻳﻨﺪوز ﻋﻠﻰ ﺟﻬﺎزك ﻓﺴﺘﺮى ﻣﻌﻠﻮﻣﺎت ﻋﻨﻪ وهﺬﻩ اﻟﻤﻌﻠﻮﻣﺎت‬
‫ﺳﺘﺒﺪأ ﺑﺎﻟﻜﻠﻤﻪ ‪. title‬‬

‫ﺛﻢ ﺑﻌﺪ ذﻟﻚ آﻠﻤﻪ ‪ root‬وهﻮ ﻟﻴﺲ ال ‪ root‬اﻟﺨﺎص ﺑﺎﻟﻨﻈﺎم ‪ ،‬ﺑﻞ هﻮ اﻟﻤﺠﻠﺪ اﻟﺬى ﻳﺤﻮى آﻞ‬
‫اﻟﻤﻌﻠﻮﻣﺎت اﻟﺴﺎﺑﻖ اﻻﺷﺎرﻩ اﻟﻴﻬﺎ ‪ ،‬وهﻮ ‪. /boot‬‬
‫ﺛﻢ ﺑﻌﺪ ذﻟﻚ ﻣﻜﺎن ال ‪ ، kernel‬وهﻮ ﻣﺎ ﻳﺴﻤﻰ ﺑﺎل ‪ kernel image‬ﺛﻢ ﻳﺘﺒﻌﻪ ﺑﻘﻴﻪ ال ‪option‬‬
‫اﻟﺘﻰ ﺗﺤﺪد ﻋﻤﻠﻪ ‪،‬‬
‫وﻧﺮاهﻢ ﻋﺒﺎرﻩ ﻋﻦ )‪ (ro‬واﻟﺘﻰ ﺗﻌﻨﻰ ‪ ،‬ﻋﻤﻞ ‪ mount‬ﻟﻞ ‪ root‬هﺬا ﺑﺼﻴﻐﻪ ‪read only‬‬
‫واﻳﻀﺎ )‪ (root=/LABLE=/‬وهﺬا ﻳﻌﻨﻰ ان ال ‪ root‬اﻟﺨﺎص ﺑﺎﻟﻨﻈﺎم هﻮ ﻣﺎ ﻳﺴﻤﻰ ‪LABEL‬‬
‫ﺑﺎﻟﻤﻠﻒ ‪. fstab‬‬
‫ﻣﺼﻄﻠﺢ ‪ kernel image‬ﻳﻄﻠﻖ ﻋﻠﻰ ﻧﺴﺨﻪ ﻣﺼﻐﺮﻩ وﻣﻀﻐﻮﻃﻪ ﻣﻦ اﻟﻜﺮﻧﻞ ﻣﻮﺟﻮدﻩ ﺑﺎﻟﻤﺠﻠﺪ ‪ ، /boot‬وهﻰ اول‬
‫ﻣﺎ ﻳﺘﻢ ﺗﺤﻤﻴﻠﻪ ﻓﻰ ال ‪ Ram‬وﺑﻨﺎء ﻋﻠﻴﻪ ﻳﺘﻢ ﺗﺤﻤﻴﻞ ﺑﻘﻴﻪ اﻟﻨﻈﺎم ‪ ،‬وهﺬﻩ ال ‪ image‬ﺗﺤﻮى ﺑﺎﻟﻜﺎد اﻗﻞ ﻣﺎ ﻳﺤﺘﺎﺟﻪ اﻟﻨﻈﺎم‬
‫ﻣﻦ ال ‪ modules‬و‪ drivers‬ﻟﻜﻰ ﻳﺒﺪأ ﻋﻤﻠﻪ ‪.‬‬

‫ﺛﻢ ﺑﻌﺪ ذﻟﻚ ﻣﻜﺎن ال ‪ initrd‬وهﻰ ﻋﺒﺎرﻩ ﻋﻦ ‪ initial root disk‬او ال ‪ ( / ) root‬اﻟﻤﻌﺮوف ﻟﻨﺎ‬
‫اى ﺗﺤﻤﻴﻞ ال ‪ /‬هﺬا ﻓﻰ ال‪ Ram‬ﻣﻊ ﻧﺴﺨﻪ اﻟﻜﺮﻧﻞ اﻟﺴﺎﺑﻖ اﻻﺷﺎرﻩ اﻟﻴﻬﺎ ‪.‬‬
‫ﻣﻼﺣﻈﻪ هﺎﻣﻪ ‪ :‬ﻋﻨﺪ ﻋﻤﻞ ‪ boot disk‬ﻓﺎن اﻟﻨﻈﺎم ﻳﻀﻊ ﻋﻠﻰ ال ‪ floppy‬ال ‪kernel image‬‬
‫وال ‪ initrd‬اﻟﺴﺎﺑﻖ اﻻﺷﺎرﻩ اﻟﻴﻬﻢ ‪.‬‬

‫ﺗﻌﺪ اﻟﻤﻌﻠﻮﻣﺎت اﻟﺴﺎﺑﻘﻪ اﻗﻞ ﺗﻬﻴﺌﻪ ﻣﻤﻜﻨﻪ ﻗﺪ ﺗﻜﻮن ﻣﻮﺟﻮدﻩ ﻓﻰ اﻟﻤﻠﻒ ‪ . grub.conf‬وﻳﻤﻜﻦ اﻟﺮﺟﻮع‬
‫ﻟﺼﻔﺤﺎت اﻟﻤﺴﺎﻋﺪﻩ ‪ info grub‬ﻟﻼﻃﻼع ﻋﻠﻰ آﺎﻓﻪ اﻻﻣﻜﺎﻧﺎت اﻟﻤﺘﺎﺣﻪ ﻟﻤﻠﻒ اﻟﺘﻬﻴﺌﻪ ‪.‬‬

‫اﻟﺨﻄﻮﻩ اﻟﺜﺎﻟﺜﻪ ‪. kernel booting :‬‬
‫وﺗﺘﻤﺜﻞ هﺬﻩ اﻟﺨﻄﻮﻩ ﻓﻰ ﺗﺤﻤﻴﻞ ال ‪ kernel image‬اﻟﻰ ال ‪ ، Ram‬وهﺬﻩ ال ‪- image‬آﻤﺎ‬
‫اﺳﻠﻔﻨﺎ‪ -‬ﻣﻀﻐﻮﻃﻪ ‪ ،‬ﻓﻴﻘﻮم اﻟﻜﺮﻧﻞ ﺑﻔﻚ )‪ (uncompress‬ﻧﻔﺴﻪ داﺧﻞ ال ‪ Ram‬وﻳﺒﺪأ ﻋﺪﻩ ﺧﻄﻮات‬
‫•‬

‫ﻗﺮأﻩ ال ‪ option‬اﻟﻤﺤﺪدﻩ ﻟﻪ ﻓﻰ ﻣﻠﻒ ‪) . grub.conf‬واﻟﺘﻰ ﺳﺒﻖ ﺷﺮﺣﻬﻢ(‬

‫• اآﺘﺸﺎف او اﺧﺘﺒﺎر آﻞ ال ‪ hard ware‬اﻟﻤﻮﺟﻮد ﻋﻠﻰ اﻟﺠﻬﺎز ﻣﺜﻞ ال ‪ hard disk‬و‬
‫‪ netwok adapter‬وال ‪ mouse‬وال ‪ key board‬واﻟﻜﺮوت اﻟﻤﺨﺘﻠﻔﻪ ‪.‬‬
‫• اﻟﺘﺤﻮل اﻟﻰ ‪ multi tasking‬وال ‪. multi user‬‬
‫• ﻋﻤﻞ ‪ mount‬ﻟﻞ ‪/‬‬
‫• ﺗﺸﻐﻴﻞ اول ‪ process‬ﻓﻰ اﻟﻨﻈﺎم ‪ ،‬وهﻰ ‪ init‬واﻟﺘﻰ ﺗﺎﺧﺬ رﻗﻢ ‪ 1‬ﻓﻰ ال ‪ process‬اﻟﺘﻰ‬
‫ﺗﻌﻤﻞ ﻋﻠﻰ اﻟﻨﻈﺎم آﻜﻞ ‪ ،‬وهﺬﻩ ال ‪ init‬ﺗﻘﻮم ﺑﺘﺸﻐﻴﻞ ﺑﻘﻴﻪ ال ‪ process‬اﻟﺘﻰ ﺳﺘﻌﻤﻞ ﻋﻠﻰ اﻟﻨﻈﺎم‬
‫آﻞ هﺬﻩ اﻟﺨﻄﻮات ﻳﻘﻮم اﻟﻜﺮﻧﻞ ﺑﺎداﺋﻬﻢ ﺑﺴﺮﻋﻪ آﺒﻴﺮﻩ ‪ ،‬ﺣﺘﻰ اﻧﻚ ﻻ ﺗﻜﺎد ﺗﺴﺘﻄﻴﻊ ﻗﺮأﻩ اى ﻣﻦ‬
‫اﻟﺮﺳﺎﺋﻞ اﻟﺘﻰ ﺗﻈﻬﺮ اﻣﺎﻣﻚ ﻋﻠﻰ اﻟﺸﺎﺷﻪ ‪ ،‬وﻟﻬﺬا ﻓﻬﻨﺎك اﻣﺮ ‪ ،‬وﻇﻴﻔﺘﻪ ﻋﺮض آﻞ هﺬﻩ اﻻﺟﺮاءات‬
‫اﻟﺘﻰ ﻳﻘﻮم اﻟﻜﺮﻧﻞ ﺑﺎدأهﺎ ‪-‬واﻟﺘﻰ ﺑﺎﻟﻄﺒﻊ ﺗﺴﺠﻞ ﺑﺎﻟﻨﻈﺎم‪ -‬وهﺬا اﻻﻣﺮ هﻮ‬
‫‪dmesg‬‬
‫وﻻن اﻟﻨﺎﺗﺞ ﻣﻦ هﺬا اﻻﻣﺮ ﺳﻄﻮر آﺜﻴﺮﻩ ﻓﻴﻤﻜﻦ ادﺧﺎل هﺬا اﻟﻨﺎﺗﺞ ﻟﻼﻣﺮ ‪ less‬ﻟﻘﺮأﻩ اﻟﻤﺤﺘﻮى ﺻﻔﺤﻪ‬
‫ﺑﺼﻔﺤﻪ ‪ ،‬وذﻟﻚ ﺑﺎﻻﺗﻰ ‪. dmesg | less‬‬

‫اﻟﺨﻄﻮﻩ اﻟﺮاﺑﻌﻪ ‪. init :‬‬
‫ﺑﻮﺻﻮل اﻟﻨﻈﺎم اﻟﻰ هﺬﻩ اﻟﺨﻄﻮﻩ ‪ ،‬ﻓﺎﻧﻪ ﻳﻜﻮن ﻗﺪ ﺗﺠﺎوز ﻣﺮاﺣﻞ اﻻﻋﺪاد واﻟﻜﺸﻒ ﻋﻠﻰ ﻣﻜﻮﻧﺎت‬
‫اﻟﺠﻬﺎز ‪ ،‬وﺑﺪء ﺑﺎﻟﻔﻌﻞ ﻓﻰ ﺗﺸﻐﻴﻞ ال ‪ process‬اﻟﻤﺨﺘﻠﻔﻪ ‪.‬‬
‫وﺗﻘﻮم ‪ init‬ﺑﻘﺮأﻩ اﻟﻤﻠﻒ ‪ inittab‬اﻟﻤﻮﺟﻮد ﻓﻰ اﻟﻤﺴﺎر ‪ ، /etc‬وﺑﻨﺎء ﻋﻠﻰ اﻟﻤﻌﻠﻮﻣﺎت اﻟﻤﻮﺟﻮدﻩ ﺑﻬﺬا‬
‫اﻟﻤﻠﻒ ﻓﺎﻧﻬﺎ ﺗﻘﻮم ﺑﺘﺸﻐﻴﻞ ال ‪ process‬اﻟﻤﺨﺘﻠﻔﻪ ‪.‬‬
‫وﻣﻦ ﺿﻤﻦ اﻟﻤﻌﻠﻮﻣﺎت اﻟﺘﻰ ﻳﻌﺮﻓﻬﺎ ‪ init‬ﻣﻦ اﻟﻤﻠﻒ ‪ ، inittab‬ال ‪ runlevel‬اﻟﻤﺤﺪد اﻟﺬى ﺳﻴﺸﺘﻐﻞ‬
‫ﻓﻴﻪ اﻟﻨﻈﺎم ‪.‬‬
‫ال ‪runlevel‬‬
‫وال ‪ runlevel‬هﺬا هﻮ اﻟﺤﺎﻟﻪ اﻟﺘﻰ ﺳﻴﻌﻤﻞ ﻋﻠﻴﻬﺎ اﻟﻨﻈﺎم ‪.‬‬
‫ﻓﻤﺜﻼ ﻋﻨﺪﻣﺎ ﻳﻌﻤﻞ ﻣﺪﻳﺮ اﻟﻨﻈﺎم ﻣﻨﻔﺮدا ‪-‬ﺑﺪون وﺟﻮد اى ﻣﺴﺘﺨﺪﻣﻴﻦ‪ -‬ﻓﻬﺬا ‪ ، runlevel‬وﻋﻨﺪﻣﺎ ﻳﻌﻤﻞ‬
‫ﻣﺘﺼﻼ ﺑﺎﻟﺸﺒﻜﻪ ﻓﻬﺬا ‪ runlevel‬اﺧﺮ وهﻜﺬا ‪.‬‬
‫وﻟﺘﺒﺴﻴﻂ ال ‪ runlevel‬هﺬا ‪،‬ﻓﺎﻧﻨﺎ ﻧﻘﻮل اﻧﻪ ﻗﺪ ﻳﻜﻮن ﺷﺒﻴﻪ ﺑﺎل ‪ mode‬اﻟﻤﻮﺟﻮد ﺑﻮﻳﻨﺪوز ﻣﺜﻞ ‪ safe mode‬وﻧﺤﻮﻩ‬

‫وﻟﻞ ‪ runlevel‬هﺬﻩ ﻋﺪﻩ ﺣﺎﻻت ﻟﻜﻞ ﻣﻨﻬﺎ ﻣﻌﻨﻰ ﻣﻌﻴﻦ ‪ ،‬وﻟﻜﻞ ﺣﺎﻟﻪ رﻗﻢ ﻳﻤﻴﺰهﺎ ﻋﻦ ﺑﻘﻴﻪ ال‬
‫‪ runlevel‬اﻻﺧﺮى ‪.‬‬
‫وﻳﺘﻢ اﺳﺘﺨﺪام اﻻﻣﺮ ‪ runlevel‬ﻟﻤﻌﺮﻓﻪ ﻓﻰ اى ‪ level‬ﻳﻌﻤﻞ اﻟﻨﻈﺎم اﻻن ‪ ،‬وﺻﻴﻐﺘﻪ هﻰ‬
‫‪runlevel‬‬
‫ﻓﺒﻌﺪ آﺘﺎﺑﻪ هﺬا اﻻﻣﺮ ‪-‬ﻣﻨﻔﺮدا‪ -‬ﺗﻈﻬﺮ ﻟﻨﺎ ﻧﺘﻴﺠﻪ ﻣﺸﺎﺑﻬﻪ ﻟﻬﺬﻩ‬

‫ﻓﻨﺮى اﻧﻪ ﻗﺪ ﻇﻬﺮ اﻟﺤﺮف ‪ N‬ﺛﻢ ﺑﻌﺪﻩ اﻟﺮﻗﻢ ‪. 3‬‬
‫ﻓﺎﻟﺤﺮف ‪ N‬ﻳﻌﻨﻰ ان اﻟﻨﻈﺎم )ﻟﻢ ﻳﻜﻦ ﻓﻰ اى ‪ runlevel‬ﻣﻦ ﻗﺒﻞ(‬
‫اﻣﺎ اﻟﺮﻗﻢ ‪ 3‬ﻓﻴﻌﻨﻰ ان اﻟﻨﻈﺎم ﻳﻌﻤﻞ اﻻن ﻓﻰ ال ‪ runlevel‬رﻗﻢ ‪. 3‬‬
‫وﻳﺘﻢ اﻟﺘﺤﻮل ﻣﻦ ‪ runlevel‬اﻟﻰ ‪ runlevel‬اﺧﺮ ﻋﻦ ﻃﺮﻳﻖ اﻻﻣﺮ ‪ ، telinit‬واﻟﺬى ﺳﻴﺘﻢ ﺷﺮﺣﻪ‬
‫ﺑﻌﺪ ﻣﻌﺮﻓﻪ ﻣﻌﺎﻧﻰ ارﻗﺎم ال ‪. runlevel‬‬

‬‬ ‫وﺻﻴﻐﻪ هﺬا اﻻﻣﺮ هﻰ‬ ‫>‪telinit <number‬‬ ‫وﻳﻮﺿﻊ ﻣﻜﺎن >‪ <number‬رﻗﻢ ال ‪ runlevel‬اﻟﺘﻰ ﺗﺮﻳﺪ اﻟﺘﺤﻮل اﻟﻴﻬﺎ ‪.‬‬ . telinit‬‬ ‫واﻻﻣﺮ ‪ telinit‬هﺬا ‪ ،‬ﻋﺒﺎرﻩ ﻋﻦ ‪ link‬ﻟﻼﻣﺮ ‪ ، init‬وﻣﻦ اﻻﻓﻀﻞ اﺳﺘﺨﺪام اﻻول ‪ ،‬ﻻن اى ﺧﻄﺎ ﻓﻰ اﺳﺘﺨﺪام اﻻﻣﺮ‬ ‫‪ init‬ﻗﺪ ﻳﺴﺒﺐ ﻣﺸﻜﻠﻪ ﻓﻰ اﻟﻨﻈﺎم ‪ ،‬ﺑﺎﻋﺘﺒﺎر ان ‪ init‬هﺬﻩ ‪ process‬ﺣﺴﺎﺳﻪ وﻟﻬﺎ وﺿﻊ ﻣﻌﻴﻦ ﺑﺎﻟﻨﻈﺎم ‪. reboot‬‬ ‫آﻴﻔﻴﻪ اﻟﺘﺤﻮل ﻣﻦ ال ‪runlevel‬‬ ‫ﻳﺘﻢ اﻟﺘﺤﻮل ﻣﻦ ‪ runlevel‬اﻟﻰ ‪ runlevel‬اﺧﺮ ﻋﻦ ﻃﺮﻳﻖ اﻻﻣﺮ ‪.‫ﻓﻤﻌﺎﻧﻰ ارﻗﺎم هﺬﻩ ال ‪) runlevel‬اﺟﻤﺎﻻ( هﻰ‬ ‫• ‪ 0‬ﻳﻌﻨﻰ ‪halt‬‬ ‫• ‪ 1‬ﻳﻌﻨﻰ ‪single user mode‬‬ ‫• ‪ 2‬ﻳﻌﻨﻰ ‪multiuser without NFS‬‬ ‫• ‪ 3‬ﻳﻌﻨﻲ ‪multiuser with NFS‬‬ ‫‪unused‬‬ ‫•‪4‬‬ ‫• ‪ 5‬ﺗﻌﻨﻰ ‪multiuser with graphical‬‬ ‫• ‪ 6‬ﺗﻌﻨﻰ ‪reboot‬‬ ‫وﻣﻌﺎﻧﻰ هﺬﻩ اﻻرﻗﺎم ﺑﺎﻟﺘﻔﺼﻴﻞ هﻰ‬ ‫‪ 0‬ﻳﻌﻨﻰ ‪ ،‬ان اﻟﻨﻈﺎم ﺳﻴﺤﺪث ﻟﻪ ‪) halt‬ﺑﻤﻌﻨﻰ ‪ (shutdown‬اذا ﺗﻢ ﺗﺤﻮﻳﻠﻪ اﻟﻰ هﺬا ال ‪runlevel‬‬ ‫‪ 1‬ﻳﻌﻨﻰ ان اﻟﻨﻈﺎم ﺳﻴﻌﻤﻞ ﻓﻰ ال ‪ single user mode‬اى ﻓﻰ وﺿﻊ اﻟﻤﺴﺘﺨﺪم اﻟﻮاﺣﺪ ‪ ،‬وهﺬا‬ ‫اﻟﻤﺴﺘﺨﺪم اﻟﻮاﺣﺪ هﻮﺑﺎﻟﻄﺒﻊ ال ‪ ، root‬وهﺬا ال ‪ runlevel‬ﻣﺨﺼﺺ ﻟﻌﻤﻠﻴﺎت اﻟﺼﻴﺎﻧﻪ وﺗﻨﺰﻳﻞ ال‬ ‫‪ software‬اﻟﻤﺨﺘﻠﻔﻪ ﻟﻠﻨﻈﺎم ‪.‬‬ ‫‪ 3‬ﺗﻌﻨﻰ وﺟﻮد ﻣﺴﺘﺨﺪﻣﻴﻦ ﻣﻊ ال ‪ root‬وﺑﻴﻨﻬﻢ اﺗﺼﺎل ﻋﻦ ﻃﺮﻳﻖ اﻟﺸﺒﻜﻪ ‪.‬‬ ‫‪ 4‬ﻏﻴﺮ ﻣﺴﺘﺨﺪﻣﻪ‬ ‫‪ 5‬ﻣﺜﻞ رﻗﻢ ‪ 3‬وﻟﻜﻦ ﻣﻊ وﺟﻮد ال ‪ graphical login‬اى ﺗﺸﻐﻴﻞ ال ‪ x window‬ﻓﻰ هﺬا ال‬ ‫‪. runlevel‬‬ ‫‪ 6‬ﻋﻨﺪ اﻟﺘﺤﻮل اﻟﻰ هﺬا ال ‪ ، runlevel‬ﻓﺎن اﻟﻨﻈﺎم ﺳﻴﺤﺪث ﻟﻪ ‪.‬‬ ‫‪ 2‬ﺗﻌﻨﻰ وﺟﻮد ﻣﺴﺘﺨﺪﻣﻴﻦ ﻣﻊ ال ‪ root‬ﻋﻠﻰ اﻟﻨﻈﺎم ‪ ،‬وﻟﻜﻦ ﻟﻴﺲ ﺑﻴﻨﻬﻢ اﺗﺼﺎل ﻋﻦ ﻃﺮﻳﻖ اﻟﺸﺒﻜﻪ ‪،‬‬ ‫وهﺬا ﻣﺎ ﻳﻌﻨﻴﻪ ‪ ، without NFS‬ﻓﺎل ‪ NFS‬اﺧﺘﺼﺎرا ﻟﻠﺸﺒﻜﻪ ‪.

‫ﻻﺣﻆ اﻧﻪ اذا ﺗﻢ ﺗﺤﺪﻳﺪ رﻗﻢ ‪ 0‬ﻟﻬﺬا اﻻﻣﺮ ﻓﺎن اﻟﻨﻈﺎم ﺳﻴﻐﻠﻖ )‪ ، (shutdown‬واذا ﺗﻢ ﺗﺤﺪﻳﺪ اﻟﺮﻗﻢ ‪ 6‬ﻓﺎن اﻟﻨﻈﺎم‬
‫ﺳﻴﺤﺪث ﻟﻪ ‪. reboot‬‬

‫وﺳﺒﺐ اﻟﺘﺤﻮل ﻣﻦ ‪ runlevel‬اﻟﻰ اﺧﺮ ‪ ،‬ان اﻟﻨﻈﺎم ‪-‬ﺑﻌﺪ ﺗﺸﻐﻴﻠﻪ‪ -‬ﻳﺪﺧﻞ اﻟﻰ ال ‪ runlevel‬اﻟﻤﺤﺪد‬
‫ﻟﻪ ﺑﺎﻟﻤﻠﻒ ‪- inittab‬وﻳﻜﻮن ﻏﺎﻟﺒﺎ ‪ 3‬او‪ -5‬ﻓﻌﻨﺪﻣﺎ ﻳﺮﻳﺪ اﻟﻤﺪﻳﺮ )‪ (root‬ان ﻳﻘﻮم ﺑﺎى ﻋﻤﻞ ﻣﻦ اﻋﻤﺎل‬
‫اﻟﺼﻴﺎﻧﻪ ﻟﻠﻨﻈﺎم او ﺗﻨﺰﻳﻞ ال ‪ software‬اﻟﻤﺨﺘﻠﻔﻪ ‪ ،‬ﻓﺎﻧﻪ ﻣﻦ اﻻﻓﻀﻞ اﻟﺘﺤﻮل اﻟﻰ ال ‪runlevel‬‬
‫رﻗﻢ ‪ 1‬ﻻﻧﻪ اﻧﺴﺐ ‪ mode‬ﻻداء هﺬﻩ اﻟﻮﻇﺎﺋﻒ ‪.‬‬
‫وﻳﻼﺣﻆ اﻧﻪ ﻣﻦ اﻟﻤﻤﻜﻦ ‪-‬اﻳﻀﺎ‪ -‬اداء هﺬﻩ اﻟﻮﻇﺎﺋﻒ ﻣﻦ ‪ 3‬او ‪ 5‬اﻻ اﻧﻪ ﻣﻦ اﻻﻓﻀﻞ اﻟﺘﺤﻮل اﻟﻰ ‪. 1‬‬

‫ﻣﻠﻒ ‪. inittab‬‬
‫ﻣﻠﻒ ‪ inittab‬ﻣﻮﺟﻮد ﺑﺎﻟﻤﺴﺎر ‪ ، etc‬اى ان اﺳﻤﻪ ﺑﺎﻟﻜﺎﻣﻞ ‪. /etc/inittab‬‬
‫وﻣﺴﺠﻞ ﺑﻬﺬا اﻟﻤﻠﻒ اﻟﻤﻌﻠﻮﻣﺎت اﻟﺘﻰ ﻳﻘﺮأهﺎ اﻟﺒﺮﻧﺎﻣﺞ ‪. init‬‬
‫وآﻤﺎ ﻧﺮى ﻓﻰ اﻟﺸﻜﻞ اﻟﺬى اﻣﺎﻣﻨﺎ ‪ ،‬ﻓﻬﻨﺎك ﻣﺎ ﻳﻘﺮب ﻣﻦ ‪ 7‬ﻣﺠﻤﻮﻋﺎت ﻣﻦ اﻟﺘﻌﻠﻴﻤﺎت واﻻواﻣﺮ ‪ ،‬ﻳﻘﻮم‬
‫ﺑﺘﻨﻔﻴﺬهﺎ اﻟﺒﺮﻧﺎﻣﺞ ‪. init‬‬
‫)وﻗﺪ وﺿﻌﺖ ﺑﺠﺎﻧﺐ آﻞ ﻣﺠﻤﻮﻋﻪ رﻗﻢ ‪ ،‬ﻟﺘﺴﻬﻴﻞ ﻋﻤﻠﻴﻪ اﻟﺘﻤﻴﻴﺰ ﺑﻴﻨﻬﻢ (‬

‫•‪ 1‬ﻓﺎول اﻟﻤﻠﻒ ﺑﻪ اﻟﺴﻄﺮ اﻟﺘﺎﻟﻰ‬
‫‪id:3:initdefault‬‬
‫وهﺬا ﻳﻌﻨﻰ اﻧﻪ ال ‪ runlevel‬اﻟﺘﻘﻠﻴﺪى )‪ (default‬اﻟﺬى ﺳﻴﻌﻤﻞ اﻟﻨﻈﺎم ﺑﻪ آﻠﻤﺎ دﺧﻠﻨﺎ ﻟﻠﻨﻈﺎم ‪.‬‬
‫•‪ 2‬ﺛﻢ ﺑﻌﺪ ذﻟﻚ ال ‪ ، system initialization‬وهﺬا ﻳﻌﻨﻰ اول ﺷﻰ ﺳﻴﻌﻤﻞ ﺑﺎﻟﻨﻈﺎم ﻋﻨﺪ ﺗﺸﻐﻴﻠﻪ‬
‫وﻧﺮى اﻧﻪ ﺗﻢ ﺗﺤﺪﻳﺪ ال ‪ script‬اﻟﺮﺋﻴﺴﻰ ﻟﻠﻨﻈﺎم ‪ ،‬واﻟﻤﺴﻤﻰ ‪. rc.sysinit‬‬
‫•‪ 3‬ﺛﻢ ‪ 7‬اﺳﻄﺮ ‪ ،‬وﻓﻴﻬﻢ ﻳﺘﺤﺪد ﻣﺎ اﻟﺬى ﺳﻴﻌﻤﻞ )‪ (run‬ﻓﻰ آﻞ ‪ runlevel‬ﻋﻠﻰ ﺣﺪﻩ ‪.‬‬
‫وﺑﺎﺧﺮ آﻞ ﺳﻄﺮ ﻳﻮﺟﺪ ‪ rc‬ﺛﻢ رﻗﻢ ‪ ،‬ﻓﻬﺬا ال ‪ rc‬ﻋﺒﺎرﻩ ﻋﻦ ﻣﺠﻠﺪ )وﻣﺴﺎرﻩ ﻣﻜﺘﻮب ﺑﺎﻟﻤﻠﻒ( وآﻞ‬
‫ﻣﺠﻠﺪ ﻳﺤﺘﻮى اﻟﺒﺮاﻣﺞ اﻟﺘﻰ ﺳﺘﻌﻤﻞ ﻓﻰ آﻞ ‪ ، runlevel‬ﺑﻨﺎء ﻋﻠﻰ اﻟﺮﻗﻢ اﻟﻤﺤﺪد ‪ ،‬ﻓﺮﻗﻢ ‪ 0‬ﻣﺜﻼ‬
‫وهﻮ اﻟﺨﺎص ب ‪ -halt‬ﻻ ﻳﻮﺟﺪ ﺑﻪ اﻳﻪ ﺑﺮاﻣﺞ ﻟﺘﻌﻤﻞ ‪ ،‬ﻻﻧﻪ ﻣﺨﺼﺺ ﻻﻏﻼق اﻟﻨﻈﺎم ‪ ،‬اﻣﺎ رﻗﻢ‬‫‪ 2‬ﻓﺒﻪ اﻟﺒﺮاﻣﺞ اﻟﺘﻰ ﺳﺘﻌﻤﻞ ﻓﻰ ال ‪ runlevel‬رﻗﻢ ‪ ، 2‬وهﻜﺬا ‪.‬‬
‫•‪ 4‬ﺛﻢ ﺑﻌﺪ ذﻟﻚ اﻟﺒﺮﻧﺎﻣﺞ ‪ ، update‬وهﺬا اﻟﺒﺮﻧﺎﻣﺞ ‪-‬آﻤﺎ هﻮ ﻣﻜﺘﻮب‪ -‬ﺳﻴﻌﻤﻞ ﻋﻨﺪﻣﺎ ﻳﺘﻢ ﺗﻐﻴﻴﺮ ال‬
‫‪ ، runlevel‬ووﻇﻴﻔﻪ هﺬا اﻟﺒﺮﻧﺎﻣﺞ )‪ (daemon‬هﻰ آﺘﺎﺑﻪ اﻟﻤﻮﺟﻮد ﻓﻰ ال ‪ buffer‬اﻟﻰ ال‬
‫‪ hard disk‬وﻳﺘﻢ ذﻟﻚ ﺑﻮاﺳﻄﻪ اﻻﻣﺮ ‪) sync‬اﻧﻈﺮ ‪. (info sync‬‬
‫•‪ 5‬ﺛﻢ ﺑﻌﺪ ذﻟﻚ ‪ ctrlaltdel‬واﻟﺘﻰ ﺗﻌﻨﻰ ‪ ، ctrl + alt + del‬وﺑﺎﻟﻀﻐﻂ ﻋﻠﻰ هﺬﻩ اﻟﻤﻔﺎﺗﻴﺢ اﻟﺜﻼﺛﻪ‬
‫ﺳﻴﺘﻢ ﻋﻤﻞ ‪ reboot‬ﻟﻠﻨﻈﺎم ‪) .‬وهﺬا هﻮ ﻣﻌﻨﻰ اﻻﻣﺮ ‪ shutdown‬واﻟﺨﻴﺎرات اﻟﺘﻰ ﻣﻌﻪ(‬
‫•‪ 6‬ﺑﻌﺪ ذﻟﻚ ﺗﺸﻐﻴﻞ اﻟﺒﺮﻧﺎﻣﺞ ‪ getty‬ﻋﻠﻰ ال ‪ terminal‬ﻓﻰ آﻞ ال ‪. runlevel‬‬
‫•‪ 7‬وهﺬﻩ هﻰ اﻟﻤﺴﺌﻮﻟﻪ ﻋﻦ ﺗﺸﻐﻴﻞ ال ‪ ، x window‬ﻓﻨﺮاﻩ ﻗﺪ آﺘﺐ ‪ x:5‬اى ﺗﺸﻐﻴﻞ ال ‪ x‬ﻓﻰ ال‬
‫‪. runlevel 5‬‬

‫ﻣﺎ ﻳﺠﺐ ﻣﻼﺣﻈﺘﻪ ‪.‬‬
‫اوﻻ هﺬﻩ اﻻﻗﺴﺎم اﻟﺴﺒﻌﻪ هﻰ اهﻢ اﻻﺟﺰاء اﻟﻤﻮﺟﻮدﻩ ﺑﺎﻟﻤﻠﻒ ‪ ، inittab‬وﻣﻌﻨﻰ هﺬا اﻧﻪ ﻗﺪ ﻳﻮﺟﺪ‬
‫ﺗﻔﺎﺻﻴﻞ وﺑﻴﺎﻧﺎت اﺧﺮى ﻏﻴﺮ اﻟﺘﻰ وردت هﻨﺎ )وﻟﻜﻦ اﻟﻄﺒﻴﻌﻰ ان ﻳﺎﺗﻰ ﻣﺎ ﺗﻢ ذآﺮﻩ هﻨﺎ ﻓﻘﻂ(‬
‫ﺛﺎﻧﻴﺎ ‪ ،‬ﻳﻔﺼﻞ ﺑﻴﻦ اﻟﺨﺎﻧﺎت اﻟﻤﺨﺘﻠﻔﻪ )‪ (field‬ﺑﻌﻼﻣﻪ ‪. colon‬‬
‫•اذا ﺗﻢ ﺗﻐﻴﻴﺮ ال ‪ id‬اﻟﻤﻮﺟﻮد ﺑﺎول اﻟﻤﻠﻒ ‪ ،‬ﻓﻼ ﻳﺘﻢ ﺗﻐﻴﻴﺮﻩ ﻋﻠﻰ اﻻﻃﻼق اﻟﻰ ارﻗﺎم ‪ 0‬او ‪ ، 6‬ﻻن‬
‫ﻣﻌﻨﻰ هﺬا ان اﻟﻨﻈﺎم آﻠﻤﺎ ﺣﺎول اﻟﺪﺧﻮل ﺳﻴﺤﺪث ﻟﻪ اﻣﺎ ‪ reboot‬او ‪ ، halt‬وذﻟﻚ ﻻﻧﻪ ﻳﺘﺒﻊ ال‬
‫‪) id‬ﺑﺘﺎﻋﻪ(‬
‫• اﻟﻤﺠﻤﻮﻋﻪ )اﻟﺘﻰ اﻋﻄﻴﺘﻬﺎ رﻗﻢ ‪ (3‬واﻟﺘﻰ ﻧﺠﺪهﺎ ﻣﻜﺘﻮﺑﻪ آﺎﻻﺗﻰ ‪ 10:0wait:/etc/rc.d/rc‬ﺗﻌﻨﻰ‬
‫اوﻻ رﻗﻢ ‪ 10‬هﺬا هﻮ ﻋﺒﺎرﻩ ﻋﻦ رﻗﻢ ﺗﺴﻠﺴﻠﻰ ‪ ،‬ﻻ ﻳﺤﺪث ﻓﺮق آﺒﻴﺮ ﻋﻨﺪ ﺗﻐﻴﻴﺮﻩ‬
‫ﺛﺎﻧﻴﺎ اﻟﺮﻗﻢ ‪ 0‬هﺬا اﻟﺮﻗﻢ ﻳﺤﺪد ال ‪ runlevel‬وﻟﻬﺬا ﻓﺎﻧﻨﺎ ﻧﺠﺪ ‪ 7‬اﺳﻄﺮ ﺗﺤﺖ هﺬا اﻟﺴﻄﺮ ﺑﻬﻢ آﻞ‬
‫ال ‪runlevel‬‬
‫ﺛﺎﻟﺜﺎ ال ‪ action‬اﻟﺘﻰ ﺳﺘﻌﻤﻞ ﻓﻰ آﻞ ‪ ، runlevel‬وﻧﺮاهﺎ هﻨﺎ اﻧﻬﺎ ‪ wait‬ﻟﻜﻞ اﻻﺳﻄﺮ ‪ ،‬واﻟﺘﻰ‬
‫ﺗﻌﻨﻰ ان ﻋﻠﻰ ال ‪ init‬ان ﺗﻨﺘﻈﺮ )‪ (wait‬ﺣﺘﻰ ﺗﺸﺘﻐﻞ )‪ (run‬آﻞ ‪ process‬ﺛﻢ ﺑﻌﺪ ذﻟﻚ ﺗﻜﻤﻞ‬
‫‪ init‬اﻟﺘﺘﺎﺑﻊ اﻟﺨﺎص ﺑﺒﺪاﻳﻪ ﻋﻤﻠﻬﺎ ‪.‬‬
‫راﺑﻌﺎ اﻟﻤﺴﺎر اﻟﺬى ﺳﺘﻨﺘﻈﺮﻩ ‪ init‬ﻟﻜﻰ ﻳﻨﻬﻰ ﻋﻤﻠﻴﺎﺗﻪ ‪ ،‬وهﻮ آﻤﺎ ﻧﺮاﻩ ‪ /etc/rc.d/rc‬ﺛﻢ ﻳﺘﺒﻌﻪ‬
‫رﻗﻢ ال ‪ runlevel‬اﻟﺬى ﺳﻴﻌﻤﻞ )‪ rc‬هﺬﻩ اﺧﺘﺼﺎر ل ‪(run command‬‬
‫• ﺛﻢ ﺑﻌﺪ ذﻟﻚ اﻟﻤﺠﻤﻮﻋﻪ ‪ 6‬واﻟﺨﺎﺻﻪ ﺑﺎﻟﺒﺮﻧﺎﻣﺞ ‪getty‬‬
‫ﻓﻬﺬا اﻟﺒﺮﻧﺎﻣﺞ هﻮ اﻟﺬى ﻳﻮﻓﺮ اﻟﺪﺧﻮل ﻟﻠﻨﻈﺎم ‪ ،‬ﺑﻤﻌﻨﻰ ‪ ،‬ان آﻠﻤﻪ ‪ username‬و ‪password‬‬
‫اﻟﺘﻰ ﺗﺠﺪهﺎ داﺋﻤﺎ ﻋﻨﺪﻣﺎ ﺗﺪﺧﻞ اﻟﻰ اﻟﻨﻈﺎم ‪ ،‬ﻋﺒﺎرﻩ ﻋﻦ هﺬا اﻟﺒﺮﻧﺎﻣﺞ ‪. getty‬‬
‫ﻓﻠﻮ ﻟﻢ ﻳﻮﺟﺪ هﺬا اﻟﺒﺮﻧﺎﻣﺞ ‪ ،‬ﻟﻤﺎ اﺳﺘﻄﺎع اﻟﻤﺴﺘﺨﺪم اﻟﺪﺧﻮل اﻟﻰ اﻟﻨﻈﺎم ‪ ،‬ﻓﻬﻮ ﺑﻤﺜﺎﺑﻪ اﻟﺒﻮاﺑﻪ ﻟﻠﻨﻈﺎم‬
‫هﺬا اوﻻ ‪ ،‬ﺛﻢ ﺑﻌﺪ ذﻟﻚ ﺳﺘﻪ اﺳﻄﺮ هﻰ ﺑﻤﺜﺎﺑﻪ ال ‪ terminal‬اﻟﻤﺘﺎﺣﻪ )وهﺬﻩ ال ‪ terminal‬هﻰ اﻟﺘﻰ‬
‫ﻳﺘﻢ اﻟﺘﺒﺪﻳﻞ ﺑﻴﻨﻬﺎ ﺑﺎﻟﻤﻔﺎﺗﻴﺢ ‪ (ctrl+alt+f1....f6‬وﻟﻜﻦ ﻟﻜﻞ ﺳﻄﺮ ﻣﻦ هﺬﻩ اﻻﺳﻄﺮ اﻟﺴﺘﻪ ﻣﻌﻨﻰ‬
‫اوﻻ ﺷﻜﻞ اﻟﺴﻄﺮ ﻳﻜﻮن آﺎﻟﺘﺎﻟﻰ ‪1:2345respawn:/sbin/mingetty tty1‬‬
‫ ﻓﻤﻦ اﻟﻴﺴﺎر ‪ ،‬رﻗﻢ ‪ 1‬هﻮ ﻟﺘﺤﺪﻳﺪ ال ‪ terminal‬رﻗﻢ ‪) 1‬وﻧﺠﺪهﺎ ﻣﻜﺘﻮﺑﻪ ﺑﺎﺧﺮ اﻟﺴﻄﺮ ‪(tty1‬‬‫ واﻟﺮﻗﻢ ‪ 2345‬ﻳﻌﻨﻰ ال ‪ runlevel‬ﻣﻦ ‪ 2‬اﻟﻰ ‪5‬‬‫ وآﻠﻤﻪ ‪ respawn‬ﻟﻬﺎ ﻣﻌﻨﻰ هﺎم ‪ ،‬وهﻮ ‪ ،‬آﻠﻤﺎ ﺣﺪث ﻟﻞ ‪ terminal‬اﻏﻼق )‪ (kill‬اﻋﺪ ﻓﺘﺢ هﺬﻩ‬‫ال ‪ terminal‬ﺛﺎﻧﻴﻪ ‪ .‬وﻟﻬﺬا ﻓﻌﻨﺪﻣﺎ ﺗﺨﺮج ﻣﻦ ال ‪ terminal‬ﻓﺎﻧﻚ ﺗﺠﺪﻩ ان آﻠﻤﻪ ‪ username‬ﻗﺪ‬
‫ﻇﻬﺮت ﺛﺎﻧﻴﻪ ‪.‬‬
‫ ﺛﻢ ﺑﻌﺪ هﺬا ﻧﺠﺪ اﻟﻤﺴﺎر اﻟﺨﺎص ﻟﻠﺒﺮﻧﺎﻣﺞ ‪ getty‬وهﻮ هﻨﺎ ﻳﺴﻤﻰ ‪mingetty‬‬‫)ﻓﻰ اﻟﺤﻘﻴﻘﻪ ﻓﺎن ﻟﺒﺮﻧﺎﻣﺞ ‪ getty‬ﻋﺪﻩ ﺗﺴﻤﻴﺎت ﻓﻬﻨﺎ ﺗﺠﺪﻩ ﻳﺴﻤﻰ ‪ mingetty‬و ﺑﺼﻔﺤﺎت ال ‪ man‬ﻳﺸﺎر اﻟﻴﻪ ب‬
‫‪) agetty‬اﻧﻈﺮ ‪ ، (man agetty‬اذا ﻓﺎﻟﻤﻬﻢ ان ﺗﻌﺮف ان اﻻﺳﺎس ﻳﺴﻤﻰ ‪ getty‬وﻳﻀﺎف اﻟﻴﻪ ‪-‬ﻻﺳﺒﺎب ﻻ اﻋﻠﻤﻬﺎ‪-‬‬
‫ﻋﺪﻩ ﻣﻘﺎﻃﻊ ﺑﺎوﻟﻪ(‬

‫‪ -‬ﺛﻢ رﻗﻢ ال ‪ terminal‬واﻟﻤﺸﺎراﻟﻴﻬﺎ ب ‪tty1‬‬

man inittab‬‬ ‫ﻣﺎذا ﺑﻌﺪ اﻟﺘﻌﺪﻳﻞ ﻓﻰ اﻟﻤﻠﻒ ‪.f7‬‬ ‫•اﻟﻤﺠﻤﻮﻋﻪ ‪ 7‬وهﻰ اﻟﺨﺎﺻﻪ ﺑﺘﺸﻐﻴﻞ اﻟﺒﺮﻧﺎﻣﺞ ‪.‬ﺣﻴﻨﺌﺬ ﺳﺘﺠﺪ ان ﻧﻈﺎﻣﻚ ﻗﺪ اﺿﻴﻒ اﻟﻴﻪ ‪ terminal‬ﺟﺪﻳﺪﻩ ‪ ،‬ﺗﺼﻞ اﻟﻴﻬﺎ ﺑﺎﻟﻤﻔﺎﺗﻴﺢ ‪alt.‫ﻣﻼﺣﻈﻪ هﺎﻣﻪ ‪ ،‬ﻋﻨﺪ ارادﻩ اﺿﺎﻓﻪ ﻋﺪد ﻣﻦ ال ‪ terminal‬اﻟﻰ ﻧﻈﺎﻣﻚ ‪ ،‬ﻓﻤﺎ ﻋﻠﻴﻚ اﻻ اﺿﺎﻓﻪ ﻋﺪد‬ ‫ﻣﻦ اﻻﺳﻄﺮ اﻟﻰ هﺬﻩ اﻻﺳﻄﺮ اﻟﺴﺘﻪ ‪ ،‬وﺻﻴﻐﻪ هﺬﻩ اﻻﺳﻄﺮ اﻟﺠﺪﻳﺪﻩ ‪ ،‬هﻰ ذاﺗﻬﺎ ﺻﻴﻐﻪ اﻻﺳﻄﺮ اﻟﺴﺘﻪ‬ ‫وﻟﻜﻦ ﻻ ﺑﺪ ﻣﻦ ﺗﻐﻴﻴﺮ اول رﻗﻢ ﺑﺎﻟﺴﻄﺮ ‪-‬ﻟﻴﻮاﻓﻖ اﻟﺘﺴﻠﺴﻞ‪ -‬واﻳﻀﺎ ﺗﻐﻴﻴﺮ رﻗﻢ ال ‪ tty‬ﻟﻴﻮاﻓﻖ اﻟﺮﻗﻢ‬ ‫اﻟﺠﺪﻳﺪ‪ .‬‬ ‫وﻻن ﺑﻌﺾ اﻻﻧﻈﻤﻪ ﺗﺴﺘﻤﺮ ﻓﺘﺮﻩ ﻃﻮﻳﻠﻪ ﻗﺒﻞ ان ﻳﺘﻢ ﻋﻤﻞ ‪ reboot‬ﻟﻬﺎ ‪ ،‬ﻓﺎن اﻻﻣﺮ ‪ telinit‬ﻳﺎﺗﻰ‬ ‫ﻣﻌﻪ ‪ option‬وﻇﻴﻔﺘﻪ ﺟﻌﻞ اﻟﻨﻈﺎم ﻳﻌﻴﺪ ﻗﺮأﻩ اﻟﻤﻠﻒ ﺛﺎﻧﻴﻪ ‪.ctrl. x display manager‬‬ ‫وﻧﺮى ان ال ‪ default‬ﻟﺘﺸﻐﻴﻞ ‪ xdm‬هﻮ ال ‪. 5‬‬ ‫ﻟﻼﻃﻼع ﻋﻠﻰ آﻞ ال ‪ action‬ﻣﺜﻞ )‪ respawn‬و ‪ (wait‬وﻏﻴﺮهﻢ ﻣﻤﺎ ﺗﻢ ذآﺮهﻢ ﺳﺎﺑﻘﺎ ‪ ،‬ﻳﺮﺟﻰ‬ ‫اﻟﺮﺟﻮع اﻟﻰ ﺻﻔﺤﻪ اﻟﻤﺴﺎﻋﺪﻩ ‪. runlevel 5‬‬ ‫ﻓﻌﻨﺪ ارادﻩ ﺗﺸﻐﻴﻞ ال ‪ x window‬ﻓﻰ اى ‪ runlevel‬اﺧﺮ ‪ ،‬ﻓﻤﺎ ﻋﻠﻴﻚ اﻻ اﺿﺎﻓﻪ رﻗﻢ ال‬ ‫‪ runlevel‬اﻟﻤﺤﺪد ﺑﺠﺎﻧﺐ اﻟﺮﻗﻢ ‪.‬‬ ‫وهﺬا اﻟﺨﻴﺎر هﻮ ‪ ، q‬ﻓﻴﻜﻮن ﺻﻴﻐﻪ اﻻﻣﺮ آﺎﻻﺗﻰ‬ ‫‪telinit q‬‬ ‫وﻳﻜﺘﺐ اﻟﺤﺮف ‪ q‬اﻣﺎ ‪ capital‬او ‪ ، small‬وﻻ ﺗﺴﺒﻘﻪ اﻟﻌﻼﻣﻪ ) ‪ ( -‬ﻣﺜﻞ ﺑﺎﻗﻰ ال ‪.‬‬ ‫وذﻟﻚ ﻳﻌﻨﻰ ان اى ﺗﻌﺪﻳﻞ ﻳﺤﺪث ﻓﻰ هﺬا اﻟﻤﻠﻒ ﻟﻦ ﻳﺘﻢ ﻗﺮأﺗﻪ اﻻ ﻓﻰ اﻟﻤﺮﻩ اﻟﻘﺎدﻣﻪ ﻟﺘﺸﻐﻴﻞ اﻟﻨﻈﺎم ‪. inittab‬‬ ‫اﻟﻤﻠﻒ ‪ inittab‬ﺗﻘﺮأﻩ ال ‪ init‬ﻣﺮﻩ واﺣﺪﻩ ﻓﻘﻂ وذﻟﻚ ﻋﻨﺪ دﺧﻮﻟﻬﺎ ﻟﻠﻨﻈﺎم ‪. option‬‬ .

d/rc5.runlevel‬اﻟﻤﺤﺪد ﺑﺎﻟﻤﻠﻒ ‪ -inittab‬هﻮ ‪ 3‬ﻣﺜﻼ ‪ ،‬ﻓﺎن اﻟﻤﻠﻔﺎت اﻟﻤﻮﺟﻮدﻩ ﺑﺎﻟﻤﺠﻠﺪ‬ ‫‪ /etc/rc. /etc/rc.d/rc*.d‬هﻰ اﻟﺘﻰ ﺳﺘﺸﺘﻐﻞ ‪.‬‬ ‫اذا ﻣﺎ اﻟﺬى ﻳﻌﻨﻴﻪ هﺬا اﻟﻜﻼم ؟‬ ‫ﻳﻌﻨﻰ هﺬا اﻟﻜﻼم ‪ ،‬اﻧﻪ ﻟﻮ آﺎن ال ‪ runlevel‬اﻟﻤﺤﺪد ﻟﺪﺧﻮل اﻟﻨﻈﺎم هﻮ ‪ ، runlevel 5‬ﻓﺎن اﻟﻤﻠﻔﺎت‬ ‫اﻟﻤﻮﺟﻮدﻩ ﺑﺎﻟﻤﺴﺎر ‪ /etc/rc.d‬‬ ‫ﻓﺎﻟﻌﻼﻣﻪ * ﺑﺪﻳﻠﻪ ﻋﻦ ال ‪ runlevel‬اﻟﻤﺨﺘﻠﻔﻪ ‪. init‬‬ ‫وﺑﺎﻟﺘﺎﻟﻰ ﺳﻨﺘﻌﺮض ﻟﻠﻤﻠﻔﺎت اﻟﺘﻰ ﺗﻘﻮم ‪ init‬ﺑﺘﺸﻐﻴﻠﻬﺎ ‪. inittab‬‬ ‫وﻣﺒﺪﺋﻴﺎ ‪ ،‬ﻓﺎن ال ‪ services‬اﻟﺘﻰ ﺗﺸﻐﻠﻬﺎ ‪ init‬ﻣﻮﺟﻮدﻩ ﺑﻤﺠﻠﺪ ﻳﺴﻤﻰ ‪ init.d‬وﻧﺘﻌﺎﻣﻞ ﻣﻊ رواﺑﻂ )‪ (links‬ﻣﻮﺟﻮدﻩ ﻟﻜﻞ ‪.d‬وهﻮ اﻟﺬى ﺗﻢ ذآﺮﻩ ﺑﺎﻟﻤﻠﻒ‬ ‫‪ (inittab‬اذا ﻓﺎﻟﻤﺴﺎر اﻟﻜﺎﻣﻞ ﻟﻤﺠﻠﺪ ‪ init.‬‬ ‫وﻟﻬﺬا ﻓﺎﻧﻨﺎ ﻧﺘﺮك اﻟﻤﺠﻠﺪ ‪ init. init‬‬ ‫وﺗﻮﺟﺪ رواﺑﻂ ﻟﻬﺬﻩ ال ‪) services‬اﻟﻤﻮﺟﻮدﻩ ﻓﻰ ال ‪.d‬وهﺬا اﻟﻤﻠﻒ ﻣﻮﺟﻮد‬ ‫ﻓﻰ اﻟﻤﺴﺎر ‪. runlevel‬‬ ‫اذا ﻳﻮﺟﺪ ‪ data base‬ﻟﻜﻞ ال ‪ services‬اﻟﺘﻰ ﺗﺸﻐﻠﻬﺎ ‪.‬‬ ‫• ﻻن ﺑﺎﻟﻨﻈﺎم اآﺜﺮ ﻣﻦ ‪ ، runlevel‬ﻓﺎن اردت ﺣﺬف ﺧﺪﻣﻪ ﻣﻦ ‪ runlevel‬ﻣﻌﻴﻦ دون اﻻﺧﺮ ‪،‬‬ ‫ﻓﺎﻧﻚ ﺳﺘﺘﻌﺎﻣﻞ ﻣﻊ ال ‪ runlevel‬اﻟﻤﻘﺼﻮد ‪ ،‬وﻟﻴﺲ ﻣﻊ )اﻟﻤﺴﺘﻮدع( ذاﺗﻪ ‪.d‬هﻰ اﻟﺘﻰ ﺳﺘﺸﺘﻐﻞ ‪.d‬‬ ‫واﻟﻤﺴﺎر اﻟﻜﺎﻣﻞ ﻟﻠﻤﻠﻔﺎت ‪-‬اﻟﺘﻰ هﻰ ﻓﻰ ﻧﻔﺲ اﻟﻮﻗﺖ رواﺑﻂ ل ‪ -init.‫ﻧﻈﺮﻩ اﺧﻴﺮﻩ ﻋﻠﻰ ‪. /etc/rc.‬‬ ‫وﺑﺎﻟﺘﻌﺮض ﻟﻬﺬﻩ اﻟﻤﻠﻔﺎت ‪ ،‬ﻓﺎﻧﻨﺎ ﺳﻨﻔﻬﻢ اآﺜﺮ ‪ ،‬ﻣﻌﺎﻧﻰ )اﻟﻤﺴﺎرات( اﻟﺘﻰ وردت ﻓﻰ اﻟﻤﻠﻒ ‪.d/rc3.‬‬ .d‬هﻮ ‪. data base‬‬ ‫ﻓﻜﻞ ﻣﻠﻔﺎت وﻣﺠﻠﺪات ‪ init‬ﻣﻮﺟﻮدﻩ ﺗﺤﺖ ‪ ، /etc‬وﺑﻤﺠﻠﺪ ﻳﺴﻤﻰ ‪) rc.‬‬ ‫وان آﺎن ال ‪. (data base‬‬ ‫وﺗﻌﺎﻣﻠﻨﺎ ﻳﻜﻮن ﻣﻊ اﻟﺮواﺑﻂ ‪ ،‬وﻟﻴﺲ ﻣﻊ ال ‪. /etc‬‬ ‫وهﺬا اﻟﻤﺠﻠﺪ ﻻ ﻳﺘﻢ اﻟﺘﻌﺎﻣﻞ ﻣﻌﻪ ﻣﺒﺎﺷﺮﻩ ‪ ،‬ﻟﺴﺒﺒﻴﻦ‬ ‫• ﻻﻧﻪ ﻳﻌﺘﺒﺮ ال ‪ data base‬ﻟﻜﻞ اﻟﻤﻠﻔﺎت اﻟﺘﻰ ﺗﺸﻐﻠﻬﺎ ‪ ، init‬وﺑﺎﻟﺘﺎﻟﻰ ﻓﺎن اى ﺣﺬف ﻟﻤﺤﺘﻮﻳﺎﺗﻪ ‪،‬‬ ‫ﻳﻌﻨﻰ ان اﻟﺨﺪﻣﻪ )‪ (services‬اﻟﺘﻰ ﺗﻢ ﺣﺬﻓﻬﺎ ‪ ،‬ﻻ ﻳﻤﻜﻦ اﺳﺘﻌﺎدﺗﻬﺎ ‪. init‬‬ ‫ﻓﻰ هﺬﻩ اﻟﻨﻈﺮﻩ ‪ ،‬ﺳﻨﻘﺘﺮب اآﺜﺮ ﻣﻦ ﻋﻤﻠﻴﺎت ‪ ، init‬وﻧﺮى ﺑﺎﻟﻀﺒﻂ ﻣﺎ اﻟﺬى ﺗﻔﻌﻠﻪ ‪.d‬هﻮ ‪.d/init.

‫ﺷﻜﻞ ﻣﻠﻔﺎت ‪ rc*.d‬‬ ‫ﺛﻢ ﺑﻌﺪ ذﻟﻚ ‪-‬وهﻮ اﻟﻤﻬﻢ‪ -‬ﺷﻜﻞ ال ‪.d‬ﻣﻦ اﻟﺪاﺧﻞ ‪.d‬ﻟﻬﺎ ﺷﻜﻞ ﻏﺮﻳﺐ ‪-‬ﺑﻌﺾ اﻟﺸﻰ‪. rc3./‬واﻟﺘﻰ ﺗﻌﻨﻰ ال ‪ parent directory‬ﻟﻠﻤﻮﺟﻮد ﺣﺎﻟﻴﺎ ‪ ،‬ﺑﻤﻌﻨﻰ اﺧﺮ ‪ ،‬هﻮ‬ ‫اﻟﻤﺠﻠﺪ اﻟﺬى ﻳﻌﻠﻮ اﻟﻤﺠﻠﺪ اﻟﺤﺎﻟﻰ )اى ‪. services‬‬ ‫ﻓﺘﺮاهﺎ ﻣﻜﺘﻮﺑﻪ ﻣﺜﻞ ‪ k05innd‬وﻣﺜﻞ ‪ k24irda‬وهﻜﺬا ‪ .‬‬ .d‬‬ ‫ﺛﻢ ﺑﻌﺪ ذﻟﻚ اﻟﻌﻼﻣﻪ ) ‪ ( .‬هﺬا اﻟﺸﻜﻞ ﻗﺪ ﻧﻘﺴﻤﻪ اﻟﻰ ﺛﻼث اﻗﺴﺎم‬ ‫• اﻻول ‪ ،‬هﻮ اﻟﺤﺮف ‪ ،‬وهﻮ ﻣﺜﻞ ﺣﺮف ‪ k‬ﺑﺎول اﻟﻤﻠﻒ ‪ ،‬او ‪ s‬اﻟﻤﻮﺟﻮد ﺑﺎﺧﺮ اﻟﻤﻠﻒ ‪ .‬‬ ‫• اﻟﺜﺎﻟﺚ ‪ ،‬اﺳﻢ ال ‪ service‬وهﻮ ﻣﺜﻞ ‪ innd‬و ‪ irda‬وﻏﻴﺮهﻢ ‪.‬‬ ‫واﻟﺴﻄﺮ اﻟﺜﺎﻧﻰ ‪ ،‬ﻳﺨﺒﺮك ان ﺗﺮﺗﻴﺐ ﻋﺮض هﺬا اﻟﻤﻠﻒ ﻣﻌﺘﻤﺪ ﻋﻠﻰ اﺳﻤﺎء ال ‪.. (/etc/rc.d‬ﺑﻌﺪ اﻟﺪﺧﻮل اﻟﻴﻪ ﺑﺒﺮﻧﺎﻣﺞ ‪vi‬‬ ‫ﻓﺎﻟﺴﻄﺮ اﻻول )اﻟﻤﻜﺘﻮب ﺑﺎﻻﺣﻤﺮ( ﻳﺨﺒﺮك اﻧﻪ ﺑﺎﻟﻀﻐﻂ ﻋﻠﻰ ) ؟ ( ﻓﺎﻧﻪ ﺳﻴﺘﻢ ﻋﺮض ال ‪ help‬ﻟﻚ ‪. runlevel‬‬ ‫• اﻟﺜﺎﻧﻰ ‪ ،‬وهﻮ ﻋﺒﺎرﻩ ﻋﻦ اﻟﺮﻗﻢ ‪،‬ﻣﺜﻞ ‪ 05‬او ‪، 24‬وﻣﻬﻤﻪ هﺬا اﻟﺮﻗﻢ ‪ ،‬ﺗﺮﺗﻴﺐ ﻓﺘﺢ ال ‪services‬‬ ‫اﻟﻤﺨﺘﻠﻔﻪ ‪ ،‬ﻓﻠﻮ اﻧﻚ ﻻﺣﻈﺖ ﺑﺸﺪﻩ ‪ ،‬ﺳﺘﺠﺪ ان هﺬا اﻟﺘﺮﺗﻴﺐ ﻟﻞ ‪ services‬هﻮ ذاﺗﻪ اﻟﺬى ﺗﺮاﻩ‬ ‫ﻋﻨﺪﻣﺎ ﻳﺸﺘﻐﻞ اﻟﻨﻈﺎم ‪.‬ﻓﺤﺮف ‪k‬‬ ‫اﺧﺘﺼﺎر ل ‪ kill‬اى ان هﺬﻩ ال ‪ services‬ﺳﻴﺘﻢ اﻏﻼﻗﻬﺎ ﻋﻨﺪﻣﺎ ﻳﺪﺧﻞ اﻟﻨﻈﺎم هﺬا ال ‪runlevel‬‬ ‫‪ ،‬وﻋﻜﺴﻬﺎ اﻟﺤﺮف ‪ s‬واﻟﺘﻰ ﺗﻌﻨﻰ ان ال ‪ services‬اﻟﺘﻰ ﺗﺒﺪا ﺑﻬﺬا اﻟﺤﺮف ﺳﻮف ﻳﺘﻢ ﺗﺸﻐﻴﻠﻬﺎ‬ ‫)‪ (start‬ﻓﻰ هﺬا ال ‪. -‬‬ ‫ﻓﻬﺬا اﻟﺸﻜﻞ اﻟﺬى اﻣﺎﻣﻨﺎ ﻳﻮﺿﺢ ﺷﻜﻞ اﻟﻤﺠﻠﺪ ‪ ، rc3. services‬‬ ‫واﻟﺴﻄﺮ اﻟﺜﺎﻟﺚ ‪ ،‬ﻳﺨﺒﺮك ﺑﺎﺳﻢ اﻟﻤﺠﻠﺪ اﻟﺬى ﺗﻘﻒ ﻓﻴﻪ ‪ ،‬وهﻮ ﺑﺎﻟﻄﺒﻊ ‪.‬‬ ‫اﻟﻤﻠﻔﺎت اﻟﻤﻮﺟﻮدﻩ ﺑﺎﻟﻤﺠﻠﺪ ‪ ، rc*.

runlevel‬وهﻨﺎ ﺗﻈﻬﺮ ﻓﺎﺋﺪﻩ وﺟﻮد اﻟﺮواﺑﻂ( ‪.d‬ﺛﻢ اﻟﻮﻗﻮف ﻋﻠﻰ اﺳﻢ ال‪ service‬اﻟﻤﻌﻴﻨﻪ‪ ،‬ﺛﻢ اﻟﻀﻐﻂ ‪.‬‬ ‫وﻧﺘﻴﺠﻪ هﺬا اﻻﻣﺮ ﻋﺒﺎرﻩ ﻋﻦ ﺑﺮﻧﺎﻣﺞ ﻳﻌﻤﻞ ﻋﻠﻰ ال ‪ ، termina‬وﺷﻜﻠﻪ آﺎﻻﺗﻰ‬ .d‬ﺛﻢ اﻟﻮﻗﻮف ﻋﻠﻰ اﺳﻢ ال ‪ service‬اﻟﻤﺮاد ﺣﺬﻓﻬﺎ ‪ ،‬ﺛﻢ اﻟﻀﻐﻂ‬ ‫ﻋﻠﻰ اﻟﻤﻔﺘﺎح ‪) D‬ﺑﺼﻴﻐﻪ ‪.‬‬ ‫اﻟﻄﺮﻳﻘﻪ اﻻوﻟﻰ ‪ ،‬هﻰ ﺣﺬف هﺬا اﻟﺮاﺑﻂ ﻳﺪوﻳﺎ ‪. (capital‬‬ ‫اﻟﻄﺮﻳﻘﻪ اﻟﺜﺎﻧﻴﻪ ‪ ،‬ﺗﺘﻢ ﻋﻦ ﻃﺮﻳﻖ اﻣﺮ ﻳﺴﻤﻰ ‪ ، ntsysv‬وﺻﻴﻐﺘﻪ هﻰ‬ ‫‪ntsysv‬‬ ‫وﻻ ﻳﻜﺘﺐ ﻣﻌﻪ اى ‪ ، option‬ﻓﻘﻂ هﻮ وﺣﺪﻩ ‪. enter‬‬ ‫ﻓﻤﺎ ﺳﻴﺤﺪث هﻮ اﻧﻚ ﺳﺘﺪﺧﻞ ﻓﻰ ال ‪ script‬اﻟﺬى ﻳﺸﻐﻞ هﺬﻩ ال ‪ ، service‬وﺑﺄول هﺬا ال ‪ script‬ﻳﻮﺟﺪ ﺳﻄﺮﻳﻦ او‬ ‫ﺛﻼﺛﻪ ﺗﺸﺮح وﻇﻴﻔﻪ آﻞ ‪. services‬‬ ‫ال ‪ process‬او ال ‪ service‬ﻗﺪ ﻧﻌﺘﺒﺮهﺎ ﺑﺮاﻣﺞ ﺗﻌﻤﻞ ﻓﻰ ‪ runlevel‬ﻣﻌﻴﻦ ‪ ،‬وﻋﻨﺪ ارادﻩ اﻟﻐﺎء‬ ‫هﺬا اﻟﺒﺮﻧﺎﻣﺞ ﻣﻦ هﺬا ال ‪ runlevel‬اﻟﻤﻌﻴﻦ ‪ ،‬ﻓﺎﻧﻨﺎ ﺑﺒﺴﺎﻃﻪ ﻧﺤﺬف اﻟﺮاﺑﻂ )‪ (link‬اﻟﻤﺨﺼﺺ ﻟﻪ ﺑﻬﺬا‬ ‫ال ‪) .‬‬ ‫وﻳﺘﻢ ﺣﺬف هﺬا اﻟﺮاﺑﻂ ﺑﻌﺪﻩ ﻃﺮق ‪ ،‬اﻻ اﻧﻨﻰ ﺳﺎﻗﻮم ﺑﺸﺮح ﻃﺮﻳﻘﺘﻴﻦ ‪-‬ﺑﺴﻴﻄﺘﻴﻦ‪ -‬ﻣﻦ هﺬﻩ اﻟﻄﺮق ‪.‫ﻣﻼﺣﻈﻪ ﻣﻔﻴﺪﻩ ‪ ،‬ﻳﻤﻜﻨﻚ اﻟﺘﻌﺮف ﻋﻠﻰ وﻇﻴﻔﻪ آﻞ ‪ service‬او ‪ process‬ﻣﻮﺟﻮدﻩ ﺑﺎى ‪ runlevel‬ﻋﻦ ﻃﺮﻳﻖ‬ ‫اﻟﺪﺧﻮل ﻟﻠﻤﺠﻠﺪ ‪ ، rc*. service‬‬ ‫آﻴﻔﻴﻪ ﺣﺬف ال ‪.‬‬ ‫وﻳﺘﻢ ذﻟﻚ ﺑﺎﻟﺪﺧﻮل ﻟﻠﻤﺠﻠﺪ ‪ ، rc*.

‬‬ ‫هﻨﺎك ﻋﺪﻩ اواﻣﺮ ﺗﻘﻮم ﺑﺎﻏﻼق اﻟﻨﻈﺎم ﻣﺜﻞ ‪ poweroff‬او ‪.‬‬ ‫• واﺳﺘﺨﺪام ال ‪ space bar‬ﻟﻠﺘﺎﺷﻴﺮ ﻋﻠﻰ ال ‪ ، service‬ﺳﻮاء ﻟﺤﺬﻓﻬﺎ ‪ ،‬او ﻟﺘﺸﻐﻴﻠﻬﺎ ‪.‬‬ ‫ﻣﻼﺣﻈﻪ ‪ ،‬اﻟﺒﺮاﻣﺞ اﻟﺘﻰ ﺗﻌﻤﻞ ﻋﻠﻰ ال ‪ termina‬ﻣﺜﻞ ‪ ، ntsysv‬ﺗﺴﻤﻰ ‪.‬‬ ‫واﻟﺴﺒﺐ هﻮ ‪ ،‬ان اﻻﻣﺮ ‪ shutdown‬ﻳﻘﻮم ﺑﺘﺤﺬﻳﺮ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ﺑﺎن اﻟﻨﻈﺎم ﺳﻴﺘﻢ ﻏﻠﻘﻪ ‪ ،‬ﺑﻌﻜﺲ اﻻواﻣﺮ اﻻﺧﺮى ‪،‬‬ ‫ﻓﺎﻧﻬﺎ ﺗﻘﻮم ﺑﺎﻏﻼق اﻟﻨﻈﺎم ﻣﺒﺎﺷﺮﻩ ‪. ،‬‬ ‫)واذا ﻟﻢ ﻳﺘﺤﺪد ‪ option‬ﻣﻊ اﻻﻣﺮ‬ ‫وﺻﻴﻐﺘﻪ هﻰ‬ ‫]‪shutdown [-akrhfnc] [-t secs] time [warning message‬‬ ‫• ﻳﻜﺘﺐ اﻻﻣﺮ ‪shutdown‬‬ ‫• ﻳﺘﺒﻌﻪ اى ﻣﻦ هﺬﻩ اﻟﺨﻴﺎرات ]‪ [akrhfnc‬ﻣﺴﺒﻮﻗﻪ ﺑﺎﻟﻌﻼﻣﻪ ) ‪( -‬‬ ‫• وﻗﺪ ﻳﺘﺒﻌﻪ ‪ -t‬ﺛﻢ ﻋﺪد ﻣﻌﻴﻦ ﻣﻦ اﻟﺜﻮاﻧﻰ‬ ‫• وﺗﺒﺪل آﻠﻤﻪ ‪ time‬ﺑﺎﻟﻮﻗﺖ اﻟﻤﺤﺪد اﻟﺘﻰ ﺗﺮﻳﺪ اﻏﻼق اﻟﻨﻈﺎم ﻓﻴﻪ‬ ‫• ﺛﻢ اﻟﺮﺳﺎﻟﻪ اﻟﺘﻰ ﺳﺘﻈﻬﺮ اﻟﻰ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ‬ ‫وﻟﻜﻦ ﻻﺣﻆ ان آﻞ اﻟﺨﻴﺎرات اﻟﻤﻜﺘﻮﺑﻪ ﺑﻴﻦ اﻟﻘﻮﺳﻴﻦ ] [ هﻰ ﺧﻴﺎرات ﻏﻴﺮ ﻣﻠﺰﻣﻪ ‪ ،‬ﺑﻤﻌﻨﻰ اﻧﻚ ﻏﻴﺮ‬ ‫ﻣﻀﻄﺮ ﺑﺎن ﺗﻜﺘﺒﻬﻢ ‪ . init 0‬‬ ‫اﻻ ان هﺬﻩ اﻟﻨﻮﻋﻴﻪ ﻣﻦ اﻻواﻣﺮ ﺗﻘﻮم ﺑﺎﻏﻼق اﻟﻨﻈﺎم ﺑﺸﻜﻞ ﻣﻔﺎﺟﻰ ﻟﻠﻤﺴﺘﺨﺪﻣﻴﻦ ‪. gui based‬‬ ‫اﻏﻼق اﻟﻨﻈﺎم ‪.‬وﻟﻬﺬا ﻓﺎن اﻟﺤﺪاﻻدﻧﻰ اﻟﺬى ﻻ ﺑﺪ ان ﺗﻜﺘﺒﻪ هﻮ‬ ‫• اﻻﻣﺮ ‪shutdown‬‬ ‫)وهﺬا اﻟﻮﻗﺖ ﻗﺪ ﻳﻜﺘﺐ ﺑﺎرﻗﺎم ﻣﺜﻞ ‪ 5‬او ﻣﺜﻞ ‪ ، +5‬وﻗﺪ ﺗﻜﺘﺐ آﻠﻤﻪ ‪ now‬ﻟﻼﻏﻼق اﻻن(‬ ‫• اﻟﻮﻗﺖ اﻟﻤﺤﺪد‬ ‫وذﻟﻚ ﻣﺜﻞ‬ ‫‪shutdown 9‬‬ ‫ﻓﻤﺎ ﺳﻴﺤﺪث هﻮ ان اﻟﻨﻈﺎم ﺳﻴﻐﻠﻖ ﺑﻌﺪ ﺗﺴﻊ دﻗﺎﺋﻖ ‪ .‬وﻳﻤﻜﻦ ﺗﺤﺪﻳﺪ هﺬﻩ اﻟﺮﺳﺎﻟﻪ آﺎﻻﺗﻰ‬ ‫"‪shutdown +9 "system will go down‬‬ .‬‬ ‫• ﻓﻤﺎ ﻋﻠﻴﻚ اﻻ اﺳﺘﺨﺪام اﻻﺳﻬﻢ ‪ up‬و ‪ down‬ﻟﻠﺘﺤﺮك ﻻﻋﻠﻰ واﺳﻔﻞ ‪. consol based‬‬ ‫اﻣﺎ ﺗﻠﻚ اﻟﺘﻰ ﺗﻌﻤﻞ ﻋﻠﻰ ال ‪ gui‬ﻣﺜﻞ ‪ mozilla‬وﻏﻴﺮﻩ ‪ ،‬ﻓﺘﺴﻤﻰ ‪.‬‬ ‫)ﻋﻨﺪ ﺗﺸﻐﻴﻠﻬﺎ ﺗﺠﺪ اﻟﻌﻼﻣﻪ * ‪ ،‬وﺑﺤﺬف هﺬﻩ اﻟﻌﻼﻣﻪ ﻳﺘﻢ اﻻﻟﻐﺎء(‬ ‫• واﻟﻤﻔﺘﺎح ‪ tab‬ﻳﺘﻴﺢ ﻟﻚ اﻟﺘﺤﺮك اﻟﻰ اﻻزرار ‪ ok‬و ‪ ، cancel‬ﻟﻠﻤﻮاﻓﻘﻪ واﻟﺨﺮوج او ﻟﻼﻟﻐﺎء ‪.‬‬ ‫وﻟﻬﺬا ﻓﺎن اﻻﻣﺮ ‪ shutdown‬هﻮ اﻟﻤﺴﺌﻮل ﻋﻦ اﻏﻼق اﻟﻨﻈﺎم ﺑﺸﻜﻞ ﺳﻠﻴﻢ ‪.‫واﻟﺘﻌﺎﻣﻞ ﻣﻊ هﺬا اﻟﺒﺮﻧﺎﻣﺞ ﺳﻬﻞ ﻟﻠﻐﺎﻳﻪ ‪.‬وﻟﻜﻦ ﺑﺪون ارﺳﺎل اى رﺳﺎﻟﻪ ﺗﺤﺬﻳﺮ اﻟﻰ‬ ‫اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ‪ .

.

‬‬ ‫وﻳﻤﻜﻨﻨﺎ ذآﺮ ﺑﻌﺾ اﻟﺨﺼﺎﺋﺺ اﻟﻌﺎﻣﻪ ﻟﻞ‪. kernel‬‬ ‫وﻟﻞ‪ shell‬هﺬﻩ اآﺜﺮ ﻣﻦ ﻧﻮع ‪،‬‬ ‫وآﻞ ﻧﻮع ﻟﻪ اﺳﻢ واﻳﻀﺎ ﻟﻪ ﻣﻤﻴﺰات وﺧﺼﺎﺋﺺ‪. bell‬‬ ‫وهﻨﺎك اﻳﻀﺎ ‪) C shell‬ﺗﺨﺘﺼﺮ ‪ (csh‬واﻟﺘﻰ ﻃﻮرت ﻟﺘﻌﻤﻞ ﻣﻊ ‪.‬‬ ‫وﻟﻴﻨﻮآﺲ ﻳﺪﻋﻢ آﻞ هﺬﻩ اﻻﻧﻮاع ‪ ،‬ﻓﻴﻤﻜﻨﻚ ﻣﺜﻼ اﻟﻌﻤﻞ ﻣﻊ ‪) Cshell‬اﻟﻘﺮﻳﺒﻪ اﻟﺸﺒﻪ ﻣﻦ ﻟﻐﻪ اﻟﺒﺮﻣﺠﻪ‬ ‫‪(c‬‬ .‬‬ ‫*اﻣﺎ ﺑﺎﻟﻨﺴﺒﻪ ﻻﻧﻮاﻋﻬﺎ ﻓﻌﺪﻳﺪﻩ‬ ‫ﻓﻬﻨﺎك ‪ shell‬ﺗﺴﻤﻰ ‪ sh‬وهﻰ اﻻﻗﺪم ﻧﻮﻋﺎ ﻣﻦ ﺑﻘﻴﻪ اﻻﻧﻮاع ‪ ،‬وﺗﻘﺮﻳﺒﺎ ﺗﺠﺪهﺎ ﻓﻰ آﻞ اﻧﻈﻤﻪ ‪unix‬‬ ‫اواﻟﻤﺘﻮاﻓﻘﻪ ﻣﻌﻪ )‪ (unix-like os‬وﻟﻬﺎ اﺻﺪارات ﻣﺘﻄﻮرﻩ ‪ ،‬ﻧﺬآﺮ ﻣﻨﻬﺎ‬ ‫‪ bourne shell‬واﻟﺘﻰ ﻃﻮرت ﺑﻤﻌﺎﻣﻞ ‪.‬‬ ‫‪ -2‬اى ﻧﻮع ﻣﻦ اﻧﻮاع ال‪ shell‬ﻳﻤﻜﻨﻚ ﺗﻌﺪﻳﻠﻪ )اى ﺗﻌﺪﻳﻞ ﻗﻮاﻋﺪﻩ( ﻟﻴﺘﻮاﻓﻖ ﻣﻊ اﻟﺤﺎﺟﻪ ‪ ،‬ﻓﻠﻞ‪shell‬‬ ‫ﻣﺎ ﻳﺴﻤﻰ ال‪ variables‬واﻟﺘﻰ ﺗﻌﺪ آﻘﻮاﻋﺪ ﺗﺘﺤﻜﻢ ﻓﻰ اداء ال‪ ، shell‬ﻓﻤﺜﻼ ال‪ bash‬ﺗﺨﺰن اﺧﺮ‬ ‫‪ 1000‬اﻣﺮ ادﺧﻞ اﻟﻴﻬﺎ ‪ ،‬وهﺬا هﻮ ال‪، variable‬وﻣﻦ ﺛﻢ ﻓﻴﻤﻜﻨﻚ ﺗﻌﺪﻳﻠﻬﺎ ﻟﺘﺨﺰن ﻣﺜﻼ ‪2000‬اﻣﺮ‪.‫ال‪ shell‬ﻟﻠﻤﺮﻩ اﻟﺜﺎﻧﻴﻪ)ﻧﻈﺮﻩ اﻋﻤﻖ(‬ ‫ﺗﻜﻠﻤﻨﺎ ﻓﻴﻤﺎ ﺳﺒﻖ ﻋﻦ ال‪ shell‬آﻨﻈﺮﻩ ﻋﺎﻣﻪ‪ ،‬اﻣﺎ اﻻن ﻓﺴﻨﺘﻌﺮض ﻟﻬﺎ وﻟﻜﻦ ﺑﻨﻈﺮﻩ اآﺜﺮ ﺗﻌﻤﻘﺎ‪.var‬اى ال‪var‬اﻟﺨﺎص‬ ‫ﺑﺎﻻﺻﻠﻴﻪ هﻮ اﻳﻀﺎ ال‪ var‬اﻟﺨﺎص ﺑﺎﻟﻔﺮﻋﻴﻪ ‪. shell‬‬ ‫‪ -1‬ال‪ shell‬هﺬﻩ ﻋﺒﺎرﻩ ﻋﻦ ﺑﺮﻧﺎﻣﺞ ﻣﺴﺘﻘﻞ ﻳﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻜﺮﻧﻞ وﻟﻴﺲ ﺟﺰء ﻣﻨﻪ‪.‬‬ ‫‪ -5‬ال‪ shell‬ﻟﻬﺎ ﻟﻐﻪ ﺑﺮﻣﺠﻪ ﺧﺎﺻﻪ ﺑﻬﺎ ‪ ،‬ﻓﻴﻤﻜﻨﻚ آﺘﺎﺑﻪ ﻣﻠﻒ ﺑﻠﻐﻪ ﺑﺮﻣﺠﺘﻬﺎ ‪، shell script‬او ﺣﺘﻰ‬ ‫آﺘﺎﺑﻪ هﺬﻩ اﻟﻠﻐﻪ ﻋﻠﻰ ال‪ command line‬ذات ﻧﻔﺴﻪ )آﺎﻧﻚ ﺗﻜﺘﺐ اﻣﺮ( ‪. BSD‬‬ ‫وهﻨﺎك اﻳﻀﺎ ‪ Tcsh‬اﻟﻤﺘﻄﻮرﻩ ﻣﻦ ‪ ، Cshell‬واﻳﻀﺎ ‪ Zsh‬و ‪ Ksh‬وﻏﻴﺮهﻢ ﻣﻦ اﻻﻧﻮاع ‪.‬‬ ‫‪ -3‬ﻳﻤﻜﻦ ﺗﺸﻐﻴﻞ ‪ shell‬ﻣﻦ داﺧﻞ ‪ shell‬اﺧﺮى ‪ ،‬وهﺬا ﻣﺎ ﻳﺤﺪث ﻓﻰ ﺣﺎﻟﻪ ال‪ ،script‬وﻣﻦ ﺛﻢ‬ ‫ﺗﻜﻮن ال‪ shell‬اﻟﺜﺎﻧﻴﻪ ﻋﺒﺎرﻩ ﻋﻦ ‪ process‬ﻟﻼوﻟﻰ ﺗﻌﻤﻞ ﺑﻨﻔﺲ ﻗﻮاﻋﺪهﺎ ‪ .‬‬ ‫ال‪ shell‬هﺬﻩ هﻰ اﻟﻘﺸﺮﻩ اﻟﺘﻰ ﻧﺘﻌﺎﻣﻞ ﻣﻦ ﺧﻼﻟﻬﺎ ﻣﻊ اﻟﻨﻈﺎم ‪،‬وﺑﻜﻼم اآﺜﺮ دﻗﻪ ﻧﺘﻌﺎﻣﻞ ﻣﻦ ﺧﻼﻟﻬﺎ ﻣﻊ‬ ‫ﻟﺐ اﻟﻨﻈﺎم وهﻮ اﻟﻜﺮﻧﻞ ‪.‬‬ ‫‪ -4‬ال‪ shell‬ﺗﺴﺘﺨﺪم ﻋﺪﻩ ﻣﻠﻔﺎت ﺗﻬﻴﺌﻪ ﻟﻬﺎ ‪ ،‬وﺗﻘﺮأهﻢ آﻠﻤﺎ ﺑﺪأت اﻟﻌﻤﻞ ‪.

steve bourne‬‬ ‫وال‪ bash‬ﻣﻦ اﺻﺪار ‪ ، GNU‬ﺑﻤﻌﻨﻰ اﻧﻬﻢ هﻢ ﻣﻦ ﻗﺎﻣﻮا ﺑﺘﻄﻮﻳﺮهﺎ ‪.‫وﻟﻜﻦ ال‪ deafult‬ﻓﻰ ﻟﻴﻨﻮآﺲ واﻟﺘﻰ ﻋﻨﺪﻣﺎ ﺗﻨﺰل اﻟﻨﻈﺎم ﺳﺘﺠﺪهﺎ اﻣﺎﻣﻚ هﻰ ال‪.‬‬ .bash shell‬‬ ‫وال‪ bash‬هﺬﻩ هﻰ اﻟﻨﺴﺨﻪ اﻟﻤﻄﻮرﻩ ﻣﻦ ‪ bourne shell‬واﻟﺘﻰ ﺳﻤﻴﺖ آﺬﻟﻚ ﻧﺴﺒﻪ ﻟﻤﻄﻮرهﺎ‬ ‫‪.

script‬ﻓﺒﻌﺪ آﺘﺎﺑﻪ ﻣﻠﻒ ﺑﻪ وﻇﺎﺋﻒ ﻣﻌﻴﻨﻪ ﻟﺘﻘﻮم ال‬ ‫‪ bash‬ﺑﺘﻨﻔﻴﺬهﺎ > وهﺬا هﻮ ال‪ < script‬ﻓﻌﻨﺪ ﺗﻨﻔﻴﺬ هﺬﻩ اﻟﻌﻤﻠﻴﻪ ﺗﺘﻮاﻟﺪ ال‪ child shell‬اﻟﻰ ان‬ ‫ﺗﻨﺘﻬﻰ ﻣﻦ ﺗﻨﻔﻴﺬ هﺬﻩ اﻟﻌﻤﻠﻴﻪ وﻣﻦ ﺛﻢ ﺗﺮﺟﻊ ﺛﺎﻧﻴﻪ اﻟﻰ ال‪ shell‬اﻻﺳﺎﺳﻴﻪ(‪. environment variables‬‬ ‫وهﻰ ﺗﻌﻨﻰ ﻧﻔﺲ ﻣﻌﻨﺎهﺎ اﻟﺤﺮﻓﻰ ‪ ،‬اى ﻣﺘﻐﻴﺮات اﻟﺒﻴﺌﻪ ‪. bash‬‬ ‫وﻟﻴﺲ ﻣﻌﻨﻰ ذﻟﻚ اﻧﻪ ﻋﻨﺪﻣﺎ ﺗﺒﺪأ اﻟﻌﻤﻞ ﻣﻊ ال‪ bash‬ان ﺗﺬهﺐ ﻣﺒﺎﺷﺮﻩ ﻟﺘﻌﺪﻳﻞ هﺬﻩ اﻟﻘﻮاﻋﺪ‪ ،‬ﻻﻧﻬﺎ ﻓﻰ‬ ‫وﺿﻊ ‪ standard‬ﻳﻼﺋﻢ اﻟﻤﺴﺘﺨﺪم اﻟﺠﺪﻳﺪ ‪.‬‬ ‫)‪ child shell‬او ال‪ shell‬اﻟﻤﺘﻮاﻟﺪﻩ ‪ ،‬هﻰ ال‪ shell‬اﻟﺘﻰ ﺗﻨﺸﺄ ﻟﺘﻘﻮم ﺑﻌﻤﻞ ﻣﻌﻴﻦ وﻣﺤﺪد ‪ ،‬وﺗﻈﻬﺮ‬ ‫ﺑﻮﺿﻮح ﻣﻊ ﺑﺮﻣﺠﻪ ال‪ shell‬ﺑﻠﻐﻪ اﻻﺳﻜﺮﺑﺖ ‪ . bash‬‬ ‫ﻟﻞ ‪ bash‬ﻗﻮاﻋﺪ ﺧﺎﺻﻪ ﺑﻬﺎ ‪ ،‬ﻣﻬﻤﻪ هﺬﻩ اﻟﻘﻮاﻋﺪ هﻰ ﺗﻌﺪﻳﻞ ﻋﻤﻞ ال‪.‬‬ ‫ﻓﺎل‪ bash‬هﺬﻩ هﻰ اﻟﺒﻴﺌﻪ ‪ ،‬وهﺬﻩ اﻟﺒﻴﺌﻪ ﻟﻬﺎ ﻣﺘﻐﻴﺮات )ﻋﻨﺪﻣﺎ ﺗﺘﻐﻴﺮ هﺬﻩ اﻟﻤﺘﻐﻴﺮات ﺗﻐﻴﺮ ﺷﻜﻞ اﻟﻨﺎﺗﺞ‬ ‫ﻣﻦ ﻋﻤﻞ ال‪. (bash‬‬ ‫وهﻨﺎك ﻧﻮﻋﺎن ﻣﻦ هﺬﻩ اﻟﻤﺘﻐﻴﺮات‬ ‫‪ -1‬ﻣﺘﻐﻴﺮات آﻠﻴﻪ ‪global variables‬‬ ‫‪ -2‬ﻣﺘﻐﻴﺮات ﺟﺰﺋﻴﻪ ‪local variables‬‬ ‫اﻟﻔﺮق ﺑﻴﻦ اﻟﻨﻮﻋﻴﻦ‪.‬‬ ‫*اﻣﺎ اﻟﻤﺘﻐﻴﺮات اﻟﺠﺰﺋﻴﻪ )‪ (local‬ﻓﻌﻨﺪﻣﺎ ﺗﺘﻮﻟﺪ ‪ shell‬اﺧﺮى ﻓﻼ ﻳﺘﻢ ﺗﺼﺪﻳﺮ اﻟﻤﺘﻐﻴﺮات )‪ (var‬ﻟﻬﺎ ‪.‬‬ ‫وهﺬﻩ اﻟﻘﻮاﻋﺪ اﻟﺘﻰ ﺗﺤﻜﻢ ﻋﻤﻞ ال‪ bash‬ﺗﺴﻤﻰ ‪.‬‬ ‫*اﻟﻤﺘﻐﻴﺮات اﻟﻜﻠﻴﻪ هﻰ اﻟﻤﺘﻐﻴﺮات اﻟﺘﻰ ﺗﺤﻜﻢ ﻋﻤﻞ هﺬﻩ ال‪ shell‬واﻳﻀﺎ ﺗﺤﻜﻢ ﻋﻤﻞ ال‪ shell‬اﻟﺘﻰ ﻗﺪ‬ ‫ﺗﺘﻮﻟﺪ ﻣﻨﻬﺎ ‪.‬‬ ‫وﻟﻜﻦ ان اردت ﺗﻌﺪﻳﻞ هﺬﻩ اﻟﻘﻮاﻋﺪ ﻟﺘﻼﺋﻢ ﺣﺎﺟﺎﺗﻚ ﻓﺒﺴﻬﻮﻟﻪ ﺗﺴﺘﻄﻴﻊ ذﻟﻚ ‪.‬‬ ‫ﺑﻤﻌﻨﻰ اﺧﺮ ﻋﻨﺪﻣﺎ ﺗﺒﺪأ اﻧﺖ اﻟﻌﻤﻞ ﻣﻊ ال‪ shell‬اﻟﺮﺋﻴﺴﻴﻪ ﻓﺎﻧﻬﺎ ﺗﺴﺘﺨﺪم هﺬﻩ ال‪ ، variable‬وان‬ ‫ﺗﻮﻟﺪت‪ shell‬ﻣﻦ هﺬﻩ اﻟﺮﺋﻴﺴﻴﻪ ﻓﺎن هﺬﻩ ال‪ child shell‬ﺗﺎﺧﺬ ﻧﻔﺲ ﻗﻮاﻋﺪ ‪ var‬ال‪ shell‬اﻟﺮﺋﻴﺴﻴﻪ‪.‬‬ ‫اﻻن ﻳﻤﻜﻦ ﻣﻌﺮﻓﻪ ال‪) global environment‬اﻟﻤﺘﻐﻴﺮات اﻟﻜﻠﻴﻪ( ﻋﻦ ﻃﺮﻳﻖ ﺗﻨﻔﻴﺬ اﻻﻣﺮ ‪env‬‬ .‫آﻴﻒ ﺗﻌﻤﻞ ال ‪.‬‬ ‫واﻧﺖ ﻟﻦ ﺗﻼﺣﻈﻬﺎ وﻟﻦ ﺗﺮى اى ﺗﻐﻴﻴﺮ ﻳﻈﻬﺮ ﻋﻠﻰ ال‪ shell‬اﻻﺳﺎﺳﻴﻪ اﻟﺘﻰ ﺗﻌﻤﻞ ﻋﻠﻴﻬﺎ ‪ ،‬وﻟﻜﻦ آﻞ‬ ‫هﺬﻩ اﻟﻌﻤﻠﻴﺎت ﻣﻦ اﺧﺘﺼﺎص اﻟﻨﻈﺎم وﻓﻘﻂ ﻳﻜﻔﻴﻚ ان ﺗﻌﺮف‬ ‫ان ال‪ var‬اﻟﻤﺨﺼﺼﻪ ﻟﻞ‪ shell‬اﻟﺮﺋﻴﺴﻴﻪ ﺳﻮف ﺗﻜﻮن هﻰ اﻳﻀﺎ اﻟﻤﺨﺼﺼﻪ ﻟﻞ‪ shell‬اﻟﻔﺮﻋﻴﻪ ‪.

elnajeeb‬‬ ‫*)ﻃﺒﻌﺎ هﺬﻩ اﻟﻤﺘﻐﻴﺮات ﺗﺨﺘﻠﻒ ﻣﻦ ﻧﻈﺎم ﻟﻨﻈﺎم وﻟﻴﺲ ﻓﻘﻂ ﻓﻰ اﺳﻢ اﻟﻨﻈﺎم وﻟﻜﻦ اﻳﻀﺎ ﻓﻰ ﻋﺪد هﺬﻩ‬ ‫اﻟﻤﺘﻐﻴﺮات‪ ،‬ﻳﻤﻜﻦ اﻟﺮﺟﻮع ﻓﻰ ذﻟﻚ اﻟﻰ ﺻﻔﺤﻪ اﻟﻤﺴﺎﻋﺪﻩ ‪(man bash‬‬ ‫اﻳﻀﺎ ﻳﻈﻬﺮ ﻓﻰ اﻟﻤﺜﺎل ال‪ variable‬اﻟﻤﺴﻤﺎﻩ ‪ SHELL‬واﻟﺘﻰ ﺗﻌﻨﻰ ﻧﻮع ال‪ shell‬اﻟﻤﺴﺘﺨﺪﻣﻪ ‪ ،‬وهﻨﺎ‬ ‫ﻧﺠﺪهﺎ ال‪ bash‬ﻃﺒﻌﺎ ‪.‬‬ ‫ﻓﻰ هﺬااﻟﻤﺜﺎل اﻟﺜﺎﻧﻰ ﺳﻨﺘﻌﺮض ﻟﻠﻤﺘﻐﻴﺮات اﻟﺠﺰﺋﻴﻪ )اﻟﺘﻰ ﻻ ﺗﺼﺪر ﻟﻐﻴﺮهﺎ(‬ ‫وﻳﻤﻜﻦ ﻋﺮض هﺬﻩ اﻟﻤﺘﻐﻴﺮات ﻋﻦ ﻃﺮﻳﻖ اﻻﻣﺮ ‪set‬‬ .‫ﻓﻰ اﻟﻤﺜﺎل اﻟﺴﺎﺑﻖ وﺑﻌﺪ ﺗﻨﻔﻴﺬ اﻻﻣﺮ ‪ env‬ﻳﻤﻜﻨﻨﺎ ﻣﻼﺣﻈﻪ اﻻﺗﻰ‬ ‫ان اﻟﻤﺘﻐﻴﺮﻩ هﻰ اﻟﻤﻮﺟﻮد ﻋﻠﻰ اﻟﻴﺴﺎر ‪ ، capital‬اﻣﺎ اﻟﻤﻮﺟﻮد ﻋﻠﻰ اﻟﻴﻤﻴﻦ ‪ small‬ﻓﻬﻰ ﻗﻴﻤﻪ هﺬﻩ‬ ‫اﻟﻤﺘﻐﻴﺮﻩ‪ ،‬ﻳﻔﺼﻞ ﺑﻴﻨﻬﻢ ﻋﻼﻣﻪ =‬ ‫ﻓﻤﺜﻼ ‪ HOSTNAME‬هﻰ اﻟﻤﺘﻐﻴﺮﻩ ‪ variable‬اﻣﺎ ‪ elnajeeb‬ﻓﻬﻰ ﻗﻴﻤﻪ هﺬﻩ اﻟﻤﺘﻐﻴﺮﻩ ‪ ،‬اذا‬ ‫ﻓﺎﻟﻨﻈﺎم هﻨﺎ ﻳﺴﻤﻰ ب‪.‬‬ ‫اﻣﺎ اﻟﻤﺘﻐﻴﺮﻩ ‪ HISTSIZE‬ﻓﻬﻰ اﻟﻤﺴﺌﻮﻟﻪ ﻋﻦ ﻋﺪد اﻻواﻣﺮ اﻟﺘﻰ ﺗﺴﺘﻄﻴﻊ ال‪ bash‬ﺗﺨﺰﻳﻨﻬﺎ ‪.

‬اﻧﻈﺮ اﻻﻣﺮ‪ history‬ﺑﺎﺳﻔﻞ(‬ . env‬‬ ‫*اﻳﻀﺎ اﻟﻨﺎﺗﺞ ﻣﻦ اﻻﻣﺮ ‪ set‬ﻧﺮاﻩ ﻳﻌﺮض ﺗﻔﺎﺻﻴﻞ اآﺜﺮﻋﻦ اﻟﻨﻈﺎم ﻣﻦ ﺗﻠﻚ اﻟﺬى ﻳﻨﺘﺠﻪ اﻻﻣﺮ ‪. (hidden‬‬ ‫وال‪ variable‬اﻟﺜﺎﻧﻰ هﻮ ‪ HISTFILESIZE‬واﻟﺬى ﻳﻌﻨﻰ ﻋﺪد اﻻواﻣﺮ اﻟﺘﻰ ﻳﺴﺘﻄﻴﻊ اﻟﻤﻠﻒ ﺗﺨﺰﻳﻨﻬﺎ‬ ‫واﻻﺣﺘﻔﺎظ ﺑﻬﺎ‪.‫وﻗﺒﻞ اﻟﻜﻼم ﻋﻦ اﻟﻤﺘﻐﻴﺮات اﻟﻤﻌﺮوﺿﻪ ﺑﻬﺬا اﻻﻣﺮ ﻳﺠﺐ ﻋﻠﻴﻨﺎ ﻣﻼﺣﻈﻪ ان‬ ‫*ﻧﺘﻴﺠﻪ اﻻﻣﺮﻳﻦ ﺗﻜﺎد ان ﺗﻜﻮن ﻣﺘﺸﺎﺑﻬﻪ وﻟﻜﻦ ﻋﺪد اﻟﻤﺘﻐﻴﺮات اﻟﺘﻰ ﻳﻌﺮﺿﻬﺎ اﻻﻣﺮ ‪ set‬هﻮ اآﺜﺮ ﻣﻦ‬ ‫ﺗﻠﻚ اﻟﺘﻰ ﻳﻌﺮﺿﻬﺎ اﻻﻣﺮ‪.‬‬ ‫اﻣﺎ ال‪ variable‬اﻟﺜﺎﻟﺚ و اﻟﻤﺴﻤﻰ ‪ HISTSIZE‬ﻓﻮﻇﻴﻔﺘﻪ ﺗﺤﺪﻳﺪ ﻋﺪد اﻻواﻣﺮ اﻟﺘﻰ ﺳﺘﻌﺮض ﻋﻠﻰ‬ ‫ال‪ bash‬اﻣﺎم اﻟﻤﺴﺘﺨﺪم ﻋﻨﺪﻣﺎ ﻳﺘﻢ اﺳﺘﺪﻋﺎء اﻻواﻣﺮ اﻟﺘﻰ ﻓﻰ اﻟﺬاآﺮﻩ ‪). bash_history‬اﻟﻤﻮﺟﻮد ﻓﻰ ﻣﺠﻠﺪ ال‪ home‬اﻟﺨﺎص ﺑﺎﻟﻤﺴﺘﺨﺪم )آﻞ ﻣﺴﺘﺨﺪم ﻟﻪ ﻣﻠﻒ‬ ‫ﺑﻨﻔﺲ اﻻﺳﻢ وﻟﺬات اﻟﻮﻇﻴﻔﻪ(‬ ‫وﻻ ﻧﻨﺴﻰ ال‪ dot‬اﻟﺘﻰ ﻗﺒﻞ اﻻﺳﻢ واﻟﺘﻰ ﺗﻌﻨﻰ ان اﻟﻤﻠﻒ ﻣﺨﻔﻰ )‪. env‬‬ ‫ﻓﻤﺜﻼ ﻧﺠﺪﻩ ﻳﻌﺮض ﺛﻼث ﻣﺘﻐﻴﺮات ﺧﺎﺻﻪ ﺑﺤﺠﻢ اﻻواﻣﺮ اﻟﺘﻰ ﺗﺴﺘﻄﻴﻊ ال‪ bash‬اﻻﺣﺘﻔﺎظ ﺑﻬﺎ ﻓﻰ‬ ‫ذاآﺮﺗﻬﺎ )واﻟﺬاآﺮﻩ هﻨﺎ ﻋﺒﺎرﻩ ﻋﻦ ﻣﻠﻒ( وهﺬﻩ اﻟﻤﺘﻐﻴﺮات هﻰ ‪.‬‬ ‫‪ HISTFILE‬واﻟﺬى ﻳﻮﺿﺢ اﺳﻢ اﻟﻤﻠﻒ اﻟﺬى ﻳﺤﻮى اﻻواﻣﺮ اﻟﺘﻰ ﺗﺤﺘﻔﻆ ﺑﻬﺎ ال‪ ، bash‬وهﻮ هﻨﺎ‬ ‫اﻟﻤﻠﻒ ‪ ، .

bash_history‬وﻻ ﻳﻌﺮض آﻞ‬ ‫ﻣﺤﺘﻮﻳﺎﺗﻪ ﺑﻞ ﻳﺴﺎل ال‪ variable‬اﻟﻤﺴﺌﻮل ﻋﻦ ﻋﺪد اﻻواﻣﺮ اﻟﺘﻰ ﺳﺘﻌﺮض وهﻮ ‪.‬‬ ‫وﻟﻜﻦ آﻴﻒ ﻳﻌﻤﻞ اﻻﻣﺮ ‪ history‬؟‬ ‫آﻤﺎ ذآﺮﻧﺎ ﻓﺎن ﻟﻞ‪ bash‬ﻗﻮاﻋﺪ ﺗﺤﻜﻢ ﻋﻤﻠﻬﺎ ‪ ،‬ﻓﻌﻨﺪﻣﺎ ﻳﻜﺘﺐ هﺬا اﻻﻣﺮ ﻟﻞ‪ bash‬ﻓﺎﻧﻬﺎ ﺗﺬهﺐ ﻟﺘﺒﺤﺚ‬ ‫ﻋﻦ آﻴﻔﻴﻪ اﻟﺘﻌﺎﻣﻞ ﻣﻌﻪ‬ ‫وﻃﺒﻌﺎ ﺳﺘﺠﺪ اﻟﺜﻼث ﻣﺘﻐﻴﺮات ‪ variables‬اﻟﻤﺘﻌﻠﻘﻴﻦ ﺑﺎﻟﺬاآﺮﻩ )‪ (history‬اﻟﺬى ﺳﺒﻖ اﻟﻜﻼم ﻋﻨﻬﻢ‬ ‫ﻋﻨﺪ اﻻﻣﺮ ‪. set‬‬ ‫ﻓﻴﺒﺪا اﻻﻣﺮ ‪ history‬ﻓﻰ ﻗﺮأة ﻣﻠﻒ ال‪ history‬اﻟﻤﺴﻤﻰ ‪ ، .‫ﻣﻦ ﺧﺼﺎﺋﺺ ال ‪bash‬‬ ‫آﻤﺎ اﺳﻠﻔﻨﺎ ﻓﺎن ال‪ bash‬ﻗﺪ ﺗﻢ ﺗﻄﻮﻳﺮهﺎ ﻣﻦ ﻗﺒﻞ ﻣﺸﺮوع ‪GNU‬اوﻣﺎ ﻳﻌﺮف )‪ (fsf‬وﻣﻌﻨﻰ ﺗﻄﻮﻳﺮهﺎ‬ ‫اﻧﻬﻢ ﻗﺪ اﺧﺬوا ﻗﻮاﻋﺪ ال‪ shell‬اﻟﺘﻰ آﺎﻧﺖ ﺗﺪﻋﻰ ‪.‬‬ ‫اﻣﺎ اذا اردت ﻓﻘﻂ اﺧﺮ ‪ 20‬اﻣﺮ ﻣﺜﻼ ﻓﺎﻣﺎ ان ﺗﻀﻴﻒ ‪ option‬ﻟﻼﻣﺮ ‪history‬‬ ‫او ان ﺗﻌﺪل ﻗﻴﻤﻪ ال‪ HISTSIZE variable‬وهﺬا هﻮ ﻣﺎ ﺳﻨﻨﺎﻗﺸﻪ‪. HISTSIZE‬‬ ‫وآﻤﺎ هﻮ واﺿﺢ ﺑﺎﻟﻤﺜﺎل اﻟﺴﺎﺑﻖ ﻓﺎن ﻋﺪد اﻻواﻣﺮ اﻟﺘﻰ ﺳﻴﻌﺮﺿﻬﺎ ‪ 1000‬اﻣﺮ ‪ ،‬ﺑﻤﻌﻨﻰ اﺧﺮ ﺳﺘﺠﺪ‬ ‫اﻟﺸﺎﺷﻪ اﻣﺎﻣﻚ ﻗﺪ اﻣﺘﻼت ﺑﻘﺎﺋﻤﻪ ﻣﻦ اﻻواﻣﺮ وآﻞ اﻣﺮ ﺑﺠﺎﻧﺒﻪ رﻗﻤﻪ اﻟﻤﺴﻠﺴﻞ ‪.sh‬واﺻﺪاراﺗﻬﺎ‪ -‬وﻗﺎﻣﻮا ﺑﺎﻧﺸﺎء ‪ shell‬اﺧﺮى‬ ‫ﺗﺘﻤﺘﻊ ﺑﺼﻔﺎت ‪ sh‬ﻣﻀﻴﻔﻴﻦ اﻟﻴﻬﺎ ﻋﺪد ﻣﻦ اﻟﻤﻼﻣﺢ اﻟﺠﺪﻳﺪﻩ واﻟﺘﻰ ﻟﻢ ﺗﻜﻦ ﻣﻮﺟﻮدﻩ ﻓﻰ ﺳﺎﺑﻘﺘﻬﺎ ‪.‬‬ ‫ﻣﻦ هﺬﻩ اﻟﺨﺼﺎﺋﺺ اﻣﺮان‬ ‫‪history‬‬ ‫و‬ ‫‪alias‬‬ ‫اﻟﺨﺎﺻﻴﻪ اﻻوﻟﻰ‬ ‫‪history‬‬ ‫ﻳﻌﺪ ﻣﻦ ﺧﺼﺎﺋﺺ ال‪ bash‬ﻗﺪرﺗﻬﺎ ﻋﻠﻰ ﺗﺨﺰﻳﻦ اﻻواﻣﺮ اﻟﺘﻰ ادﺧﻠﺖ اﻟﻴﻬﺎ ﻣﻦ ﻗﺒﻞ‪ ،‬وهﺬﻩ اﻟﺨﺎﺻﻴﻪ‬ ‫ﺗﻜﻮن ﻣﻔﻴﺪﻩ ﺟﺪا ﺧﺎﺻﻪ ﻣﻊ اﻻواﻣﺮ اﻟﻄﻮﻳﻠﻪ ‪ ،‬ﻓﺒﺪﻻ ﻣﻦ ادﺧﺎل اﻻﻣﺮ ﻋﺪﻩ ﻣﺮات ﻓﻴﻜﻔﻰ ﻓﻘﻂ اﺳﺘﺪﻋﺎءﻩ‬ ‫ﻣﻦ ال‪) history‬ذاآﺮﻩ ال‪(bash‬‬ ‫آﻞ ﻣﺎ ﻋﻠﻴﻚ ﻋﻤﻠﻪ هﻮ ﻓﻘﻂ آﺘﺎﺑﻪ اﻻﻣﺮ ‪history‬‬ ‫وﻣﻦ ﺛﻢ ﺳﺘﺠﺪ اﻣﺎﻣﻚ ﻗﺎﺋﻤﻪ ﻃﻮﻳﻠﻪ ﺑﺎﻻواﻣﺮ اﻟﺘﻰ ﻗﺪ آﺘﺒﺘﻬﺎ ﻣﻦ ﻗﺒﻞ‪.‬‬ .

1000‬‬ ‫اﻻن ﻧﻔﺬ اﻻﻣﺮ ‪ history‬ﻣﺮﻩ ﺛﺎﻧﻴﻪ واﻧﻈﺮ ﻟﻠﻨﺎﺗﺞ ‪ ،‬ﺳﻮف ﺗﺠﺪﻩ ﻳﻌﺮض ‪ 20‬اﻣﺮ ﻓﻘﻂ )ﻻﺣﻆ ﻣﺴﻠﺴﻞ‬ ‫اﻻرﻗﺎم(‬ ‫هﺬا ﻣﺜﺎل ﺑﺴﻴﻂ ﻟﻜﻴﻔﻴﻪ ﺗﻐﻴﻴﺮ ﻗﻴﻢ ال‪ var‬ﺑﻮاﺳﻄﻪ اﻻﻣﺮ ‪.‬‬ ‫وﺗﺴﺘﻄﻴﻊ اﻧﺸﺎء هﺬﻩ ال‪ var‬ﺑﻨﻔﺲ اﻟﻄﺮﻳﻘﻪ اﻟﺴﺎﺑﻘﻪ وﻟﻜﻦ هﺬﻩ اﻟﻤﺮﻩ ﺳﺘﺪﺧﻞ اﻟﻤﺘﻐﻴﺮﻩ وﻗﻴﻤﺘﻬﺎ وﻟﻴﺲ‬ ‫اﻟﻘﻴﻤﻪ ﻓﻘﻂ آﻤﺎ ﺳﺒﻖ ‪.‬‬ ‫ﺻﻴﻐﻪ اﻻﻣﺮ‬ ‫‪export VARIABLE=value‬‬ ‫وﺳﻨﻘﻮم ﺑﺘﻨﻔﻴﺬ هﺬا اﻻﻣﺮ‪ export‬ﻋﻠﻰ ال ‪. export‬‬ ‫واﻻﻣﺮ ‪ export‬ﻳﻘﻮم ﺑﺘﻐﻴﻴﺮ ال‪ variable‬اﻟﻜﻠﻴﻪ واﻟﺠﺰﺋﻴﻪ ‪ ،‬اى اﻟﺘﻰ ﺗﺼﺪر اﻟﻰ ال‪child shell‬‬ ‫)واﻟﺘﻰ ﺗﺴﺘﻌﺮض ﺑﺎﻻﻣﺮ ‪ (env‬واﻳﻀﺎ اﻟﺘﻰ ﻻﺗﺼﺪر )واﻟﺘﻰ ﺗﺴﺘﻌﺮض ﺑﺎﻻﻣﺮ ‪.‫اﻻﻣﺮ ‪ export‬وﺗﻌﺪﻳﻞ ال‪. HISTSIZE var‬‬ ‫‪export HISTSIZE=20‬‬ ‫ﻓﻤﺎ ﻗﻤﻨﺎ ﺑﻪ هﻮ اﻧﻨﺎ اﺧﺒﺮﻧﺎ ال‪ bash‬ان اﻟﻌﺪد اﻟﺠﺪﻳﺪ ﻟﻼواﻣﺮ اﻟﺘﻰ ﺳﺘﻌﺮض ﻟﻼﻣﺮ ‪ history‬هﻮ‬ ‫‪ 20‬ﺑﺪﻻ ﻣﻦ ‪. export‬‬ ‫وﻟﻜﻨﻚ ﻓﻰ ﺑﻌﺾ اﻟﺤﺎﻻت ﺗﺤﺘﺎج ﻻﻧﺸﺎء ‪ variable‬ﺟﺪﻳﺪﻩ ‪ ،‬ﺗﺴﺘﺨﺪﻣﻬﺎ ﻻﻧﺠﺎز ﻣﻬﻤﻪ ﻣﺆﻗﺘﻪ اﻳﻀﺎ ‪.‬‬ ‫ﻋﻠﻰ ﺳﺒﻴﻞ اﻟﻤﺜﺎل ﺗﺴﺘﻄﻴﻊ ان ﺗﺠﻌﻞ اﺳﻤﻚ هﻮ ال‪ variable‬اﻟﺠﺪﻳﺪﻩ‬ ‫‪export AHMED=adminstrator‬‬ ‫)ﻻ ﺑﺪ ﻟﻞ‪ var‬ان ﺗﻜﻮن ‪ capital‬ﻟﻜﻰ ﺗﻔﻬﻢ ال‪ bash‬ان هﺬﻩ ‪(variable‬‬ . (set‬‬ ‫* ﻟﻴﺲ هﺬا ﻓﺤﺴﺐ وﻟﻜﻨﻪ اﻳﻀﺎ ﻳﺴﺘﺨﺪم ﻻﻧﺸﺎء ‪ variable‬ﺟﺪﻳﺪﻩ آﻤﺎ ﺳﻨﺮى ‪. variable‬‬ ‫هﻨﺎك ﻃﺮﻳﻘﺘﺎن ﻟﺘﻌﺪﻳﻞ ال‪variable‬‬ ‫اﻻوﻟﻰ ﻣﺆﻗﺘﻪ وﺗﻨﺘﻬﻰ ﺑﺎﻟﺨﺮوج ﻣﻦ ال‪shell‬‬ ‫اﻣﺎ اﻟﺜﺎﻧﻴﻪ ﻓﻬﻰ ﺗﺪوم ﺣﺘﻰ ﺑﻌﺪ ﺧﺮوﺟﻚ ﻣﻦ ال‪.shell‬‬ ‫وهﺬﻩ اﻟﻄﺮﻳﻘﻪ اﻟﻤﺆﻗﺘﻪ ﺗﺴﺘﺨﺪم ﻻﻧﺠﺎز ﻣﻬﻤﻪ ﻋﺎﺑﺮﻩ ﻻ ﺗﺴﺘﺪﻋﻰ ﺗﻐﻴﻴﺮ ال‪ variable‬ﺗﻐﻴﻴﺮا داﺋﻤﺎ ‪،‬‬ ‫وﻳﻘﻮم ﺑﺎداء هﺬا اﻟﺘﻐﻴﻴﺮ اﻟﻤﺆﻗﺖ اﻻﻣﺮ ‪.

export‬‬ ‫آﻞ هﺬﻩ اﻟﺨﻄﻮات اﻟﺴﺎﺑﻘﻪ ﺗﺠﻌﻞ ال‪ variable‬ﻣﻌﺮوﻓﻪ ﻟﻞ‪ bash‬ﺑﻄﺮﻳﻘﻪ ﻣﺆﻗﺘﻪ وﻟﻜﻦ ان اردت‬ ‫ﺟﻌﻠﻬﺎ داﺋﻤﻪ ﻓﺎﻟﻤﺴﺄﻟﻪ ﺑﺴﻴﻄﻪ وهﺬا هﻮ ﻣﺎ ﺳﻴﺘﻢ ﺷﺮﺣﻪ ﻻﺣﻘﺎ ‪.‬‬ .‫ﻟﻤﺎذا ﻧﻨﺸﺄ ‪ variable‬؟‬ ‫ﻧﻔﺘﺮض ﻣﺜﻼ اﻧﻚ آﺘﺒﺖ ‪) script‬ﻣﻠﻒ ﺑﻪ ﻋﺪﻩ وﻇﺎﺋﻒ ﻣﻜﺘﻮب ﺑﻠﻐﻪ ﺗﻔﻬﻤﻬﺎ ال‪ bash‬وﺗﻨﻔﺬهﺎ( ﻻداء‬ ‫ﻣﻬﻤﻪ ﻣﻌﻴﻨﻪ ‪ ،‬وﻓﻰ هﺬﻩ اﻟﻤﻬﻤﻪ ﻳﻮﺟﺪ اﺳﻢ ﺷﺨﺺ ‪ ،‬ﻓﻄﺒﻌﺎ ال‪ bash‬ﻟﻦ ﺗﻌﺮف هﺬا اﻻﺳﻢ وﺑﺎﻟﺘﺎﻟﻰ‬ ‫ﺳﺘﻔﺸﻞ ال‪ bash‬ﻓﻰ اداء ﻣﻬﻤﺘﻬﺎ‪،‬‬ ‫وﻟﻜﻰ ﻻ ﺗﻔﺸﻞ ال‪ bash‬ﻓﻰ ﺗﻨﻔﻴﺬ هﺬا ال‪) script‬ﻻﻧﻬﺎ ﻻ ﺗﻌﺮف اﺳﻢ هﺬا اﻟﺸﺨﺺ( ﺳﻮف ﻧﻌﺮﻓﻬﺎ‬ ‫ﻋﻠﻰ هﺬا اﻟﺸﺨﺺ ‪ ،‬وذﻟﻚ ﻋﻦ ﻃﺮﻳﻖ ‪ -1‬وﺻﻔﻪ ‪ -2‬ووﺿﻌﻪ ﻓﻰ اﻟﻤﻜﺎن اﻟﺘﻰ ﺗﺮﺟﻊ اﻟﻴﻪ ال‪bash‬‬ ‫ﻟﺘﺮاﺟﻊ ﻗﻮاﻋﺪهﺎ اﻟﺘﻰ ﺗﻌﻤﻞ ﺑﻬﺎ‪.‬‬ ‫ﻣﻼﺣﻈﻪ‬ ‫ﻳﻤﻜﻦ اﻳﻀﺎ ﺗﻐﻴﻴﺮ ال‪ variable‬ﻋﻦ ﻃﺮﻳﻖ ﺗﻌﺮﻳﻒ ال‪ var‬ﻓﻘﻂ ﻟﻞ‪ bash‬وذﻟﻚ ﺑﺎن ﺗﻜﺘﺐ‬ ‫‪AHMED=adminstrator‬‬ ‫وﻟﻜﻦ هﺬﻩ اﻟﻘﻴﻤﻪ ﻻ ﺗﺼﺪر اﻟﻰ ‪ global environment‬ﺑﻞ ﺗﻈﻞ ﺗﻌﻤﻞ ﻣﻊ ال‪ shell‬اﻻﺳﺎﺳﻴﻪ‬ ‫ﻓﻘﻂ ‪ ،‬ﻓﺎن ﺗﻮﻟﺪت‪ shell‬ﻣﻦ هﺬﻩ اﻻﺳﺎﺳﻴﻪ ﻓﻬﺬﻩ اﻟﻤﺘﻮﻟﺪﻩ ﻟﻦ ﺗﺘﻌﺮف ﻋﻠﻰ هﺬﻩ ال‪ variable‬اﻟﺠﺪﻳﺪﻩ‪.‬‬ ‫ووﺿﻌﻨﺎﻩ ﻓﻰ ﻗﺎﺋﻤﻪ اﻟﻘﻮاﻋﺪ اﻟﺘﻰ ﺗﺮﺟﻊ ﻟﻬﺎ ﻋﻦ ﻃﺮﻳﻖ اﻻﻣﺮ ‪.‬‬ ‫ﻓﺎﻟﻤﺜﺎل اﻟﺬى آﺘﺒﻨﺎﻩ ﻳﻌﺮف اﻟﺸﺨﺺ )اﺣﻤﺪ( ﻟﻞ‪ bash‬ﻋﻠﻰ اﻧﻪ اﻟﻤﺪﻳﺮ‪.

‬‬ ‫*وهﺬا اﻻﻣﺮ ﺳﻴﻘﻮدﻧﺎ اﻟﻰ اﻟﻜﻼم ﻋﻦ اﻟﻤﻠﻔﺎت اﻟﺘﻰ ﺗﺘﻌﺎﻣﻞ ﻣﻌﻬﺎ ال‪ bash‬او ال‪ shell‬ﻋﻤﻮﻣﺎ ‪ ،‬وهﻮ‬ ‫اﻻﻣﺮ اﻟﺬى ﺳﻨﺘﻌﺮض ﻟﻪ ﺑﻌﺪ ﻗﻠﻴﻞ ‪.‬‬ ‫هﺬﻩ اﻟﻄﺮﻳﻘﻪ ﻓﻰ ﺗﻐﻴﻴﺮ ال‪ var‬اﺳﻬﻞ ﻣﻦ اﻟﻄﺮﻳﻘﻪ اﻟﺴﺎﺑﻘﻪ‬ ‫ﻓﺒﺪﻻ ﻣﻦ آﺘﺎﺑﻪ اﻣﺮ وﺗﻌﺮﻳﻒ ‪ variable‬ﺟﺪﻳﺪﻩ ﻓﻴﻜﻔﻴﻚ ﻓﻘﻂ اﻟﺘﻌﺪﻳﻞ ﻓﻰ اﻟﻤﻠﻒ اﻟﺮﺋﻴﺴﻰ اﻟﺬى ﺗﻘﺮأة‬ ‫ال‪ bash‬ﻗﺒﻞ ان ﻳﺒﺪأ اﻟﻨﻈﺎم ﻓﻰ اﻟﻌﻤﻞ ‪. root‬‬ ‫ﺛﺎﻧﻴﺎ ﻻﺑﺪ ﻣﻦ ﺗﺤﻤﻴﻞ هﺬا اﻟﻤﻠﻒ داﺧﻞ ﺑﺮﻧﺎﻣﺞ ‪.vi‬ﻧﻔﺘﺤﻪ ﻣﻦ ﺧﻼﻟﻪ‪ -‬وﻳﺘﻢ ذﻟﻚ ﻋﻦ ﻃﺮﻳﻖ اﻻﻣﺮ اﻻﺗﻰ‬ ‫‪vi /etc/profile‬‬ ‫اﻻن ﺳﻨﺠﺪ ‪ shell‬اﺧﺮى ﻗﺪ ﻓﺘﺤﺖ اﻣﺎﻣﻨﺎ وﺷﻜﻠﻬﺎ آﺎﻻﺗﻰ‬ .‬‬ ‫اﻟﻤﻠﻒ اﻟﺮﺋﻴﺴﻰ اﻟﺬى ﺗﻘﺮأة ال‪ bash‬ﻋﻨﺪ اﻟﺪﺧﻮل ﻟﻠﻨﻈﺎم )‪ (log in‬هﻮ اﻟﻤﻠﻒ اﻟﻤﺴﻤﻰ ‪profile‬‬ ‫واﻟﻤﻮﺟﻮد ﻓﻰ اﻟﻤﺴﺎر ‪ ، /etc‬اى ان اﺳﻤﻪ ﺑﺎﻟﻜﺎﻣﻞ هﻮ ‪.‬‬ ‫وﻟﻜﻰ ﻧﺘﻤﻜﻦ ﻣﻦ اﻟﺘﻌﺪﻳﻞ ﻓﻰ اﻟﻤﻠﻒ ‪ /etc/profile‬ﻓﻼ ﺑﺪ اوﻻ ﻣﻦ آﻮﻧﻚ اﻟﻤﺪﻳﺮ ‪.‫ﺗﻐﻴﻴﺮ ال‪ variable‬ﺑﻄﺮﻳﻘﻪ داﺋﻤﻪ‪. /etc/profile‬‬ ‫ﻳﻼﺣﻆ ان هﺬا اﻟﻤﻠﻒ هﻮ اﻟﻤﻠﻒ اﻟﺮﺋﻴﺴﻰ اﻟﺬى ﺗﻘﺮأة ال‪ bash‬ﻋﻨﺪ اﻟﺪﺧﻮل ﻟﻠﻨﻈﺎم واﻟﺘﻐﻴﻴﺮ ﻓﻴﻪ‬ ‫ﺳﻴﺸﻤﻞ آﻞ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ‪ ،‬اﻣﺎ ﺗﻐﻴﻴﺮ ال‪ var‬ﻟﻤﺴﺘﺨﺪم ﻣﻌﻴﻦ ﻓﺴﺘﺬآﺮ ﻋﻦ اﻟﺘﺤﺪث ﻋﻦ ﻣﻠﻔﺎت ‪bash‬‬ ‫وﻟﻜﻰ ﻧﺴﺘﻄﻴﻊ اﻟﺘﻌﺪﻳﻞ ﻓﻴﻪ ﻓﻼ ﺑﺪ ﻣﻦ اﺳﺘﺨﺪام ﻣﺤﺮر ﻧﺼﻮص ) وهﻮ ﻋﺒﺎرﻩ ﻋﻦ ﺑﺮﻧﺎﻣﺞ ﻳﺴﺘﻄﻴﻊ‬ ‫اﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻤﻠﻔﺎت ‪-‬اﻧﺸﺎء ‪ ،‬ﺗﻌﺪﻳﻞ‪ -‬وﻟﻜﻦ ﻋﻦ ﻃﺮﻳﻖ ال‪(shell‬‬ ‫واﺷﻬﺮ ﻣﺤﺮر ﻧﺼﻮص ﻓﻰ ﻋﺎﻟﻢ ال‪ Unix‬هﻮ اﻟﻤﺤﺮر ‪) vi‬ﻳﻨﻄﻖ ‪(vee eye‬‬ ‫وﺳﻨﺘﻜﻠﻢ ﻋﻨﻪ ﻋﻨﺪﻣﺎ ﻳﺤﻴﻦ اﻟﻜﻼم ﻋﻦ ﻣﺤﺮرات اﻟﻨﺼﻮص ‪ ،‬وﻟﻜﻨﻨﺎ اﻻن ﺳﻨﺴﺘﺨﺪﻣﻪ ﻟﻠﺘﻌﺪﻳﻞ ﻓﻰ‬ ‫اﻟﻤﻠﻒ ﺳﺎﺑﻖ اﻟﺬآﺮ ‪.

INSERT ----‬ﻣﻦ اﺳﻔﻞ اﻟﺸﺎﺷﻪ(‬ ‫ﺛﻢ اﺿﻐﻂ اﻟﺜﻼث ﻣﻔﺎﺗﻴﺢ اﻻﺗﻴﻪ ﻋﻠﻰ اﻟﺘﻮاﻟﻰ ‪.‬‬ ‫ﺑﻬﺬﻩ اﻟﻄﺮﻳﻘﻪ ﻳﺘﺤﻮل ال‪ variable‬اﻟﻰ ﻗﻴﻤﻪ ﺛﺎﺑﺘﻪ ﻻ ﺗﺘﻐﻴﺮ ﺑﺎﻟﺨﺮوج ﻣﻦ ال‪.‬‬ ‫وﻟﻨﻔﺘﺮض اﻧﻚ ﺳﺘﻐﻴﺮ ال‪ variable‬اﻟﺨﺎﺻﻪ ‪ ، HISTSIZE‬ﻓﺴﺘﺘﺤﺮك ﺣﺘﻰ ﺗﺼﻞ اﻟﻰ اﻟﺴﻄﺮ اﻟﺘﺎﻟﻰ‬ ‫واﻻن ﺳﻨﺒﺪأ ﺑﺎﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻤﻠﻒ ﺑﺎﻟﻤﺤﺮر ‪vi‬‬ ‫ﺗﺤﺮك ﺑﺎﻟﺴﻬﻢ ﻳﻤﻴﻨﺎ ﺣﺘﻰ ﺗﻘﻒ ﻋﻠﻰ ‪ 1000‬ﻋﻨﺪﺋﺬ اﺿﻐﻂ اﻟﻤﻔﺘﺎح ‪ del‬ﻟﺘﻤﺴﺢ اﻟﻘﻴﻤﻪ اﻟﺴﺎﺑﻘﻪ‬ ‫ﺑﻌﺪ ذﻟﻚ اﺿﻐﻂ اﻟﻤﻔﺘﺎح ‪) i‬واﻟﺬى ﻳﻌﻨﻰ ‪(insert‬‬ ‫اآﺘﺐ ‪ 20‬ﻣﻜﺎن اﻟﻘﻴﻤﻪ اﻟﺴﺎﺑﻘﻪ ‪1000‬‬ ‫ﺑﻌﺪ ذﻟﻚ اﺿﻐﻂ اﻟﻤﻔﺘﺎح ‪) Esc‬وﺳﺘﻼﺣﻆ اﺧﺘﻔﺎء آﻠﻤﻪ ‪ ---. bash‬‬ .:wq‬ﺑﺪون اى ﻣﺴﺎﻓﺎت ﺑﻴﻨﻬﻢ‪ -‬وﺳﺘﻼﺣﻆ اﻧﻪ ﻗﺪ آﺘﺐ‬ ‫ﺑﺎﺳﻔﻞ اﻟﺸﺎﺷﻪ ﻣﺎ ﻳﺪل ﻋﻠﻰ ان اﻟﺘﻐﻴﻴﺮات ﻗﺪ ﺣﻔﻈﺖ ﻓﻰ اﻟﻤﻠﻒ ‪.‫اﻻن اﻧﺖ داﺧﻞ ﻣﻠﻒ ‪ /etc/profile‬وﻟﻜﻰ ﺗﻌﺪل ﻓﻴﻪ ﻣﺎ ﻋﻠﻴﻚ اﻻ اﻟﺘﺤﺮك ﺑﺎﻟﺴﻬﻢ ‪down arrow‬‬ ‫ﻟﻜﻰ ﺗﺘﺤﺮك ﻻﺳﻔﻞ ‪.

‬‬ ‫اذا ﻓﻤﻌﻨﻰ ‪ alias‬هﻮ اﺧﺘﺼﺎر اﻻواﻣﺮ ‪.‬‬ ‫اﻻن اآﺘﺐ ﻋﻠﻰ ال‪bash‬‬ ‫'‪alias ahmed='ls -la‬‬ ‫ﻓﻤﺎ ﻓﻌﻠﺘﻪ اﻧﺎ ﻓﻰ اﻟﻤﺜﺎل اﻟﺴﺎﺑﻖ هﻮ ﺟﻌﻞ ‪ ahmed‬ﻳﺴﺎوى اﻻﻣﺮ ‪) ، ls -al‬اﺻﺒﺢ ‪ ahmed‬اﻣﺮ‬ ‫اﻻن(‬ ‫ﻓﺎن آﺘﺒﺖ ﻟﻞ‪ bash‬آﻠﻤﻪ ‪ ahmed‬ﻓﺎن اﻟﻨﺎﺗﺞ ﺳﻴﻜﻮن ﻣﺜﻞ ﻧﺘﻴﺠﻪ اﻻﻣﺮ ‪.‬‬ ‫اذا اﺻﺒﺢ اﻻﻣﺮ ‪ rm‬وﺣﺪﻩ ﻳﺴﺎوى اﻻﻣﺮ‪ rm -i‬وﻟﻜﻦ ﺑﺪون آﺘﺎﺑﻪ اﻟﺨﻴﺎر ﻣﻌﻪ آﻞ ﻣﺮﻩ ‪. alias‬‬ ‫واﻟﺘﻰ ﺗﻌﻨﻰ اﻧﻪ ﻋﻨﺪ آﺘﺎﺑﻪ اﻻﻣﺮ )اﻟﻤﻌﺪ ﺳﻠﻔﺎ ﺑﻄﺮﻳﻘﻪ ‪ (alias‬ﻓﺴﻴﻈﻬﺮ اﻟﻨﺎﺗﺞ ﻟﻴﺲ ﻓﻘﻂ ﻟﻼﻣﺮ وﺣﺪﻩ‬ ‫وﻟﻜﻦ ﺳﻴﻈﻬﺮ آﻤﺎ ﻟﻮ اﻧﻚ آﺘﺒﺖ اﻟﺨﻴﺎرات ﻣﻌﻪ ‪.‬‬ ‫وﻣﻌﻨﻰ ﺻﻨﻊ اﻣﺮ ﺟﺪﻳﺪ ‪ ،‬اى دﻣﺞ ﻋﺪﻩ اواﻣﺮ ﻣﻌﺎ ‪ ،‬او ﺣﺘﻰ دﻣﺞ اﻣﺮ ﻣﻊ ﻋﺪﻩ ﺧﻴﺎرات ﻟﻪ وﻟﻜﻦ‬ ‫ﺑﻄﺮﻳﻘﻪ ال‪.‫اﻟﺨﺎﺻﻴﻪ اﻟﺜﺎﻧﻴﻪ‬ ‫‪alias‬‬ ‫اﻟﺨﺎﺻﻴﻪ اﻟﺜﺎﻧﻴﻪ ﻣﻦ ﺧﺼﺎﺋﺺ ال‪ bash‬واﻟﺘﻰ ﺳﻨﻨﺎﻗﺸﻬﺎ اﻻن هﻰ ‪alias‬‬ ‫وﺗﺘﻠﺨﺺ وﻇﻴﻔﻪ ‪ alias‬ﻓﻰ اﻣﻜﺎﻧﻴﺘﻪ )ﺻﻨﻊ( اواﻣﺮ ﺟﺪﻳﺪﻩ ‪ ،‬او ﺗﻌﺪﻳﻞ اﻻواﻣﺮ اﻟﺜﺎﺑﺘﻪ‪. rm‬‬ .‬‬ ‫وﺑﺎﻟﻤﺜﺎل ﻳﺘﻀﺢ اﻟﻤﻘﺎل‪.‬‬ ‫وﻟﻤﺎذا ﻧﺨﺘﺼﺮ اﻻواﻣﺮ ؟‬ ‫اﻟﺴﺒﺐ هﻮ ﺑﺪﻻ ﻣﻦ آﺘﺎﺑﻪ اﻻواﻣﺮاﻟﻄﻮﻳﻠﻪ آﻠﻤﺎ اﺣﺘﺠﻨﺎ اﻟﻴﻬﺎ ‪ ،‬ﻓﺎﻧﻨﺎ ﻧﺴﺘﻄﻴﻊ اﺧﺘﺼﺎرهﺎ ﻓﻰ اﻣﺮ ﻗﺼﻴﺮ‬ ‫او ﺣﺘﻰ ﻓﻰ ﺣﺮف واﺣﺪ ﻓﻘﻂ‬ ‫هﺬا ﻣﻦ ﻧﺎﺣﻴﻪ ‪ ،‬وﻣﻦ ﻧﺎﺣﻴﻪ اﺧﺮى ﻓﻬﻮ ﻣﻔﻴﺪ آﺎﺟﺮاء اﻣﺎن ﺗﻀﻤﻦ ﺑﻪ اﻧﻚ ﻟﻦ ﺗﻠﻐﻰ ﻣﻠﻔﺎت ذات اهﻤﻴﻪ‬ ‫ﺑﺪون ﻗﺼﺪ ﻣﻨﻚ ﺧﺎﺻﻪ ان آﻨﺖ ‪ ، root‬آﻤﺎ هﻮ واﺿﺢ ﻓﻰ ﻣﺜﺎل اﻻﻣﺮ ‪. ls -al‬‬ ‫ﻃﺒﻌﺎ ﻓﻰ اﻟﻤﺜﺎل اﻟﺴﺎﺑﻖ اﺗﻴﺖ ﺑﺎﺳﻢ ﺷﺨﺺ ﻟﺠﻌﻞ اﻟﻤﺜﺎل اوﺿﺢ ‪ ،‬وﻟﻜﻦ اﻟﺤﺎل داﺋﻤﺎ هﻮ ان ﻳﻜﻮن هﺬا‬ ‫اﻻﺳﻢ )اﺳﻢ اﻟﺸﺨﺺ( اﻣﺮ ‪.‬‬ ‫ﻣﺜﺎل اﺧﺮ‬ ‫'‪alias rm='rm -i‬‬ ‫ﻓﻰ هﺬا اﻟﻤﺜﺎل ﻓﺎن اﻻﻣﺮ ‪) rm‬واﻟﺨﺎص ﺑﺎﻟﻐﺎء اﻟﻤﻠﻔﺎت( ﻋﻨﺪ آﺘﺎﺑﺘﻪ وﺣﺪﻩ ‪-‬ﺑﻌﺪ ﻋﻤﻞ ‪ alias‬ﻟﻪ‪ -‬ﻓﺎن‬ ‫ال‪ bash‬ﺳﺘﻌﺘﺒﺮ اﻧﻪ ﻗﺪ آﺘﺐ ﺑﺎﻟﺨﻴﺎر ‪ -i‬ﻣﻌﻪ ‪ ،‬وآﻠﻤﺎ آﺘﺒﺘﻪ وﺣﺪﻩ ﻓﻘﻂ ﺑﺪون ﺧﻴﺎر ﻣﻌﻪ ﻓﺴﻮف ﺗﺴﺎﻟﻚ‬ ‫ال‪) bash‬هﻞ اﻧﺖ ﻣﺘﺎآﺪ ﻣﻦ اﻟﻐﺎء اﻟﻤﻠﻒ( وآﺎﻧﻪ ﻗﺪ آﺘﺐ ﺑﺎﻟﺨﻴﺎر‪ -i‬ﻣﻌﻪ ‪.

‬ﺣﺮف‪ dot+ L‬هﻮ اﺧﺘﺼﺎر ﻟﻼﻣﺮ ‪ ls‬ﺑﺎﻻﺿﺎﻓﻪ ﻟﻠﺨﻴﺎر)* ‪(-d.‬‬ .‬‬ ‫واﻟﺬى ﻳﻌﻨﻰ اﻋﺮض آﻞ اﻟﻤﻠﻔﺎت اﻟﺘﻰ ﺗﺒﺪأ ب‪) dot‬اﻟﻤﺨﺘﻔﻴﻪ( ‪.‬‬ ‫وﺑﻘﻴﻪ اﻻﺳﻄﺮ ﻋﻠﻰ هﺬا اﻟﻤﻨﻮال )اﻻﻣﺮ اﻟﺬى ﻋﻠﻰ اﻟﻴﺴﺎر ﻳﻌﺪ اﺧﺘﺼﺎر ﻟﻤﺎ هﻮ ﻣﻜﺘﻮب ﻋﻠﻰ اﻟﻴﻤﻴﻦ(‬ ‫اﻟﻤﻬﻢ ﻣﻦ هﺬا اﻟﻤﺜﺎل ‪ ،‬وﻣﺎ ﻳﺠﺐ اﻟﺘﺮآﻴﺰ ﻋﻠﻴﻪ هﻮ ﺷﻜﻞ اﻻﻣﺮ اﻟﻤﺨﺘﺼﺮ )اﻟﺬى ﻋﻠﻰ اﻟﻴﻤﻴﻦ(‬ ‫ﻓﻨﻼﺣﻆ اﻧﻪ ﺑﻴﻦ ﻗﻮﺳﻴﻦ ﺻﻐﻴﺮﻳﻦ )آﻮﺗﻪ ‪ (qouta‬وهﺬا ﺑﺎﻟﻄﺒﻊ ذو ﻣﻌﻨﻰ ﺧﺎص ﻋﻨﺪ ال‪. bash‬‬ ‫اذا ﻳﻤﻜﻨﻨﺎ اﻻن ﻣﻌﺮﻓﻪ آﻴﻒ ﻳﻤﻜﻦ آﺘﺎﺑﻪ اﺧﺘﺼﺎر ﻟﻼﻣﺮ ﺑﺎﺳﺘﺨﺪام ‪alias‬‬ ‫اوﻻ‬ ‫ﺛﺎﻧﻴﺎ‬ ‫ﺛﺎﻟﺜﺎ‬ ‫راﺑﻌﺎ‬ ‫ﺗﻜﺘﺐ ‪ alias‬ﺛﻢ ﺗﺘﺮك ﻣﺴﺎﻓﻪ‬ ‫ﺗﻜﺘﺐ اﻻﻣﺮ اﻟﻤﺮاد ﻋﻤﻞ اﺧﺘﺼﺎر ﻟﻪ‬ ‫ﺗﻀﻊ ﻋﻼﻣﻪ = )ﺑﺪون ﺗﺮك ﻣﺴﺎﻓﻪ(‬ ‫ﺗﻀﻊ ﻋﻼﻣﻪ )'( ‪ qouta‬وﺗﻜﺘﺐ اﻻﻣﺮ اﻻﺻﻠﻰ اﻟﺬى ﺳﻴﻨﻔﺬ ﻋﻨﺪ آﺘﺎﺑﻪ اﺧﺘﺼﺎرﻩ اﻟﺴﺎﺑﻖ ‪ ،‬ﺛﻢ‬ ‫ﺗﻨﻬﻰ اﻻﻣﺮ ب‪ qouta‬اﺧﺮى ‪.‬‬ ‫دﻋﻮﻧﺎ اﻻن ﻧﻨﺎﻗﺶ اﻟﻨﺘﺎﺋﺞ اﻟﺘﻰ ﻓﻰ اﻟﻤﺜﺎل اﻟﺴﺎﺑﻖ‬ ‫اﻟﺴﻄﺮاﻻول آﻤﺎ هﻮ واﺿﺢ هﻮ ال‪ prompt‬وﻓﻴﻪ ﻣﻜﺘﻮب اﻻﻣﺮ‪alias‬‬ ‫ﻓﻜﺎﻧﺖ ﻧﺘﻴﺠﺘﻪ ﺧﻤﺴﻪ اﺳﻄﺮ آﻞ ﻣﻨﻬﺎ ﻳﺒﺪأ ﺑﻜﻠﻤﻪ ‪alias‬‬ ‫ﻓﺄول ﺳﻄﺮ ﻳﻈﻬﺮ ﻓﻴﻪ ان اﻻﻣﺮ ‪ ahmed‬ﻳﻌﺪ اﺧﺘﺼﺎر ﻟﻼﻣﺮ ‪ls -al‬‬ ‫وﺛﺎﻧﻰ ﺳﻄﺮ ﻳﻮﺿﺢ ان اﻻﻣﺮ )‪ (l .‫آﻞ ﻣﺎ ﺳﺒﻖ ﻗﺪ ﻧﻌﺘﺒﺮﻩ ﺗﻤﻬﻴﺪ ﻟﻼﻣﺮ ‪alias‬‬ ‫)وﻻ ارﻳﺪ ان اﺻﻨﻊ اﻧﻄﺒﺎع ان اﻻﻣﺮ واﺳﺘﺨﺪاﻣﻪ ﺻﻌﺐ ﺑﻞ ﻋﻠﻰ اﻟﻌﻜﺲ ف ‪ alias‬اﻣﺮ ﺑﺴﻴﻂ ﺟﺪا‬ ‫وﻣﻔﻴﺪ اﻳﻀﺎ وهﺬا ﻣﺎ ﺳﻨﺮاﻩ(‬ ‫اﻻن اآﺘﺐ ﻋﻠﻰ ال‪ bash‬اﻻﻣﺮ ‪ alias‬ﻣﻨﻔﺮدا ‪ ،‬واﻧﻈﺮ اﻟﻰ اﻟﻨﺘﺎﺋﺞ اﻟﺘﻰ ﺳﺘﻈﻬﺮ ﻟﻚ ‪.‬‬ ‫ﻋﻨﺪﻣﺎ آﺘﺒﺘﻪ اﻧﺎ ‪ ،‬اﺧﺮج ﻟﻰ هﺬﻩ اﻟﻨﺘﺎﺋﺞ‬ ‫اﻳﻀﺎ اﻟﻨﺘﺎﺋﺞ اﻟﺘﻰ ﺳﺘﻈﻬﺮ ﻟﻚ ﺳﺘﻜﻮن ﻣﺸﺎﺑﻬﻪ ﻟﺘﻠﻚ اﻟﺘﻰ ﻓﻰ اﻟﻤﺜﺎل اﻟﺴﺎﺑﻖ ‪.

alias‬‬ ‫ﻳﻤﻜﻦ اﻳﻀﺎ ارﺟﺎع اﻻﻣﺮ ﻟﻤﺎ آﺎن ﻋﻠﻴﻪ ﻗﺒﻞ ‪ alias‬ﻋﻦ ﻃﺮﻳﻖ اﻻﻣﺮ ‪ ، unalias‬ﻣﺜﻞ‬ ‫‪unalias rm‬‬ ‫ﻓﻤﺎ ﺳﺘﻜﺘﺒﻪ هﻮ ﻓﻘﻂ اﺧﺘﺼﺎر اﻻﻣﺮ)اى ﻣﺎ ﻳﻜﺘﺐ ﻋﻠﻰ اﻟﻴﺴﺎر ﻓﻘﻂ(‬ ‫اﻣﺎ ﻟﺠﻌﻞ اﻟﺘﻐﻴﻴﺮ ﺛﺎﺑﺖ ﻻ ﻳﻨﺘﻬﻰ ﺑﺎﻟﺨﺮوج ﻣﻦ ال‪، bash‬ﻓﻴﺘﻢ ﺑﻨﻔﺲ اﻟﻄﺮﻳﻘﻪ اﻟﺘﻰ ﺗﻌﺎﻣﻠﻨﺎ ﺑﻬﺎ ﻣﻊ ال‬ ‫‪ variable‬وهﻰ ﺑﺎﻟﺘﻐﻴﻴﺮ داﺧﻞ اﻟﻤﻠﻔﺎت ‪. bash‬‬ ‫ﺷﻜﻞ ﻣﻘﺪﻣﻪ اﻟﻤﻠﻒ ‪/etc/bashrc‬‬ .‬‬ ‫وهﺬا اﻟﺘﻐﻴﻴﺮ اﻟﺬى ﻳﺤﺪث ﻟﻼﻣﺮ ﻋﻦ ﻃﺮﻳﻖ ‪ alias‬اﻧﻤﺎ هﻮ ﺗﻐﻴﻴﺮ ﻣﺆﻗﺖ ﻳﻨﺘﻬﻰ ﺑﺎﻟﺨﺮوج ﻣﻦ ال‬ ‫‪ ، bash‬ﻓﻴﺮﺟﻊ اﻻﻣﺮ آﻤﺎ آﺎن ﻗﺒﻞ ‪.‫ﻣﻼﺣﻈﻪ‬ ‫)ﻳﻼﺣﻆ اﻧﻚ ﻋﻨﺪ آﺘﺎﺑﻪ اﻻﻣﺮ ‪ alias‬وﺣﺪﻩ – واﻧﺖ ‪ – root‬ﺳﺘﺠﺪ ﻧﺘﻴﺠﻪ ﻣﺨﺘﻠﻔﻪ ﻧﺴﺒﻴﺎ ﻋﻦ اذا‬ ‫ﻣﺎ آﺘﺒﺘﻪ واﻧﺖ ﻣﺴﺘﺨﺪم ﻋﺎدى‪ ،‬ﻓﺴﻮف ﺗﺠﺪ اﻻواﻣﺮ ‪ rm‬و ‪ mv‬و ‪ cp‬ﻻ ﺑﺪ ان ﻳﻜﻮن ﻣﻌﻤﻮل‬ ‫ﻟﻬﻢ ‪ alias‬ﺑﺎﺿﺎﻓﻪ اﻟﺨﻴﺎر ‪ -i‬ﻣﻌﻬﻢ‪،‬واﻟﺬى ﻳﻌﻨﻰ ﺗﻨﺒﻴﻪ ال‪ root‬ﻋﻨﺪﻣﺎ ﻳﺤﺎول اﻟﻐﺎء او ﻧﻘﻞ او ﻧﺴﺦ‬ ‫اى ﻣﻦ اﻟﻤﻠﻔﺎت‪،‬ﻻن اﻟﻨﻈﺎم ﻻ ﻳﻌﺎرض ال‪ root‬ﺑﺎﻟﺠﻤﻠﻪ اﻟﻤﻌﺮوﻓﻪ ‪(permission denied‬‬ ‫ﻳﻼﺣﻆ اﻳﻀﺎ ان اﻻﻣﺮ ‪ alias‬ﺗﺎﺛﻴﺮﻩ ﻻ ﻳﻤﺘﺪ اﻟﻰ ال‪ child shell‬ﻓﻬﻮ ﺧﺎص ﻓﻘﻂ ﺑﺎل‪shell‬‬ ‫اﻻﺳﺎﺳﻴﻪ وﻻ ﻳﺘﻌﺪاهﺎ ﻟﻐﻴﺮهﺎ ‪.‬‬ ‫واﻟﻤﻠﻒ اﻟﻤﺴﺌﻮل ﻋﻦ ال‪ alias‬ﻓﻰ اﻟﻨﻈﺎم آﻠﻪ هﻮ اﻟﻤﻠﻒ ‪ bashrc‬اﻟﻤﻮﺟﻮد اﻳﻀﺎ ﺑﺎﻟﻤﺴﺎر ‪ /etc‬اى‬ ‫ان اﺳﻤﻪ آﺎﻣﻼ ﺳﻴﻜﻮن ‪. /etc/bashrc‬‬ ‫ﻳﻼﺣﻆ اﻳﻀﺎ ان اﻟﺘﻐﻴﻴﺮ ﻓﻰ هﺬا اﻟﻤﻠﻒ ﺳﻴﺆﺛﺮ ﻋﻠﻰ آﻞ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ اﻣﺎ اﻟﺘﻐﻴﻴﺮ ﻟﻤﺴﺘﺨﺪم ﺑﻌﻴﻨﻪ ‪،‬‬ ‫ﻓﺴﻨﺬآﺮﻩ ﻋﻨﺪ اﻟﺘﺤﺪث ﻋﻦ اﻟﻤﻠﻔﺎت اﻟﺘﻰ ﺗﺘﻌﺎﻣﻞ ﻣﻌﻬﺎ ال‪.

aliases‬‬ ‫وﻃﺒﻌﺎ ﻻن اﻟﻤﻠﻒ ‪ /etc/bashrc‬ﻣﻦ ﻣﻠﻔﺎت اﻟﻨﻈﺎم اﻟﺘﻰ ﺗﻘﺮأة ال‪ bash‬ﻋﻨﺪ اﻟﺪﺧﻮل ﻟﻠﻨﻈﺎم ‪ ،‬ﻓﺎن‬ ‫هﺬﻩ اﻟﺘﻐﻴﻴﺮات ﻟﻦ ﺗﻨﻔﺬ اﻻ ﻓﻰ دﺧﻮﻟﻚ ﻟﻞ‪ bash‬اﻟﻤﺮﻩ اﻟﻘﺎدﻣﻪ ‪.‬‬ ‫ﻣﻘﺪﻣﻪ اﻟﻤﻠﻒ ‪ /etc/bashrc‬ﺑﻌﺪ اﻟﺘﻌﺪﻳﻞ ﻓﻴﻪ‬ ‫ﻳﻼﺣﻆ اﻧﻨﻰ ﻗﺪ اﻧﺸﺌﺖ ﺛﻼث اواﻣﺮ ﺟﺪﻳﺪﻩ ‪ ،‬او ﺑﻤﻌﻨﻰ اﺧﺮ اﺧﺘﺼﺮت ﺛﻼث اواﻣﺮ ﻓﻰ ﺛﻼث ارﻗﺎم ‪.‬‬ ‫ﻓﺮﻗﻢ ‪ 1‬ﻋﻨﺪ اﺳﺘﺨﺪاﻣﻪ ﺳﻴﻌﻄﻰ ﻧﻔﺲ ﻧﺘﻴﺠﻪ اﻻﻣﺮ ‪) touch‬ﻻﻧﺸﺎء ﻣﻠﻒ(‬ ‫ورﻗﻢ ‪ 2‬ﺑﺪﻳﻞ ﻟﻼﻣﺮ ‪) rm‬ﻻﻟﻐﺎء ﻣﻠﻒ(‬ ‫اﻣﺎ رﻗﻢ ‪ 3‬ﻓﻴﻤﻜﻦ ﺑﻪ ﻗﺮأة اﻟﻤﻠﻔﺎت ﻣﺜﻞ اﻻﻣﺮ‪.‫وﻟﻜﻰ ﻧﻌﺪل ﻓﻴﻪ ﺳﻨﺴﺘﺨﺪم اﻳﻀﺎ اﻟﻤﺤﺮر ‪) vi‬وﻻ ﺑﺪ ﻣﻦ آﻮﻧﻚ ‪(root‬‬ ‫‪1‬‬ ‫‪2‬‬ ‫‪3‬‬ ‫‪4‬‬ ‫‪5‬‬ ‫‪vi /etc/bashrc‬‬ ‫ﺗﺤﺮك ﺑﺎﻻﺳﻬﻢ‬ ‫اﺿﻐﻂ ‪i‬‬ ‫اﺑﺪأ ﺑﺎﻟﻜﺘﺎﺑﻪ ﻓﻰ اﻟﻤﻜﺎن اﻟﻤﺤﺪد ﺑﺎﻟﺼﻮرﻩ اﻻﺗﻴﻪ‬ ‫ﺑﻌﺪ اﻻﻧﺘﻬﺎء ﻣﻦ اﻟﻜﺘﺎﺑﻪ اﺿﻐﻂ )اﻟﺜﻼث ﻣﻔﺎﺗﻴﺢ( ‪ :wq‬ﻟﻜﻰ ﻳﺘﻢ ﺣﻔﻆ ﻣﺎ آﺘﺒﺘﻪ ‪.‬‬ . cat‬‬ ‫اﻻن اذا آﺘﺒﺖ ‪ 1‬ﻋﻠﻰ ال‪ shell‬ﻓﺴﺘﺘﺮﺟﻤﻪ ال‪ shell‬ﻋﻠﻰ اﻧﻪ اﻻﻣﺮ ‪ ، touch‬وهﻜﺬا ﻣﻊ ﺑﻘﻴﻪ‬ ‫اﻻﺧﺘﺼﺎرات ‪.

.

? . dir10‬‬ . wildcards‬‬ ‫واﻟﻔﺮق ﺑﻴﻦ اﻟﺘﺴﻤﻴﺘﻴﻦ ﻳﺘﻤﺜﻞ ﻓﻰ آﻮن ال‪ metacharacter‬اﻋﻢ واﺷﻤﻞ ﻣﻦ ال ‪ wildcards‬ﻓﻜﻞ‬ ‫اﻟﺮﻣﻮز واﻟﻌﻼﻣﺎت ﺑﺸﻜﻞ ﻋﺎم ﺗﺴﻤﻰ ‪ metacharacter‬اﻣﺎ اﻟﺘﻰ ﺗﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻤﻠﻔﺎت ﻓﺘﺴﻤﻰ‬ ‫‪) wildcards‬ﺑﺨﺎﺻﻪ اﻟﻌﻼﻣﺎت اﻟﻤﺴﺘﺨﺪﻣﻪ ﻓﻰ اﻟﺒﺤﺚ ﻋﻦ اﻟﻤﻠﻔﺎت واﺟﺮاء ﻋﻤﻠﻴﻪ اﻟﺘﻄﺎﺑﻖ ﺑﻴﻨﻬﻢ‬ ‫ﻣﻦ اﻣﺜﻠﻪ ] [ ‪( * .‬‬ ‫اﺳﺘﺨﺪاﻣﺎت ال‪. metacharacter‬‬ ‫ﻳﻤﻜﻨﻨﺎ ﺗﺼﻨﻴﻒ اﺳﺘﺨﺪاﻣﺎت ال‪ metacharacter‬ﻋﻠﻰ اﻟﻨﺤﻮ اﻟﺘﺎﻟﻰ‬ ‫‪ -1‬ﺗﺴﺘﺨﺪم ? ﻟﻠﺪﻻﻟﻪ ﻋﻠﻰ ﺣﺮف واﺣﺪ ﻓﻘﻂ ‪ ،‬ﻓﻌﻠﻰ ﺳﺒﻴﻞ اﻟﻤﺜﺎل اذا آﺎن ﻋﻨﺪك ﻣﺠﻠﺪ ﻳﺴﻤﻰ‬ ‫‪ dir1‬واﺧﺮ ﻳﺴﻤﻰ ‪) dir10‬اى ان اﻟﻔﺮق ﺑﻴﻨﻬﻢ هﺬا اﻟﺼﻔﺮ( ﻓﻌﻨﺪﻣﺎ ﺗﻜﺘﺐ اﻻﻣﺮ‬ ‫?‪ls dir‬‬ ‫ﻓﺴﻴﺘﻢ ﻋﺮض اﻟﻤﺠﻠﺪ ‪) dir1‬ﺗﻢ اﺑﺪال اﻟﻌﻼﻣﻪ? ﺑﺎﻟﺮﻗﻢ ‪ (1‬وﻻ ﻓﺮق ﺑﻴﻦ رﻗﻢ او ﺣﺮف اﻟﻤﻬﻢ ان ﻳﻜﻮن‬ ‫‪one character‬‬ ‫اﻣﺎ اذا آﺘﺒﺖ ??‪ dir‬ﺑﺪﻻ ﻣﻦ ?‪ dir‬ﻓﺴﻴﺘﻢ ﻋﺮض اﻟﻤﺠﻠﺪ ‪.‫‪Regular Expression‬‬ ‫اﻟﻤﻘﺼﻮد ﺑﺎل‪ regular expression‬هﻰ هﺬﻩ اﻟﻌﻼﻣﺎت واﻟﺮﻣﻮز ‪ notations‬اﻟﻤﻮﺟﻮدﻩ ﻋﻠﻰ‬ ‫ال‪ key board‬ﻣﻦ اﻣﺜﺎل‬ ‫! ~ ‪| & ' " < > ` () * ^ $‬‬ ‫وهﺬﻩ اﻟﻌﻼﻣﺎت ﻟﻬﺎ ﻣﻌﺎﻧﻰ ﺧﺎﺻﻪ ﻋﻨﺪ ال‪ ، bash‬وذﻟﻚ ﻻن ال‪ bash‬وان آﺎﻧﺖ هﻰ واﺟﻬﻪ‬ ‫اﻟﻤﺴﺘﺨﺪم اﻟﺘﻰ ﻳﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻨﻈﺎم ﻣﻦ ﺧﻼﻟﻬﺎ ‪ ،‬اﻻ اﻧﻬﺎ اﻳﻀﺎ ﺗﻌﺪ واﺟﻬﻪ ﺗﻔﺎﻋﻠﻴﻪ )ﻳﻤﻜﻦ اﻟﺘﻌﺎﻣﻞ‬ ‫واﻟﺘﻔﺎﻋﻞ ﻣﻌﻬﺎ ﺑﻠﻐﺎت اﻟﺒﺮﻣﺠﻪ ﻣﺒﺎﺷﺮﻩ( ‪ interactive interface‬وﺑﺎﻟﺘﺎﻟﻰ ﻓﻬﻰ ﺗﺘﻔﺎﻋﻞ ﻣﻊ‬ ‫اﻟﻤﺴﺘﺨﺪم ﻋﻨﺪ ادﺧﺎل اى ﻣﻦ هﺬﻩ اﻟﺮﻣﻮز اﻟﻴﻬﺎ وﺑﺎﻟﺘﺎﻟﻰ ﺗﻔﻬﻤﻬﺎ ‪.‬‬ ‫وهﺬﻩ اﻟﺮﻣﻮز ﺗﺴﻤﻰ ‪ metacharacters‬او ‪. [ .] .‬‬ ‫ﻓﺎل‪ bash‬ﺑﻤﻌﻨﻰ اﺧﺮ هﻰ ﺑﻴﺌﻪ ﻣﻨﺎﺳﺒﻪ ﺟﺪا ﻟﻌﻤﻞ اﻟﻤﺒﺮﻣﺠﻴﻦ ‪ ،‬ﻓﺎﻟﺮﻣﻮز اﻟﻤﺴﺘﺨﺪﻣﻪ ﻓﻰ ﻟﻐﺎت‬ ‫اﻟﺒﺮﻣﺠﻪ )ﺑﻤﺎ ﻓﻴﻬﻢ ال‪ (shell script‬ﻳﻤﻜﻦ آﺘﺎﺑﺘﻬﺎ ﻣﺒﺎﺷﺮﻩ ﻋﻠﻰ ال‪ ، bash‬وﻟﻬﺬا ﻓﻬﻰ ﺗﻌﺪ‬ ‫‪ ، command language interpreter‬ﻟﻐﻪ ﺑﺮﻣﺠﻪ ﺗﻜﺘﺐ ﻋﻠﻰ ﺳﻄﺮ اﻻواﻣﺮ ‪.

metacharacter‬‬ ‫ﻟﻔﻬﻢ ال‪ metacharacter‬ﺑﺼﻮرﻩ اﻓﻀﻞ ﻳﻤﻜﻨﻨﺎ ﺗﻄﺒﻴﻖ ﻋﺪﻩ اﻣﺜﻠﻪ ‪،‬‬ ‫اوﻻ ﺳﻨﻨﺸﺄ ‪ 5‬ﻣﻠﻔﺎت اﺳﻤﺎﺋﻬﻢ ‪، filea ...‬‬ ‫* ﺛﺎﻧﻴﺎ ]‪ [a-m‬ﻓﻰ هﺬﻩ اﻟﺤﺎﻟﻪ ﺑﺪﻻ ﻣﻦ آﺘﺎﺑﻪ اﻟﺤﺮوف ﻣﻦ ‪ a‬اﻟﻰ ‪ ، m‬ﻳﻜﻔﻰ ﻓﻘﻂ ان ﺗﻀﻊ ﻋﻼﻣﻪ‬ ‫‪ dash‬واﻟﺘﻰ ﺗﻌﻨﻰ ) ﻣﻦ هﺬا اﻟﺤﺮف اﻟﻰ ذاك( ‪.‬ﻓﻰ هﺬﻩ اﻟﺤﺎﻟﻪ ﻓﺎﻧﺖ ﺗﺨﺒﺮ ال‪ shell‬ﺑﺎن ﺗﺴﺘﺨﺪم اى ﻣﻦ هﺬﻩ اﻟﺤﺮوف اﻟﻤﻮﺟﻮدﻩ‬ ‫ﺑﻴﻦ اﻟﻘﻮﺳﻴﻦ ‪ ،‬ﻓﺎن آﺎن هﻨﺎك ﻋﺪﻩ ﻣﻠﻔﺎت ﺗﺴﻤﻰ ‪ filec‬و ‪ fileb‬و ‪.‫‪ -2‬ﺗﺴﺘﺨﺪم * )ﻋﻼﻣﻪ اﻟﻨﺠﻤﻪ( ‪ asterisk‬ﻟﻠﺪﻻﻟﻪ ﻋﻠﻰ ﺣﺮف اواآﺜﺮ ‪ ،‬ﻓﻤﺜﻞ اﻟﻤﺜﺎل اﻟﺴﺎﺑﻖ اذا‬ ‫آﺘﺒﺖ * ‪ ls‬ﻓﺴﻴﺘﻢ ﻋﺮض آﻞ اﻟﻤﺠﻠﺪات واﻟﻤﻠﻔﺎت اﻟﻤﻮﺟﻮدﻩ ﻓﻰ ال‪ working dir‬اﻟﺤﺎﻟﻰ ‪،‬‬ ‫واذا آﺘﺐ *‪ ls dir‬ﻓﺴﻴﻌﺮض اﻟﻤﺠﻠﺪان ‪ dir1‬و ‪) dir10‬ﻻن * ﺗﻌﻨﻰ ﺣﺮف ﻓﻤﺎ اآﺜﺮ(‬ ‫‪ -3‬اﻟﻘﻮﺳﻴﻦ ] [ وﻟﻬﻤﺎ ﻋﺪﻩ اﺳﺘﺨﺪاﻣﺎت‬ ‫* اوﻻ ]‪ [abc. filea‬اﻟﺦ ‪ ،‬ﻓﻤﺎ ﻋﻠﻴﻚ اﻻ‬ ‫آﺘﺎﺑﻪ اﻻﻣﺮ )ﻧﻔﺘﺮض ‪ (cp‬ﻳﺘﺒﻌﻪ ﻓﻘﻂ آﻠﻤﻪ ‪ file‬ﺛﻢ ﺗﻔﺘﺢ ﻗﻮﺳﻴﻦ وﺗﻜﺘﺐ ﺑﻴﻨﻬﻤﺎ ‪، abc‬‬ ‫‪cp file[abc] onther place‬‬ ‫ﻋﻨﺪﺋﺬ ﺳﻮف ﺗﻘﻮم ال‪ shell‬ﺑﻨﻘﻞ اﻟﺜﻼث ﻣﻠﻔﺎت )ﻓﻤﺎ اآﺜﺮ( اﻟﻰ اﻟﻤﻜﺎن اﻟﺠﺪﻳﺪ‪ ،‬وذﻟﻚ ﺑﺪﻻ ﻣﻦ آﺘﺎﺑﻪ‬ ‫اﺳﻤﺎء اﻟﺜﻼث ﻣﻠﻔﺎت آﺎﻣﻠﻪ ﺛﻼث ﻣﺮات‪..‬‬ ‫وﻣﺜﻞ اﻟﻤﺜﺎل اﻟﺴﺎﺑﻖ ‪ ،‬ﻓﺒﺪﻻ ﻣﻦ آﺘﺎﺑﻪ اﺳﻤﺎء اﻟﻤﻠﻔﺎت اﻟﻤﺮاد ﻧﻘﻠﻬﺎ آﺎﻣﻠﻪ ) وهﻰ هﻨﺎ اﻟﻤﻠﻔﺎت اﻟﺘﻰ‬ ‫ﺗﻨﺘﻬﻰ ﺑﺎﻟﺤﺮف ‪ a‬وﺣﺘﻰ اﻟﺤﺮف ‪ m‬اى ‪ 13‬ﻣﻠﻒ( ﻓﺒﺪﻻ ﻣﻦ آﺘﺎﺑﺘﻬﺎ ‪ 13‬ﻣﺮﻩ ﻓﺎﻧﻨﺎ ﻓﻘﻂ ﺳﻨﻜﺘﺐ اﻻﻣﺮ‬ ‫‪cp file[a-m] onther place‬‬ ‫* ﺛﺎﻟﺜﺎ ]‪ [!abc‬وﺗﻌﻨﻰ اﻟﻌﻼﻣﻪ ! اﻟﻤﻮﺟﻮدﻩ ﻗﺒﻞ اﻻﺣﺮف ‪ abc‬ان ﺗﺘﺠﺎهﻞ هﺬﻩ اﻟﺤﺮوف ‪.file3 .filee‬‬ ‫ﺛﺎﻧﻴﺎ ﺳﻨﻨﺸﺄ اﻳﻀﺎ ‪ 5‬ﻣﻠﻔﺎت ‪، file1 ..file2 .fileb .‬‬ ‫‪ls file[abc] -‬‬ ‫)ﺳﻴﺘﻢ ﻋﺮض ﺛﻼث ﻣﻠﻔﺎت ﻓﻘﻂ( ‪.file5‬‬ ‫ﻋﻦ ﻃﺮﻳﻖ اﻻﻣﺮ ‪) ls‬ﻟﻌﺮض اﻟﻤﻠﻔﺎت( ﻧﻜﺘﺐ‬ ‫‪ls file* -‬‬ ‫)ﺑﺬﻟﻚ ﻧﺴﺘﻄﻴﻊ ان ﻧﻌﺮض ال‪ 10‬ﻣﻠﻔﺎت( ‪.‬‬ .‬‬ ‫اﻣﺜﻠﻪ ﻋﻠﻰ ‪.filec .file4 .filed .

‬‬ ‫ﺗﻨﻔﻴﺬ ﻋﺪﻩ اواﻣﺮ ﻓﻰ ﻧﻔﺲ اﻟﻮﻗﺖ ‪.4‬ﻋﻼﻣﻪ ‪ > ( .‫ ]‪ ) ls file* [!12345‬ﺑﺬﻟﻚ ﺳﻴﺤﺎول اﻻﻣﺮ ‪ ls‬ﻋﺮض آﻞ اﻟﻤﻠﻔﺎت اﻟﺘﻰ ﺗﺒﺪأ ﺑﻜﻠﻤﻪ ‪ file‬ﺛﻢ‬‫ﻳﺘﺠﺎهﻞ اﻟﻤﻠﻔﺎت اﻟﺘﻰ ﺗﻨﺘﻬﻰ ﺑﺎﻻرﻗﺎم ﻣﻦ ‪ 1‬اﻟﻰ ‪ ، 5‬وﻣﻦ ﺛﻢ ﺳﻴﻌﺮض ﻓﻘﻂ اﻟﻤﻠﻔﺎت اﻟﺘﻰ ﺗﻨﺘﻬﻰ‬ ‫ﺑﺎﻟﺤﺮوف( ‪. cd dir‬‬ ‫ﻓﺄﻧﺸﺄﻧﺎ اﻟﻤﺠﻠﺪ ‪ dir‬ﺛﻢ ﺑﻌﺪ ذﻟﻚ ﺳﻨﻨﺘﻘﻞ اﻟﻴﻪ )اى ﺳﻨﻘﻒ ﻋﻠﻴﻪ وﻳﻜﻮن هﻮ ال‪. working dir‬‬ ‫اﻳﻀﺎ ﻳﻤﻜﻨﻨﺎ ﺗﻄﺒﻴﻖ اﻟﻤﺜﺎل اﻟﺘﺎﻟﻰ‬ ‫‪mkdir dir . command‬‬ ‫ﻣﺜﻞ‬ ‫‪touch newfile .‬‬ ‫ﻣﻦ ﺧﺼﺎﺋﺺ ال‪ bash‬اﻧﻚ ﺗﺴﺘﻄﻴﻊ دﻣﺞ ﻋﺪﻩ اواﻣﺮ ﻣﻌﺎ ‪ ،‬وﻣﻦ ﺛﻢ ﺗﻘﻮم هﻰ ﺑﺘﻨﻔﻴﺬهﻢ واﺣﺪا ﺗﻠﻮ‬ ‫اﻻﺧﺮ ‪ ،‬دون اﻟﺤﺎﺟﻪ اﻟﻰ آﺘﺎﺑﻪ آﻞ اﻣﺮ ﻋﻠﻰ ﺣﺪﻩ ‪ ،‬وأﺣﺪ هﺬﻩ اﻟﺨﺼﺎﺋﺺ هﻰ‬ ‫‪ . (working dir‬‬ . ) semi colone‬ﺗﺠﺪهﺎ ﺑﺠﺎﻧﺐ اﻟﻤﻔﺘﺎح ‪ < enter‬ﻓﺒﻬﺬﻩ اﻟﻌﻼﻣﻪ ﻳﻤﻜﻨﻨﺎ دﻣﺞ‬ ‫اﻣﺮﻳﻦ او اآﺜﺮ ﻣﻌﺎ‬ ‫اﻟﺼﻴﻐﻪ ‪command . ls‬‬ ‫ﻓﻤﺎ ﺳﻴﺤﺪث هﻮ اﻧﺸﺎء اﻟﻤﻠﻒ ‪ newfile‬ﺛﻢ ﻋﺮض آﻞ اﻟﻤﺤﺘﻮﻳﺎت اﻟﻤﻮﺟﻮدﻩ ﻓﻰ اﻟﻤﺠﻠﺪ اﻟﺤﺎﻟﻰ او ﻣﺎ‬ ‫ﻳﺴﻤﻰ ‪.

(standard out‬‬ ‫ﻓﺎل‪ stdin‬هﻰ ال‪ key board‬اﻟﻤﺴﺌﻮﻟﻪ اﻻﺳﺎﺳﻴﻪ ﻋﻦ ادﺧﺎل اﻟﺒﻴﺎﻧﺎت واﻻواﻣﺮ اﻟﻰ ال‪. stdout‬اﺧﺘﺼﺎرا ﻟﻜﻠﻤﺘﻰ ‪ standard in‬و ‪. stderr‬‬ . shell‬‬ ‫ﻟﻴﺲ هﺬا آﻞ ﺷﻰ ﻓﺎﻟﻨﺎﺗﺞ او اﻟﻨﺘﻴﺠﻪ اﻟﺘﻰ ﺗﺨﺮج ﻣﻦ ﺗﻨﻔﻴﺬ اﻻﻣﺮ ﻟﻴﺴﺖ ﻏﺎﻟﺒﺎ ﺻﺤﻴﺤﻪ ﻓﻘﺪ ﻳﻜﻮن اﻻﻣﺮ‬ ‫ﻣﻜﺘﻮب ﺑﻄﺮﻳﻘﻪ ﺧﺎﻃﺌﻪ ﻣﺜﻼ ‪ ،‬ﻓﻔﻰ هﺬﻩ اﻟﺤﺎﻟﻪ ﻟﻦ ﻳﺴﺎوى اﻟﻨﻈﺎم هﺬﻩ اﻟﻨﺘﻴﺠﻪ اﻟﺨﺎﻃﺌﻪ ﻣﻊ اﻟﻨﺘﻴﺠﻪ اﻟﺘﻰ‬ ‫ﺗﺨﺮج ﺻﺤﻴﺤﻪ ‪،‬‬ ‫وﻟﻬﺬا ﻓﺎن اﻟﻨﻈﺎم ﻳﻄﻠﻖ ﻋﻠﻰ هﺬﻩ اﻟﻨﺘﻴﺠﻪ اﻟﺨﺎﻃﺌﻪ ﺗﻌﺒﻴﺮ ‪ stderr‬اﺧﺘﺼﺎرا ل‪.،‬وﺑﻠﻔﻆ ادق‪ -‬ﻓﻰ ال‪ shell‬هﻨﺎك اﻳﻀﺎ ادوات ﻟﻼدﺧﺎل وﻟﻼﺧﺮاج ﻣﻦ وإﻟﻰ ال‪shell‬‬ ‫)ادﺧﺎل اﻻواﻣﺮ واﺧﺮاج اﻟﻨﺘﺎﺋﺞ( وﻟﻜﻦ ﺗﺴﻤﻴﺘﻬﻢ ﻟﻴﺴﺖ ‪ input‬و ‪ output‬وﻟﻜﻨﻬﺎ ﺗﺴﻤﻰ ‪ stdin‬و‬ ‫‪) . stdout‬‬ ‫اﻟﺜﺎﻟﺜﻪ هﻰ ﻟﻠﺘﻌﺒﻴﺮ ﻋﻦ اﻟﻨﺘﻴﺠﻪ اﻟﺨﺎﻃﺌﻪ ﻟﻼﻣﺮ وﺗﺴﻤﻰ ‪. stdout‬‬ ‫آﻠﻨﺎ ﻃﺒﻌﺎ ﻧﻌﺮف ان ال‪ key board‬و ال‪ mouse‬ﺗﻌﺪ ﻣﻦ اﻻﺟﺰاء اﻟﻤﺴﻤﺎة ‪، input device‬‬ ‫واﻳﻀﺎ ان اﻟﻄﺎﺑﻌﻪ واﻟﺴﻤﺎﻋﺎت ﺗﻌﺪ ﻣﻦ اﻻﺟﺰاء اﻟﻤﺴﻤﺎة ‪. shell‬‬ ‫اﻣﺎ ال‪ stdout‬ﻓﻬﻰ ﺑﺸﻜﻞ ﻋﺎم اﻟﻨﺘﻴﺠﻪ اﻟﺘﻰ ﺗﺨﺮج ﻣﻦ اﻻﻣﺮ‪ ،‬وهﻰ ﻓﻰ اﻟﻐﺎﻟﺐ اﻟﺸﺎﺷﻪ ‪terminal‬‬ ‫واﻟﺘﻰ ﻳﻈﻬﺮ ﻋﻠﻴﻬﺎ ﻧﺎﺗﺞ اﻻﻣﺮ اﻟﺬى ﻧﻔﺬﺗﻪ ال‪. standard error‬‬ ‫* اذا ﻓﻌﻨﺪﻧﺎ اﻻن ﺛﻼث ﺻﻴﻎ ﻟﻠﺘﻌﺎﻣﻞ ﻣﻊ ال‪shell‬‬ ‫اﻻوﻟﻰ هﻰ ﻟﻠﻤﺴﺌﻮل ﻋﻦ ادﺧﺎل اﻟﺒﻴﺎﻧﺎت ﻟﻞ‪ shell‬وﻳﺴﻤﻰ ‪. output device‬‬ ‫وﻓﻰ ﻟﻴﻨﻮآﺲ ‪. stdin‬‬ ‫اﻟﺜﺎﻧﻴﻪ هﻰ ﻟﻠﺘﻌﺒﻴﺮ ﻋﻦ اﻟﻨﺘﻴﺠﻪ اﻟﺼﺤﻴﺤﻪ ﻟﻼﻣﺮ وﺗﺴﻤﻰ ‪.‫ال‪ stdin‬و ال‪.

‫ﻣﻼﺣﻈﻪ‪:‬‬ ‫ﻳﻼﺣﻆ ان رﺳﺎﺋﻞ اﻟﺨﻄﺄ اﻟﺘﻰ ﺗﻈﻬﺮ ﻧﺘﻴﺠﻪ ﻟﺘﻨﻔﻴﺬ اى اﻣﺮ ﻧﻮﻋﺎن‬ ‫* اﻻول ﻋﻨﺪ آﺘﺎﺑﻪ اﻻﻣﺮ ﺑﻄﺮﻳﻘﻪ ﺧﺎﻃﺌﻪ ‪ ،‬ﻓﺘﺨﺒﺮك ال‪ bash‬ان اﻻﻣﺮ ﺧﺎﻃﻰ ‪. lsw‬‬ ‫ﺛﺎﻧﻴﺎ ﺑﻌﺪ ذﻟﻚ ﻋﻨﺪﻣﺎ آﺘﺒﺖ اﻻﻣﺮ ‪ ls -al‬ﺣﻴﻨﺌﺬ ﻗﺎﻣﺖ ال‪ bash‬ﺑﺘﻨﻔﻴﺬﻩ ‪ ،‬ﻻﻧﻬﺎ ﺗﻌﺮﻓﻪ‪ ،‬وﻃﺒﻌﺎ ﻧﺠﺪهﺎ‬ ‫ﻗﺪ ﻋﺮﺿﺖ اﻟﻤﻠﻔﺎت اﻟﻤﺨﻔﻴﻪ )‪ (hidden‬واﻟﺘﻰ ﺗﺒﺪأ ﺑﺎل ‪.‬‬ .‬‬ ‫وآﻤﺎ ﻧﺮى ﻓﻰ اﻟﻤﺜﺎل اﻟﺬى اﻣﺎﻣﻨﺎ ﻓﺎﻟﻤﻠﻒ اﻟﻤﺴﻤﻰ ‪ najeeb‬ﻟﻴﺲ ﻣﻮﺟﻮد وﻟﻬﺬا ﻓﺎن اﻟﺬى ﻳﺤﺪﺛﻨﻰ‬ ‫اﻻن هﻮ اﻻﻣﺮ ‪) ls‬ﻻﻧﻨﻰ آﺘﺒﺘﻪ ﺑﻄﺮﻳﻘﻪ ﺻﺤﻴﺤﻪ( وﻟﻜﻦ اﻟﺨﻄﺄ ﻓﻰ ﻋﺪم وﺟﻮد اﻟﻤﻠﻒ ‪. dot‬‬ ‫* اﻟﺜﺎﻧﻰ ﻋﻨﺪ آﺘﺎﺑﻪ اﻻﻣﺮ ﺑﻄﺮﻳﻘﻪ ﺻﺤﻴﺤﻪ وﻟﻜﻦ اﻟﺨﻄﺄ اﻣﺎ ﻓﻰ ال‪ option‬اﻟﺬى ﻳﺎﺗﻰ ﻣﻊ اﻻﻣﺮ‬ ‫اوﻣﻊ ال‪ argument‬اﻟﺬى ﻳﻨﻔﺬ ﻋﻠﻴﻪ اﻻﻣﺮ)وﻏﺎﻟﺒﺎ ﻳﻜﻮن ﻣﻠﻒ( ﻓﻔﻰ هﺬﻩ اﻟﺤﺎﻟﻪ ﻳﺨﺒﺮك‬ ‫اﻻﻣﺮ ﺑﻨﻔﺴﻪ ‪-‬وﻟﻴﺲ ال‪ -bash‬ﺑﻮﺟﻮد ﺧﻄﺄ ‪.‬‬ ‫ﻓﻤﺎ ﻧﻼﺣﻈﻪ ﻓﻰ اﻟﻤﺜﺎل اﻟﺬى اﻣﺎﻣﻨﺎ‬ ‫اوﻻ ﻋﻨﺪﻣﺎ آﺘﺒﺖ اﻻﻣﺮ‪ lsw‬وهﻮ ﻃﺒﻌﺎ ﻟﻴﺲ ﺑﺄﻣﺮ)وﻟﻜﻨﻰ ﺗﻌﻤﺪت آﺘﺎﺑﻪ اﻣﺮ ﺧﺎﻃﻰ وذﻟﻚ ﺑﺎﺿﺎﻓﻪ ‪w‬‬ ‫ﻣﻊ اﻻﻣﺮ ‪ (ls‬ﻓﺮدت ﻋﻠﻰ ال ‪ bash‬اﻧﻪ ﻻ ﻳﻮﺟﺪ اﻣﺮ اﺳﻤﻪ ‪.

‬‬ ‫ﻓﻠﻨﻔﺘﺮض ﻋﻠﻰ ﺳﺒﻴﻞ اﻟﻤﺜﺎل اﻧﻪ ﻳﻮﺟﺪ ﻓﻰ ال‪ home dir‬اﻟﺨﺎص ﺑﻚ ﺣﻮاﻟﻰ ‪ 50‬او ‪ 100‬ﻣﻠﻒ ‪،‬‬ ‫ﻓﻔﻰ هﺬﻩ اﻟﺤﺎﻟﻪ ﻟﻮ ﻧﻔﺬت اﻻﻣﺮ ‪ ls -l‬ﻓﺴﺘﺠﺪ اﻟﺸﺎﺷﻪ اﻣﺎﻣﻚ ﻗﺪ ﻣﻠﺌﺖ ﺑﺎﻟﻤﻠﻔﺎت ‪.‬‬ ‫وﻗﺪ ﻳﺘﻢ )ﻋﻜﺲ( ﻋﻼﻣﻪ ال ‪ ، redirection‬ﻓﻘﺪ ﺗﻜﺘﺐ هﻜﺬا ) < ( وﺗﺆدى ﻧﻔﺲ وﻇﻴﻔﻪ اﻟﻌﻼﻣﻪ‬ ‫اﻻوﻟﻰ وﻟﻜﻦ ﺑﺎﻟﻄﺒﻊ ﻻ ﺑﺪ ﻣﻦ ﺗﺒﺪﻳﻞ وﺿﻊ اﻟﻤﻠﻔﺎت ‪ ،‬ﻣﺜﻞ‬ ‫‪cat other file < file‬‬ ‫وﻗﺪ ﺗﺎﺗﻰ اﻟﻌﻼﻣﻪ ) > ( ﻓﻰ اﻟﺼﻮرﻩ اﻟﻤﺮآﺒﻪ ‪ ،‬اى ان ﺗﻜﻮن ﺷﻜﻠﻬﺎ آﺎﻻﺗﻰ ) >> ( ‪.‬‬ .‬‬ ‫واﻟﻔﺮق ﺑﻴﻦ اﻟﺸﻜﻞ اﻟﺒﺴﻴﻂ واﻟﻤﺮآﺐ ‪ ،‬ﻳﺘﻤﺜﻞ ﻓﻰ ان‬ ‫• اﻟﺸﻜﻞ اﻟﺒﺴﻴﻂ )>( ﻳﻜﺘﺐ ﻟﻠﻤﻠﻒ ‪ ،‬ﺑﺼﺮف اﻟﻨﻈﺮ ‪ ،‬هﻞ ﺑﺪاﺧﻠﻪ ﺑﻴﺎﻧﺎت ام ﻻ ‪ ،‬ﻓﺎن آﺎن ﻓﺎرﻏﺎ ‪،‬‬ ‫ﻓﺎﻧﻪ ﻳﻜﺘﺐ داﺧﻞ اﻟﻤﻠﻒ ‪ ،‬وان آﺎن ﺑﻪ ﺑﻴﺎﻧﺎت ﻓﺎﻧﻪ ﻻ ﻳﺒﺎﻟﻰ ‪ ،‬ﻓﻴﻤﺴﺤﻬﺎ وﻳﻜﺘﺐ ﻣﻦ ﺟﺪﻳﺪ ‪.‬‬ ‫• اﻣﺎ اﻟﺸﻜﻞ اﻟﻤﺮآﺐ )>>( ﻓﺎﻧﻪ ﻳﻘﻮم ﺑﺎﻟﻜﺘﺎﺑﻪ ﻓﻰ اﻟﻤﻠﻒ ‪ ،‬وﻟﻜﻦ ﺑﻌﺪ اﻟﻤﻜﺘﻮب ﺑﻪ ‪ ،‬اى اﻧﻪ ﻻ‬ ‫ﻳﻤﺴﺢ اﻟﻤﻜﺘﻮب ﻣﻦ ﻗﺒﻞ ‪. redirection‬‬ ‫ﻋﻼﻣﻪ ال‪ > ( | ) piping‬ﺳﺘﺠﺪهﺎ ﻏﺎﻟﺒﺎ ﺑﺠﺎﻧﺐ ال‪ < back space‬وﺷﻜﻠﻬﺎ آﻤﺎ هﻮ واﺿﺢ ﺷﺮﻃﺘﻴﻦ‬ ‫ﺑﺸﻜﻞ ﻃﻮﻟﻰ ﻓﻮق ﺑﻌﻀﻬﻤﺎ ‪.‬‬ ‫اﻟﺼﻴﻐﻪ ‪command | command‬‬ ‫وﺗﺴﺘﺨﺪم ال‪ piping‬ﻻﺳﺘﻘﺒﺎل اﻟﻨﺎﺗﺞ ‪ stdout‬ﻣﻦ اﻻﻣﺮ اﻻول ﺛﻢ ادﺧﺎﻟﻪ اﻟﻰ اﻻﻣﺮ اﻟﺜﺎﻧﻰ ك‪stdin‬‬ ‫وهﻰ ﻣﻦ ﺧﺼﺎﺋﺺ ال‪ bash‬اﻟﺘﻰ ﺗﺴﺘﺨﺪم ﻟﺘﻨﻔﻴﺬ اﻣﺮﻳﻦ ﻋﻠﻰ اﻟﺘﻮاﻟﻰ ﻳﻜﻮن ﻓﻴﻬﻤﺎ اﻻﻣﺮ اﻻول ذو‬ ‫ﺗﺎﺛﻴﺮ ﻋﻠﻰ اﻻﻣﺮ اﻟﺜﺎﻧﻰ ‪ ،‬و ﺗﺴﺘﺨﺪم اﻳﻀﺎ ﺧﺎﺻﻴﻪ ال‪ piping‬ﻓﻰ ﻓﻠﺘﺮﻩ اﻟﻨﺎﺗﺞ ﻣﻦ اﻻﻣﺮ ‪.‬‬ ‫اﻣﺎ ال ‪ redirection‬ﻓﻬﻰ ﻋﺒﺎرﻩ ﻋﻦ اﻟﻌﻼﻣﻪ ) > (‬ ‫وﺗﺴﺘﺨﺪم ال ‪ redirection‬ﻟﺘﺤﻮﻳﻞ ال ‪ stdout‬اﻟﻰ ﻣﻠﻒ ‪ ،‬ﺑﺪﻻ ﻣﻦ ﻋﺮﺿﻪ ﻋﻠﻰ اﻟﺸﺎﺷﻪ ‪ ،‬ﻣﺜﻞ‬ ‫‪cat file > other file‬‬ ‫ﻓﻤﺎ ﺳﻴﺤﺪث هﻨﺎ ‪ ،‬هﻮ ﺗﺤﻮﻳﻞ اﻟﻨﺎﺗﺞ ﻣﻦ اﻻﻣﺮ ‪ cat‬واﻟﻤﺘﻤﺜﻞ ﻓﻰ ﻋﺮض اﻟﻤﻠﻒ ‪ ، file‬اﻟﻰ اﻟﻤﻠﻒ‬ ‫‪ ، other file‬ﻣﻊ ان اﻟﻮﺿﻊ اﻟﻄﺒﻴﻌﻰ ان ﻳﺘﻢ ﻋﺮض هﺬا اﻟﻤﻠﻒ ﻋﻠﻰ ال ‪ stdout‬واﻟﺘﻰ هﻰ‬ ‫اﻟﺸﺎﺷﻪ ﻓﻰ ﻣﻌﻈﻢ اﻻﺣﻴﺎن ‪.‫ال‪ piping‬و ال‪.

.

processor‬‬ ‫وﺗﻨﻘﺴﻢ اﻟﻮﺣﻪ اﻻم ‪ mother board‬ﻣﻦ ﺣﻴﺚ اﻟﺘﻜﺎﻣﻞ )‪ (integration‬اﻟﻰ ﻧﻮﻋﺎن‬ ‫‪ 1‬اﻟﻤﺘﻜﺎﻣﻠﻪ )‪ (integrated‬وهﻮ هﺬا اﻟﻨﻮع اﻟﺬى ﻳﺤﻮى ﻋﺪد ﻣﻦ اﻻﺟﺰاء اﻟﻤﺒﻨﻴﻪ ﻓﻴﻪ واﻟﺬى ﻳﻄﻠﻖ‬ ‫ﻋﻠﻴﻪ ‪ built-in‬ﻣﺜﻞ آﺎرت اﻟﺸﺒﻜﻪ او اﻟﺼﻮت ‪..board‬او ال‪ power supply‬او اﻻﺟﺰاء اﻟﺠﻮهﺮﻳﻪ ‪purely‬‬ ‫‪) mechanical‬ﻣﺜﻞ ‪ RAM‬او ‪.(.‬‬ ‫‪ 2‬اﻟﻐﻴﺮ ﻣﺘﻜﺎﻣﻠﻪ )‪ (Non-integrated‬وهﻰ ﺑﺎﻟﺘﺎﻟﻰ ﻋﻜﺲ اﻻوﻟﻰ ‪ ،‬ﻓﻬﻰ ﻻ ﺗﺤﻮى اى ﻧﻮع ﻣﻦ‬ ‫اﻻﺟﺰاء ﺑﻬﺎ‪ .‬ﺑﻞ ﺗﻀﺎف اﻟﻴﻬﺎ هﺬﻩ اﻻﺟﺰاء ﻋﻦ ﻃﺮﻳﻖ ﻓﺘﺤﺎت اﻟﺘﻮﺳﻌﻪ اﻟﻤﺴﻤﺎﻩ ‪.board‬هﻰ اﻟﻠﻮﺣﻪ اﻻﺳﺎﺳﻴﻪ واﻟﺮﺋﻴﺴﻴﻪ ﻟﺠﻬﺎز اﻟﻜﻤﺒﻴﻮﺗﺮ ‪ ،‬ﺑﻞ هﻰ اهﻢ ﺟﺰء ﻓﻴﻪ ‪ ،‬ﻓﺒﺪوﻧﻬﺎ ﻻ‬ ‫ﻳﻤﻜﻦ اﻻﺳﺘﻔﺎدﻩ ﻣﻦ ﺑﻘﻴﻪ اﻻﺟﺰاء ‪. slots‬‬ ‫)اﻟﻤﻘﺼﻮد ﺑﺎﻟﺘﻜﺎﻣﻞ ‪ ،‬ﺗﻜﺎﻣﻞ اﻟﻤﻜﻮﻧﺎت اﻻﺳﺎﺳﻴﻪ اﻟﺘﻰ ﺗﺮآﺐ ﻋﻠﻰ اﻟﻠﻮﺣﻪ اﻻم واﻟﺘﻰ ﺗﻌﺪ ﺿﺮورﻳﻪ ﻟﻌﻤﻞ اﻟﺠﻬﺎز(‬ .‬‬ ‫وهﻰ ﻋﺒﺎرﻩ ﻋﻦ ﻟﻮﺣﻪ آﻬﺮﺑﻴﻪ آﺒﻴﺮﻩ ‪-‬ﻧﻮﻋﺎ ﻣﺎ‪ -‬ﻳﺜﺒﺖ ﺑﻬﺎ اﻟﻌﺪﻳﺪ ﻣﻦ ﻣﺤﺘﻮﻳﺎت اﻟﺠﻬﺎز ‪peripheral‬‬ ‫‪ ، device‬ﻣﺜﻞ اﻟﻬﺎرد دﻳﺴﻚ و ال ‪ floppy‬وﻏﻴﺮهﻢ ‪.‬‬ ‫‪Mother Board‬‬ ‫ال ‪ M..‬‬ ‫وﺗﻘﻮم اﻟﺒﻴﺎﻧﺎت اﻟﺘﻰ ﺗﻨﺘﻘﻞ ﺑﻴﻦ هﺬﻩ اﻻﺟﺰاء ﺑﺎﻟﻤﺮور ﻣﻦ ﺧﻼل ال ‪ mother board‬اﻟﻰ هﺬﻩ‬ ‫اﻟﻤﺤﺘﻮﻳﺎت اﻟﻤﺨﺘﻠﻔﻪ ‪..‫اﻟﻬﺎرد وﻳﺮ ‪Hard Ware‬‬ ‫ﻓﻰ هﺬا اﻟﻔﺼﻞ ﺳﻨﺘﺤﺪث ﻋﻦ اﻟﻬﺎردوﻳﺮ ﺑﻨﻈﺮﻩ ﻋﺎﻣﻪ‪.. mother board‬واﻟﺘﻰ ﺑﺪورهﺎ‬ ‫ﺗﺴﺘﻤﺪ اﻟﻜﻬﺮﺑﺎء اﻟﺨﺎﺻﻪ ﺑﻬﺎ ﻣﻦ ﻣﺎ ﻳﺴﻤﻰ ‪.‬‬ ‫وﺗﺴﺘﻤﺪ هﺬﻩ اﻟﻤﺤﺘﻮﻳﺎت اﻟﻜﻬﺮﺑﺎء اﻟﺨﺎﺻﻪ ﺑﻬﺎ ﻣﻦ هﺬﻩ ال ‪ . power supply‬‬ ‫)اﻟﻤﻘﺼﻮد ﺑﺎل‪ peripheral‬هﻰ اﻻﺟﺰاء)‪(device‬اﻟﺘﻰ ﺗﺆدى دور ﻣﺴﺎﻋﺪ )‪ (Auxiliary‬ﻓﻰ اﻟﻨﻈﺎم وﻟﻴﺲ دور‬ ‫رﺋﻴﺴﻰ‬ ‫*اﻳﻀﺎ ُﺗﻌَﺮف ﺑﺎﻧﻬﺎ اى ﺷﻰ ﻓﻰ اﻟﺠﻬﺎز ﻟﻴﺲ ال‪ M.‬‬ ‫هﺬا ‪ ،‬وان آﺎن ﻟﻴﻨﻮآﺲ ﻳﻌﻤﻞ ﻋﻠﻰ ال‪ hard ware‬اﻟﻤﺨﺘﻠﻒ واﻟﺨﺎص ﺑﺎﻟﻌﺪﻳﺪ ﻣﻦ اﻟﺴﻴﺮﻓﺮات‬ ‫‪ ، server‬واﻟﻤﺨﺘﻠﻒ ﻋﻦ هﺬا اﻟﻤﺘﻌﻠﻖ ﺑﺎﻻﺟﻬﺰﻩ اﻟﺸﺨﺼﻴﻪ )‪ (pc‬اﻻ ان هﺬا اﻟﻔﺼﻞ ﺳﻴﺘﻌﺮض ﻓﻘﻂ‬ ‫ﻟﻞ ‪ hard ware‬اﻟﺨﺎص ﺑﺎﻻﺟﻬﺰﻩ اﻟﺸﺨﺼﻴﻪ ‪.

CPU‬‬ ‫وهﻰ اﺧﺘﺼﺎر ل ‪Peripheral Component Interface‬‬ ‫• ‪AGP‬‬ ‫وهﻰ ﻧﻮﻋﻴﻪ ﻓﺘﺤﺎت ‪ slot‬اﺣﺪث ﻣﻦ ال ‪ PCI‬وﻏﺎﻟﺒﻴﻪ اﺳﺘﺨﺪاﻣﻬﺎ ﻟﻜﺮوت اﻟﺸﺎﺷﻪ ‪.‬‬ ‫وﺗﻔﺼﻴﻞ هﺬﻩ اﻻوﺿﺎع ووﻇﺎﺋﻔﻬﺎ داﺋﻤﺎ ﻳﺬآﺮ ﺑﺎﻟﻜﺘﻴﺐ اﻟﻤﺮﻓﻖ ﻟﻜﻞ ﺟﺰء ﻣﻦ ال ‪. M.‬‬ ‫وﻳﻮﺟﺪ ﻣﻦ هﺬﻩ ال ‪ slot‬ﻋﺪﻩ اﻧﻮاع‬ ‫•‪ISA‬‬ ‫)‪ (eye-sah‬وهﻰ اﻟﻨﻮع اﻻﻗﺪم ﻣﻦ ال ‪ slots‬وﺗﺴﺘﺨﺪم اﻻن ﻋﻠﻰ ﻣﺴﺘﻮى ﺿﻴﻖ وﺑﺎﻻﺧﺺ ﻓﻰ‬ ‫اﻻﺟﻬﺰﻩ اﻟﻘﺪﻳﻤﻪ‪.board‬اﺛﻨﺘﺎن ‪ . mother board‬‬ ‫• ال ‪ jumbers‬وهﻰ ﻋﺒﺎرﻩ ﻋﻦ اﺟﺰاء ﻣﻌﺪﻧﻴﻪ ﻣﻐﻠﻔﻪ ﺑﺎﻟﺒﻼﺳﺘﻴﻚ ‪ ،‬ووﻇﻴﻔﺘﻬﺎ ﺗﺘﻤﺜﻞ ﻓﻰ ﺗﻮﺻﻴﻞ‬ ‫اﻟﻜﻬﺮﺑﺎء اﻟﻰ )اﻻﺳﻨﺎن( اﻟﻤﻮﺟﻮدﻩ ﺑﺎل‪ mother board‬او اﻟﻤﻮﺟﻮدﻩ ﺑﺎﻻﺟﺰاء اﻟﻤﺨﺘﻠﻔﻪ ﻓﻰ‬ ‫اوﺿﺎع ﻣﻌﻴﻨﻪ ‪ ،‬وآﻞ وﺿﻊ ﺑﺎﻟﻄﺒﻊ ﻟﻪ وﻇﻴﻔﻪ ﻣﻌﻴﻨﻪ ‪.‬ﻣﻦ ﺣﻴﺚ اﻗﺼﻰ ﺳﺮﻋﻪ وﺳﻌﻪ ﻳﻤﻜﻦ ان ﺗﺼﻞ ﻟﻬﺎ اﻟﺬاآﺮﻩ ‪ ، RAM‬وﻧﻮع اﻟﻤﻌﺎﻟﺞ‬ ‫‪ processor‬اﻟﺬى ﺳﻴﻌﻤﻞ ﻋﻠﻰ هﺬﻩ ال ‪ M.‬‬ ‫وﻟﻜﻦ ﻋﺪد ال ‪ chipset‬اﻻﺳﺎﺳﻴﻪ ﻋﻠﻰ ال ‪ M.‬وﻇﻴﻔﺘﻬﻤﺎ ﺗﺤﺪﻳﺪ ﺧﺼﺎﺋﺺ‬ ‫اﻟﻠﻮﺣﻪ اﻻم ‪ . hard ware‬‬ ‫• ‪ chipset‬وهﻰ اﻟﺮﻗﺎﻗﻪ اﻟﻤﻌﺪﻧﻴﻪ اﻟﻤﺜﺒﺘﻪ ﻋﻠﻰ اﻟﻠﻮﺣﻪ اﻻم ‪.board‬وﻏﻴﺮهﺎ ﻣﻦ ﺧﺼﺎﺋﺺ ووﻇﺎﺋﻒ ال‬ ‫‪.‬‬ ‫وال‪ chipset‬ﻋﻤﻮﻣﺎ هﻰ داﺋﺮﻩ آﻬﺮﺑﻴﻪ او ﻣﺠﻤﻮﻋﻪ ﻣﻦ اﻟﺪواﺋﺮ اﻟﻜﻬﺮﺑﻴﻪ اﻟﻤﺘﻜﺎﻣﻠﻪ واﻟﻤﺼﻐﺮﻩ‬ ‫ﺟﺪا واﻟﻤﻮﺟﻮدﻩ داﺧﻞ ﺷﺮﻳﺤﻪ ﻣﻦ اﻟﺴﻴﻠﻜﻮن ﻓﻴﻤﺎ ﻳﺴﻤﻰ ‪ ،IC‬وﻳﻮﺟﺪ ﻣﻨﻬﺎ اﻟﻌﺪﻳﺪ ﻋﻠﻰ اﻟﻠﻮﺣﻪ اﻻم‪.‬‬ ‫وهﺬﻩ ال ‪ buses‬ﻟﻬﺎ ﺳﺮﻋﺎت ﻣﺨﺘﻠﻔﻪ ‪ ،‬وآﻠﻤﺎ زادت ﺳﺮﻋﻪ هﺬﻩ ال ‪ bus‬زادت ﺑﺎﻟﺘﺎﻟﻰ اﻟﺴﺮﻋﻪ‬ ‫ﺑﻴﻦ اﻻﺟﺰاء اﻟﻤﺨﺘﻠﻔﻪ اﻟﻤﻮﺟﻮدﻩ ﻋﻠﻰ ال‪.‫اﻻﺟﺰاء اﻟﻤﻜﻮﻧﻪ ﻟﻞ ‪.‬وﻟﻬﺬا ﻓﻬﻰ ﺗﺴﻤﻰ ﻓﺘﺤﺎت اﻟﺘﻮﺳﻌﻪ ‪.board‬‬ ‫• ال ‪ slot‬وهﻰ هﺬﻩ اﻻﺟﺰاء اﻟﺘﻰ ﺗﺸﺒﻪ اﻟﻔﺘﺤﺎت واﻟﺘﻰ ﻳﻮﺿﻊ ﺑﻬﺎ اﻟﻌﺪﻳﺪ ﻣﻦ اﻻﺟﺰاء ‪device‬‬ ‫اﻟﺘﻰ ﻳﻤﻜﻦ اﺿﺎﻓﺘﻬﻢ ﻣﺜﻞ آﺮوت اﻟﺼﻮت واﻟﻤﻮدم واﻟﺸﺎﺷﻪ ‪ .‬‬ ‫وهﻰ اﺧﺘﺼﺎر ل ‪Accelerated Graphic Processors‬‬ .‬‬ ‫وهﻰ اﺧﺘﺼﺎر ل ‪Industry Standard Architecture‬‬ ‫•‪PCI‬‬ ‫)‪ (pee-see-eye‬وهﻰ اﻟﻨﻮع اﻟﺤﺪﻳﺚ واﻟﻤﺴﺘﻌﻤﻞ اﻻن ‪ ،‬واﻟﻔﺮق ﺑﻴﻦ ‪ ISA‬و ‪ PCI‬ﻳﺘﻤﺜﻞ ﻓﻰ‬ ‫ﺳﺮﻋﻪ ﻧﻘﻞ اﻟﺒﻴﺎﻧﺎت اﻟﻰ ال‪. Mother board‬‬ ‫ال‪ mother board‬آﻤﺎ اﺳﻠﻔﻨﺎ ﻋﺒﺎرﻩ ﻋﻦ ﻟﻮﺣﻪ آﻬﺮﺑﺎﺋﻴﻪ ‪ circuit board‬وﻟﻜﻨﻬﺎ ﻣﻜﻮﻧﻪ ﻣﻦ‬ ‫اﻟﻌﺪﻳﺪ ﻣﻦ اﻻﺟﺰاء اﻟﻬﺎﻣﻪ واﻟﺘﻰ ﻣﻨﻬﺎ‬ ‫• ال ‪ data buses‬واﻟﻤﻘﺼﻮد ﺑﻬﺎ هﻰ اﻟﻘﻨﻮات اﻟﺘﻰ ﺗﺴﻴﺮ ﻓﻴﻬﺎ اﻟﺒﻴﺎﻧﺎت ‪.

RAM‬‬ ‫وهﻰ وﺣﺪﻩ اﻟﺘﺨﺰﻳﻦ اﻟﺮﺋﻴﺴﻴﻪ ﺑﺎﻟﻨﻈﺎم )ﻳﻈﻦ اﻟﺒﻌﺾ ان وﺣﺪﻩ اﻟﺘﺨﺰﻳﻦ اﻟﺮﺋﻴﺴﻴﻪ ﺑﺎﻟﻨﻈﺎم هﻮ اﻟﻬﺎرد‬ ‫دﻳﺴﻚ ‪ ،‬وﻟﻜﻦ اﻟﺼﺤﻴﺢ اﻧﻪ وﺣﺪﻩ اﻟﺘﺨﺰﻳﻦ اﻟﺜﺎﻧﻮﻳﻪ ﺑﻌﺪ ال‪.‬‬ ‫واﻟﻤﻌﺎﻟﺞ ﻋﺒﺎرﻩ ﻋﻦ ﺷﺮﻳﺤﻪ ﺻﻐﻴﺮﻩ ‪-‬ﻧﻮﻋﺎ ﻣﺎ‪ -‬ﻣﻦ اﻟﺴﻴﻠﻜﻮن ﺑﻬﺎ اﻟﻤﻼﻳﻴﻦ ﻣﻦ اﻟﺪواﺋﺮ اﻟﻜﻬﺮﺑﻴﻪ‬ ‫اﻟﺼﻐﻴﺮﻩ )اﻟﺘﺮاﻧﺰﺳﺘﻮر(‬ ‫وﻃﺮﻳﻘﻪ اﻟﻤﻌﺎﻟﺞ ﻓﻰ اﻟﻌﻤﻞ ﺗﺘﻤﺜﻞ ﻓﻰ اﻧﻪ ﻳﺤﺘﻮى ﻋﻠﻰ ‪ timer‬او ﺳﺎﻋﻪ ﺗﻀﺒﻂ ﻋﻤﻠﻪ‪ ،‬وهﺬا ال‪timer‬‬ ‫ﻳﻘﻮم ﺑﺎداء ﻣﺌﺎت اﻟﻤﻼﻳﻴﻦ ﻣﻦ اﻟﻌﻤﻠﻴﺎت ﻓﻰ آﻞ ﺛﺎﻧﻴﻪ ‪ ،‬وآﻞ ﻋﻤﻠﻴﻪ ﻣﻦ هﺬﻩ اﻟﻌﻤﻠﻴﺎت ﺗﺴﻤﻰ )هﺮﺗﺰ‬ ‫‪ (hertz‬وﻟﻬﺬا ﻓﺎﻟﻤﻌﺎﻟﺞ اﻟﺬى ﻳﻄﻠﻖ ﻋﻠﻴﻪ ‪ MHz 800‬ﻳﻌﻨﻰ ان هﺬا اﻟﻤﻌﺎﻟﺞ ﻗﺎدر ﻋﻠﻰ اداء ‪800‬‬ ‫ﻣﻠﻴﻮن ﻋﻤﻠﻴﻪ ﻓﻰ آﻞ ﺛﺎﻧﻴﻪ ‪) .‬‬ ‫وﻳﺘﻜﻮن اﻟﻤﻌﺎﻟﺞ ﻣﻦ ﺛﻼﺛﻪ اﻗﺴﺎم‬ ‫‪ -1‬وﺣﺪﻩ اﻟﻤﻌﺎﻟﺠﻪ اﻟﻤﺮآﺰﻳﻪ ‪) RAM‬ﺳﻴﺘﻢ اﻟﻜﻼم ﻋﻨﻬﺎ ﻻﺣﻘﺎ(‬ ‫‪ -2‬وﺣﺪﻩ اﻟﺤﺴﺎب واﻟﻤﻨﻄﻖ ‪Arithmetic And Logic Unit‬‬ ‫وﻳﺘﻢ ﻓﻰ هﺬﻩ اﻟﻮﺣﺪﻩ آﻞ اﻟﺤﺴﺎﺑﺎت واﻟﻤﻘﺎرﻧﺎت واﻟﻘﺮارات اﻟﻤﻨﻄﻘﻴﻪ‬ ‫‪ -3‬وﺣﺪﻩ اﻟﺘﺤﻜﻢ ‪Control Unit‬‬ ‫واﻟﻐﺮض ﻣﻦ هﺬﻩ اﻟﻮﺣﺪﻩ هﻮ ﺗﻨﻈﻴﻢ ﺳﻴﺮ اﻟﻌﻤﻠﻴﺎت داﺧﻞ وﺣﺪﻩ اﻟﻤﻌﺎﻟﺠﻪ اﻟﻤﺮآﺰﻳﻪ وﺗﻨﻈﻴﻢ ﺗﺪﻓﻖ اﻟﺒﻴﺎﻧﺎت ﺑﻴﻦ وﺣﺪﻩ‬ ‫اﻟﻤﻌﺎﻟﺠﻪ اﻟﻤﺮآﺰﻳﻪ ووﺣﺪات اﻻدﺧﺎل واﻻﺧﺮاج ‪. (RAM‬‬ ‫ووﻇﻴﻔﻪ ال ‪ RAM‬ﺗﺘﻤﺜﻞ ﻓﻰ‬ ‫•اﻟﺘﺨﺰﻳﻦ اﻟﻤﺆﻗﺖ ﻟﻠﺒﻴﺎﻧﺎت اﻟﺘﻰ ﺗﺤﻮل اﻟﻴﻬﺎ ﻣﻦ وﺣﺪات اﻻدﺧﺎل ﺣﺘﻰ ﻳﺘﻢ اﻟﺘﻌﺎﻣﻞ ﻣﻊ هﺬﻩ اﻟﺒﻴﺎﻧﺎت‬ ‫•ﻣﻜﺎن ﻟﻠﺘﻌﺎﻣﻞ ﻣﻊ اﻟﺒﻴﺎﻧﺎت ﻳﺘﻢ ﻓﻴﻪ إﺟﺮاء ﺑﻌﺾ اﻟﻌﻤﻠﻴﺎت اﻟﺤﺴﺎﺑﻴﻪ واﻟﻤﻨﻄﻘﻴﻪ ﻟﻠﻮﺻﻮل اﻟﻰ اﻟﻨﺘﺎﺋﺞ‬ ‫اﻟﻤﺘﻮﺳﻄﻪ‬ ‫•اﻟﺘﺨﺰﻳﻦ اﻟﻤﺆﻗﺖ ﻟﻠﻨﺘﺎﺋﺞ اﻟﻤﺘﻮﺳﻄﻪ ﻟﺤﻴﻦ ارﺳﺎﻟﻬﺎ اﻟﻰ اﻟﻤﻜﺎن اﻟﻤﺤﺪد ﻟﻬﺎ‬ ‫•هﺬا ﺑﺎﻻﺿﺎﻓﻪ اﻟﻰ ﻣﺴﺎﺣﻪ ﻣﺨﺼﺼﻪ ﻟﺘﺨﺰﻳﻦ اﻟﺒﺮاﻣﺞ اﻟﺘﻰ ﺗﻘﻮم ﺑﺎﺟﺮاء اﻟﻌﻤﻠﻴﺎت اﻟﺴﺎﺑﻘﻪ ﻋﻠﻰ‬ ‫ﻋﻤﻠﻴﻪ اﻟﻤﻌﺎﻟﺠﻪ‬ .‬وهﺬﻩ اﻟﻌﻤﻠﻴﺎت ﺗﺮﺳﻞ اﻟﻴﻪ ﻣﻦ اﻟﺬاآﺮﻩ‪(RAM‬‬ ‫‪ -2‬اﻟﺬاآﺮﻩ ‪Memory‬‬ ‫هﻨﺎك ﻋﺪﻩ اﻧﻮاع ﻣﻦ اﻟﺬاآﺮﻩ ﻣﻮﺟﻮدﻩ ﺑﺎﻟﺠﻬﺎز‬ ‫* اوﻻ اﻟﺬاآﺮﻩ اﻟﻌﺸﻮاﺋﻴﻪ وهﻰ ﻣﺎ ﻳﻄﻠﻖ ﻋﻠﻴﻬﺎ ال ‪.‬‬ ‫وهﻮ اﺧﺘﺼﺎر ل ‪ ، Central Processing Unit‬او وﺣﺪﻩ اﻟﻤﻌﺎﻟﺠﻪ اﻟﻤﺮآﺰﻳﻪ ‪. M.‫اﻻﺟﺰاء اﻻﺧﺮى ﺑﺎل ‪.board‬‬ ‫ﺑﺎل ‪ M.board‬اﺟﺰاء اﺧﺮى وﻟﻜﻨﻬﺎ اآﺜﺮ ﺧﺼﻮﺻﻴﻪ واﺳﺘﻘﻼﻟﻴﻪ ﻣﻦ اﻻﺟﺰاء اﻟﺴﺎﺑﻘﻪ وﻣﻨﻬﺎ‬ ‫‪CPU -1‬‬ ‫وهﻮ ﻣﻦ اآﺜﺮ اﻻﺟﺰاء اهﻤﻴﻪ ﺑﺎﻟﺠﻬﺎز ‪ ،‬ﻟﺪرﺟﻪ ان اﻟﺠﻬﺎز آﻜﻞ ﻗﺪ ﻳﺴﻤﻰ ﺑﺎﺳﻢ ال ‪ cpu‬ﻓﻴﻘﺎل ﺟﻬﺎز‬ ‫‪ intel 286‬او ‪ pentium‬او ﻏﻴﺮ ذﻟﻚ ‪.

Read Only Memory‬‬ ‫* اﻟﺬاآﺮﻩ اﻟﻤﺨﺒﺄﻩ ‪cash memory‬‬ ‫ﺳﻤﻴﺖ آﺬﻟﻚ ﻻﻧﻬﺎ ﻣﻮﺟﻮدﻩ ﺑﺪاﺧﻞ ال‪.‬‬ ‫وهﻰ اﺧﺘﺼﺎر ل ‪. processor‬‬ ‫وﺗﻘﻮم ﺑﻬﺬﻩ اﻟﻌﻤﻠﻴﻪ ﻋﻦ ﻃﺮﻳﻖ ﻧﺴﺦ ﺑﻌﺾ اﻟﺒﻴﺎﻧﺎت ﻣﻦ اﻟﺒﺮاﻣﺞ اﻟﺘﻰ ﺗﻘﻮم اﻟﺬاآﺮﻩ اﻻﺳﺎﺳﻴﻪ ‪RAM‬‬ ‫ﺑﻔﺘﺤﻬﺎ ‪ ،‬وﺑﺬﻟﻚ ﺗﻮﻓﺮ اﻟﻮﻗﺖ اﻟﺬى ﺳﻴﺴﺘﻐﺮﻗﻪ اﻟﺒﺮﻧﺎﻣﺞ )اﻟﻤﻮﺟﻮد ﻓﻰ ‪ (RAM‬ﻻرﺳﺎل هﺬﻩ اﻟﺒﻴﺎﻧﺎت‬ ‫اﻟﻰ اﻟﻤﻌﺎﻟﺞ وذﻟﻚ ﻻﻧﻬﺎ ﻣﻮﺟﻮدﻩ ﺑﺎﻟﻔﻌﻞ ﻓﻰ اﻟﻤﻌﺎﻟﺞ ‪.‬‬ .‬اوﻣﺎ ﻳﻄﻠﻖ ﻋﻠﻴﻬﺎ ‪ROM‬‬ ‫وﺳﻤﻴﺖ آﺬﻟﻚ ﻻﻧﻬﺎ ﻓﻌﻼ ﺗﺴﺘﺨﺪم ﻟﻘﺮأﻩ ﻣﺤﺘﻮﻳﺎﺗﻬﺎ ﻓﻘﻂ ‪ ،‬وﺑﺎﻟﺘﺎﻟﻰ ﻻ ﻳﻜﺘﺐ اﻟﻴﻬﺎ اﺛﻨﺎء ﻋﻤﻞ اﻟﺠﻬﺎز‪. cpu‬‬ ‫ووﻇﻴﻔﻪ هﺬﻩ اﻟﺬاآﺮﻩ هﻰ ﺗﺴﺮﻳﻊ ﻋﻤﻠﻴﻪ اﻟﻤﻌﺎﻟﺠﻪ اﻟﺘﻰ ﻳﻘﻮم ﺑﻬﺎ ال ‪.‬‬ ‫وﺣﺠﻤﻬﺎ ﻣﻘﺎرﻧﻪ ﻣﻊ ‪ RAM‬ﻳﻌﺪ ﺻﻐﻴﺮ ﺟﺪا ‪ ،‬ﻓﻬﻰ ﻏﺎﻟﺒﺎ اﻗﻞ ﻣﻦ ‪ 1mega‬ﻣﻊ اﻻﺟﻬﺰﻩ اﻟﺸﺨﺼﻴﻪ ‪. BIOS‬‬ ‫وﺗﻌﺪ اﺧﺘﺼﺎر ل ‪. Random Access Memory‬‬ ‫* ذاآﺮﻩ اﻟﻘﺮاءﻩ ﻓﻘﻂ ‪.‫وﺗﻔﻘﺪ ال‪ RAM‬آﻞ ﻣﺤﺘﻮﻳﺎﺗﻬﺎ ﺑﻤﺠﺮد اﻧﻘﻄﺎع اﻟﺘﻴﺎر اﻟﻜﻬﺮﺑﺎﺋﻰ ﻋﻨﻬﺎ ‪.‬‬ ‫وهﺬﻩ اﻟﺬاآﺮﻩ ﺗﺴﺘﺨﺪﻣﻬﺎ اﻟﻤﺼﺎﻧﻊ ﻟﻜﺘﺎﺑﻪ اﻟﺘﻌﻠﻴﻤﺎت ﻋﻠﻰ اﺟﺰاء اﻟﻬﺎردوﻳﺮ واﻟﺘﻰ ﻳﻘﺮأهﺎ اﻟﺠﻬﺎز آﻠﻤﺎ‬ ‫ﺑﺪأ اﻟﻌﻤﻞ ‪. start up‬‬ ‫واﺷﻬﺮ اﻧﻮاع هﺬﻩ اﻟﺬاآﺮﻩ هﻮ اﻟﺒﺮﻧﺎﻣﺞ ‪.

‬‬ ‫وﺑﻌﺪ ﺗﻌﺮف ال ‪ cpu‬ﻋﻠﻰ رﻗﻢ ال ‪ device‬ﻓﺎﻧﻪ ﻳﺘﺮك ﻣﺎ ﻳﻔﻌﻠﻪ ‪ ،‬ﻳﺒﺪأ ﻓﻰ اﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻟﺒﻴﺎﻧﺎت‬ ‫اﻟﺠﺪﻳﺪﻩ ‪ ،‬ﻻن ال ‪ devices‬اﻟﺘﻰ ﺗﺤﻤﻞ ارﻗﺎم ‪ irq‬ﻟﻬﺎ اوﻟﻮﻳﻪ ﻓﻰ اﻟﺘﻌﺎﻣﻞ ﻣﻊ ال ‪. input .‬‬ ‫‪IRQ‬‬ ‫ال ‪ irq‬هﻰ ﻋﺒﺎرﻩ ﻋﻦ ﻋﻨﺎوﻳﻦ ‪ address‬ﻣﺤﺪدﻩ ﻟﻜﻞ ‪ ،device‬ﻓﻜﺎرت اﻟﺼﻮت ﻟﻪ رﻗﻢ او ﻋﻨﻮان‬ ‫واﻟﻤﻮدم واﻟﻄﺎﺑﻌﻪ آﺬﻟﻚ ‪.‬‬ ‫اﻟﺴﻮال اﻻن ‪-‬ﺑﻌﺪ هﺬا اﻟﻤﻮﺟﺰ‪ -‬هﻮ آﻴﻒ ﻳﺘﻌﺎﻣﻞ اﻟﻬﺎردوﻳﺮ ﻣﻊ ﺑﻌﻀﻪ اﻟﺒﻌﺾ ‪. ram‬‬ ‫وﺗﺴﺘﺨﺪم هﺬﻩ اﻟﻤﺴﺎرات ﻟﺘﺴﺮﻳﻊ اﻟﻌﻤﻞ ﻟﺒﻌﺾ ال ‪، devices‬ﻣﺜﻞ ال ‪. hard disk‬‬ . irq‬‬ ‫ﻓﺎن ﻟﻞ ‪.dma‬ﺑﺎآﺜﺮ ﺗﻘﺪﻳﺮ‪ -‬ﺣﻮاﻟﻰ ارﺑﻌﻪ ﻣﺴﺎرات اﻟﻰ ال ‪.‬‬ ‫اﻳﻀﺎ اذا آﺎن ﺑﺎﻟﺠﻬﺎز ‪ 16‬رﻗﻢ ﻣﺤﺪد ﻟﻞ ‪. cpu‬‬ ‫ﺑﻤﻌﻨﻰ اﻧﻪ ﻟﻮ ان ال ‪ irq‬ﻳﺘﻌﺎﻣﻞ ﻣﻊ ال ‪ cpu‬ﻣﺒﺎﺷﺮﻩ ‪ ،‬ﻓﺎن ال ‪ dma‬هﺬﻩ ﺗﺘﻌﺎﻣﻞ ﻣﻊ ال‪memory‬‬ ‫ﻣﺒﺎﺷﺮﻩ ‪.‬‬ ‫اوﻻ ﻻ ﺑﺪ ان ﻧﻌﺮف ان اهﻢ اﻻﺟﺰاء ﻓﻰ ﻋﻤﻠﻴﻪ اﻟﻤﻌﺎﻟﺠﻪ هﻮ ال‪) CPU‬واﻟﺬى ﻳﺸﻤﻞ ‪ RAM‬آﻤﺎ اﺳﻠﻔﻨﺎ(‬ ‫وﺑﺎﻟﺘﺎﻟﻰ ﻓﺎن آﻞ ال‪ devices‬ﻻ ﺑﺪ وان ﺗﺘﻌﺎﻣﻞ ﻣﻌﻪ ‪ ،‬وﻳﺘﻢ اﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻤﻌﺎﻟﺞ ﻋﻦ ﻃﺮﻳﻖ ارﺳﺎل‬ ‫اﺷﺎرات ﺑﻮاﺳﻄﻪ ال‪ data bus‬اﻟﻤﻮﺟﻮدﻩ ﺑﺎل‪.‫آﻴﻒ ﻳﺘﻌﺎﻣﻞ اﻟﻬﺎردوﻳﺮ ‪.board‬‬ ‫وﻋﻨﺪﻣﺎ ﺗﺼﻞ هﺬﻩ اﻻﺷﺎرات اﻟﻰ اﻟﻤﻌﺎﻟﺞ ﻓﺎﻧﻪ ﻻ ﺑﺪ ان ﻳﻤﻴﺰ ﻣﻦ اﻳﻦ اﺗﺖ ﻟﻪ ‪ ،‬ﻟﻬﺬا ﺳﻨﺘﻌﺮض اﻟﻰ‬ ‫ﺛﻼث ﻃﺮق ﻓﻰ اﻟﺘﻌﺎﻣﻞ ﻣﻊ ال ‪ CPU‬وهﻢ‬ ‫‪I/O -1‬‬ ‫‪IRQ -2‬‬ ‫‪DMA -3‬‬ ‫‪I/O‬‬ ‫اﻟﻤﻘﺼﻮد ﺑﺎل‪ i/o‬هﻰ ﻣﻨﺎﻓﺬ ال ‪.‬‬ ‫وﺑﺎﻟﻨﺴﺒﻪ ﻟﻌﺪدهﺎ ﻓﻴﺘﺠﺎوز ‪) 65000‬ﺧﻤﺴﻪ وﺳﺘﻮن اﻟﻒ( وﺑﺎﻟﺘﺎآﻴﺪ ﻻ ﻳﺴﺘﻌﻤﻞ آﻞ هﺬا اﻟﻌﺪد ﺑﻞ‬ ‫اﻟﻌﺸﺮات ﻣﻨﻪ ﻓﻘﻂ ‪. cpu‬‬ ‫‪DMA‬‬ ‫هﻰ اﺧﺘﺼﺎر ل ‪.‬‬ ‫وﻣﻌﻨﻰ ‪ irq‬هﻮ ‪ Interrupts ReQuests‬واﻟﺬى ﻳﻌﻨﻰ ﻃﻠﺒﺎت اﻟﻤﻘﺎﻃﻌﻪ ‪.output‬‬ ‫وهﺬﻩ اﻟﻤﻨﺎﻓﺬ )‪ (ports‬ﻣﻮﺟﻮدﻩ ﺑﺎﻟﺬاآﺮﻩ ‪. M.‬‬ ‫ﻓﻌﻨﺪﻣﺎ ﻳﺮﻳﺪ ال ‪ device‬ان ﻳﺮﺳﻞ ﺑﻴﺎﻧﺎت اﻟﻰ ال ‪ cpu‬ﻓﺎن هﺬﻩ اﻟﺒﻴﺎﻧﺎت ﺗﺤﻤﻞ ﻣﻌﻬﺎ رﻗﻢ هﺬا ال‬ ‫‪ device‬ﻟﻜﻰ ﻳﺘﻌﺮف ال ‪ cpu‬ﻋﻠﻰ ﻣﺮﺳﻞ هﺬﻩ اﻟﺒﻴﺎﻧﺎت ‪. direct memory access‬‬ ‫وﻗﺪ ﻳﻘﻮم اﺳﻤﻬﺎ ﺑﺘﻔﺴﻴﺮ وﻇﻴﻔﺘﻬﺎ ‪ ،‬ﻓﻬﻰ ﺗﺘﻌﺎﻣﻞ ﻣﻊ ال ‪ memory‬ﻣﺒﺎﺷﺮﻩ ‪ ،‬دون وﺳﺎﻃﻪ ال ‪. RAM‬‬ ‫وﺗﺴﺘﺨﺪم ﻓﻰ اﻟﻜﺘﺎﺑﻪ ﻟﻞ ‪ peripheral‬اﻟﻤﺨﺘﻠﻔﻪ ‪.

.

gui‬‬ ‫وﻟﻜﻦ اﻟﺘﺮآﻴﺰ اﻻن ﺳﻴﻜﻮن ﻋﻠﻰ اﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻤﻠﻔﺎت ﻋﻦ ﻃﺮﻳﻖ ال‪.‬‬ ‫وﺻﻴﻐﺘﻪ‬ ‫‪file filename‬‬ ‫او‬ ‫‪ file /etc/passwd‬اذا آﺎن اﻟﻤﻠﻒ ﻟﻪ اﻣﺘﺪاد ‪. shell‬‬ ‫واﺷﻬﺮ ﻣﺤﺮر ﻟﻠﻨﺼﻮص ‪ text editor‬ﻓﻰ ﻋﺎﻟﻢ ‪ Unix‬ﻳﻌﻤﻞ ﻋﻠﻰ ال ‪ shell‬هﻮ اﻟﻤﺤﺮر ‪، VI‬‬ ‫ﻳﻨﻄﻖ ‪.‫اﻟﺘﻌﺪﻳﻞ ﻓﻰ اﻟﻤﻠﻔﺎت ‪.‬‬ ‫وﻣﻠﻔﺎت ﻻ ﻳﻤﻜﻦ ﻟﻠﺸﺨﺺ ان ﻳﻘﺮأهﺎ ﻻﻧﻬﺎ ‪-‬ﻋﻠﻰ ﺳﺒﻴﻞ اﻟﻤﺜﺎل‪ -‬ﺗﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻨﻈﺎم ‪.‬‬ ‫واﻟﺘﺮآﻴﺰ ﻋﻠﻰ ال ‪ vi‬ﻋﻠﻰ وﺟﻪ اﻟﺨﺼﻮص ‪-‬ﺳﻮاء ﻓﻰ هﺬا اﻟﻜﺘﺎب او ﻓﻰ ﻏﻴﺮﻩ ﻣﻦ اﻟﻜﺘﺐ‪ -‬ﻟﻪ ﻋﺪﻩ اﺳﺒﺎب‬ ‫ﻣﻨﻬﺎ‬ ‫• ان هﺬا اﻟﻤﺤﺮر ‪ editor‬هﻮ اﻻﻗﺪم ﻓﻰ ﻋﺎﻟﻢ ال ‪ Unix‬ﻋﻠﻰ اﻻﻃﻼق ‪ ،‬وﻟﻬﺬا ﻓﻼ ﺗﻨﺪهﺶ ﻋﻨﺪﻣﺎ‬ ‫ﺗﺠﺪﻩ ﻓﻰ اى ﺗﻮزﻳﻌﻪ ﻣﻦ ﺗﻮزﻳﻌﺎت ﻟﻴﻨﻮآﺲ او ﻳﻮﻧﻜﺲ ‪. vi‬‬ ‫اﻣﺎ ﺑﺎﻟﻨﺴﺒﻪ ﻟﻠﻨﻮع اﻟﺜﺎﻧﻰ ﻓﺈﻣﺎ ان ﻳﺘﻌﺎﻣﻞ ﻣﻌﻪ ﺑﺎﻟﻤﺤﺮر ‪ editor‬اﻟﺬى اﻧﺸﺌﻪ )وهﻮ ﻏﺎﻟﺒﺎ ﻟﻴﺲ ﻣﺘﺎح‬ ‫ﻟﻠﻤﺴﺘﺨﺪﻣﻴﻦ( او ﺑﺒﺮاﻣﺞ ﻣﻦ ﻧﻮﻋﻴﻪ ‪ hex editor‬ﺣﻴﺚ ﺗﻘﻮم ﺑﺪور هﺬا اﻟﻤﺤﺮر اﻟﺨﺎص‬ ‫)ﻳﻼﺣﻆ اﻧﻪ ﻗﺪ ﻳﻜﻮن ﻓﻰ ﻧﺴﺨﻪ ‪ linux‬اﻟﺘﻰ ﺗﺴﺘﺨﺪﻣﻬﺎ ‪ ،‬ﺑﺮﻧﺎﻣﺞ اﺳﻤﻪ ‪ hex editor‬وهﻮ ذاﺗﻪ اﻟﺬى ﻧﺸﻴﺮ اﻟﻴﻪ( ‪. vi‬وال‬ ‫‪ deafult‬ﻋﻤﻮﻣﺎ ﻟﻼﻧﻈﻤﻪ اﻟﺘﻰ ﺗﻨﺘﺠﻬﺎ ‪) .‬‬ ‫واﻻﻣﺮ ‪ file‬ﻟﻪ ﻗﺎﻋﺪﻩ ﺑﻴﺎﻧﺎت‪ data base‬ﺑﻬﺎ آﻞ اﻧﻮاع اﻟﻤﻠﻔﺎت ‪ ،‬ووﻇﻴﻔﺘﻪ ﺗﺘﻤﺜﻞ ﻓﻰ اﻧﻪ ﻳﻘﺮأ ﺑﺪاﻳﻪ‬ ‫اﻟﻤﻠﻒ ﺛﻢ ﻳﻘﺎرﻧﻬﺎ ﺑﻘﺎﻋﺪﻩ اﻟﺒﻴﺎﻧﺎت اﻟﻤﻮﺟﻮدﻩ ﻋﻨﺪﻩ ‪ ،‬ﺛﻢ ﻳﺨﺒﺮك ﺑﻨﻮع هﺬا اﻟﻤﻠﻒ ‪.‬‬ ‫ﻓﺒﺎﻟﻨﺴﺒﻪ ﻟﻠﻨﻮع اﻻول ‪ ،‬وهﻮ اﻟﺬى ﻳﻤﻜﻦ ﻗﺮأﺗﻪ ‪ ،‬ﻓﻬﺬا هﻮ اﻟﺬى ﻧﺘﻌﺎﻣﻞ ﻣﻌﻪ ﺑﺎﻟﻤﺤﺮر ‪.‬‬ .‬‬ ‫* وﻟﻤﻌﺮﻓﻪ ﻧﻮع اﻟﻤﻠﻒ اﻟﺬى ﻧﺘﻌﺎﻣﻞ ﻣﻌﻪ ﻓﺎﻧﻨﺎ ﻧﺴﺘﺨﺪم اﻻﻣﺮ ‪ file‬اﻟﺬى ﻳﺨﺒﺮﻧﺎ هﻞ هﺬا ﻣﻠﻒ ﻧﺼﻰ‬ ‫‪ text file‬او ﻟﻴﺲ آﺬﻟﻚ ‪. vee eye‬‬ ‫وﺑﺎﻟﻨﺴﺒﻪ ﻋﻨﺪﻧﺎ ﻓﻰ ﻟﻴﻨﻮآﺲ ﻓﻴﻮﺟﺪ ﻣﺤﺮر ﺁﺧﺮ ﺷﻬﻴﺮ ‪ ،‬وهﻮ ‪ emacs‬هﺬا اﻟﻤﺤﺮر اﻟﺬى آﺘﺒﻪ‬ ‫)رﻳﺘﺸﺎرد ﺳﺘﻮﻟﻤﻦ ‪ -‬ﻣﺆﺳﺲ ﻣﺸﺮوع ‪ (gnu‬وﻳﻌﺪ هﺬا اﻟﻤﺤﺮر هﻮ ال‪ deafult‬ﺑﻌﺪ ال ‪ .‬‬ ‫ﻟﻠﺘﻌﺪﻳﻞ ﻓﻰ اﻟﻤﻠﻔﺎت ﻃﺮﻳﻘﺘﺎن‬ ‫اﺣﺪهﻤﺎ ﻋﻦ ﻃﺮﻳﻖ ال ‪، shell‬‬ ‫واﻻﺧﺮى ﻋﻦ ﻃﺮﻳﻖ ال ‪. gnu‬ذﻟﻚ ﻻن ‪ vi‬ﻓﻰ اﻻﺳﺎس ﻣﻦ اﻟﻴﻮﻧﻜﺲ( ‪.‬‬ ‫) ﻟﻠﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻤﻠﻔﺎت ﻋﻦ ﻃﺮﻳﻖ ال ‪ gui‬ﻓﻴﻤﻜﻨﻨﺎ ذﻟﻚ ﻋﻦ ﻃﺮﻳﻖ اﻟﻤﺤﺮر‪ editor‬اﻟﻤﺴﻤﻰ ‪(kedit‬‬ ‫واﻟﻤﻠﻔﺎت ﻓﻰ ﻟﻴﻨﻮآﺲ اﻣﺎ ان ﺗﻜﻮن ‪ text file‬اى ﻣﻠﻒ ﻳﻤﻜﻦ ﻗﺮأﺗﻪ وﺑﺎﻟﺘﺎﻟﻰ اﻟﺘﻌﺪﻳﻞ ﻓﻴﻪ ‪ ،‬وهﺬﻩ هﻰ‬ ‫ﻏﺎﻟﺒﻴﻪ اﻟﻤﻠﻔﺎت اﻟﺘﻰ ﻳﺘﻌﺎﻣﻞ ﻣﻌﻬﺎ اﻟﻤﺴﺘﺨﺪم ‪.

vi‬‬ ‫واذا ﺗﻢ ﻣﻘﺎرﻧﻪ هﺬا اﻟﻤﺤﺮر ‪ editor‬ﺑﻐﻴﺮﻩ ﻣﻦ اﻟﻤﺤﺮرات ‪ editors‬اﻟﺤﺪﻳﺜﻪ )ﻣﺜﻞ ﺗﻠﻚ اﻟﻤﻌﺘﻤﺪﻩ‬ ‫ﻋﻠﻰ ال‪ (gui‬واﻟﺘﻰ ﺗﻤﺘﺎز ‪-‬ﻃﺒﻌﺎ‪ -‬ﺑﺴﻬﻮﻟﻪ اﻻﺳﺘﺨﺪام ﻓﺎﻧﻨﺎ ﺳﻨﻼﺣﻆ اﻧﻪ ﺻﻌﺐ ﻓﻰ اﻟﺘﻌﻠﻴﻢ ‪ ،‬وﻟﻜﻦ آﻤﺎ‬ ‫اﺳﻠﻔﻨﺎ ﻓﻼ ﺑﺪ ﻣﻦ ﻣﻌﺮﻓﺘﻪ ‪ ،‬ﺛﻢ ﺑﻌﺪ ذﻟﻚ ﻓﻴﻤﻜﻨﻚ اﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻤﻠﻔﺎت اﺛﻨﺎء ﻋﻤﻠﻚ اﻟﻴﻮﻣﻰ ﺑﺎى ﻣﺤﺮر‬ ‫ﺗﺮﺗﺎح ﻓﻰ اﻟﻌﻤﻞ ﻣﻌﻪ‪. vi‬‬ .‬‬ ‫ﻣﻠﺤﻮﻇﻪ‬ ‫)ﺗﻜﻠﻤﻨﺎ ﺳﺎﺑﻘﺎ ﻋﻦ ال‪ child shell‬واﻧﻬﺎ ﺗﻮﺻﻒ ﺑﺬﻟﻚ ﻻﺳﺒﺎب ﺗﺘﻌﻠﻖ ﺑﺎﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻨﻈﺎم ‪ ،‬اﻣﺎ اﻧﺖ آﻤﺴﺘﺨﺪم ﻓﻠﻦ‬ ‫ﺗﻼﺣﻆ اﺑﺪا ان ال‪ shell‬اﻟﺘﻰ اﻣﺎﻣﻚ ﻗﺪ ﺗﻐﻴﺮت(‬ ‫هﺬا ﺑﺎﻟﻨﺴﺒﻪ ﻟﻔﺘﺢ اﻟﻤﻠﻒ ﻋﻦ ﻃﺮﻳﻖ ‪ ، vi‬اﻣﺎ اﻻن ﻓﺴﻨﻌﺮف آﻴﻒ ﻧﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻤﻠﻒ داﺧﻞ ‪.‬‬ ‫وﻟﻠﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻤﻠﻒ ﺑﻮاﺳﻄﻪ ‪ vi‬ﻣﺎ ﻋﻠﻴﻚ اﻻ آﺘﺎﺑﻪ اﻻﻣﺮ ‪ vi‬ﻋﻠﻰ ال ‪ shell‬وﺗﻜﺘﺐ ﺑﻌﺪ ذﻟﻚ اﻟﻤﻠﻒ‬ ‫اﻟﺬى ﺳﺘﺘﻌﺎﻣﻞ ﻣﻌﻪ ك ‪ argument‬ﻟﻬﺬا اﻻﻣﺮ ‪ ،‬ﻣﺜﻞ‬ ‫ﺑﻌﺪ ذﻟﻚ ﺳﺘﺠﺪ ان هﻨﺎك ‪ shell‬اﺧﺮى )‪ (child‬ﻗﺪ ﻓﺘﺤﺖ اﻣﺎﻣﻚ ‪-‬ﻣﻜﺎن اﻻﺳﺎﺳﻴﻪ‪ -‬وﺑﻬﺎ اﻟﻤﻠﻒ اﻟﺬى‬ ‫آﺘﺒﺖ اﺳﻤﻪ ﺳﺎﺑﻘﺎ‪.‬‬ ‫اﻟﺒﺪاﻳﻪ‬ ‫اﺳﻢ اﻟﻤﺤﺮر ‪ vi‬ﻗﺎدم ﻣﻦ ‪) Visual Interpreter‬اﻟﺒﻌﺾ ﻳﻘﻮل اﻧﻪ اﺧﺘﺼﺎر ‪.‫• اﻳﻀﺎ ﻓﻰ ﺣﺎﻻت اﻟﻄﻮارى ‪) emergency‬ﺣﺎﻟﻪ ﻋﺪم ﻗﻴﺎم اﻟﻨﻈﺎم ﺑﺎﻟﻌﻤﻞ( ﻓﻔﻰ هﺬﻩ اﻟﺤﺎﻟﻪ‬ ‫وﺑﻌﺪاﻟﺪﺧﻮل ﻟﻠﻨﻈﺎم ﻓﺎن اﻟﻤﺤﺮر ال ‪ deafult‬وﻗﺘﻬﺎ هﻮ ‪. (VIsual editor‬‬ ‫وﻋﻨﺪ اﻧﺸﺎء هﺬا ال ‪ editor‬آﺎن هﻨﺎك ﻣﺤﺮرﻳﻦ اﺧﺮﻳﻦ ‪ editors‬وﻟﻜﻨﻬﻢ آﺎﻧﻮا ﻳﺘﻌﺎﻣﻠﻮن ﻣﻊ اﻟﻤﻠﻒ‬ ‫ﺳﻄﺮ ﺑﺴﻄﺮ او ﻣﺎ ﻳﺴﻤﻰ ‪ ، line based‬وﻟﻜﻦ ﻣﻦ ﻣﻤﻴﺰات ‪ vi‬اﻧﻪ ﻳﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻤﻠﻒ ﺑﻨﻈﺎم ال‬ ‫‪ full screen‬اى اﻧﻚ ﺑﺎﻣﻜﺎﻧﻚ اﻟﺘﺤﺮك ﻓﻰ ﻃﻮل وﻋﺮض اﻟﺸﺎﺷﻪ اﻟﺘﻰ اﻣﺎﻣﻚ ‪.

command mode‬‬ ‫ﻣﻠﺤﻮﻇﻪ ‪ :‬ﺳﺎﻃﻠﻖ ﻋﻠﻰ ال ‪ mode‬اﺳﻢ ﻣﺮﺣﻠﻪ او ﺣﺎﻟﻪ ‪. vi‬‬ ‫وهﺬا اﻟﻤﺮﺣﻠﻪ ﺗﺴﻤﻰ ‪.‬‬ .‬‬ ‫* وﺳﻤﻰ هﺬا ال‪ mode‬ﺑﺎﻻﺳﻢ ‪ command mode‬ﻻﻧﻪ ﺑﺎﻟﻀﻐﻂ ﻋﻠﻰ اى ﺣﺮف ﻓﺎن ال ‪ vi‬ﻟﻦ‬ ‫ﻳﺘﻌﺎﻣﻞ ﻣﻌﻪ آﺤﺮف وﻣﻦ ﺛﻢ ﻳﻜﺘﺒﻪ داﺧﻞ اﻟﻤﻠﻒ ‪ ، edit‬ﺑﻞ ﺳﻴﻘﻮم ﺑﺎﻟﺘﻌﺎﻣﻞ ﻣﻌﻪ ﻋﻠﻰ اﻧﻪ اﻣﺮ ذو‬ ‫وﻇﻴﻔﻪ ﻣﺤﺪدﻩ ‪.‬‬ ‫ﺑﻤﻌﻨﻰ اﺧﺮ‪ ،‬هﺬا ال ‪ mode‬ﻻ ﻳﺴﻤﺢ ﻟﻚ ﻣﺒﺎﺷﺮﻩ ﺑﺎﻟﺘﺤﺮﻳﺮ‪ edit‬داﺧﻞ اﻟﻤﻠﻒ ‪ ،‬ﺑﻞ ان اﻟﺘﺤﺮﻳﺮ‬ ‫واﻟﺘﻌﺪﻳﻞ داﺧﻞ اﻟﻤﻠﻒ هﻰ ﻣﻦ وﻇﻴﻔﻪ اﻟﻤﺮﺣﻠﻪ اﻟﺜﺎﻧﻴﻪ ﻓﻰ اﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻤﺤﺮر واﻟﻤﺴﻤﺎﻩ ‪insert‬‬ ‫‪.‫اﻟﺤﺎﻟﻪ اﻻوﻟﻰ ‪. mode‬‬ ‫اﻟﺘﺤﺮك داﺧﻞ اﻟﻤﻠﻒ‬ ‫‪ -1‬هﻨﺎك ارﺑﻌﻪ ﻣﻔﺎﺗﻴﺢ ﻟﻼرﺑﻌﻪ اﺗﺠﺎهﺎت ‪ ،‬وهﺬﻩ اﻟﺤﺮوف هﻰ ‪hjkl‬‬ ‫ﻓﺎﻟﺤﺮف ‪ h‬ﻟﻠﺘﺤﺮك ﻧﺎﺣﻴﻪ اﻟﻴﺴﺎر‬ ‫واﻟﺤﺮف ‪ j‬ﻟﻠﺘﺤﺮك ﻻﺳﻔﻞ‬ ‫واﻟﺤﺮف ‪ k‬ﻟﻠﺘﺤﺮك ﻻﻋﻠﻰ‬ ‫واﻟﺤﺮف ‪ l‬ﻟﻠﺘﺤﺮك ﻟﻠﻴﻤﻴﻦ‬ ‫وهﺬﻩ اﻟﺤﺮوف ﻳﻤﻜﻦ ﺑﺴﻬﻮﻟﻪ اﺳﺘﺒﺪاﻟﻬﺎ ﺑﻤﻔﺎﺗﻴﺢ اﻻﺗﺠﺎهﺎت‬ ‫وﻟﻜﻦ اﻟﻌﻠﻪ ﻓﻰ اﺳﺘﺨﺪام اﻟﻤﻔﺎﺗﻴﺢ ‪ hjkl‬هﻰ اﻧﻪ ﻟﻴﺲ آﻞ اﻧﻮاع ال ‪ Unices‬ﺗﺪﻋﻢ ﻣﻔﺎﺗﻴﺢ اﻻﺗﺠﺎهﺎت‬ ‫هﺬﻩ ‪. command mode‬‬ ‫اﻻن وﺑﻌﺪ دﺧﻮﻟﻚ اﻟﻰ اﻟﻤﻠﻒ ﻓﺎﻧﺖ ﻓﻰ اول)ﻣﺮﺣﻠﻪ( ‪ mode‬ﺗﻘﺎﺑﻠﻬﺎ ﻓﻰ اﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻤﺤﺮر ‪.

‬‬ ‫وﻟﻠﺮﺟﻮع ﺛﺎﻧﻴﻪ اﻟﻰ اول اﻟﺴﻄﺮ اﺳﺘﺨﺪم اﻟﻌﻼﻣﻪ ^ )ﺑﺎﻟﻀﻐﻂ ﻋﻠﻰ ‪ (shift+6‬او ﺑﺎﻟﻀﻐﻂ ﻣﺒﺎﺷﺮﻩ ﻋﻠﻰ‬ ‫اﻟﻤﻔﺘﺎح)‪.‬‬ ‫ﻓﻌﻼﻣﻪ اﻟﺪوﻻر ‪) $‬ﺑﺎﻟﻀﻐﻂ ﻋﻠﻰ ‪ (shift+4‬ﺗﺬهﺐ ﺑﻚ اﻟﻰ ﻧﻬﺎﻳﻪ اﻟﺴﻄﺮ ‪.‬‬ ‫وﻳﺘﻢ ذﻟﻚ ﺑﺎﻟﻤﻔﺎﺗﻴﺢ ‪ $‬و ^‪.‬‬ ‫اﻣﺎ اﻟﻤﻔﺘﺎح ‪ e‬ﻓﻴﻘﻒ ﺑﻚ ﻋﻠﻰ اﺧﺮ ﺣﺮف ﻓﻰ اﻟﻜﻠﻤﻪ اﻟﻘﺎدﻣﻪ ‪. you.‬‬ ‫ﺳﺘﻼﺣﻆ ان ال ‪ cursor‬ﻋﻨﺪﻣﺎ ﻳﺘﺤﺮك آﻠﻤﻪ آﻠﻤﻪ ﻓﺎﻧﻪ ﻳﻘﻒ ﻋﻠﻰ اﻟﻌﻼﻣﺎت ﻣﺜﻞ ‪ : . backward‬‬ ‫‪ -4‬اﻟﺘﺤﺮك آﻠﻤﻪ آﻠﻤﻪ‬ ‫ﻳﺘﻢ ذﻟﻚ ﺑﺎﻟﻀﻐﻂ ﻋﻠﻰ اﻟﻤﻔﺘﺎح ‪ w‬او ‪e‬‬ ‫ﻓﺎﻟﻤﻔﺘﺎح ‪ w‬ﻳﻨﻘﻠﻚ اﻟﻰ اول ﺣﺮف ﻓﻰ اﻟﻜﻠﻤﻪ اﻟﻘﺎدﻣﻪ ‪. users‬‬ ‫ﺣﺎول ﺗﺠﺮﺑﻪ هﺬﻩ اﻟﻤﻼﺣﻈﻪ ‪.‬‬ ‫‪ -5‬اول اﻟﺼﻔﺤﻪ واﺧﺮهﺎ‬ ‫ﻳﻤﻜﻦ اﻟﺬهﺎب ﻣﺒﺎﺷﺮﻩ اﻟﻰ ﺑﺪاﻳﻪ اﻟﺼﻔﺤﻪ ﻋﻦ ﻃﺮﻳﻖ اﻟﻀﻐﻂ ﻋﻠﻰ ‪. zero (0‬‬ ‫‪ -3‬اﻟﺘﺤﺮك ﺻﻔﺤﻪ ﻻﻋﻠﻰ او ﻻﺳﻔﻞ‬ ‫ﺑﺎﻟﻤﻔﺎﺗﻴﺢ ‪ page up‬و ‪ page down‬ﻳﻤﻜﻨﻚ ﺗﺤﺮﻳﻚ اﻟﺼﻔﺤﻪ ﺑﺎآﻤﻠﻬﺎ اﻟﻰ اﻋﻠﻰ او اﻟﻰ اﺳﻔﻞ ‪،‬‬ ‫وﻟﻜﻦ هﻨﺎك اﻳﻀﺎ ﻣﻔﺎﺗﻴﺢ ﻓﻰ ال ‪ main keyboard‬ﺗﻘﻮم ﺑﻬﺬﻩ اﻟﻮﻇﻴﻔﻪ وهﻰ‬ ‫‪) ^f‬ﺑﺎﻟﻀﻐﻂ ﻋﻠﻰ ‪ (ctrl+f‬ﺗﺬهﺐ اﻟﻰ اﺳﻔﻞ اﻟﻤﻠﻒ ‪ forward‬ﺻﻔﺤﻪ ﺑﺼﻔﺤﻪ ‪.and.( ) .‬وﻳﻌﺘﺒﺮهﻢ آﻠﻤﺎت ﻣﺴﺘﻘﻠﻪ ‪،‬‬ ‫ﻧﻌﻢ هﺬﻩ ﺧﺎﺻﻴﻪ ﻓﻰ اﻟﺒﺮﻧﺎﻣﺞ ‪ ،‬ﻓﻬﻮ ﻳﻌﺘﺒﺮ ان اﻟﻤﺴﺎﻓﺎت هﻰ اﻟﺘﻰ ﺗﻔﺼﻞ ﺑﻴﻦ اﻟﻜﻠﻤﺎت ‪.‬‬ ‫‪) ^b‬ﺑﺎﻟﻀﻐﻂ ﻋﻠﻰ ‪ (ctrl+b‬ﺗﺮﺟﻊ اﻟﻰ اﻋﻠﻰ اﻟﺼﻔﺤﻪ ﺛﺎﻧﻴﻪ ‪.‫‪ -2‬ﻳﻤﻜﻨﻨﺎ اﻻن اﻟﺘﺤﺮك ﺑﻄﺮﻳﻘﻪ اﺧﺮى داﺧﻞ اﻟﻤﻠﻒ ‪. G‬‬ . gg‬‬ ‫وﻧﻔﺲ اﻟﻤﻔﺘﺎح ﻟﻠﺬهﺎب ﻣﺒﺎﺷﺮﻩ اﻟﻰ اﺳﻔﻞ اﻟﺼﻔﺤﻪ وﻟﻜﻦ ﺑﺎﺿﺎﻓﻪ اﻟﻀﻐﻂ ﻋﻠﻰ ‪ shift‬اى ‪.(zero) 0. capital‬ﻓﺘﺮاﻩ ﺳﻴﻘﻒ ﻋﻠﻰ اول ﺣﺮف ﻓﻰ هﺬﻩ ال ‪ bigword‬وهﻮ‬ ‫ﺣﺮف ‪ ، y‬وﻋﻨﺪ اﻟﻀﻐﻂ ‪ W‬ﺛﺎﻧﻴﻪ ﺳﻴﻘﻔﺰ ﻓﻮق آﻞ هﺬﻩ اﻟﻜﻠﻤﺎت وﻳﻘﻒ ﻋﻠﻰ اول اﻟﻜﻠﻤﻪ اﻟﺘﻰ ﺗﻠﻰ ‪.‬‬ ‫هﺬﻩ اﻟﻄﺮﻳﻘﻪ ﻣﻌﺘﻤﺪﻩ ﻋﻠﻰ اﻟﻘﻔﺰ ﻓﻮق اﻟﺤﺮوف وﻟﻴﺲ اﻟﺴﻴﺮ ﺣﺮف ﺣﺮف ‪.me-are:linux'users‬وﻟﺠﻌﻠﻪ ﻳﺘﻔﺎﻋﻞ ﻣﻌﻬﻢ هﻜﺬا ﺳﻨﺴﺘﺨﺪم‬ ‫ﻧﻔﺲ اﻟﻤﻔﺎﺗﻴﺢ اﻟﺴﺎﺑﻘﻪ ‪ W‬و ‪ E‬وﻟﻜﻦ ﺑﺼﻴﻐﻪ ال‪ .‬‬ ‫وﻣﻦ هﺬا اﻟﻤﻔﻬﻮم اﻳﻀﺎ ﻓﺎن ﺑﺮﻧﺎﻣﺞ ‪ vi‬ﺑﺎﻣﻜﺎﻧﻪ ﻓﻬﻢ اﻟﻜﻠﻤﺎت اﻟﻤﺘﺼﻠﻪ ﺑﺒﻌﻀﻬﺎ اﻟﺒﻌﺾ ﺑﻮاﺳﻄﻪ هﺬﻩ اﻟﻌﻼﻣﺎت ﻋﻠﻰ‬ ‫اﻧﻬﺎ آﻠﻤﻪ واﺣﺪﻩ آﺒﻴﺮﻩ ‪ bigword‬ﻣﺜﻞ ‪ .

yy‬‬ ‫ﻣﺜﺎل‬ ‫اﻣﺎﻣﻚ اﻻن ﺟﺰء ﻣﻦ ﻣﻠﻒ ‪ ، /etc/inittab‬وﻧﻼﺣﻆ ان ال ‪ cursor‬ﺑﺠﺎﻧﺐ آﻠﻤﻪ ‪. RUN‬‬ ‫آﻞ ﻣﺎ ﻋﻠﻴﻚ ﻋﻤﻠﻪ اﻻن هﻮ ان ﺗﻜﺘﺐ ‪) 7dd‬وﻻﺣﻆ ان ﻣﺎ ﺗﻜﺘﺒﻪ ﻟﻦ ﻳﻈﻬﺮﻋﻠﻰ اﻟﺸﺎﺷﻪ(‬ ‫ﻓﻤﺎ ﺳﻴﻔﻌﻠﻪ ﺑﺮﻧﺎﻣﺞ ‪ vi‬هﻮ ﻗﺺ ‪ cut‬اﻟﺴﺒﻊ اﺳﻄﺮ ) ﺑﺪاﻳﻪ ﻣﻦ اﻟﺴﻄﺮ اﻟﺬى ﻳﻘﻒ ﻋﻠﻴﻪ ال ‪( cursor‬‬ ‫اﻟﻰ اﻟﺬاآﺮﻩ ‪buffer‬‬ ‫ﺑﻌﺪ ذﻟﻚ ﻳﻤﻜﻨﻚ اﻟﺬهﺎب اﻟﻰ اى ﺟﺰء ﺑﺎﻟﻤﻠﻒ واﻟﻀﻐﻂ ﻋﻠﻰ اﻟﻤﻔﺘﺎح ‪ ، p‬ﺣﻴﻨﺌﺬ ﺳﻴﻘﻮم اﻟﺒﺮﻧﺎﻣﺞ‬ ‫ﺑﻮﺿﻌﻬﻢ ﺑﺎﻟﺴﻄﺮ اﻟﺬى ﻳﻠﻰ ال ‪.‫اﻟﻨﺴﺦ واﻟﻘﺺ واﻟﻠﺼﻖ ‪. 6‬‬ ‫وﻧﻔﺲ اﻟﺨﻄﻮات ﻓﻰ ﺣﺎﻟﻪ اﻟﻨﺴﺦ ‪. cursor‬‬ ‫اى اذا وﻗﻔﺖ ﻋﻠﻰ اﻟﺴﻄﺮ اﻟﺬى ﻳﺒﺪأ ﺑﺎﻟﺮﻗﻢ ‪ 6‬ﻓﻰ اﻟﻤﺜﺎل اﻟﺴﺎﺑﻖ وﺿﻐﻄﺖ ‪ p‬ﻓﺴﻴﺘﻢ ﻟﺼﻘﻬﻢ ﻓﻰ‬ ‫اﻟﺴﻄﺮ اﻟﺘﺎﻟﻰ ﻟﺴﻄﺮ اﻟﺮﻗﻢ ‪.‬وذﻟﻚ ﻓﻰ اﻟﻤﻜﺎن اﻟﺬى ﻳﻘﻒ ﺑﻪ ال‬ ‫‪.‬‬ . paste‬‬ ‫وﺑﺎﻟﻀﻐﻂ ﻋﻠﻰ ‪ p‬ﻳﺘﻢ ﻟﺼﻖ اﻟﺴﻄﺮ اﻟﺬى ﺗﻢ ﻗﺼﻪ او ﻧﺴﺨﻪ ‪ . buffer‬‬ ‫اﻳﻀﺎ ﻋﻨﺪ اﻟﻀﻐﻂ ‪ yy‬ﻓﻴﻘﻮم اﻟﺒﺮﻧﺎﻣﺞ ﺑﻨﺴﺦ اﻟﺴﻄﺮ اﻟﺤﺎﻟﻰ ﻟﺤﻴﻦ ﺗﺤﺪﻳﺪ اﻳﻦ ﺳﻴﺘﻢ ﻟﺼﻘﻪ ‪. cursor‬‬ ‫هﺬا ﺑﺎﻟﻨﺴﺒﻪ ﻟﻨﺴﺦ او ﻗﺺ ﺳﻄﺮ واﺣﺪ ‪ ،‬اﻣﺎ ﺑﺎﻟﻨﺴﺒﻪ ﻓﻰ ﺣﺎﻟﻪ وﺟﻮد ﻋﺪﻩ اﺳﻄﺮ ﻓﺎﻻﻣﺮ ﺑﺴﻴﻂ اﻳﻀﺎ ‪،‬‬ ‫وﻣﺎ ﻋﻠﻴﻚ اﻻ آﺘﺎﺑﻪ ﻋﺪد اﻻﺳﻄﺮ اﻟﺘﻰ ﺗﺮﻳﺪ ﻧﺴﺨﻬﺎ اوﺻﻬﺎ ﻗﺒﻞ ‪ dd‬او ‪.‬‬ ‫ﻓﻌﻨﺪ اﻟﻀﻐﻂ ‪ dd‬ﻳﻘﻮم اﻟﺒﺮﻧﺎﻣﺞ ﺑﻘﺺ اﻟﺴﻄﺮ اﻟﺤﺎﻟﻰ واﻻﺣﺘﻔﺎظ ﺑﻪ ﻓﻰ اﻟﺬاآﺮﻩ اﻟﺨﺎﺻﻪ اﻟﻤﺴﻤﺎﻩ‬ ‫‪.‬‬ ‫ﻳﻤﻜﻨﻚ اﻳﻀﺎ ﻓﻰ ال ‪) cmd mode‬وهﻮ ال ‪ mode‬او اﻟﻤﺮﺣﻠﻪ اﻟﺘﻰ ﻻ ﻳﻤﻜﻨﻚ ﻓﻴﻬﺎ ﺗﺤﺮﻳﺮ‪ edit‬اﻟﻤﻠﻒ( ان‬ ‫ﺗﻘﻮم ﺑﻨﺴﺦ ‪ copy‬ﺳﻄﺮاو اﺳﻄﺮ‪ ،‬آﺬﻟﻚ ﻳﻤﻜﻨﻚ ﻗﺼﻬﻢ ‪ cut‬واﻋﺎدﻩ ﻟﺼﻘﻬﻢ ‪ paste‬ﻓﻰ اﻣﺎآﻦ‬ ‫اﺧﺮى ﺑﻨﻔﺲ اﻟﻤﻠﻒ ‪.

‬‬ ‫ﺑﻌﺪ ان ﺗﻌﺮﺿﻨﺎ ﻻﻟﻐﺎء او ﺣﺬف ﺳﻄﺮ ﻋﻦ ﻃﺮﻳﻖ ‪ dd‬ﻓﺴﻨﺘﻌﺮض اﻻن ﻟﺤﺬف آﻠﻤﻪ او ﺣﺮف ‪. R‬ﻓﺒﺬﻟﻚ ﻳﺘﻢ اﻻﺑﺪال ﻟﻜﻞ اﻟﻜﻠﻤﺎت ‪. keyboard‬‬ .‬‬ ‫وﻟﻬﺬا ﻓﻌﻨﺪ ارادﻩ اﻟﻐﺎء ﺣﺮف ﻳﻘﻊ ﺗﺤﺖ ال ‪) cursor‬اى ان ال ‪ cursor‬ﻳﻘﻒ ﻋﻠﻴﻪ( ﻣﺎ ﻋﻠﻴﻚ اﻻ اﻟﻀﻐﻂ‬ ‫ﻋﻠﻰ اﻟﻤﻔﺘﺎح ‪.‬‬ ‫اﺑﺪال اﻻﺣﺮف ‪. del‬‬ ‫وﻟﻜﻦ آﻤﺎ اﺳﻠﻔﻨﺎ ﻓﺎن ال ‪ vi‬ﻳﻌﻤﻞ داﺋﻤﺎ ﺑﺎﻟﻠﻮﺣﻪ اﻻم ‪ main keyboard‬وﻳﻘﻮم ﺑﺎداء اﻟﻮﻇﺎﺋﻒ اﻟﻌﺪﻩ‬ ‫ﻋﻦ ﻃﺮﻳﻖ ﻣﻔﺎﺗﻴﺢ اﻟﺤﺮوف ‪.‬‬ ‫ﻳﻼﺣﻆ اﻧﻪ ﺑﻌﺪ اﻟﻀﻐﻂ ‪ R‬ﻣﺎ ﻋﻠﻴﻚ اﻻ آﺘﺎﺑﻪ ﻣﺎ ﺗﺮﻳﺪ وﺳﺘﺠﺪ اﻣﺎﻣﻚ ﻋﻠﻰ اﻟﺸﺎﺷﻪ ان اﻟﺤﺮف اﻟﺬى‬ ‫ﻳﻘﻒ ﻋﻠﻴﻪ ال ‪ cursor‬ﻳﺘﻐﻴﺮ ﺑﻬﺬا اﻟﺬى ﺗﻜﺘﺒﻪ ﻋﻠﻰ ال ‪. x‬‬ ‫وﻻﻟﻐﺎء ﺣﺮف ﻳﻘﻊ ﻗﺒﻞ ال ‪) cursor‬اى آﺎﻧﻪ ﻳﺮﺟﻊ ﻟﻠﺨﻠﻒ( ﻓﺒﻨﻔﺲ اﻟﻤﻔﺘﺎح وﻟﻜﻦ ‪ capital‬اى ‪. X‬‬ ‫هﺬا ﺑﺎﻟﻨﺴﺒﻪ ﻟﻤﺎ ﻳﺘﻌﻠﻖ ﺑﺎﻻﺣﺮف اﻣﺎ ﺑﺎﻟﻨﺴﺒﻪ ﻟﻠﻜﻠﻤﺎت‬ ‫ﻓﻴﻤﻜﻦ اﻟﻐﺎء اى آﻠﻤﻪ ﻋﻦ ﻃﺮﻳﻖ ‪dw‬‬ ‫ﻓﺎن اردت اﻟﻐﺎء اآﺜﺮ ﻣﻦ آﻠﻤﻪ ‪ ،‬ﻓﻘﻂ اآﺘﺐ ﻋﺪد اﻟﻜﻠﻤﺎت اﻟﻤﺮاد اﻟﻐﺎﺋﻬﻢ ﻣﺜﻞ ‪ ، 3dw‬ﻻﻟﻐﺎء ﺛﻼث‬ ‫آﻠﻤﺎت ‪.‬‬ ‫ﻓﺒﺪاﻳﻪ ﻳﻤﻜﻦ اﻟﻐﺎء اى ﺣﺮف ﻋﻦ ﻃﺮﻳﻖ ‪.‫اﻟﻐﺎء آﻠﻤﻪ او ﺣﺮف ‪.‬‬ ‫ﻳﺘﻢ اﺑﺪال اﻟﺤﺮوف ﺑﺎﻟﻀﻐﻂ ﻋﻠﻰ اﻟﻤﻔﺘﺎح ‪ r‬واﻟﺬى ﻳﻘﻮم ﺑﺎﺑﺪال ‪ replace‬ﺣﺮف واﺣﺪ ﻓﻘﻂ‬ ‫اﻣﺎ اذا اردت اﺑﺪال اﻟﺴﻄﺮ آﻠﻪ ﻣﺜﻼ ‪ ،‬ﻓﻠﺘﻜﺘﺐ ‪ .

‬‬ ‫اﻣﺎ اذا آﺘﺒﺖ ‪ U‬اى ﻣﺜﻞ اﻻوﻟﻰ وﻟﻜﻨﻬﺎ ‪ capital‬ﻓﺎﻧﻬﺎ ﺗﻘﻮم ﺑﻌﺪم ﺗﻄﺒﻴﻖ آﻞ اﻟﺨﻄﻮات اﻟﺴﺎﺑﻘﻪ ‪.‬‬ ‫اﻣﺎ ﻟﻌﻤﻞ ‪ repeat‬ﻻﺧﺮ ﺧﻄﻮﻩ ﻗﻤﺖ ﺑﻬﺎ ‪ ،‬ﻓﻴﺘﻢ ذﻟﻚ ﻋﻦ ﻃﺮﻳﻖ ال > ‪.‫‪. dot < .‬‬ . Undo and Repeat‬‬ ‫اﻟﻤﻘﺼﻮد ب ‪ undo‬هﻮ ﻋﺪم ﻓﻌﻞ اﺧﺮ ﺧﻄﻮﻩ واﻟﻐﺎﺋﻬﺎ‬ ‫واﻟﻤﻘﺼﻮد ب ‪ repeat‬اى ﺗﻜﺮار اﺧﺮ ﺧﻄﻮﻩ‬ ‫وﻳﻤﻜﻦ ﺗﻔﻌﻴﻞ ال ‪ undo‬ﻋﻦ ﻃﺮﻳﻖ آﺘﺎﺑﻪ اﻟﺤﺮف ‪ ، u‬ﺣﻴﺚ ﻳﻘﻮم ﺑﻌﺪم ﺗﻄﺒﻴﻖ اﺧﺮ ﺧﻄﻮﻩ ‪.

insert mode‬‬ ‫هﺬﻩ اﻟﻤﺮﺣﻠﻪ ‪ mode‬هﻰ اﻟﺤﺎﻟﻪ اﻟﺜﺎﻧﻴﻪ ‪ ،‬وهﻰ اﻟﺘﻰ ﻳﻤﻜﻨﻚ ﻓﻴﻬﺎ ان ﺗﺤﺮر ﻓﻰ اﻟﻤﻠﻒ )‪. d‬‬ ‫اﻣﺎ ﻓﻰ ﺣﺎل اﻟﻀﻐﻂ ﻋﻠﻰ ﻧﻔﺲ اﻟﺤﺮف وﻟﻜﻦ ﺑﺼﻴﻐﻪ ‪ capital‬ﻓﺤﻴﻨﺌﺬ ﺳﺘﺒﺪأ اﻟﻜﺘﺎﺑﻪ ﻓﻰ ﺑﺪاﻳﻪ اﻟﺴﻄﺮ‬ ‫ﺑﻌﺪ ﻣﻌﺮﻓﺘﻨﺎ ﺑﺎﻟﺤﺮف ‪ i‬ﻓﻰ ﺣﺎﻟﺘﻴﻪ ال ‪ small‬وال ‪. (editing‬‬ ‫* ﻳﻤﻜﻦ اﻳﻀﺎ اﺳﺘﺨﺪام ‪ i‬وﻟﻜﻦ ‪ .insert --------‬واﻟﺬى ﻳﻨﺒﻬﻚ اﻟﻰ اﻧﻚ ﻓﻰ‬ ‫ﻣﺮﺣﻠﻪ اﻟﺘﺤﺮﻳﺮ داﺧﻞ اﻟﻤﻠﻒ ‪.‬‬ ‫اذا ﻓﻜﻞ ﻣﺎ ﻳﻔﻌﻠﻪ اﻟﺒﺮﻧﺎﻣﺞ ‪ vi‬هﻮ ارﺷﺎدك اﻟﻰ آﻴﻔﻴﻪ اﻟﺪﺧﻮل ﻟﻬﺬﻩ اﻟﻤﺮﺣﻠﻪ )‪ ، (mode‬واﻳﻀﺎ آﻴﻔﻴﻪ‬ ‫اﻟﺨﺮوج ﻣﻨﻬﺎ ‪ ،‬ﻣﺨﻮﻻ ﻟﻚ ﻣﺎ ﻳﺤﺪث ﺑﻴﻦ هﺎﺗﻴﻦ اﻟﻌﻤﻠﻴﺘﻴﻦ ‪. cmd mode‬‬ ‫وﻳﻤﻜﻦ اﻟﺘﺤﻮل ﻣﻦ اﻟﻤﺮﺣﻠﻪ اﻻوﻟﻰ اﻟﻰ ال ‪ insert mode‬ﺑﻌﺪﻩ ﻃﺮق ‪ ،‬اﺳﻬﻠﻬﻢ ان ﺗﻀﻐﻂ ﻋﻠﻰ‬ ‫اﻟﻤﻔﺘﺎح ‪ i‬اﻟﺬى ﻳﻌﻨﻰ ‪.‬‬ . insert‬‬ ‫ﺳﺘﻼﺣﻆ اﻧﻪ ﺑﺎﺳﻔﻞ اﻟﺼﻔﺤﻪ ﻗﺪ ﻇﻬﺮ ﺳﻄﺮ ‪ --------. capital‬‬ ‫ﻧﺘﻌﺮف اﻻن ﻋﻠﻰ اﻟﺤﺮف ‪ a‬ﻓﻰ ﺣﺎﻟﺘﻴﻪ اﻳﻀﺎ ال ‪ small‬وال ‪.‬‬ ‫وﻟﻌﻞ اﻟﺴﺒﺐ ﻓﻰ ان اﻟﺒﺮﻧﺎﻣﺞ ﻳﻨﺒﻬﻚ ﺑﺎﻟﻜﻠﻤﻪ ‪ insert‬اﻧﻚ ﻓﻰ ﻣﺮﺣﻠﻪ اﻟﺘﺤﺮﻳﺮ ‪ ،‬هﻮ ﺗﻌﺪد اﻟﺤﺮوف وﺑﺎﻟﺘﺎﻟﻰ اﻟﻄﺮق‬ ‫اﻟﺘﻰ ﺗﺤﻮﻟﻚ اﻟﻰ هﺬﻩ اﻟﻤﺮﺣﻠﻪ ‪ . capital‬واﻟﺘﻰ ﺑﺪورهﺎ ﺳﺘﺤﻮﻟﻚ اﻟﻰ ال ‪ ، insert mode‬ﻟﻜﻦ‬ ‫اﻟﻔﺮق ﺑﻴﻦ اﻻﺛﻨﻴﻦ ﺑﺴﻴﻂ وهﻮ ‪.‫اﻟﺤﺎﻟﻪ اﻟﺜﺎﻧﻴﻪ ‪. capital‬‬ ‫ﻓﻌﻨﺪ اﻟﻀﻐﻂ ﻋﻠﻰ اﻟﺤﺮف ‪ a‬ﺳﺘﺒﺪا ﻋﻤﻠﻴﻪ اﻟﺘﺤﺮﻳﺮ وﻟﻜﻦ ﺑﻌﺪ ال‪ cursor‬اى ‪append‬‬ ‫اﻣﺎ ﺑﺎﻟﻀﻐﻂ ﻋﻠﻴﻪ ‪ A‬ﻓﺴﺘﺒﺪأ ﺑﺎﻟﻜﺘﺎﺑﻪ ﻓﻰ ﻧﻬﺎﻳﻪ اﻟﺴﻄﺮ ‪.‬‬ ‫آﻴﻒ ﺗﺪﺧﻞ اﻟﻰ ﺣﺎﻟﻪ اﻟﺘﺤﺮﻳﺮ ‪insert mode‬‬ ‫ﻻ ﺑﺪ ﻟﻜﻰ ﺗﺪﺧﻞ هﺬﻩ اﻟﺤﺎﻟﻪ ‪ mode‬ان ﺗﻤﺮ ﺑﺎﻟﻤﺮﺣﻠﻪ اﻻوﻟﻰ ‪. (edit‬‬ ‫وهﺬﻩ اﻟﻤﺮﺣﻠﻪ ﻻ ﺗﺤﻮى اواﻣﺮ آﺜﻴﺮﻩ ‪ ،‬ذﻟﻚ ﻻﻧﻬﺎ ﺑﺒﺴﺎﻃﻪ ﻣﺮﺣﻠﻪ اﻟﺘﻌﺪﻳﻞ داﺧﻞ اﻟﻤﻠﻒ ‪ ،‬اى ان ﻣﻌﻈﻢ‬ ‫ﻣﺎ ﻳُﻔﻌﻞ ﻓﻰ هﺬﻩ اﻟﻤﺮﺣﻠﻪ هﻮ ‪ ،‬ادﺧﺎل ﺑﻴﺎﻧﺎت )‪ (data‬او اﻟﺘﻌﺪﻳﻞ ﻓﻰ اﻟﺒﻴﺎﻧﺎت اﻟﻤﻮﺟﻮدﻩ ‪.‬‬ ‫ﺑﻌﺪ هﺬﻩ اﻟﺨﻄﻮﻩ ‪ ،‬ﻓﺎن اﻟﻤﻔﺎﺗﻴﺢ آﻠﻬﺎ ﺳﺘﻘﻮم ﺑﻮﻇﻴﻔﺘﻬﺎ اﻟﺘﻘﻠﻴﺪﻳﻪ ‪ ،‬ﻓﺎن ﺿﻐﻄﺖ ‪ h‬ﻓﺴﺘﻜﺘﺐ ‪ h‬وﻟﻦ ﺗﺠﻌﻠﻚ ﺗﺘﺤﺮك ﻳﺴﺎرا‪.‬‬ ‫اﻟﻀﻐﻂ ﻋﻠﻰ ‪ small i‬ﻳﺠﻌﻠﻚ ﺗﺤﺮر ‪ edit‬ﻗﺒﻞ ال ‪ ، cursor‬ﻓﻜﻠﻤﻪ ‪ word‬ان آﺎﻧﺖ ﻣﻜﺘﻮﺑﻪ ﻓﻰ‬ ‫اﻟﻤﻠﻒ وال ‪ cursor‬ﺗﺤﺖ اﻟﺤﺮف ‪ ، d‬ﻓﺤﻴﻨﺌﺬ ﻋﻨﺪ اﻟﻀﻐﻂ ‪ i‬ﺳﺘﺒﺪأ ﺑﺎﻟﻜﺘﺎﺑﻪ ﺑﻌﺪ اﻟﺤﺮف ‪ r‬وﻗﺒﻞ‬ ‫اﻟﺤﺮف ‪.‬ﻟﻜﻰ ﻻ ﺗﻌﺘﻘﺪ ان ﺣﺮف ‪ i‬هﻮ ﻓﻘﻂ اﻟﻤﺴﺌﻮل ﻋﻦ هﺬا‪ ،‬ﻓﺎن ﺿﻐﻄﺖ ﻋﻠﻰ ﺣﺮف ﻣﻦ هﺬﻩ‬ ‫اﻟﺤﺮوف ﺑﻄﺮﻳﻖ اﻟﺨﻄﺄ ‪ ،‬ﻧﺒﻬﻚ اﻟﺒﺮﻧﺎﻣﺞ اﻟﻰ اﻧﻚ ﻓﻰ ﻣﺮﺣﻠﻪ اﻟﺘﺤﺮﻳﺮ )‪.

‫اذا اﻟﺤﺮف ‪ i‬ﻳﻜﺘﺐ ﻗﺒﻞ ال ‪cursor‬‬ ‫واﻟﺤﺮف ‪ a‬ﺑﻌﺪ ال ‪cursor‬‬ ‫اﻣﺎ اﻟﺤﺮف ‪ I‬ﻓﻴﺠﻌﻠﻚ ﺗﺒﺪأ اﻟﻜﺘﺎﺑﻪ ﻓﻰ ﺑﺪاﻳﻪ اﻟﺴﻄﺮ‬ ‫واﻟﺤﺮف ‪ A‬ﻓﻰ ﻧﻬﺎﻳﻪ اﻟﺴﻄﺮ‬ ‫وهﻨﺎك اﻳﻀﺎ اﻟﻤﺰﻳﺪ ﻣﻦ اﻟﺤﺎﻻت ﻣﺜﻞ‬ ‫ﺣﺮف ‪ o‬ﻟﺒﺪاﻳﻪ ﺳﻄﺮ ﺟﺪﻳﺪ ﻗﺒﻞ ال ‪cursor‬‬ ‫وﻧﻔﺲ اﻟﺤﺮف ‪ O‬اى ‪ capital‬ﻟﺒﺪاﻳﻪ ﺳﻄﺮ ﺟﺪﻳﺪ ﺑﻌﺪ ال ‪cursor‬‬ ‫واﻟﺤﺮف ‪ s‬ﻻﺑﺪال اﻟﺤﺮف اﻟﺤﺎﻟﻰ‬ ‫اﻣﺎ اﻟﺤﺮف ‪ S‬ﻓﻼﺑﺪال اﻟﺴﻄﺮ اﻟﺤﺎﻟﻰ آﻠﻪ‬ ‫اﻻن ﺗﺴﺘﻄﻴﻊ ان ﺗﻘﻮم ﺑﺎﻟﻤﻬﺎم واﻟﺘﻌﺪﻳﻼت اﻟﺘﻰ ﺗﺮﻳﺪهﺎ ﻓﻰ اﻟﻤﻠﻒ وﺑﻌﺪ ذﻟﻚ ﺳﻴﺎﺗﻰ دور اﻟﺨﺮوج ﻣﻦ‬ ‫ﺣﺎﻟﻪ اﻟﺘﺤﺮﻳﺮ هﺬﻩ )‪. (insert mode‬‬ ‫اﻟﺨﺮوج ﻣﻦ ال ‪.insert ---‬ﻣﻦ‬ ‫اﺳﻔﻞ اﻟﺸﺎﺷﻪ(‬ ‫اﻻن وﻗﺪ رﺟﻌﺖ اﻟﻰ اﻟﺤﺎﻟﻪ اﻻوﻟﻰ ‪ cmd mode‬ﻳﻤﻜﻨﻚ ان ﺗﺤﻔﻆ ﻣﺎ آﺘﺒﺘﻪ وﺗﺨﺮج ﻣﻦ اﻟﺒﺮﻧﺎﻣﺞ ‪. insert mode‬‬ ‫ﻳﻘﻮم ﺑﻬﺬﻩ اﻟﻮﻇﻴﻔﻪ اﻟﻤﻔﺘﺎح ‪. ex mode‬‬ .‬‬ ‫وهﺬﻩ هﻰ وﻇﻴﻔﻪ اﻟﺤﺎﻟﻪ اﻟﺜﺎﻟﺜﻪ ال ‪. Esc‬‬ ‫ﻓﺒﻌﺪ اﻻﻧﺘﻬﺎء ﻣﻦ اﻟﺘﺤﺮﻳﺮ )‪ (editing‬وﺗﺮﻳﺪ اﻟﺨﺮوج ﻣﻦ ال ‪ insert mode‬واﻟﻌﻮدﻩ ﺛﺎﻧﻴﻪ اﻟﻰ‬ ‫‪ ، cmd mode‬ﻣﺎ ﻋﻠﻴﻚ اﻻ اﻟﻀﻐﻂ ﻋﻠﻰ هﺬا اﻟﻤﻔﺘﺎح )وﺳﺘﻼﺣﻆ ﺑﺎﻟﺘﺎآﻴﺪ اﺧﺘﻔﺎء آﻠﻤﻪ ‪ --.

‬‬ ‫وهﺬﻩ اﻻﻧﻮاع ﻣﻦ اﻟﻤﺤﺮرﻳﻦ ﺗﻢ دﻣﺠﻬﻢ ﻓﻰ اﻟﻤﺤﺮر ‪. execute mode‬‬ ‫ذآﺮﻧﺎ ﻓﻰ ﻣﻘﺪﻣﻪ هﺬا اﻟﻔﺼﻞ ان اﻟﻤﺤﺮر ‪ vi‬هﻮ اﻻول واﻻﻗﺪم ﻓﻰ ﻋﺎﻟﻢ ال ‪ .‬‬ .‬‬ ‫وﻗﺒﻞ اﻟﺤﺪﻳﺚ ﻋﻦ هﺬا ال ‪ mode‬ﻳﺠﺐ ان ﻧﻠﻔﺖ اﻟﻨﻈﺮ اﻟﻰ‬ ‫‪ -1‬ﺑﺎﻟﺨﺮوج ﻣﻦ ال ‪) insert mod‬اﻟﺤﺎﻟﻪ اﻟﺜﺎﻧﻴﻪ( ﻓﺎﻧﻨﺎ رﺟﻌﻨﺎ ﺗﻠﻘﺎﺋﻴﺎ اﻟﻰ اﻟﺤﺎﻟﻪ اﻻوﻟﻰ ‪cmd‬‬ ‫‪ . mode‬وﻟﻢ ﻧﺬهﺐ اﻟﻰ اﻟﺤﺎﻟﻪ اﻟﺜﺎﻟﺜﻪ ‪. (line based‬‬ ‫ﻣﻼﺣﻈﻪ ‪ :‬ﻣﻌﻨﻰ آﻮﻧﻪ اﻻول ‪ ،‬اى اول ﻣﺤﺮر ﻳﻤﻜﻦ اﻻﻋﺘﻤﺎد ﻋﻠﻴﻪ وﺣﺪﻩ ﺑﺴﺒﺐ ﻣﻤﻴﺰاﺗﻪ ‪. vi‬‬ ‫وﻻﻧﻬﻢ آﻤﺎ اﺳﻠﻔﻨﺎ ﻣﻌﺘﻤﺪﻳﻦ ﻋﻠﻰ اﻟﺴﻄﺮ اﻟﻮاﺣﺪ ‪ ،‬ﻓﺎﻧﻨﺎ ﻧﻘﻮم ﻣﻦ ﺧﻼﻟﻬﻢ ﺑﺎداء اﻋﻤﺎل ﻻ ﺗﺘﻄﻠﺐ ﻣﻨﻬﻢ‬ ‫اﻣﻜﺎﻧﻴﺎت ﻋﺎﻟﻴﻪ ‪ ،‬ﻣﺜﻞ اﻟﺤﻔﻆ )‪ (save‬ﻟﻠﺒﻴﺎﻧﺎت اﻟﺘﻰ آﺘﺒﺖ واﻟﺨﺮوج ﻣﻦ اﻟﺒﺮﻧﺎﻣﺞ ‪ quit‬وﻧﺤﻮ ذﻟﻚ ‪. ex mode‬‬ ‫* ال ‪ ex mode‬ﺗﻌﺪ اﺧﺘﺼﺎر ل ‪.‬‬ ‫ﻣﻼﺣﻈﻪ ‪ ،‬ﻳﻤﻜﻦ اﻟﺘﻌﺮف ﻋﻠﻰ اواﻣﺮ اﻟﺤﺎﻟﻪ اﻟﺜﺎﻟﺜﻪ هﺬﻩ ﻋﻦ ﻃﺮﻳﻖ ادﺧﺎل اى ﺣﺮف اﻟﻰ اﻟﺒﺮﻧﺎﻣﺞ ﺑﻌﺪ آﺘﺎﺑﻪ ال‬ ‫‪ colon‬ﺛﻢ اﻟﻀﻐﻂ ﻋﻠﻰ اﻟﻤﻔﺘﺎح ‪ ، tab‬ﺣﻴﻨﻬﺎ ﺳﻴﻘﻮم اﻟﺒﺮﻧﺎﻣﺞ ﺑﻌﺮض اﻻواﻣﺮ اﻟﺘﻰ ﺗﺒﺪأ ﺑﻬﺬا اﻟﺤﺮف ‪.‬‬ ‫‪ -2‬هﺬﻩ اﻟﺤﺎﻟﻪ وان آﺎﻧﺖ اﻟﺜﺎﻟﺜﻪ اﻻ اﻧﻬﺎ ُﺗﺴﺘﺪﻋﻰ ﻣﻦ ﺧﻼل اﻟﺤﺎﻟﻪ اﻟﺜﺎﻧﻴﻪ واﻻوﻟﻰ اﻳﻀﺎ ‪.‫اﻟﺤﺎﻟﻪ اﻟﺜﺎﻟﺜﻪ ‪.‬‬ ‫اﺳﺘﺪﻋﺎء اﻟﺤﺎﻟﻪ اﻟﺜﺎﻟﺜﻪ ‪ex mode‬‬ ‫ﻳﺘﻢ اﺳﺘﺪﻋﺎؤهﺎ او ﺑﻤﻌﻨﻰ اﺧﺮ اﻟﺪﺧﻮل اﻟﻴﻬﺎ ﻋﻦ ﻃﺮﻳﻖ اﻣﺮ ﺑﺴﻴﻂ وهﻮ‬ ‫آﺘﺎﺑﻪ > ‪. Unix‬وذآﺮﻧﺎ اﻳﻀﺎ اﻧﻪ‬ ‫آﺎن هﻨﺎك ﻋﺪﻩ ﻣﺤﺮرﻳﻦ )‪ (editors‬وﻟﻜﻨﻬﻢ ﻣﻌﺘﻤﺪﻳﻦ ﻋﻠﻰ اﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻻﺳﻄﺮ )‪. colon < :‬‬ ‫ﻓﺒﻌﺪ آﺘﺎﺑﻪ هﺬا ال ‪ colon‬ﺳﺘﻼﺣﻆ اﻧﻪ )ال ‪ (colon‬ﻗﺪ ﻇﻬﺮ ﺑﺎﺳﻔﻞ اﻟﺼﻔﺤﻪ ‪ ،‬ﻓﻴﻤﻜﻨﻚ ﺑﻌﺪ ذﻟﻚ ان‬ ‫ﺗﻜﺘﺐ ﻟﻪ اﻻﻣﺮ اﻟﺬى ﺗﺮﻳﺪ ﻣﻨﻪ ان ﻳﻨﻔﺬﻩ ‪.‬‬ ‫وﻏﺎﻟﺒﻴﻪ اﻻﺳﺘﺨﺪام ﻟﻬﺬﻩ اﻟﺤﺎﻟﻪ هﻰ اﻻواﻣﺮ اﻟﺨﺎﺻﻪ ﺑﺤﻔﻆ ﻣﺎ ﺗﻢ آﺘﺎﺑﺘﻪ او ﻟﻠﺨﺮوج ﻣﻦ اﻟﺒﺮﻧﺎﻣﺞ ‪. vi‬‬ ‫)اذ اﻧﻪ ﻳﻌﺪ اﻟﺤﺎﻟﻪ اﻟﻮﺣﻴﺪﻩ اﻟﻤﺘﺎﺣﻪ ﻟﻠﺨﺮوج ﺑﻄﺮﻳﻘﻪ ﺻﺤﻴﺤﻪ ﻣﻦ اﻟﺒﺮﻧﺎﻣﺞ( ‪.

(save‬اﻳﻀﺎ ﻓﻰ اوﻗﺎت‬ ‫اﺧﺮى ﻗﺪ ﻻ ﺗﺴﺘﻄﻴﻊ اﻟﺨﺮوج ﻣﻦ اﻟﺒﺮﻧﺎﻣﺞ ﻣﻊ اﻧﻚ ﻟﻢ ﺗﺎﻣﺮﻩ ﺑﺎن ﻳﺤﻔﻆ )‪ (save‬ﻣﺎ آﺘﺒﺘﻪ‬ ‫ﻟﺴﺒﺐ وﺟﻴﻪ ﻣﻦ وﺟﻬﻪ ﻧﻈﺮﻩ‪ -‬ﻳﺘﻤﺜﻞ ﻓﻰ اﻧﻪ اﺣﺲ ﺑﻮﺟﻮد ﺗﻐﻴﻴﺮ ﻓﻰ ﺷﻜﻞ اﻟﻤﻠﻒ ‪ ،‬ﻣﻊ اﻧﻚ ﻟﻢ ﺗﺤﻔﻆ هﺬا اﻟﺘﻐﻴﻴﺮ ﺑﻞ‬‫رﺟﻌﺖ ﻓﻴﻪ وﺑﺎﻟﺘﺎﻟﻰ رﺟﻊ اﻟﻤﻠﻒ اﻟﻰ ﺷﻜﻠﻪ ﺣﻴﻦ ﺗﻢ ﻓﺘﺤﻪ ‪ ،‬وﻟﻜﻦ ﻳﻈﻞ اﺣﺴﺎس اﻟﺒﺮﻧﺎﻣﺞ اﻧﻪ ﻗﺪ ﺣﺪث ﺗﻐﻴﻴﺮ‪. enter‬‬ ‫وﻓﻰ ﺑﻌﺾ اﻟﺤﺎﻻت ﻻ ﻳﺴﻤﺢ ﻟﻚ اﻟﺒﺮﻧﺎﻣﺞ ‪-‬ﻻﺳﺒﺎب‪ -‬ان ﺗﺤﻔﻆ ﻣﺎ آﺘﺒﺘﻪ )‪ . vi‬‬ ‫ﻟﻜﻰ ﺗﺴﺘﻄﻴﻊ ﺣﻔﻆ ﻣﺎ ﺗﻢ ﺗﻌﺪﻳﻠﻪ ﻓﻰ اﻟﻤﻠﻒ ﺳﺘﺴﺘﺨﺪم اﻟﺤﺮف ‪ w‬دﻻﻟﻪ ﻋﻠﻰ ‪ write‬اى ﺗﺨﺒﺮ اﻟﺒﺮﻧﺎﻣﺞ‬ ‫ان ﻳﻜﺘﺐ هﺬﻩ اﻟﺒﻴﺎﻧﺎت ‪.‬‬ ‫وﺳﺘﻼﺣﻆ ان اﻟﺤﺮف ‪ w‬ﺳﻴﻜﺘﺐ ﻓﻰ اﺳﻔﻞ اﻟﺸﺎﺷﻪ ﺑﺠﺎﻧﺐ ال‪ colon‬ﻓﻴﻜﻮن ﺷﻜﻠﻪ ‪:w‬‬ ‫اﻣﺎ ﻟﻜﻰ ﺗﺤﻔﻆ وﺗﺨﺮج ﻣﻦ اﻟﺒﺮﻧﺎﻣﺞ ﻣﺒﺎﺷﺮﻩ ‪ ،‬ﻓﺴﺘﻀﻴﻒ اﻟﺤﺮف ‪ q‬دﻻﻟﻪ ﻋﻠﻰ ‪ ، quit‬ﻓﻴﻜﻮن ‪:wq‬‬ ‫ﺛﻢ ﺑﻌﺪ ذﻟﻚ ﺳﺘﻀﻐﻆ ﻋﻠﻰ اﻟﻤﻔﺘﺎح ‪. save‬واﻳﻀﺎ اﺟﺒﺎرﻩ ﻋﻠﻰ‬ ‫اﻟﺨﺮوج ﻣﻦ اﻟﺒﺮﻧﺎﻣﺞ دون ﺣﻔﻆ )‪. q‬ﻓﻴﻜﻮن اﻟﺸﻜﻞ آﺎﻻﺗﻰ‬ ‫!‪ :w‬ﻟﻠﺤﻔﻆ‬ ‫وﻳﻜﻮن !‪ :q‬ﻟﻠﺨﺮوج دون ﺣﻔﻆ‬ ‫)ﻳﻔﺘﺮض ﻃﺒﻌﺎ ان ﻳﻜﻮن آﻞ ﺣﺮف ﻣﻨﻔﺮد ﻻﻧﻬﻢ ﻟﻮ اﺟﺘﻤﻌﻮا ﻣﻌﺎ ‪ -‬ﺣﺮف ‪ w‬و‪.q‬اذا ﻓﻠﻦ ﺗﻜﻮن هﻨﺎك ﻣﺸﻜﻠﻪ ‪ ،‬ﻓﺴﻴﺤﻔﻆ‬ ‫اﻟﺒﺮﻧﺎﻣﺞ اﻟﺘﻌﺪﻳﻼت وﺳﻴﺨﺮج(‬ .‫آﻴﻔﻴﻪ اﻟﺤﻔﻆ واﻟﺨﺮوج ﻣﻦ ﺑﺮﻧﺎﻣﺞ ‪.‬‬ ‫ﻟﻬﺬﻩ اﻻﺳﺒﺎب وﻏﻴﺮهﺎ ﻗﺪ ﺗﻀﻄﺮ اﻟﻰ اﺟﺒﺎرﻩ ﻋﻠﻰ ﺣﻔﻆ ﻣﺎ ﻗﻤﺖ ﺑﺘﻌﺪﻳﻠﻪ ‪ . (un save‬‬ ‫وﻳﺘﻢ ذﻟﻚ ﻋﻦ ﻃﺮﻳﻖ وﺿﻊ ﻋﻼﻣﻪ اﻟﺘﻌﺠﺐ ! ﺑﻌﺪ اﻟﺤﺮف ‪ w‬او اﻟﺤﺮف ‪ .

.

‫ال ‪file permission‬‬ ‫ﺗﻌﺪ ﻣﻦ ﺧﺼﺎﺋﺺ اﻧﻈﻤﻪ اﻟﺘﺸﻐﻴﻞ اﻟﺘﻰ ﺗﻮﻓﺮ ﺧﺎﺻﻴﻪ ﺗﻌﺪد اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ﺧﺎﺻﻴﻪ ال ‪permission‬‬ ‫واﻟﺘﻰ ﺗﺘﺤﺪد ﻋﻠﻰ اﻟﻤﻠﻔﺎت واﻟﻤﺠﻠﺪات ‪.‬‬ ‫اﻣﺎ اﻟﺴﻄﺮ اﻟﺜﺎﻧﻰ ﻓﻴﺤﻮى اﺣﺮف اﻗﻞ ﻣﻦ اﻟﺴﻄﺮ اﻻول ‪ ،‬ﻓﻨﺮاﻩ ﺑﺪاﻳﻪ ﻟﻢ ﻳﻜﺘﺐ ﺣﺮف ‪ d‬ﺑﻞ وﺿﻊ‬ ‫ﻣﻜﺎﻧﻪ اﻟﻌﻼﻣﻪ – واﻟﺘﻰ ﺗﻌﻨﻰ ان هﺬا اﻟﺴﻄﺮ ﺧﺎص ﺑﻤﻠﻒ ‪،‬‬ ‫ﺛﻢ ﺑﻌﺪ ذﻟﻚ ﻧﺮاﻩ ﻗﺪ آﺘﺐ ‪ rw-‬ﺛﻢ اﻋﺎد اﻟﺤﺮف ‪ r‬ﻓﻘﻂ ﻟﻤﺮﺗﺎن ﻣﻊ وﺿﻊ ﻋﻼﻣﻪ ال‪ dash‬او اﻟﺸﺮﻃﻪ‬ ‫ﻣﻜﺎن اﻻﺣﺮف اﻟﺘﻰ ﻟﻢ ﻳﻜﺘﺒﻬﺎ ‪.‬‬ ‫وال‪ permission‬ﺗﻌﻨﻰ ﻧﻔﺲ ﻣﻌﻨﺎهﺎ اﻟﺤﺮﻓﻰ وهﻮاﻟﺘﺼﺮﻳﺢ اواﻟﺘﺼﺎرﻳﺢ اﻟﻤﺴﻤﻮح ﺑﻬﺎ ‪.‬واﻻن ﺳﻨﺒﺪأ ﻓﻰ ﻓﻬﻢ ﻣﻌﻨﻰ هﺬﻩ اﻟﺤﺮوف ‪.‬‬ ‫ﻳﻼﺣﻆ اﻧﻪ ﺳﻴﺘﻢ ﺷﺮح ﻣﻌﺎﻧﻰ هﺬﻩ اﻟﺤﺮوف وﺳﺒﺐ ﺗﻜﺮارهﺎ ﻓﻰ اﻟﺴﻄﻮر اﻟﻘﺎدﻣﻪ ﻓﻼ ﺗﺪﻋﻬﺎ ﺗﺰﻋﺠﻚ اﻻن‪.‬‬ ‫ﻓﻨﺠﺪ ﻓﻰ ﺑﺪاﻳﻪ ﺳﻄﺮ اﻟﻤﺠﻠﺪ ‪ ahmed‬ذو اﻟﻠﻮن اﻻزرق ﻗﺪ آﺘﺐ ﺣﺮف ‪ d‬واﻟﺬى ﻳﻮﺿﺢ ان هﺬا‬ ‫ﻋﺒﺎرﻩ ﻋﻦ ﻣﺠﻠﺪ ‪> ، directory‬وﺣﺮف ‪ d‬هﺬا ﻟﻴﺲ ﺟﺰءاً ﻣﻦ اﻟﺘﺼﺎرﻳﺢ ‪ <permission‬ﺛﻢ‬ ‫ﺗﺘﺒﻌﻪ هﺬﻩ اﻟﺤﺮوف ‪ rwx‬ﺛﻢ ﻳﺘﻜﺮر اﻟﺤﺮﻓﺎن ‪ r-x‬ﻓﻘﻂ ﺑﺪون اﻟﺤﺮف ‪ w‬واﻟﺬى ﺗﻢ وﺿﻊ ﻣﻜﺎﻧﻪ‬ ‫اﻟﻌﻼﻣﻪ >‪ <-‬ﺛﻢ ﻳﻌﺎد ﺗﻜﺮار اﻟﺤﺮﻓﺎن ‪ r‬و‪ x‬ﻟﺜﺎﻟﺚ ﻣﺮﻩ ‪.‬‬ ‫هﺬا ﺑﺎﺧﺘﺼﺎر ﺷﻜﻞ ال ‪ permission‬او اﻟﺘﺼﺎرﻳﺢ ‪ .‬‬ . root‬‬ ‫وﻳﻤﻜﻦ اﺳﺘﻌﺮاض هﺬﻩ اﻟﺘﺼﺎرﻳﺢ ﺑﺎﻻﻣﺮ ‪ls -l‬‬ ‫ﻓﻨﺠﺪ ان اﻟﻨﺎﺗﺞ ﻣﻦ اﻻﻣﺮ ﻋﺒﺎرﻩ ﻋﻦ ﻣﺠﻠﺪ >ﺑﺎﻟﻠﻮن اﻻزرق< وﻣﻠﻒ >ﺑﺎﻟﻠﻮن اﻻﺑﻴﺾ< ‪ ،‬وﻟﻜﻦ ﻣﺎ‬ ‫ﻳﻬﻤﻨﺎ ﻓﻰ هﺬا اﻟﻤﺜﺎل هﻰ هﺬﻩ اﻟﺤﺮوف اﻟﻤﻜﺘﻮﺑﻪ ﺑﺎول اﻟﺴﻄﺮ ‪ ،‬ﻓﻬﻰ اﻟﺘﻰ ﺗﺒﻴﻦ اﻟﺘﺼﺎرﻳﺢ اﻟﻤﻤﻨﻮﺣﻪ‬ ‫ﻟﻜﻼ ﻣﻦ اﻟﻤﺠﻠﺪ واﻟﻤﻠﻒ ‪.‬‬ ‫ﻓﻜﻞ ﻣﻠﻒ او ﻣﺠﻠﺪ ﻳﻨﺸﺄ ﻓﻰ اﻟﻨﻈﺎم ﻳﺘﺤﺪد ﻟﻪ ﺗﺼﺮﻳﺢ ﻳﺤﺪد اﻟﺼﻼﺣﻴﻪ اﻟﻤﻤﻨﻮﺣﻪ ﻟﻜﻞ اﻧﻮاع‬ ‫اﻟﻤﺴﺘﺨﺪﻣﻴﻦ > ﻣﻨﺸﺄ اﻟﻤﻠﻒ‪ ،‬اﻟﻤﺠﻤﻮﻋﻪ اﻟﺘﻰ ﻳﻨﺘﻤﻰ اﻟﻴﻬﺎ ‪ ،‬ﺑﻘﻴﻪ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ اﻟﻤﻮﺟﻮدﻳﻦ ﻓﻰ اﻟﻨﻈﺎم<‬ ‫وﻳﺘﺤﻜﻢ ﻓﻰ ﺗﺤﺪﻳﺪ هﺬﻩ اﻟﺼﻼﺣﻴﺎت ﻣﺎﻟﻚ اﻟﻤﻠﻒ ‪-‬اى ﻣﻦ ﻗﺎم ﺑﺎﻧﺸﺎﺋﻪ‪ -‬واﻳﻀﺎ ﻣﺪﻳﺮ اﻟﻨﻈﺎم وهﻮ ال‬ ‫‪.

‬‬ ‫ﻓﺎذا ﻧﻈﺮت ﻟﻜﻞ ﻓﺌﻪ ﻋﻠﻰ ﺣﺪﻩ ﻓﻬﺬا هﻮ اﻟﺸﻜﻞ اﻟﺒﺴﻴﻂ ﻟﻞ ‪ ، permission‬واذا ﻧﻈﺮت اﻟﻰ اﻟﺜﻼث‬ ‫ﻓﺌﺎت ﻣﺮﻩ واﺣﺪﻩ ﻓﻬﺬا هﻮ اﻟﺸﻜﻞ اﻟﻤﺮآﺐ ﻟﻞ ‪ permission‬واﻟﺬى ﺗﻢ ﻋﺮﺿﻪ ﺑﺎﻻﻣﺮ ‪ ls -l‬ﺳﺎﻟﻒ‬ ‫اﻟﺬآﺮ ‪.‬‬ .‫ﻓﻬﻢ ال ‪.‬‬ ‫ﺑﻤﻌﻨﻰ اﺧﺮ ‪ ،‬ان آﻞ ﻓﺌﻪ ﻟﻬﺎ ﺗﺼﺎرﻳﺢ ﺧﺎﺻﻪ ﺑﻬﺎ ‪ ،‬ﻓﻤﺎﻟﻚ اﻟﻤﻠﻒ ﻟﻪ ‪ rwx‬ﺧﺎﺻﻪ ﺑﻪ ﺗﺤﺪد ﺻﻼﺣﻴﺎﺗﻪ‬ ‫ﻋﻠﻰ اﻟﻤﻠﻒ‪/‬اﻟﻤﺠﻠﺪ ‪ ،‬وﻣﺠﻤﻮﻋﺘﻪ ﻟﻬﺎ ‪ rwx‬ﺗﺤﺪد اﻳﻀﺎ اﻟﺼﻼﺣﻴﺎت اﻟﻤﺴﻤﻮح ﻟﻬﻢ ﺑﻬﺎ ‪ ،‬وﺑﻘﻴﻪ‬ ‫اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ﺑﺎﻟﻨﻈﺎم ﻟﻬﻢ اﻳﻀﺎ ‪ rwx‬ﺗﺤﺪد ﺻﻼﺣﻴﺎﺗﻬﻢ ‪. permission‬‬ ‫ﻟﻜﻰ ﻳﺘﻢ ﻓﻬﻢ ال ‪ permission‬ﺑﻄﺮﻳﻘﻪ ﺑﺴﻴﻄﻪ ﻳﻤﻜﻨﻨﺎ ان ﻧﻘﺴﻤﻪ اﻟﻰ ﻗﺴﻤﻴﻦ‬ ‫• اﻟﺸﻜﻞ اﻟﺒﺴﻴﻂ‬ ‫• واﻟﺸﻜﻞ اﻟﻤﺮآﺐ‬ ‫‪ -1‬اﻟﺸﻜﻞ اﻟﺒﺴﻴﻂ ﻟﻞ‪ permission‬وهﻮ ﻣﻜﻮن ﻣﻦ ﺛﻼﺛﻪ اﺣﺮف ﻣﺜﻞ ‪ rwx‬وﺗﻔﺼﻴﻠﻬﻢ آﺎﻻﺗﻰ‬ ‫• ﺣﺮف ‪ r‬ﻟﻠﺪﻻﻟﻪ ﻋﻠﻰ ‪ read‬اى اﻣﻜﺎﻧﻴﻪ ﻗﺮاءﻩ اﻟﻤﻠﻒ‬ ‫• وﺣﺮف ‪ w‬ﻟﻠﺪﻻﻟﻪ ﻋﻠﻰ ‪ write‬اى اﻣﻜﺎﻧﻴﻪ اﻟﻜﺘﺎﺑﻪ ﻓﻰ اﻟﻤﻠﻒ‬ ‫• وﺣﺮف ‪ x‬ﻟﻠﺪﻻﻟﻪ ﻋﻠﻰ ‪ execute‬اى ﺗﻨﻔﻴﺬ هﺬا اﻟﻤﻠﻒ وآﺄﻧﻪ ﺑﺮﻧﺎﻣﺞ‬ ‫‪ -2‬اﻣﺎ اﻟﺸﻜﻞ اﻟﻤﺮآﺐ ﻟﻞ ‪ permission‬ﻓﻬﻮ ﺗﻜﺮار هﺬا اﻟﺸﻜﻞ اﻟﺒﺴﻴﻂ ﺛﻼث ﻣﺮات ‪ ،‬ﻣﺜﻞ‬ ‫‪rwx rwx rwx‬‬ ‫واﻟﺴﺒﺐ ﻓﻰ هﺬا اﻟﺘﻜﺮار هﻮ ان اﻟﻨﻈﺎم ﻳﺼﻨﻒ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ﻋﻨﺪﻩ اﻟﻰ ﺛﻼث ﻓﺌﺎت‬ ‫ ﻣﺎﻟﻚ اﻟﻤﻠﻒ او اﻟﻤﺠﻠﺪ‬‫ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ اﻟﻤﺸﺘﺮآﻴﻦ ﻣﻊ هﺬا اﻟﻤﺎﻟﻚ ﻓﻰ ﻣﺠﻤﻮﻋﻪ واﺣﺪﻩ‬‫ ﺑﻘﻴﻪ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ﺑﺎﻟﻨﻈﺎم‬‫ﺛﻢ ﺑﻌﺪ ذﻟﻚ ﻳﺤﺪد اﻟﻨﻈﺎم اﻟﺘﺼﺎرﻳﺢ اﻟﻤﺤﺪدﻩ ﻟﻜﻞ ﻓﺌﻪ ‪.

‫اﻻﺧﺘﻼف ﺑﻴﻦ اﻟﻤﻠﻒ واﻟﻤﺠﻠﺪ ﻓﻰ اﻟﺘﺼﺎرﻳﺢ ‪.‬اى ﺗﺮاﻩ ﻗﺪ ﻋﺮض ﻟﻚ اﻟﻤﻠﻔﺎت واﻟﻤﺠﻠﺪات اﻟﻤﻮﺟﻮدﻩ داﺧﻞ اﻟﻤﺠﻠﺪ دون ذآﺮ اى‬ ‫ﻣﻌﻠﻮﻣﺎت ﻋﻨﻬﺎ(‪.‬‬ .‬ﻻﻧﻪ و آﻤﺎ هﻮ ﻣﻌﺮوف ‪ ،‬ﻓﺎن اﻟﻤﻠﻒ ﻳﺤﻮى ﺑﻴﺎﻧﺎت ﺑﻴﻨﻤﺎ اﻟﻤﺠﻠﺪ ﻳﺤﻮى‬ ‫ﻣﻠﻔﺎت وﻣﺠﻠﺪات وﻟﻴﺲ ﺑﻴﺎﻧﺎت(‬ ‫ﻟﻬﺬا ﻓﺎن اﻟﺘﺼﺮﻳﺢ ﺑﺎﻟﻜﺘﺎﺑﻪ ﻓﻰ اﻟﻤﺠﻠﺪ ﻟﻪ ﻣﻌﻨﻰ ﻣﺨﺘﻠﻒ ﻋﻨﻪ ﻓﻰ اﻟﻤﻠﻒ وهﻜﺬا اﻟﺤﺎل ﻣﻊ اﻟﻘﺮاءﻩ‬ ‫واﻟﺘﻨﻔﻴﺬ )‪ write‬و ‪ (execute‬وهﺬﻩ هﻰ ﻣﻌﺎﻧﻰ اﻟﺘﺼﺎرﻳﺢ ﺑﺎﻟﻨﺴﺒﻪ ﻟﻠﻤﺠﻠﺪات ‪.‬‬ ‫ذﻟﻚ ﻻن ﻃﺒﻴﻌﻪ اﻟﻤﺠﻠﺪ ﻣﺨﺘﻠﻔﻪ ﻋﻦ ﻃﺒﻴﻌﻪ اﻟﻤﻠﻒ ‪ ،‬ﻓﺒﻴﻨﻤﺎ ﺗﺴﺘﻄﻴﻊ اﻟﻜﺘﺎﺑﻪ )‪ (edit‬ﻓﻰ ﻣﻠﻒ اﻻ اﻧﻚ ﻻ‬ ‫ﺗﺴﺘﻄﻴﻊ ان ﺗﻜﺘﺐ )‪ (edit‬ﻓﻰ ﻣﺠﻠﺪ ‪).‬‬ ‫ﻳﺨﺘﻠﻒ ‪ rwx‬اى اﻟﺘﺼﺮﻳﺢ ﺑﺎﻟﻘﺮاءﻩ واﻟﻜﺘﺎﺑﻪ واﻟﺘﻨﻔﻴﺬ ﻣﻦ اﻟﻤﻠﻒ اﻟﻰ اﻟﻤﺠﻠﺪ ‪.‬‬ ‫* ﻓﺎﻟﺘﺼﺮﻳﺢ ﺑﺎﻟﻘﺮاءﻩ او ‪ r‬ﺗﻌﻨﻰ ﻋﺮض ﻣﺤﺘﻮﻳﺎت اﻟﻤﺠﻠﺪ‬ ‫* واﻟﺘﺼﺮﻳﺢ ﺑﺎﻟﻜﺘﺎﺑﻪ او ‪ w‬ﺗﻌﻨﻰ اﻧﺸﺎء ﻋﻨﺎﺻﺮ ‪> items‬ﻣﻠﻔﺎت وﻣﺠﻠﺪات< داﺧﻞ اﻟﻤﺠﻠﺪ‬ ‫* اﻣﺎ اﻟﺘﺼﺮﻳﺢ ﺑﺎﻟﺘﻨﻔﻴﺬ او ‪ x‬ﻓﻴﻌﻨﻰ اﻟﺘﺤﺮك واﻟﻮﻗﻮف ﻋﻠﻴﻪ ﺑﺎﻣﺮ ﻣﺜﻞ ‪cd‬‬ ‫ﻳﺘﻀﻤﻦ اﻳﻀﺎ اﻟﺘﺼﺮﻳﺢ ب ‪ x‬ﻋﺮض ﻣﺤﺘﻮﻳﺎت اﻟﻤﺠﻠﺪ ‪ ،‬وﻟﻜﻦ اﻟﻔﺮق ﺑﻴﻨﻪ وﺑﻴﻦ ‪ r‬ﻳﺘﻤﺜﻞ ﻓﻰ‬ ‫ﻋﻨﺪ ازاﻟﻪ ‪ r‬ﻣﻦ اﻟﺘﺼﺮﻳﺢ ﻓﺎن اﻟﻤﺠﻠﺪ ﻻ ﻳﻌﺮض ﻣﺤﺘﻮﻳﺎﺗﻪ ﻋﻠﻰ اﻻﻃﻼق ‪،‬اﻣﺎ ﻋﻨﺪ ازاﻟﻪ ‪ x‬ﻓﺎن اﻟﻤﺠﻠﺪ ﻳﻌﺮض‬ ‫ﻣﺤﺘﻮﻳﺎﺗﻪ وﻟﻜﻦ ﺑﺪون ﺗﻔﺼﻴﻞ ‪) .

‬‬ ‫وﻟﻜﻦ ﻗﺒﻞ اﻟﻜﻼم ﻋﻦ آﻴﻔﻴﻪ ﺗﻌﺪﻳﻞ ال ‪ permission‬ﻓﻼ ﺑﺪ ﻣﻦ اﻟﺘﻌﺮض ﻟﻼﻣﺮ ‪. rwx --. stat‬‬ ‫ﻓﺎﻻﻣﺮ ‪ stat‬هﻮ اﻣﺮ ﻣﻬﻢ ﻻﻧﻪ ﻳﻌﺮض ﺗﻔﺎﺻﻴﻞ ﻋﻦ اﻟﻤﺠﻠﺪ او اﻟﻤﻠﻒ اآﺜﺮ ﻣﻤﺎ ﻳﻌﺮﺿﻪ اﻻﻣﺮ ‪، ls‬‬ ‫هﺬا ﻣﻦ ﻧﺎﺣﻴﻪ ‪ ،‬وﻣﻦ ﻧﺎﺣﻴﻪ اﺧﺮى – وهﻰ اﻻهﻢ‪ -‬اﻧﻪ ﻳﻌﺮض ال ‪ permission‬ﺑﻄﺮﻳﻘﻪ اﻻرﻗﺎم و‬ ‫اﻟﺤﺮوف وﻟﻴﺲ اﻟﺤﺮوف ﻓﻘﻂ ﻣﺜﻞ اﻻﻣﺮ ‪ ، ls‬وﻃﺮﻳﻘﻪ اﻻرﻗﺎم هﺬﻩ ﻗﺪ ﺗﻜﻮن اﺳﻬﻞ ﻓﻰ ﻓﻬﻢ ال‬ ‫‪ permission‬ﻣﻦ ﻃﺮﻳﻘﻪ اﻟﺤﺮوف ‪.‬‬ ‫ﻓﻤﺎﻟﻚ اﻟﻤﻠﻒ او اﻟﻤﺠﻠﺪ ﺑﺎﻻﺿﺎﻓﻪ اﻟﻰ ال‪ root‬ﻟﻬﻤﺎ اﻟﺤﻖ ﻓﻰ وﺿﻊ اﻟﺼﻼﺣﻴﺎت اﻟﻤﺨﺘﻠﻔﻪ ‪.‬‬ ‫واﻻن ﺳﻨﻌﻄﻰ ﻣﺜﺎﻻ ﻟﻼﻣﺮ ‪ stat‬ﺛﻢ ﻧﺘﺤﺪث ﺑﻌﺪ ذﻟﻚ ﻋﻦ ﻧﺎﺗﺠﻪ‬ ‫ﻓﺎوﻻ ﺗﻢ ﺗﻄﺒﻴﻖ اﻻﻣﺮ ‪ ls -l‬وﻧﺎﺗﺠﻪ ﻣﺜﻞ ﻣﺎ ﻧﺮى ﻋﺒﺎرﻩ ﻋﻦ ﻣﺠﻠﺪ وﻣﻠﻒ‬ ‫ﺛﺎﻧﻴﺎ ﺗﻢ ﺗﻄﺒﻴﻖ اﻻﻣﺮ ‪ stat‬ﻋﻠﻰ اﻟﻤﺠﻠﺪ ‪ ، ahmed‬ﻓﺎﺧﺮج ﻟﻨﺎ آﻤﺎ ﻧﺮى اﻟﻌﺪﻳﺪ ﻣﻦ اﻟﻤﻌﻠﻮﻣﺎت ‪،‬‬ .‫ال ‪ permission‬ﺑﻨﻈﺮﻩ اﺧﺮى ‪.---‬‬ ‫واذا اراد ان ﻳﻌﻄﻰ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ اﻟﻤﺸﺘﺮآﻴﻦ ﻣﻌﻪ ﻓﻰ ﻧﻔﺲ اﻟﻤﺠﻤﻮﻋﻪ ﺻﻼﺣﻴﺎت ﻓﺴﻴﺘﺤﻮل ﺷﻜﻞ ال‬ ‫‪ permission‬اﻟﻰ اﻟﺸﻜﻞ اﻟﺘﺎﻟﻰ ‪) .‬‬ ‫ﻳﻤﻜﻦ ﺗﻐﻴﻴﺮ ال‪ permission‬وﺗﻌﺪﻳﻠﻪ ﺑﺤﺴﺐ اﻟﺤﺎﺟﻪ اﻟﻰ ذﻟﻚ ‪ ،‬ﻓﻘﺪ ﻳﻤﻨﻊ ﻣﺎﻟﻚ اﻟﻤﻠﻒ ﻣﺜﻼ اى‬ ‫ﺷﺨﺺ ﻣﻦ ان ﻳﻘﺮأ او ﻳﻌﺪل ﻓﻰ اﻟﻤﻠﻒ اﻟﺨﺎص ﺑﻪ ‪ ،‬وﻳﻘﺘﺼﺮ اﻣﺮ اﻟﺘﻌﺪﻳﻞ واﻟﻘﺮاءﻩ ﻋﻠﻴﻪ هﻮ ﻓﻘﻂ ‪،‬‬ ‫وﻣﻦ ﺛﻢ ﺳﻴﻜﻮن اﻟﺘﺼﺮﻳﺢ اوال ‪ permission‬ﻋﻠﻰ اﻟﺼﻮرﻩ اﻟﺘﺎﻟﻴﻪ ‪. rwx rwx ---‬ﻋﻠﻰ ﻓﺮض ان اﻟﺘﺼﺮﻳﺢ ﻟﻬﻢ ﺳﻴﺸﻤﻞ اﻟﻘﺮاءﻩ واﻟﻜﺘﺎﺑﻪ‬ ‫واﻟﺘﻨﻔﻴﺬ ﻟﻠﻤﻠﻒ(‬ ‫وﻧﻔﺲ اﻻﻣﺮ ﻣﻊ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ اﻻﺧﺮﻳﻦ اﻟﺒﺎﻗﻴﻦ ﻓﻰ اﻟﻨﻈﺎم ‪.

5‬‬ ‫‪ -3‬ﺑﺎﻟﻨﺴﺒﻪ ﻟﻼﺧﺮﻳﻦ ﻓﻬﻮ ﻧﻔﺲ اﻟﺸﻰ ﻣﻊ اﻟﻤﺠﻤﻮﻋﻪ ‪.‬‬ ‫ﻓﻌﻨﺪ ﺟﻤﻊ اى رﻗﻤﻴﻦ ﻣﻦ هﻮﻻء اﻟﺜﻼﺛﻪ ﻻ ﻳﻤﻜﻦ ان ﻳﻨﺘﺞ ﻋﻨﻪ ﻗﻴﻤﻪ اﻟﺮﻗﻢ اﻟﺜﺎﻟﺚ اﺑﺪا ‪ ،‬ﻓﺎذا آﺎن ال‬ ‫‪ permission‬ﻗﺮأﻩ وﺗﻨﻔﻴﺬ ﻓﺴﻴﻜﻮن اﻟﺮﻗﻢ ‪. 5‬‬ ‫وان آﺎن آﺘﺎﺑﻪ وﺗﻨﻔﻴﺬ ﻓﺴﻴﻜﻮن اﻟﺮﻗﻢ ‪ 3‬وهﻜﺬا ‪ . 7‬‬ ‫‪ -2‬ﺑﺎﻟﻨﺴﺒﻪ ﻟﻤﺠﻤﻮﻋﺘﻪ ﻓﺎﻟﻤﺴﻤﻮح ﻟﻬﻢ ﺑﻪ هﻮ اﻟﻘﺮاءﻩ ‪ r‬واﻟﺘﻨﻔﻴﺬ ‪ x‬ﻓﻘﻂ اى ‪ 4‬و ‪ 1‬ﻓﺎﻟﻤﺠﻤﻮع ‪.‬اﻣﺎ اﻟﺼﻮرﻩ اﻟﺒﺴﻴﻄﻪ ﻟﻪ ﻓﻬﻰ‬ ‫‪ -1‬ﺑﺎﻟﻨﺴﺒﻪ ﻟﻤﺎﻟﻚ اﻟﻤﻠﻒ‪/‬اﻟﻤﺠﻠﺪ ﻓﺎن اﻟﻤﺴﻤﻮح ﻟﻪ هﻮ اﻟﻘﺮاءﻩ ‪ ، r‬واﻟﻜﺘﺎﺑﻪ ‪ ، w‬واﻟﺘﻨﻔﻴﺬ ‪ x‬وﺑﺘﺤﻮﻳﻞ‬ ‫هﺬﻩ اﻻﺣﺮف اﻟﻰ ارﻗﺎم ﻓﺎن ال ‪ permission‬اﻟﻤﺴﻤﻮح ﻟﻪ ﺑﻪ ﺳﻴﻜﻮن ‪ 4‬و‪ 2‬و‪ 1‬اى ‪.‬‬ ‫واﺳﺘﺨﺪام هﺬﻩ اﻻرﻗﺎم ﻳﻌﺪ اﺳﻬﻞ ‪-‬ﺑﻌﺪ اﻟﺘﻌﻮد ﻋﻠﻴﻬﺎ‪ -‬ﻣﻦ اﺳﺘﺨﺪام اﻻﺣﺮف وﺑﺎﻻﺧﺺ ﻋﻨﺪ ﺗﻌﺪﻳﻞ ال‬ ‫‪ permission‬آﻤﺎ ﺳﻨﺮى ‪.‫وﻟﻜﻦ ﻣﺎ ﻳﻬﻤﻨﺎ اﻻن ﻣﻦ هﺬﻩ اﻟﻤﻌﻠﻮﻣﺎت هﻮ ال ‪ permission‬واﻟﻤﻮﺟﻮد ﺑﺠﺎﻧﺐ ‪ Access‬ﻋﻠﻰ‬ ‫اﻟﻴﺴﺎر ‪ ،‬ﻓﻨﺮاﻩ ﺷﺒﻴﻬﺎ ﻟﺬﻟﻚ اﻟﻤﺬآﻮر ﻣﻊ اﻻﻣﺮ ‪ ls -l‬إﻻ اﻧﻪ ﻣﻀﺎف اﻟﻴﻪ رﻗﻢ ﻋﻠﻰ ﻳﺴﺎرﻩ وهﻮ ‪0755‬‬ ‫وﻧﻔﺲ اﻟﻤﺴﺎﻟﻪ ﻣﻊ اﻟﻤﺜﺎل اﻟﺬى ﻳﻠﻴﻪ واﻟﻤﻄﺒﻖ ﻋﻠﻰ اﻟﻤﻠﻒ ‪.‬‬ ‫وﻟﻜﻦ ﻗﺒﻞ اﻻﻧﺘﻘﺎل اﻟﻰ آﻴﻔﻴﻪ ﺗﻌﺪﻳﻞ ال ‪ permission‬ﻓﻬﻨﺎك ﻣﻌﻠﻮﻣﻪ ﻣﻔﻴﺪﻩ ‪ ،‬اﻻ وهﻰ ‪ ،‬ان هﺬﻩ‬ ‫اﻻرﻗﺎم ﻻ ﻳﻤﻜﻦ ان ﻳﺤﺪث ﺑﻴﻨﻬﺎ ﺗﻌﺎرض ‪.‬‬ ‫ﻣﺮﻩ اﺧﺮى ‪. ahmed1‬‬ ‫ﻓﻤﺎذا ﻳﻌﻨﻰ هﺬا اﻟﺮﻗﻢ ؟‬ ‫هﺬا اﻟﺮﻗﻢ هﻮ ﻋﺒﺎرﻩ ﻋﻦ ال ‪ permission‬وﻟﻜﻦ ﻓﻰ ﺻﻮرﻩ رﻗﻢ ‪.‬‬ ‫ﻓﺎﻣﺎﻣﻨﺎ اﻟﺮﻗﻢ ‪) 0755‬ال‪ 0‬اﻟﻤﻮﺟﻮد ﻋﻠﻰ اﻟﻴﺴﺎر ﻟﻪ ﻣﻌﻨﻰ ‪-‬ﺑﻌﻜﺲ ﻣﺎ ﺗﻌﻠﻤﻨﺎﻩ ﻓﻰ اﻟﻤﺪارس‪ -‬وﻟﻜﻦ ﻟﻦ اﺗﻌﺮض ﻟﻪ‬ ‫اﻻن ﻻن اﺳﺘﺨﺪاﻣﻪ ﻗﻠﻴﻞ(‬ ‫هﺬا اﻟﺮﻗﻢ )‪ (755‬ﻋﺒﺎرﻩ ﻋﻦ اﻟﺜﻼث اﻧﻮاع ﻣﻦ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ اﻟﻤﻮﺟﻮدﻳﻦ ﺑﺎﻟﻨﻈﺎم ‪ ،‬ﻓﻤﻦ اﻟﻴﺴﺎر اﻟﻰ‬ ‫اﻟﻴﻤﻴﻦ)ﻣﺎﻟﻚ اﻟﻤﻠﻒ ‪ ،‬اﻟﻤﺠﻤﻮﻋﻪ ‪ ،‬اﻻﺧﺮﻳﻦ( ‪ ،‬وﻟﻜﻦ ﺗﻢ ﺗﺒﺪﻳﻞ اﻟﻘﻴﻤﻪ اﻟﺘﻰ ﺗﻤﺜﻠﻬﺎ اﻟﺤﺮوف ‪ rwx‬اﻟﻰ‬ ‫رﻗﻢ ‪.‬وهﺬﻩ ﻗﺎﺋﻤﻪ ﺑﺎﺣﺘﻤﺎﻻت اﻻرﻗﺎم آﻠﻬﺎ‬ ‫• اﻟﺮﻗﻢ ‪ 1‬ﻟﻠﺪﻻﻟﻪ ﻋﻠﻰ اﻟﺘﻨﻔﻴﺬ ﻓﻘﻂ اى ‪x‬‬ ‫• اﻟﺮﻗﻢ ‪ 2‬ﻟﻠﺪﻻﻟﻪ ﻋﻠﻰ اﻟﻜﺘﺎﺑﻪ ﻓﻘﻂ ‪w‬‬ ‫• اﻟﺮﻗﻢ ‪ 3‬ﻟﻠﺪﻻﻟﻪ ﻋﻠﻰ ‪ w‬و ‪x‬‬ ‫• اﻟﺮﻗﻢ ‪ 4‬ﻟﻠﺪﻻﻟﻪ ﻋﻠﻰ اﻟﻘﺮاءﻩ ﻓﻘﻂ ‪r‬‬ ‫• اﻟﺮﻗﻢ ‪ 5‬ﻟﻠﺪﻻﻟﻪ ﻋﻠﻰ ‪ r‬و ‪x‬‬ ‫• اﻟﺮﻗﻢ ‪ 6‬ﻟﻠﺪﻻﻟﻪ ﻋﻠﻰ ‪ r‬و ‪w‬‬ ‫• اﻟﺮﻗﻢ ‪ 7‬ﻟﻠﺪﻻﻟﻪ ﻋﻠﻰ ‪ r‬و ‪ w‬و ‪x‬‬ .‬‬ ‫اﻟﺜﻼث ارﻗﺎم اﻟﻤﺬآﻮرﻩ وهﻰ ‪ 755‬هﻰ ﺑﺪﻳﻠﻪ ﻋﻦ ‪ rwx r-x r-x‬اى ان اﻟﺜﻼث ارﻗﺎم ﺗﻌﺪ‬ ‫اﻟﺼﻮرﻩ اﻟﻤﺮآﺒﻪ ﻟﻞ ‪ permission‬واﻟﺘﻰ ﺳﺒﻖ اﻟﺘﺤﺪث ﻋﻨﻬﺎ ‪.‬‬ ‫آﻴﻒ ﻳﺘﻢ ذﻟﻚ ؟‬ ‫ﻳﺘﻢ ذﻟﻚ ﺑﺎﻋﻄﺎء اﻟﺤﺮف ‪ r‬رﻗﻢ ‪4‬‬ ‫واﻋﻄﺎء اﻟﺤﺮف ‪ w‬رﻗﻢ ‪2‬‬ ‫واﻋﻄﺎء اﻟﺤﺮف ‪ x‬رﻗﻢ ‪1‬‬ ‫اذا ﻓﺎن ﻣﺠﻤﻮع ‪> rwx‬وهﻮ اﻟﺘﺼﺮﻳﺢ اﻟﺨﺎص ﺑﺎﻟﻤﺎﻟﻚ ﻓﻘﻂ<هﻮ ﻣﺠﻤﻮع ‪ 1+2+4‬اى ‪ 7‬وهﻮ اﻟﺮﻗﻢ‬ ‫اﻟﻤﻮﺟﻮد ﻋﻠﻰ اﻟﻴﺴﺎر ﻓﻰ اﻟﻤﺜﺎل اﻟﺴﺎﺑﻖ ‪.

‬‬ . executable‬ﻓﺎن اراد ﻣﺎﻟﻜﻪ او ال‪ root‬ﺟﻌﻠﻪ ‪ exe‬اى ﺟﻌﻞ‬ ‫اﻟﻤﻠﻒ ﻳﻌﻤﻞ آﺒﺮﻧﺎﻣﺞ ﻓﺎﻧﻪ ﻳﻘﻮم ﺑﺘﻌﺪﻳﻞ ال ‪ permission‬ﺑﻨﻔﺴﻪ ﺑﺎﻻﻣﺮ ‪. permission‬‬ ‫وﻳﻤﻜﻦ ﻟﻼﻣﺮ ‪ chmod‬ان ﻳﺘﻌﺎﻣﻞ ﻣﻊ ال‪ mode‬ﻓﻰ ﺻﻮرﻩ اﻟﺤﺮوف او ﻓﻰ ﺻﻮرﻩ اﻻرﻗﺎم‬ ‫وﻗﺒﻞ ﺿﺮب ﻣﺜﺎل ﻋﻠﻰ ذﻟﻚ ﻻ ﺑﺪ ﻣﻦ ﻣﻌﺮﻓﻪ ﻣﻌﻠﻮﻣﻪ هﺎﻣﻪ ﺟﺪا وهﻰ‬ ‫ان اﻟﻤﻠﻒ ﻋﻨﺪ اﻧﺸﺎﺋﻪ ﻻ ﻳﺘﻌﺪى ال ‪ permission‬اﻟﺨﺎص ﺑﻪ اﻟﺮﻗﻢ ‪ 6‬ﺳﻮاء آﺎن ﻟﻠﻤﺎﻟﻚ اوﻟﻐﻴﺮﻩ ‪،‬‬ ‫اى ان ال ‪ default‬ﻟﻪ اﻧﻪ ﻟﻴﺲ ‪ . permission‬‬ ‫ﻳﺘﻢ ﺗﻌﺪﻳﻞ وﺗﻐﻴﻴﺮ ال ‪ permission‬اى اﻟﺼﻼﺣﻴﺎت ﺑﺎﻻﻣﺮ ‪ .r-.r--) 644‬‬ ‫وارﻳﺪ ﺗﻌﺪﻳﻞ ال‪ permission‬ﻟﺠﻌﻞ هﺬا اﻟﻤﻠﻒ ‪ executable‬اى اﺿﺎﻓﻪ ‪ x‬ﻟﻠﻤﺎﻟﻚ ‪ ،‬وﻻﻧﻨﻰ‬ ‫ﻣﺎﻟﻜﻪ ﻓﺒﺒﺴﺎﻃﻪ ﺳﺎﻧﻔﺬ اﻻﻣﺮ اﻟﺘﺎﻟﻰ‬ ‫‪chmod 744 perm‬‬ ‫ﻓﺒﺒﺴﺎﻃﻪ اﻋﺪت ﺻﻴﺎﻏﻪ ال ‪ permission‬ﻣﻦ ﺟﺪﻳﺪ وﻟﻜﻦ ﺑﻌﺪ اﺿﺎﻓﻪ اﻟﺮﻗﻢ ‪) 1‬وهﻮ اﻟﺒﺪﻳﻞ ﻟﻠﺤﺮف‬ ‫‪ (x‬اﻟﻰ ﺗﺼﺮﻳﺢ اﻟﻤﺎﻟﻚ اﻟﺬى آﺎن ﻓﻰ اﻻﺳﺎس ‪.‬‬ ‫ﻧﻔﺘﺮض اﻧﻨﻰ اﻣﻠﻚ ﻣﻠﻒ ﻳﺴﻤﻰ ‪ ، perm‬وهﻮ ذو ‪ permission‬ﻋﺒﺎرﻩ ﻋﻦ ‪(rw.‫ﺗﻌﺪﻳﻞ ال ‪. 6‬‬ ‫ﺧﻄﻮﻩ اﺧﺮى ‪ ،‬وﻓﻴﻬﺎ ﺳﻴﺘﻢ ﻣﻨﺢ اﻟﻤﺠﻤﻮﻋﻪ ﺗﺼﺮﻳﺢ اﻟﻜﺘﺎﺑﻪ اى اﻟﺘﻌﺪﻳﻞ ﻓﻰ اﻟﻤﻠﻒ واﻟﻤﺘﻤﺜﻞ ﻓﻰ ‪، w‬‬ ‫ﻓﺎﻟﻤﺠﻤﻮﻋﻪ ﻟﻬﺎ ﺗﺼﺮﻳﺢ ﻗﺮاءﻩ ﻓﻘﻂ اى ‪ 4‬وﻣﺎ ارﻳﺪ ﻓﻌﻠﻪ هﻮ ﺗﻌﻠﻴﻪ هﺬا اﻟﺘﺼﺮﻳﺢ اﻟﻰ ‪ 6‬ﻟﻴﻜﻮن ﻗﺮاءﻩ‬ ‫وآﺘﺎﺑﻪ وﺑﺎﻟﺘﺎﻟﻰ ﺳﻴﻜﻮن ﺷﻜﻞ ال‪ mode‬اﻟﺠﺪﻳﺪ هﻮ‬ ‫‪chmod 764 perm‬‬ ‫وﻳﻤﻜﻦ ﺗﻨﻔﻴﺬ اﻻﻣﺮ ‪ ls -l‬او ‪ stat‬ﻗﺒﻞ وﺑﻌﺪ ﻋﻤﻠﻴﻪ ﺗﻐﻴﻴﺮ ال ‪ permission‬ﻟﻤﻼﺣﻈﻪ اﻟﻔﺎرق ‪. chmod‬‬ ‫‪ -1‬ﺗﻌﺪﻳﻞ ال ‪ permission‬ﺑﺎﻻرﻗﺎم ‪. chmod‬وﺻﻴﻐﺘﻪ آﺎﻻﺗﻰ‬ ‫‪chmod <mode> file‬‬ ‫وال‪ mode‬اﻟﻤﻘﺼﻮد ﻓﻰ هﺬا اﻟﻤﺜﺎل هﻮ ال ‪.

permission‬‬ ‫اذا ‪ ،‬ﻋﻨﺪ آﺘﺎﺑﻪ ال ‪ mode‬ﻓﺎﻧﻪ ﻳﻜﺘﺐ ﺑﻤﺜﻞ هﺬﻩ اﻟﺼﻴﻐﻪ‬ ‫‪ u=rwx‬هﺬا ﺑﺎﻟﻨﺴﺒﻪ ﻟﻠﻤﺎﻟﻚ اى ال ‪user‬‬ ‫وﻟﻠﻤﺠﻤﻮﻋﻪ ﻳﻜﺘﺐ ‪g=rwx‬‬ ‫وﻟﺒﻘﻴﻪ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ﻳﻜﺘﺐ ‪ ، o=rwx‬اﺧﺘﺼﺎرا ل ‪other‬‬ ‫ﻓﻴﻜﻮن ﺷﻜﻞ اﻻﻣﺮ آﺎﻟﺘﺎﻟﻰ‬ ‫‪chmod u=rx perm‬‬ ‫وﺑﺬﻟﻚ ﻧﻜﻮن ﻗﺪ ﺣﺪدﻧﺎ ﺻﻼﺣﻴﻪ اﻟﻤﺎﻟﻚ ﺑﺎﻟﻘﺮاءﻩ واﻟﺘﻨﻔﻴﺬ ‪ ،‬وﻧﻔﺲ اﻟﻘﺎﻋﺪﻩ ﻓﻰ اﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻔﺌﺘﻴﻦ‬ ‫اﻻﺧﺮﻳﻴﻦ ‪.‬‬ .‫‪ -2‬ﺗﻌﺪﻳﻞ ال ‪ permission‬ﺑﺎﻟﺤﺮوف ‪.‬‬ ‫* اﻣﺎ اذا اردت ﺗﺤﺪﻳﺪ ال ‪ permission‬ﻟﻠﺠﻤﻴﻊ )اﻟﺜﻼث ﻓﺌﺎت( ﺑﺸﻜﻞ ﻣﺘﺴﺎوى ‪ ،‬اى ان ﻳﺎﺧﺬ آﻞ‬ ‫اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ﻧﻔﺲ ال ‪ ، permission‬ﻓﻔﻰ هﺬﻩ اﻟﺤﺎﻟﻪ ﺳﺘﺴﺘﺨﺪم اﻟﺤﺮف ‪ a‬ﻟﻠﺪﻻﻟﻪ ﻋﻠﻰ ‪ all‬وﻳﻜﻮن‬ ‫ﺷﻜﻞ اﻻﻣﺮ آﺎﻻﺗﻰ‬ ‫‪chmod a=rx perm‬‬ ‫* ﺑﻘﻰ اﻳﻀﺎ ﺷﻰ اﺧﻴﺮ وهﻮ ﻣﺘﻌﻠﻖ ﺑﺎﻟﻌﻼﻣﻪ اﻟﻔﺎﺻﻠﻪ ﺑﻴﻦ ﻧﻮﻋﻴﻪ اﻟﻤﺴﺘﺨﺪم وال ‪، permission‬‬ ‫ﻓﻠﻴﺲ ﻓﻰ آﻞ اﻟﺤﺎﻻت ﻧﻘﻮم ﺑﺎﺳﺘﺨﺪام اﻟﻌﻼﻣﻪ )=( ﺑﻞ ﻳﺘﻢ اﻳﻀﺎ اﺳﺘﺨﺪام ) ‪ +‬او ‪ ( -‬ﻓﺎن اردﻧﺎ زﻳﺎدﻩ‬ ‫ال ‪ permission‬ﻟﻤﺴﺘﺨﺪم ﻣﻌﻴﻦ ﻓﺎﻧﻨﺎ ﻧﺴﺘﺨﺪم ﻋﻼﻣﻪ ‪ ، +‬اﻣﺎ اذا اردﻧﺎ اﻧﻘﺎص ال ‪permission‬‬ ‫ﻓﻨﺴﺘﺨﺪم اﻟﻌﻼﻣﻪ ‪ -‬وهﻜﺬا ‪. x‬‬ ‫وﻻﻧﻪ ﻳﻮﺟﺪ اآﺜﺮ ﻣﻦ ﻧﻮﻋﻴﻪ ﻣﺴﺘﺨﺪم ﺑﺎﻟﻨﻈﺎم )‪ 3‬ﻓﺌﺎت آﻤﺎ ذآﺮﻧﺎ( ﻓﻼ ﺑﺪ ﻣﻦ ﺗﺤﺪﻳﺪ اﻟﻔﺌﻪ اﻟﺘﻰ ﺳﻴﻨﻔﺬ‬ ‫ﻋﻠﻴﻬﺎ هﺬا ال‪.‬‬ ‫ﺻﻴﻐﻪ هﺬا اﻟﺘﻌﺪﻳﻞ ﻣﺜﻞ اﻟﺼﻴﻐﻪ اﻻوﻟﻰ ‪ ،‬اﻻ اﻧﻪ ﺑﺪﻻ ﻣﻦ آﺘﺎﺑﻪ ارﻗﺎم ﻓﺴﻴﺘﻢ آﺘﺎﺑﻪ اﻻﺣﺮف اﻟﺪاﻟﻪ ﻋﻠﻰ‬ ‫ال ‪ permission‬وهﻰ ‪ r‬او ‪ w‬او ‪.

‫اواﻣﺮ ﻣﺘﻌﻠﻘﻪ ﺑﺎل ‪. permission‬‬
‫ﻳﻮﺟﺪ ﺛﻼث اواﻣﺮ ﻣﺘﻌﻠﻘﻪ ﺑﺎل ‪ permission‬وهﻢ‬
‫‪ umask -1‬وذﻟﻚ ﻟﺘﺤﺪﻳﺪ ال ‪ permission‬ﻟﻜﻞ اﻟﻤﻠﻔﺎت ﻋﻨﺪ اﻧﺸﺎﺋﻬﻢ ﻣﻦ اﻟﺒﺪاﻳﻪ ‪.‬‬
‫‪ chown -2‬وذﻟﻚ ﻟﺘﻐﻴﻴﺮ ﻣﻠﻜﻴﻪ اﻟﻤﻠﻔﺎت ﻟﻤﺴﺘﺨﺪم او ﻟﻤﺠﻤﻮﻋﻪ اﺧﺮى ‪.‬‬
‫‪ chgrp -3‬ﻟﺘﻐﻴﻴﺮ ﻣﻠﻜﻴﻪ اﻟﻤﻠﻒ ﻟﻤﺠﻤﻮﻋﻪ اﺧﺮى ‪.‬‬

‫اوﻻ اﻻﻣﺮ ‪. umask‬‬
‫ﻟﻌﻠﻨﺎ ﻻﺣﻈﻨﺎ ﻋﻨﺪ اﻟﻜﻼم ﻋﻦ ﺗﻌﺪﻳﻞ ال ‪ permission‬وذﻟﻚ ﺑﺎﺳﺘﺨﺪام اﻻﻣﺮ ‪) chmod‬اﻟﺬى ﻳﻌﺪ‬
‫اﺧﺘﺼﺎر ل ‪ (chang mode‬ان هﺬا اﻻﻣﺮ ﻳﻐﻴﺮ ال ‪ mode‬اﻟﺨﺎص ﺑﺎل ‪ ، permission‬ﻣﻤﺎ ﻳﻌﻨﻰ‬

‫ان ال ‪ permission‬ﻓﻰ اﻻﺳﺎس ﻣﻮﺟﻮد ‪.‬‬
‫وﻟﻌﻞ اﻻﻣﺮ ‪ umask‬ﻳﻮﺿﺢ ﻟﻨﺎ هﺬﻩ اﻟﻨﻘﻄﻪ‪ ،‬ﻓﺒﻜﺘﺎﺑﻪ وﺗﻨﻔﻴﺬ اﻻﻣﺮ ﻣﻨﻔﺮدا ﻳﻈﻬﺮ ﻟﻨﺎ ﻧﺎﺗﺞ ‪ ،‬هﺬا اﻟﻨﺎﺗﺞ‬
‫ﻋﺒﺎرﻩ ﻋﻦ رﻗﻢ ‪ ،‬وهﺬا اﻟﺮﻗﻢ ﻳﻮﺿﺢ ﻟﻨﺎ ال ‪ permission‬اﻟﺬى ﻳﺤﺪد ﺗﺼﺎرﻳﺢ اﻟﻤﻠﻔﺎت اﻟﺠﺪﻳﺪﻩ اﻟﺘﻰ‬
‫ﺳﻮف ﺗُﻨﺸﺄ ‪.‬‬
‫ﺑﻤﻌﻨﻰ اﺧﺮ ‪ ،‬اﻟﻤﻠﻔﺎت اﻟﺠﺪﻳﺪﻩ اﻟﺘﻰ ﺳﺘﻨﺸﺄهﺎ ﻻ داﻋﻰ ﻣﻌﻬﺎ ان ﺗﻌﺪل ال ‪ permission‬اﻟﺨﺎص ﺑﻬﺎ‬
‫ﺑﻌﺪ اﻧﺸﺄءهﺎ اذا آﻨﺖ ﻗﺪ ﺿﺒﻄﺖ هﺬا ال ‪ permission‬ﻣﻦ اﻟﺒﺪاﻳﻪ ﺑﺎﻻﻣﺮ ‪. umask‬‬
‫دﻋﻨﺎ اﻻن ﻧﺮى اﻟﺮﻗﻢ اﻟﺬى ﺳﻴﻈﻬﺮ وﻣﻌﻨﺎﻩ ‪ ،‬ﺛﻢ ﺑﻌﺪ ذﻟﻚ ﻧﺮى آﻴﻒ ﻳﻤﻜﻨﻨﺎ ﺿﺒﻂ ال ‪permission‬‬
‫ﺑﺎﻟﻨﺴﺒﻪ ﻟﻠﻤﻠﻔﺎت اﻟﺘﻰ ﺳﺘﻨﺸﻰ ﻓﻰ اﻟﻤﺴﺘﻘﺒﻞ ‪.‬‬
‫ﻓﻘﻂ اآﺘﺐ اﻻﻣﺮ ‪ umask‬وﺳﺘﺮى ان اﻟﻨﺎﺗﺞ ﻣﻨﻪ ﻣﺜﻞ هﺬا اﻟﺮﻗﻢ‬
‫‪0022‬‬
‫هﺬا اﻟﺮﻗﻢ آﻤﺎ اﺳﻠﻔﺖ ﻳﻮﺿﺢ ﻟﻨﺎ ال ‪ permission‬اﻟﺤﺎﻟﻰ وﻟﻜﻦ ﺑﻄﺮﻳﻘﻪ ﻋﻜﺴﻴﻪ ‪.‬اى ان ال‬
‫‪ permission‬اﻟﺤﺎﻟﻰ ﻟﻴﺲ ‪ ، 022‬وﻟﻜﻨﻪ ‪.755‬‬
‫ﻓﺎﻻﻣﺮ ‪ umask‬ﻳﻌﻤﻞ ﻋﻦ ﻃﺮﻳﻖ ﻃﺮح هﺬا اﻟﺮﻗﻢ )‪ (22‬ﻣﻦ اﻟﺮﻗﻢ ال‪ default‬ﻟﻞ ‪permission‬‬
‫واﻟﺮﻗﻢ ال‪ default‬ﻟﻞ‪ permission‬هﻮ ‪ 777‬ﻟﻠﻤﺠﻠﺪات ‪ ،‬و ‪ 666‬ﻟﻠﻤﻠﻔﺎت ‪.‬وذﻟﻚ ﻳﻌﻨﻰ ان ال‬
‫‪ permission‬اﻟﺤﺎﻟﻰ هﻮ‪ 755‬ﻟﻠﻤﺠﻠﺪات ‪ ،‬و ‪ 644‬ﻟﻠﻤﻠﻔﺎت ‪.‬‬
‫ﻓﻠﻮ آﺎن ﻧﺎﺗﺞ اﻻﻣﺮ ‪ umask‬ﻋﻠﻰ ﻧﻈﺎﻣﻚ هﻮ ﻧﻔﺲ اﻟﻨﺎﺗﺞ اﻟﻤﺬآﻮر هﻨﺎ ‪ ،‬ﻓﻴﻤﻜﻨﻚ اﻻن اﻧﺸﺎء ﻣﻠﻒ‬
‫ﺟﺪﻳﺪ ﺛﻢ ﻋﺮض ال ‪ permission‬اﻟﺨﺎص ﺑﻪ وﻣﻦ ﺛﻢ ﺳﺘﺠﺪﻩ ‪ rw- r-- r--‬اى ‪. 644‬‬

‫ﺿﺒﻂ ال ‪permission‬‬
‫ﻳﻤﻜﻨﻨﺎ اﻳﻀﺎ ﺑﺎﻻﻣﺮ ‪ umask‬ﺗﻬﻴﺌﻪ ال ‪ permission‬ﻟﻠﻤﻠﻔﺎت واﻟﻤﺠﻠﺪات اﻟﺠﺪﻳﺪﻩ ﺑﺤﻴﺚ ﺗﻜﻮن‬
‫ﻣﻘﺘﺮﻧﻪ ﺑﺎل ‪ permission‬اﻟﻤﻄﻠﻮب وﻗﺖ اﻧﺸﺄءهﺎ وﻣﻦ ﺛﻢ ﻓﻼ داﻋﻰ ﻻﺟﺮاء ﻋﻤﻠﻴﻪ ‪ chmod‬ﻋﻠﻰ‬
‫آﻞ ﻣﻠﻒ ﻋﻠﻰ ﺣﺪﻩ ﺑﻌﺪ اﻧﺸﺄءﻩ‪.‬‬
‫ﻳﺘﻢ ذﻟﻚ ﻋﻦ ﻃﺮﻳﻖ اﺿﺎﻓﻪ ال ‪ permission‬اﻟﻰ اﻻﻣﺮ ‪ umask‬وﻟﻜﻦ آﻤﺎ رأﻳﻨﺎ ﺑﻄﺮﻳﻘﻪ ﻋﻜﺴﻴﻪ‪.‬‬
‫ﻓﺎن اردت ﺗﺼﺮﻳﺢ ﻗﻴﻤﺘﻪ ‪ 733‬ﻣﺜﻼ ﻓﻴﻜﻮن ﺷﻜﻞ اﻻﻣﺮ آﺎﻟﺘﺎﻟﻰ‬
‫‪umask 0044‬‬
‫وان آﺎن اﻟﺘﺼﺮﻳﺢ اﻟﺬى ﺗﺮﻳﺪﻩ ‪ 422‬ﻓﺴﻴﻜﻮن اﻻﻣﺮ ﺑﺎﻟﺼﻴﻐﻪ اﻟﺘﺎﻟﻴﻪ‬
‫‪umask 355‬‬
‫اﻻن ﻳﻤﻜﻨﻚ ﺿﺒﻂ ال ‪ permission‬اﻟﺬى ﺗﺮﻳﺪﻩ ﻋﻠﻰ ﻧﻈﺎﻣﻚ ﻟﻠﻤﻠﻔﺎت اﻟﺘﻰ ﺳﺘﻨﺸﺄ ﻓﻰ اﻟﻤﺴﺘﻘﺒﻞ ‪،‬‬
‫وﻻ ﺗﺠﻌﻞ اﻻﻣﺮ ‪ umask‬وﻃﺮﻳﻘﺘﻪ اﻟﻤﻌﻜﻮﺳﻪ ﺗﻘﻠﻘﻚ اﻻن ‪ ،‬ﻓﺎﻟﻤﺴﺄﻟﻪ ﻣﺴﺎﻟﻪ وﻗﺖ ‪ ،‬ﺛﻢ ﺳﺘﺠﺪ ﻧﻔﺴﻚ‬
‫ﻗﺪ أﻟﻔﺖ ﻃﺮﻳﻘﺘﻪ ﻓﻰ اﻟﻌﻤﻞ ‪.‬‬

‫ﺛﺎﻧﻴﺎ اﻻﻣﺮ ‪. chown‬‬
‫وﻇﻴﻔﻪ اﻻﻣﺮ ‪ chown‬هﻰ ﺗﻐﻴﻴﺮ ﻣﻠﻜﻴﻪ اﻟﻤﻠﻒ اﻟﻰ ﻣﺴﺘﺨﺪم اﺧﺮ اواﻳﻀﺎ اﻟﻰ ﻣﺠﻤﻮﻋﻪ اﺧﺮى ‪.‬‬
‫وﺻﻴﻐﻪ اﻻﻣﺮ هﻰ‬
‫‪chown <newuser> file...‬‬
‫‪chown <newuser:newgroup> file...‬‬
‫ﻓﺎﻟﺼﻴﻐﻪ اﻻوﻟﻰ ﺗﻘﻮم ﻧﺘﻐﻴﻴﺮ ﻣﻠﻜﻴﻪ اﻟﻤﻠﻒ‪/‬اﻟﻤﻠﻔﺎت ﻓﻘﻂ اﻟﻰ ﻣﺴﺘﺨﺪم ﺟﺪﻳﺪ ‪.‬‬
‫اﻣﺎ اﻟﺼﻴﻐﻪ اﻟﺜﺎﻧﻴﻪ ﻓﺘﻘﻮم ﺑﺘﻐﻴﻴﺮ ﻣﻠﻜﻴﻪ اﻟﻤﻠﻒ واﻟﻤﺠﻤﻮﻋﻪ اﻳﻀﺎ ‪.‬‬
‫واﻟﻔﺮق ﺑﻴﻦ اﻟﺼﻴﻐﻪ اﻻوﻟﻰ واﻟﺜﺎﻧﻴﻪ هﻮ ‪،‬اﻟﺼﻴﻐﻪ اﻻوﻟﻰ ﻋﻨﺪﻣﺎ ﺗﻨﻘﻞ ﻣﻠﻜﻴﻪ اﻟﻤﻠﻒ ﻓﺎن ﻣﺠﻤﻮﻋﻪ‬
‫اﻟﻤﻠﻒ اﻻوﻟﻰ ﺗﺒﻘﻰ آﻤﺎ هﻰ ﻻ ﺗﺘﻐﻴﺮ ‪ .‬ﻓﻴﺘﻐﻴﺮ اﻟﻤﺎﻟﻚ وﻻ ﻳﺘﻐﻴﺮ اﻟﻤﻠﻒ اﻟﺠﺪﻳﺪ اﻟﻰ ﻣﺠﻤﻮﻋﺘﻪ ﺑﻞ ﻳﻈﻞ‬
‫ﻓﻰ اﻟﻤﺠﻤﻮﻋﻪ اﻟﺴﺎﺑﻘﻪ ‪.‬‬
‫اﻣﺎ اﻟﺼﻴﻐﻪ اﻟﺜﺎﻧﻴﻪ ﻓﺘﻨﻘﻞ اﻟﻤﻠﻜﻴﻪ واﻳﻀﺎ اﻟﻌﻀﻮﻳﻪ ﻓﻰ اﻟﻤﺠﻤﻮﻋﻪ ‪ .‬وﻗﺪ ﺗﻜﻮن هﺬﻩ اﻟﻤﺠﻤﻮﻋﻪ اﻟﺠﺪﻳﺪﻩ‬
‫هﻰ ذاﺗﻬﺎ ﻧﻔﺲ ﻣﺠﻤﻮﻋﻪ اﻟﻤﺎﻟﻚ اﻟﺠﺪﻳﺪ او ﺗﻜﻮن ﻣﺠﻤﻮﻋﻪ ﻣﺨﺘﻠﻔﻪ ﻋﻨﻪ ﺗﻤﺎﻣﺎ ‪.‬‬
‫وﻳﻔﺼﻞ ﻓﻰ هﺬﻩ اﻟﺤﺎﻟﻪ ﺑﻴﻦ اﻟﻤﺎﻟﻚ اﻟﺠﺪﻳﺪ واﻟﻤﺠﻤﻮﻋﻪ اﻟﺠﺪﻳﺪﻩ ﺑﺎل‪ colon‬او ﻓﻘﻂ ﺑﺎل ‪. dot‬‬

‫ﺛﺎﻟﺜﺎ اﻻﻣﺮ ‪chgrp‬‬
‫ﻳﻌﺪ اﻻﻣﺮ ‪ chgrp‬ﻣﺮادف ﻟﻼﻣﺮ ‪ chown‬ﻋﻨﺪﻣﺎ ﻳﺴﺘﺨﺪم هﺬا اﻻﺧﻴﺮ ﻓﻰ ﺗﻐﻴﻴﺮ اﻟﻤﺠﻤﻮﻋﻪ ‪ ،‬ﻓﻴﻤﻜﻦ‬
‫اﻻﺳﺘﻌﺎﻧﻪ ﺑﻪ ﻓﻰ ﺗﻐﻴﻴﺮ اﻟﻤﺠﻤﻮﻋﻪ ﻟﻠﻤﻠﻒ‪/‬ﻟﻠﻤﻠﻔﺎت اﻟﻤﻌﻴﻨﻪ ‪ ،‬او ﻓﻘﻂ اﻻآﺘﻔﺎء ﺑﺎﺳﺘﺨﺪام اﻻﻣﺮ ‪chown‬‬
‫وﺻﻴﻐﺘﻪ هﻰ‬
‫‪chgrp <newgroup> file...‬‬

.

mount‬‬ ‫ﺷﻜﻞ ال ‪file system‬‬ ‫ﻟﻌﻞ ﻣﻦ اﻟﺨﻮاص اﻟﻤﻤﻴﺰﻩ ل ﻟﻴﻨﻮآﺲ ‪-‬او ﻻﻧﻈﻤﻪ ﻳﻮﻧﻜﺲ ﻋﻤﻮﻣﺎ‪ -‬هﻰ ﻃﺮﻳﻘﻪ ﻋﻤﻞ ال ‪file-‬‬ ‫‪ system‬اﻟﺨﺎص ﺑﻪ واﻟﺘﻰ ﻧﻌﺮﻓﻬﺎ ﺑﺎل ‪. /‬‬ ‫واﻟﻤﺴﺄﻟﻪ ﻟﻴﺴﺖ ﺟﺬر وﻓﺮع واﺣﺪ ﻓﻘﻂ ‪ ،‬ﺑﻞ ان هﺬا اﻟﻔﺮع ﻳﺘﺪﻟﻰ ﻣﻨﻪ اﻳﻀﺎ اﻓﺮع اﺧﺮى وﻟﻜﻦ ﻳﺨﺘﻠﻒ‬ ‫ﻋﺪدهﺎ ﻣﻦ )ﻓﺮع( ﻻﺧﺮ ‪. mount‬‬ ‫ﻓﺎل ﻳﻮﻧﻜﺲ او ال ﻟﻴﻨﻮآﺲ ﻟﻪ ﻃﺮﻳﻘﻪ ﻋﻤﻞ ﻣﺨﺘﻠﻔﻪ ﺗﻤﺎﻣﺎ ﻋﻦ اﻟﺘﻰ اﻋﺘﺪﻧﺎهﺎ ﻣﻊ وﻳﻨﺪوز ﺑﺎﻟﻨﺴﺒﻪ ﻟﻞ‬ ‫‪ ، file system‬وﺗﺘﻤﺜﻞ ﻓﻰ‬ ‫ﻟﻠﻨﻈﺎم آﻜﻞ ﺷﻜﻞ ﻣﻤﻴﺰ ‪ ،‬ﺷﺒﻴﻪ ﺑﺎﻟﺸﺠﺮﻩ واﻓﺮﻋﻬﺎ ‪ ،‬ﻓﻜﻤﺎ ان ﻟﻠﺸﺠﺮﻩ ﺟﺬر رﺋﻴﺴﻰ وﺗﺘﻔﺮع ﻣﻨﻪ ﺑﻘﻴﻪ‬ ‫اﻻﻓﺮع ‪ ،‬اﻳﻀﺎ ال ‪ file system‬اﻟﺨﺎص ب ﻳﻮﻧﻜﺲ )واﻻﻧﻈﻤﻪ اﻟﻤﺘﻮاﻓﻘﻪ ﻣﻌﻪ ك ﻟﻴﻨﻮآﺲ( ﻟﻪ ﺟﺬر‬ ‫رﺋﻴﺴﻰ وﻳﺘﻔﺮع ﻣﻨﻪ ﺑﻘﻴﻪ اﻻﺟﺰاء اﻟﻤﻜﻮﻧﻪ ﻟﻠﻨﻈﺎم ‪. /‬‬ ‫وﻋﻤﻠﻴﻪ اﻻﺗﺼﺎل او ﺑﻠﻔﻆ ادق اﻻﻟﺘﺤﺎق ﺑﺎل ‪ ، (root) /‬ﺗﺴﻤﻰ ﻋﻤﻠﻴﻪ ال ‪. removable device‬‬ ‫ﻓﺎﻟﻘﺴﻢ اﻻول ﻣﺤﺪد ﻟﻪ ﻣﻌﻠﻮﻣﺎت ﻓﻰ ﻣﻠﻒ ﻣﻌﻴﻦ ‪ ،‬ﻳﺬهﺐ اﻟﻨﻈﺎم ﻟﻘﺮأﺗﻪ وﺗﻨﻔﻴﺬ اﻻﻣﺮ ‪ mount‬ﻋﻠﻲ‬ ‫آﻞ ﻣﻦ ﻓﻴﻪ آﻠﻤﺎ ﻗﻤﻨﺎ ﺑﺘﺸﻐﻴﻞ اﻟﻨﻈﺎم ‪.‬‬ ‫‪ -2‬وﻗﺴﻢ ﺗﺘﻢ ﻟﻪ ﻋﻤﻠﻴﻪ ال ‪ mount‬ﺑﻮاﺳﻄﻪ اﻟﻤﺴﺘﺨﺪم او اﻟﻤﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻨﻈﺎم ‪ ،‬وﻳﺘﻢ هﺬا ﻏﺎﻟﺒﺎ ﻣﻊ‬ ‫اﻻﺟﺰاء اﻟﺘﻰ ﺗﺮآﺐ وﺗﻨﺰع ﻣﻦ اﻟﻨﻈﺎم ﻣﺜﻞ ال ‪ cd‬وال ‪ floppy‬وﻣﺎ ﺷﺎﺑﻬﻬﻢ وﻳﻄﻠﻖ ﻋﻠﻴﻬﻢ‬ ‫‪.‬‬ ‫ﻓﺎﻟﺠﺬر اﻟﺮﺋﻴﺴﻰ ﻓﻰ اﻟﻴﻮﻧﻜﺲ هﻮ ال ‪ /‬وﻟﻬﺬا ﻳﺴﻤﻰ ال ‪ ، root‬وﺑﻘﻴﻪ اﻻﺟﺰاء ﺗﺘﺪﻟﻰ ﻣﻦ هﺬا اﻟﺠﺬر‬ ‫وﻣﻠﺤﻘﻪ ﺑﻪ ﻣﺜﻞ ‪ /etc‬او ‪ /boot‬وﻏﻴﺮهﻢ ‪ ،‬ﺑﻤﻌﻨﻰ ان ‪ ،‬هﺬا اﻟﻔﺮع ﻟﻪ اﺳﻢ وﻟﻜﻦ ﻳﺴﺒﻘﻪ ‪-‬آﻤﺎ ﻧﺮى‪-‬‬ ‫ال ‪. mount‬‬ ‫ﻓﺎﻟﻨﻈﺎم آﻜﻞ )اى اﻟﺸﺠﺮﻩ ﺑﻔﺮوﻋﻬﺎ( ﻟﻴﺲ آﺘﻠﻪ او ﻗﻄﻌﻪ واﺣﺪﻩ ‪ ،‬ﺑﻞ اﻧﻪ ﻋﺒﺎرﻩ ﻋﻦ اﺟﺰاء ‪ ،‬وآﻞ هﺬﻩ‬ ‫اﻻﺟﺰاء ﻣﺘﺼﻠﻪ ﺑﺎﻟﺠﺬر اﻟﺮﺋﻴﺴﻰ ﻟﻠﻨﻈﺎم وهﻮ ال ‪.‬‬ ‫ﻋﻤﻠﻴﻪ ال ‪mount‬‬ ‫ﻳﺘﻤﺘﻊ ﻧﻈﺎم ﻳﻮﻧﻜﺲ ﺑﺨﺎﺻﻴﻪ اﺧﺮى ﻣﺘﻌﻠﻘﻪ اﻳﻀﺎ ﺑﺎل ‪ file system‬وهﻰ ﻋﻤﻠﻴﻪ ال ‪.‫ال ‪ fs‬وال ‪. mount‬‬ ‫واﻳﻀﺎ ﻋﻤﻠﻴﻪ اﻧﻬﺎء هﺬا اﻻﻟﺘﺤﺎق ﺑﺎل ‪ ، (root) /‬ﺗﺴﻤﻰ ‪. unmount‬‬ ‫هﺬا ﻣﻦ ﻧﺎﺣﻴﻪ اﺳﻢ اﻟﻌﻤﻠﻴﻪ ووﻇﻴﻔﺘﻬﺎ ‪ ،‬وﻟﻜﻦ آﻴﻒ ﺗﺘﻢ هﺬﻩ اﻟﻌﻤﻠﻴﻪ ؟‬ ‫ﻳﻤﻜﻨﻨﺎ ﺗﻘﺴﻴﻢ اﻟﻨﻈﺎم ‪-‬ﻣﻦ ﺟﻬﻪ اﺗﻤﺎم هﺬﻩ اﻟﻌﻤﻠﻴﻪ‪ -‬اﻟﻰ ﻗﺴﻤﻴﻦ‬ ‫‪ -1‬ﻗﺴﻢ ﺗﺘﻢ ﻟﻪ ﻋﻤﻠﻴﻪ ال ‪ mount‬او اﻻﻟﺤﺎق ﺑﺎل ‪ root‬ﺗﻠﻘﺎﺋﻴﺎ ‪ ،‬اى ﻳﻘﻮم اﻟﻨﻈﺎم ﺑﻬﺬﻩ اﻟﻌﻤﻠﻴﻪ ﺑﻨﻔﺴﻪ‬ ‫واﺛﻨﺎء اﻟﺘﺤﻤﻴﻞ ‪ ، booting‬وﻳﺘﻢ هﺬا ﻣﻊ آﻞ ال ‪ file system‬اﻟﺬى ﺗﻢ ﺗﺨﺼﻴﺺ ﻟﻪ ‪partition‬‬ ‫اﺛﻨﺎء ﺗﻨﺰﻳﻞ اﻟﻨﻈﺎم ﻣﺜﻞ ال ‪ var‬و ‪ tmp‬و ‪ usr‬وﻏﻴﺮهﻢ ‪.‬‬ .

gui‬‬ ‫اذا هﻨﺎك ‪ mount‬وهﻨﺎك ‪.‬‬ ‫وهﻮ ﺑﺎﻟﻀﺒﻂ اﻟﻤﺠﻠﺪ اﻟﺬى ﺗﺮاﻩ وﺗﺘﻌﺎﻣﻞ ﻣﻌﻪ ﻣﻦ ﺧﻼل ال اﻟﺸﺎﺷﻪ ال ‪ graphical‬او ‪. file system table‬‬ ‫واﻟﻘﺴﻢ اﻟﺜﺎﻧﻰ ﻣﺬآﻮر اﻳﻀﺎ ﻓﻰ اﻟﻤﻠﻒ ‪ fstab‬وﻟﻜﻦ ﻻﻧﻪ ﻳﺮآﺐ وﻳﻨﺰع ﻣﻦ اﻟﻨﻈﺎم ﺑﺎﺳﺘﻤﺮار ﻓﺎن ﻟﻪ‬ ‫ﺗﻌﺎﻣﻞ ﺧﺎص ﻳﺘﻤﺜﻞ ﻓﻰ ان اﻟﻤﺴﺘﺨﺪم ﻳﺘﻮﻟﻰ ﻋﻤﻠﻴﻪ اﻟﺤﺎﻗﻪ ﺑﻨﻔﺴﻪ ﺑﺎﻟﻨﻈﺎم وذﻟﻚ اﻳﻀﺎ ﺑﺎﻻﻣﺮ‪.‬‬ .‫وهﺬا اﻟﻤﻠﻒ ﻳﻨﺸﺄ ﻣﻊ اﻟﻤﻠﻔﺎت اﻟﺘﻰ ﻳﻘﻮم اﻟﻨﻈﺎم ﺑﺎﻧﺸﺎﺋﻬﺎ اﺛﻨﺎء اﻟﺘﻨﺰﻳﻞ وﻳﺴﻤﻰ ‪ ، fstab‬اﺧﺘﺼﺎرا ل‬ ‫‪.‬وهﻮ ﻋﺒﺎرﻩ ﻋﻦ ﻣﺠﻠﺪ ‪. fs‬وان ﻟﻢ ﺗﻮﺟﺪ ‪ media‬ﻓﻼ ﻳﺤﺪث ﻟﻠﻨﻈﺎم اى ﻣﺸﻜﻠﻪ ﻋﻨﺪ ﺑﺪاﻳﻪ‬ ‫اﻟﺘﺸﻐﻴﻞ ‪. mount point‬‬ ‫اﻻول هﻮ ال ‪ device‬واﻟﺜﺎﻧﻰ ﻋﺒﺎرﻩ ﻋﻦ ﻣﺠﻠﺪ ‪. etc‬‬ ‫وﻏﻴﺮهﻢ ‪ . mount‬‬ ‫اﻟﺴﺒﺐ ﻓﻰ ان اﻟﻨﻈﺎم ﻻ ﻳﻠﺤﻖ هﺬا اﻟﻘﺴﻢ اﻟﺜﺎﻧﻰ ﺑﺎل ‪) /‬ﻣﻊ اﻧﻪ ﻣﺬآﻮر ﻓﻰ اﻟﻤﻠﻒ ‪ ( fstab‬هﻮ آﻤﺎ ذآﺮﻧﺎ ان هﺬا اﻟﻘﺴﻢ‬ ‫ﻳﻨﺰع وﻳﺮآﺐ ‪ ،‬ﻓﻠﻮ ﺣﺎول اﻟﻨﻈﺎم اﻟﺤﺎﻗﻪ ﻣﻊ ﺑﻘﻴﻪ ال ‪ fs‬وﻟﻢ ﻳﺠﺪ اى ‪ media‬داﺧﻠﻪ ﻓﺴﻮف ﺗﺤﺪث ﻣﺸﻜﻠﻪ ﻟﻠﻨﻈﺎم ‪،‬‬ ‫ﺗﺘﻤﺜﻞ ﻓﻰ‬ ‫‪ -1‬ﻳﺘﻮﺟﺐ ﻋﻠﻰ اﻟﻨﻈﺎم اﻟﺤﺎﻗﻪ ﻧﻈﺮﻳﺎ ‪،‬ﻻﻧﻪ ﻣﺬآﻮر ﻓﻰ اﻟﻤﻠﻒ ‪fstab‬‬ ‫‪ -2‬وﻣﻦ ﻧﺎﺣﻴﻪ اﺧﺮى ﻋﺪم اﻣﻜﺎﻧﻴﻪ اﻟﺤﺎﻗﻪ ﻋﻤﻠﻴﺎ ﺑﺴﺒﺐ ﻋﺪم وﺟﻮد ‪ media‬ﺑﺪاﺧﻞ ال ‪ cdrom‬او ال ‪ floppy‬او‬ ‫ﻏﻴﺮهﻢ ﻣﻦ ال ‪> removable device‬ﻓﺎﻟﻮﺿﻊ اﻟﻄﺒﻴﻌﻰ ﻟﻬﺬﻩ اﻻﺟﺰاء ﺧﻠﻮهﺎ اﺛﻨﺎء ﻗﻴﺎم اﻟﻨﻈﺎم ﻣﻦ اى ‪<media‬‬ ‫وﻟﺘﺠﻨﺐ ﻣﺜﻞ هﺬﻩ اﻟﻤﺸﺎآﻞ ﻓﺎن اﻟﻨﻈﺎم )اوآﻞ( او ﻓﻮض اﻟﻤﺴﺘﺨﺪم ﻓﻰ اﺟﺮاء ﻋﻤﻠﻴﻪ ال ‪ mount‬هﺬﻩ ﺑﺎﻟﻨﺴﺒﻪ ﻟﻬﺬﻩ‬ ‫اﻻﺟﺰاء اﻟﻘﺎﺑﻠﻪ ﻟﻠﻨﺰع ‪ ، removable device‬ﻓﺎن اراد اﻟﻤﺴﺘﺨﺪم اﺳﺘﻌﻤﺎﻟﻬﺎ وآﺎﻧﺖ هﻨﺎك ‪ media‬ﻣﻮﺟﻮدﻩ ﺑﺎﻟﻔﻌﻞ‬ ‫ﻓﻰ هﺬﻩ اﻻﺟﺰاء اﻟﻘﺎﺑﻠﻪ ﻟﻠﻨﺰع ﻓﺎﻧﻪ ﻳﻘﻮم ﺑﺮﺑﻄﻬﺎ ﺑﺎل ‪ . mount point‬‬ ‫ﻓﺎل‪ mount‬هﻮ اﻟﺠﺰء اﻟﻤﺤﺪد ﻓﻰ ال ‪ hard ware‬ﻣﺜﻞ ال ‪. mount‬‬ ‫وﺑﺎﻻﺟﺎﺑﻪ ﻋﻠﻰ هﺬا اﻟﺘﺴﺎؤل ﺳﻨﺠﺪ اﻧﻔﺴﻨﺎ اﻣﺎم ﻣﺼﻄﻠﺢ اﺧﺮ اﻻ وهﻮ ال ‪. partition‬‬ ‫اﻣﺎ ال ‪ mount point‬ﻓﻬﻮ اﺳﻢ هﺬا ال ‪ partition‬واﻟﺬى ﺗﺘﻌﺎﻣﻞ اﻧﺖ ﻣﻌﻪ ﻣﺜﻞ ‪var .‬‬ ‫اذا ﻓﻌﻨﺪﻧﺎ اﻻن ‪ fs‬ﻣﺘﻌﺪد ﻳﺘﻢ رﺑﻄﻪ واﻟﺤﺎﻗﻪ ﺑﺎﻟﺠﺬر اﻟﺮﺋﻴﺴﻰ ‪.‬‬ ‫وﻳﻘﻮم اﻻﻣﺮ ‪ mount‬ﺑﺎﻟﺮﺑﻂ ﺑﻴﻦ هﺬﻳﻦ اﻟﺠﺰﺋﻴﻦ ‪. mount‬‬ ‫وهﻨﺎك ﻣﻠﻒ ﺑﻪ ﻣﻌﻠﻮﻣﺎت ﺗﺤﺪد ﻃﺮﻳﻘﻪ ﻋﻤﻞ اﻻﻣﺮ‪ mount‬واﺳﻢ اﻟﻤﻠﻒ هﻮ ‪.‬‬ ‫وﻳﺘﻢ اﻻﻟﺤﺎق ﺑﻌﻤﻠﻴﻪ ‪ -‬او ﺑﻤﻌﻨﻰ اﺧﺮ ﺑﺎﻣﺮ‪ -‬ال ‪. fstab‬‬ ‫وﻗﺒﻞ ﺑﺪاﻳﻪ ﺷﺮح اﻻﻣﺮ ‪ mount‬واﻟﻤﻠﻒ ‪ ، fstab‬ﺑﻘﻴﺖ ﺟﺰﺋﻴﻪ اﺧﻴﺮﻩ ‪ ،‬وهﻰ ﺷﻜﻞ هﺬا ال ‪ fs‬ﺑﻌﺪ‬ ‫ﻋﻤﻠﻴﻪ ال ‪.

‬‬ ‫‪ -3‬ﻧﻮع اﻟﻤﻠﻔﺎت او ‪ file system type‬وهﻮ آﻤﺎ ﻧﺮى ﻓﻰ اﻟﻤﺜﺎل اﻟﺴﺎﺑﻖ ﻣﻘﺎﻃﻊ ﻣﺜﻞ ‪ext3 .‬‬ ‫وﻳﺴﻤﻰ هﺬا اﻟﻤﺠﻠﺪ ‪-‬او اﻟﻨﺎﻓﺬﻩ‪ -‬ﺑﺎل ‪. proc .‬‬ ‫‪ swap . udf‬وﻏﻴﺮهﻢ ‪ ،‬وﺳﻴﺘﻢ اﻟﺘﺤﺪث ﻋﻨﻬﻢ ﻋﻨﺪ اﻟﻜﻼم ﻋﻠﻰ ﺧﻴﺎرات اﻻﻣﺮ‪. mount‬‬ ‫‪ -2‬اﺳﻢ اﻟﻤﺠﻠﺪ وهﻮ ﺑﻤﻌﻨﻰ اﺧﺮ ‪ ،‬اﻟﻨﺎﻓﺬﻩ اﻟﺘﻰ ﻣﻦ ﺧﻼﻟﻬﺎ ﻧﺴﺘﻄﻴﻊ ان ﻧﺮى وﻧﺘﻌﺎﻣﻞ ﻣﻊ ال ‪device‬‬ ‫‪ ،‬ﻓﺎل ‪ partition‬ﻋﻠﻰ ﺳﺒﻴﻞ اﻟﻤﺜﺎل ‪-‬اﻳﺎ آﺎن ﻧﻮﻋﻪ‪ -‬ﻳﺤﻮى ‪ data‬او ﺑﻴﺎﻧﺎت ‪ ،‬وﻟﻜﻰ ﺗﺴﺘﻄﻴﻊ‬ ‫اﻟﺘﻌﺎﻣﻞ ﻣﻊ هﺬﻩ ال ‪ data‬اﻟﻤﻮﺟﻮدﻩ ﺑﺎﻟﻔﻌﻞ ﻋﻠﻰ اﻟﻬﺎرد ‪ ،‬ﻓﻼ ﺑﺪ ﻣﻦ ﺗﺤﺪﻳﺪ ﻧﺎﻓﺬﻩ ﻟﻬﺎ ‪. mount point‬‬ ‫واﻟﻤﻜﺎن اﻻﻓﺘﺮاﺿﻰ ‪ default‬ﻟﻞ ‪ device‬اﻟﺘﻰ ﺗﺮآﺐ وﺗﻨﺰع ﺑﺎﺳﺘﻤﺮار)‪ (removable‬هﻮ‬ ‫‪ /mnt‬وﻟﻬﺬا ﻓﺎﻧﻨﺎ ﻧﺮى ان ال ‪ cdrom‬و ‪ floppy‬ﻣﻮﺟﻮدان ﺗﺤﺘﻪ ‪. mount‬‬ .‬‬ ‫وهﺬا ال ‪ device‬ﻳﺴﻤﻰ اﻳﻀﺎ ﺑﺎل ‪.‫اﻟﻤﻠﻒ ‪. fstab‬‬ ‫ﻣﻠﻒ ‪ fstab‬ﻳﻮﺟﺪ ﺗﺤﺖ اﻟﻤﺴﺎر ‪ /etc‬اى ان ﻣﺴﺎرﻩ ﺑﺎﻟﻜﺎﻣﻞ هﻮ ‪ /etc/fstab‬وﺷﻜﻠﻪ آﺎﻟﺘﺎﻟﻰ‬ ‫وآﻤﺎ ﻧﺮى ﻓﺎن اﻟﻤﻠﻒ ﻋﺒﺎرﻩ ﻋﻦ ﺳﺘﻪ اﻋﻤﺪﻩ ‪ ،‬وﺗﺮﺗﻴﺐ هﺬﻩ اﻻﻋﻤﺪﻩ اﺟﻤﺎﻻ هﻮ‬ ‫‪ -1‬اﺳﻢ ال ‪device‬‬ ‫‪ -2‬اﺳﻢ اﻟﻤﺠﻠﺪ اﻟﻤﺮﺑﻮط ﺑﺎل ‪device‬‬ ‫‪ -3‬ﻧﻮع ال ‪file system‬‬ ‫‪ -4‬اﻟﺨﻴﺎرات او ‪options‬‬ ‫‪ -5‬ﻣﻌﻠﻮﻣﺎت ﺧﺎﺻﻪ ﻟﻞ ‪dump‬‬ ‫‪ -6‬ﻣﻌﻠﻮﻣﺎت ﺧﺎﺻﻪ ﻟﻞ ‪fsck‬‬ ‫اﻣﺎ ﻣﺎ ﺗﻌﻨﻴﻪ هﺬﻩ اﻻﻋﻤﺪﻩ ﺗﻔﺼﻴﻼ ﻓﻬﻮ آﺎﻻﺗﻰ‬ ‫‪ -1‬اﺳﻢ ال ‪ device‬هﻮ اﻟﺠﺰء اﻟﻤﺤﺪد ﻓﻰ ال ‪ hard ware‬ﻣﺜﻞ ال ‪ partition‬اﻟﻤﺨﺘﻠﻔﻪ ‪.

‬‬ ‫اﻣﺎ اﻟﺮﻗﻢ ‪ 0‬ﻓﻴﺪل ﻋﻠﻰ ان هﺬا ال ‪ file system‬ﻟﻴﺲ ﻟﻴﻨﻮآﺲ وﺑﺎﻟﺘﺎﻟﻰ ﻻ ﻳﺤﺘﺎج اﺟﺮاء ‪backup‬‬ ‫ﻋﻠﻴﻪ ‪.‬‬ ‫‪ -6‬اﻟﻌﻤﻮد اﻟﺨﺎص ﺑﺎﻻﻣﺮ ‪fsck‬‬ ‫>اﻻﻣﺮ ‪ fsck‬هﻮ اﻟﻤﺴﺌﻮل ﻋﻦ ﻋﻤﻞ ‪ file system check‬ﺑﻌﺪ آﻞ ﻋﻤﻠﻴﻪ ‪<reboot‬‬ ‫ﻓﻴﻌﺮف اﻟﻨﻈﺎم ﻣﻦ ﺧﻼل ﻣﻠﻒ ‪ fstab‬ﺗﺮﺗﻴﺐ ال ‪ file system‬ﻓﻰ ﻋﻤﻠﻴﻪ ال ‪ ، check‬وﺗﺤﺪد‬ ‫ارﻗﺎم اﻳﻀﺎ ﻓﻰ هﺬا اﻟﻌﻤﻮد )‪ 1‬و ‪ 2‬و ‪(0‬‬ ‫ﻓﺎﻟﺮﻗﻢ ‪ 1‬ﻳﺘﺤﺪد ﻓﻘﻂ ﻟﻞ ‪ /‬او ال ‪root partition‬‬ ‫واﻟﺮﻗﻢ ‪ 2‬ﻳﺘﺤﺪد ﻟﺒﻘﻴﻪ ال ‪ partition‬اﻟﺨﺎﺻﻪ ب ﻟﻴﻨﻮآﺲ ﻣﺜﻞ ‪ home‬و ‪boot‬‬ ‫اﻣﺎ اﻟﺮﻗﻢ ‪ 0‬ﻓﻠﺒﻘﻴﻪ ال ‪ partition‬واﻟﺘﻰ ﻻ ﺗﺤﺘﺎج ﻟﻌﻤﻠﻴﻪ ‪fsck‬‬ ‫اذا ﻓﻌﻨﺪﻣﺎ ﻳﻘﻮم اﻟﻨﻈﺎم ﺑﻌﻤﻞ ‪ fsck‬ﻓﺎﻧﻪ ﻳﻘﻮم ﺑﺎﺟﺮاء هﺬا اﻻﻣﺮ اوﻻ ﻋﻠﻰ ال ‪ root partition‬ﺛﻢ‬ ‫ﻳﺘﺒﻌﻪ ﺑﺒﻘﻴﻪ ال ‪.‬‬ ‫وﺳﻴﺘﻢ ﺷﺮح هﺬﻩ اﻟﺨﻴﺎرات ﻋﻨﺪ اﻟﺤﺪﻳﺚ ﻋﻠﻰ اﻻﻣﺮ ‪) mount‬وﺑﺎﻻﺧﺺ ﻋﻨﺪ اﻟﺤﺪﻳﺚ ﻋﻦ اﻟﻨﻮع اﻟﺜﺎﻧﻰ‬ ‫ﻣﻦ اﻟﺨﻴﺎرات اﻟﺘﻰ ﺗﺎﺗﻰ ﻣﻌﻪ( ‪. partition‬‬ .‫‪ -4‬اﻟﺨﻴﺎرات او ال ‪options‬‬ ‫وﻳﻮﺿﻊ ﺑﻬﺬا اﻟﻌﻤﻮد اﻟﺨﻴﺎرات اﻟﺘﻰ ﺗﺮﻳﺪ ان ﺗﺤﺪدهﺎ ﻟﻞ ‪ device‬ﻟﻴﻌﻤﻞ ﻋﻠﻰ اﺳﺎﺳﻬﺎ ‪.‬‬ ‫‪ -5‬اﻟﻌﻤﻮد اﻟﺨﺎص ﺑﺎﻻﻣﺮ ‪dump‬‬ ‫>‪dump‬هﻮ اﻟﺒﺮﻧﺎﻣﺞ اﻟﻤﺴﺌﻮل ﻋﻦ ﻋﻤﻞ ال ‪ backup‬ﻓﻰ ﻟﻴﻨﻮآﺲ وﻳﻮﻧﻜﺲ اﻳﻀﺎ<‬ ‫وﻣﻌﻨﻰ هﺬا ان اﻻﻣﺮ ‪ dump‬ﻋﻨﺪ اﺳﺘﺪﻋﺎؤﻩ ﻟﻌﻤﻞ ‪ backup‬ﻋﻠﻰ ال ‪ file system‬ﻓﺎﻧﻪ ﻳﺬهﺐ‬ ‫اﻟﻰ ﻣﻠﻒ ‪ fstab‬وﻳﻌﺮف ﻣﻨﻪ آﻴﻔﻴﻪ اﻟﺘﻌﺎﻣﻞ ﻣﻊ هﺬا ال ‪ ، file system‬وﻟﻬﺬا ﻓﺎﻧﻨﺎ ﻧﺮاﻩ ﻳﺎﺧﺬ ﻗﻴﻢ‬ ‫ﻋﺒﺎرﻩ ﻋﻦ ارﻗﺎم ) رﻗﻢ ‪ 1‬او رﻗﻢ ‪(0‬‬ ‫ﻓﺎﻟﺮﻗﻢ ‪ 1‬دﻟﻴﻞ ﻋﻠﻰ ان هﺬا ال ‪ file system‬ﺧﺎص ب ﻟﻴﻨﻮآﺲ وﺑﺎﻟﺘﺎﻟﻰ ﻋﻤﻞ ‪ backup‬ﻟﻪ ‪.

‬‬ ‫وهﺬا هﻮ ﺷﻜﻞ ﻣﻠﻒ ‪fstab‬‬ ‫ﻓﺎﻟﻌﻤﻮد اﻻول )آﻤﺎ ﺳﺒﻖ ان ذآﺮﻧﺎ( ﻣﻮﺟﻮد ﺑﻪ ال ‪ device‬وﻧﺮاﻩ ﻣﻜﺘﻮب ‪. /dev/cdrom‬‬ ‫واﻟﻌﻤﻮد اﻟﺜﺎﻧﻰ ﻣﻮﺟﻮد ﺑﻪ ال ‪ directory‬وﻟﻬﺬا ﻓﺎﻧﻨﺎ ﻧﺮاﻩ ﺗﺤﺖ اﻟﻤﺠﻠﺪ ‪/mnt‬‬ ‫وﻟﺘﻄﺒﻴﻖ اﻻﻣﺮ ‪ mount‬ﻋﻠﻰ ال ‪) directory‬اﻟﺼﻴﻐﻪ اﻻوﻟﻰ( ‪ ،‬ﻧﻜﺘﺐ اﻟﻰ ال ‪ shell‬هﺬا اﻻﻣﺮ‬ ‫‪mount /mnt/cdrom‬‬ ‫ﻓﻤﺎ ﺗﻔﻌﻠﻪ ال ‪ shell‬هﻮ اﻧﻬﺎ ﺗﺬهﺐ اﻟﻰ اﻟﻤﻠﻒ ‪ fstab‬وﺗﺴﺄﻟﻪ ﻣﻌﻠﻮﻣﺎت ﻋﻦ هﺬا ال ‪directory‬‬ ‫وﺑﺎﻟﺘﺎﻟﻰ ﺳﻴﺨﺒﺮهﺎ ان هﺬا ال ‪ directory‬ﻣﺨﺘﺺ ﺑﺎل ‪ device‬اﻟﻤﺴﻤﻰ ‪. fstab‬‬ ‫وﺳﻨﻌﻄﻰ اﻣﺜﻠﻪ ﻟﻠﺜﻼث ﺣﺎﻻت ‪.‫اﻻﻣﺮ ‪. fstab‬‬ ‫اﻣﺎ اﻟﺼﻴﻐﻪ اﻟﺜﺎﻟﺜﻪ ﻓﺘﺴﺘﺨﺪم اذا ﻟﻢ ﻳﻜﻦ هﻨﺎك اى ذآﺮ ﻟﻞ ‪ device‬ﻓﻰ ﻣﻠﻒ ‪. /dev/cdrom‬‬ ‫وﻧﻔﺲ اﻟﻮﺿﻊ ﻣﻊ اﻟﺼﻴﻐﻪ اﻟﺜﺎﻧﻴﻪ واﻟﺘﻰ ﺗﻜﺘﺐ آﺎﻟﺘﺎﻟﻰ‬ ‫‪mount /dev/cdrom‬‬ ‫ﻓﺘﺤﺪث ﻧﻔﺲ اﻟﻌﻤﻠﻴﻪ اﻻوﻟﻰ وﻟﻜﻦ ﻣﻊ اﺑﺪال اﻟﻤﻌﻠﻮﻣﻪ اﻟﺘﻰ ﺳﺘﺴﺄل ﻋﻨﻬﺎ ال ‪ shell‬اﻟﻤﻠﻒ ‪. fstab‬‬ .‬‬ ‫وﻟﻪ ﺛﻼث ﺻﻴﻎ ‪ ،‬وهﻢ‬ ‫‪mount [option] directory -1‬‬ ‫‪mount [option] device‬‬ ‫‪-2‬‬ ‫‪mount [option] device directory -3‬‬ ‫ﻓﺎﻟﺼﻴﻐﻪ اﻻوﻟﻰ واﻟﺜﺎﻧﻴﻪ ﺗﺴﺘﺨﺪم اذا آﺎن اﺳﻢ ال ‪ device‬ﻣﻮﺟﻮد ﻓﻰ ﻣﻠﻒ ‪. mount‬‬ ‫وﻇﻴﻔﻪ اﻻﻣﺮ ‪ mount‬هﻰ رﺑﻂ اﻟﺠﺰء اﻟﻤﺤﺪد ﻣﻦ ال ‪ hard ware‬اﻟﻰ ﻣﺠﻠﺪ ‪.

‬‬ ‫)ﻓﺎﻟﻮﺿﻊ اﻟﻄﺒﻴﻌﻰ وال ‪ default‬ﻋﻨﺪ اﺷﺘﺮاك ﻟﻴﻨﻮآﺲ ﻣﻊ اى ﻧﻈﺎم ﺗﺸﻐﻴﻞ اﺧﺮﻋﻠﻰ هﺎرد دﻳﺴﻚ واﺣﺪ ‪ ،‬ان ﻻ‬ ‫ﻳﺴﺘﻄﻴﻊ ﻟﻴﻨﻮآﺲ ان ﻳﺮى ال ‪ partition‬اﻟﺨﺎﺻﻪ ﺑﻬﺬﻩ اﻻﻧﻈﻤﻪ اﻻﺧﺮى اﻻ ﺑﻌﺪ ﻋﻤﻞ ‪ mount‬ﻟﻬﺬﻩ ال ‪(partition‬‬ ‫ﻓﺎﻟﺬى ﺳﻨﻘﻮم ﺑﻪ اﻻن ﻋﺒﺎرﻩ ﻋﻦ ﺧﻄﻮﺗﺎن‬ ‫اﻻوﻟﻰ ﺳﻨﺴﺘﻌﺮض آﻞ ال ‪ partition‬اﻟﻤﻮﺟﻮدﻩ ﻋﻠﻰ ﻧﻈﺎﻣﻚ )ﻟﻴﻨﻮآﺲ و وﻳﻨﺪوز وﻏﻴﺮهﻢ اذا وﺟﺪ(‬ ‫اﻣﺎ اﻟﺜﺎﻧﻴﻪ ﻓﺴﻨﻘﻮم ﻓﻴﻬﺎ ﺑﺘﻨﻔﻴﺬ اﻻﻣﺮ ‪ mount‬ﻋﻠﻰ واﺣﺪ ﻣﻦ هﺬﻩ ال ‪ partition‬اﻟﻤﻮﺟﻮدﻩ ‪. (small L‬‬ ‫اﻻن ﺗﺤﻮل اﻟﻰ ﻣﺪﻳﺮ اﻟﻨﻈﺎم ‪ root‬وﻧﻔﺬ هﺬا اﻻﻣﺮ‬ ‫‪fdisk -l /dev/hda‬‬ ‫)اﻻﻣﺮ ‪ fdisk‬ﻳﺘﻄﻠﺐ آﻮﻧﻚ ‪ root‬ﻟﺘﻨﻔﻴﺬﻩ ‪ ،‬ﻻﻧﻪ ﻣﻦ اواﻣﺮادارﻩ اﻟﻨﻈﺎم اﻟﺘﻰ ﺗﺘﻄﻠﺐ ﺻﻼﺣﻴﺎت ﻣﺪﻳﺮ اﻟﻨﻈﺎم(‬ ‫ﻻﺣﻆ اﻳﻀﺎ اﻧﻪ ﻗﺪ ﺗﺨﺘﻠﻒ اﻟﺼﻴﻐﻪ ‪ hda‬ﻓﻰ ﻧﻈﺎﻣﻚ ﻓﻘﺪ ﺗﻜﻮن ‪ hdb‬او ‪ hdc‬او ﺣﺘﻰ ‪ hde‬ﺑﻨﺎء ﻋﻠﻰ آﻮن اﻟﻬﺎرد‬ ‫‪ master‬او ‪.‫اﻣﺎ اﻟﺼﻴﻐﻪ اﻟﺜﺎﻟﺜﻪ ﻓﺘﺴﺘﺨﺪم ﻓﻰ ﺣﺎﻟﻪ ﻋﺪم وﺟﻮد اى ﻣﻌﻠﻮﻣﺎت ﻋﻦ ال ‪ device‬وﻻ ﻋﻦ ال‬ ‫‪ directory‬او ﺑﻠﻔﻆ اآﺜﺮ دﻗﻪ ال ‪ mount‬و ‪.file system‬‬ .‬‬ ‫وﻟﺮؤﻳﻪ ال ‪ partition‬آﻠﻬﺎ اﻟﻤﻮﺟﻮدﻩ ﻋﻠﻰ ﻧﻈﺎﻣﻚ ﻓﺎﻧﻨﺎ ﺳﻨﺴﺘﺨﺪم اﻻﻣﺮ ‪ fdisk‬ﺑﺎﻻﺿﺎﻓﻪ اﻟﻰ‬ ‫اﻟﺨﻴﺎر ‪) -l‬اى ‪. mount point‬‬ ‫وﻟﻬﺬا ﻓﺎﻧﻨﺎ ﻧُﺪﺧﻞ اﻟﻰ اﻟﻨﻈﺎم آﻠﺘﺎ اﻟﻤﻌﻠﻮﻣﺘﻴﻦ ‪.‬‬ ‫وﻳﻤﻜﻦ اﻋﻄﺎء ﻣﺜﺎل ﻋﻠﻰ هﺬﻩ اﻟﺤﺎﻟﻪ ‪ ،‬ﺑﺎل ‪ partition‬اﻟﺨﺎﺻﻪ ﺑﺎى ﻧﻈﺎم ﺗﺸﻐﻴﻞ اﺧﺮ ﻣﺸﺘﺮك ﻣﻊ‬ ‫ﻟﻴﻨﻮآﺲ ﻓﻰ ﻧﻔﺲ اﻟﻬﺎرد دﻳﺴﻚ ‪ ،‬ﻣﺜﻞ وﻳﻨﺪوز ﻋﻠﻰ ﺳﺒﻴﻞ اﻟﻤﺜﺎل ‪. slave‬‬ ‫وﺳﺘﺮى ﻧﺘﻴﺠﻪ ﻣﺸﺎﺑﻬﻪ ﺑﺘﻠﻚ اﻟﻤﻌﺮوﺿﻪ اﻣﺎﻣﻨﺎ‬ ‫ﻓﻨﺮى ﻋﻠﻰ اﻗﺼﻰ اﻟﻴﺴﺎر ال ‪ device‬ورﻗﻤﻪ ‪ ،‬اﻣﺎ ﻋﻠﻰ اﻗﺼﻰ اﻟﻴﻤﻴﻦ ﻓﻴﻮﺟﺪ ﻧﻮع ‪.

root‬‬ ‫ﺑﺬﻟﻚ ﺗﻜﻮن اﻟﺨﻄﻮﻩ اﻻوﻟﻰ ﻗﺪ ﺗﻤﺖ ‪ ،‬وﻟﻢ ﻳﺘﺒﻖ اﻻ اﻟﺨﻄﻮﻩ اﻟﺜﺎﻧﻴﻪ وهﻰ ﻋﻤﻠﻴﻪ ال ‪. mount‬‬ ‫وهﻰ ﺗﺘﻢ ﺑﻬﺬا اﻻﻣﺮ‬ ‫‪mount /dev/hdaN /mnt/windows‬‬ ‫اﻻن ﻳﻤﻜﻨﻚ اﻻﻧﺘﻘﺎل اﻟﻰ اﻟﻤﺠﻠﺪ ‪ /mnt/windows‬ﺳﻮاء ﺑﺎﻻﻣﺮ ‪ cd‬او ﺣﺘﻰ ﻋﻦ ﻃﺮﻳﻖ ال ‪gui‬‬ ‫وﺳﺘﺠﺪ ان ﺑﺪاﺧﻞ هﺬا اﻟﻤﺠﻠﺪ آﻞ اﻟﻤﻠﻔﺎت واﻟﺒﻴﺎﻧﺎت اﻟﻤﻮﺟﻮدﻩ ﻓﻰ هﺬا ال ‪ partition‬ﺑﺎﻟﻮﻳﻨﺪوز ‪.‬‬ ‫وﻟﻨﻔﺘﺮض اﻧﻨﺎ ﺳﻨﻨﺸﺌﻪ ﺗﺤﺖ ‪ /mnt‬وﺳﻨﺴﻤﻴﻪ ‪ windows‬ﻟﻴﺴﻬﻞ ﻋﻠﻴﻨﺎ ﺗﺬآﺮﻩ ‪. /dev/hdaN‬ﻣﻊ اﺑﺪال اﻟﺤﺮف ‪N‬‬ ‫ﺑﺎﻟﺮﻗﻢ اﻟﻤﻨﺎﺳﺐ ﻋﻨﺪك ‪.‬‬ .‫وﻣﺎ ﻧﺮﻳﺪﻩ ﻣﻦ هﺬا اﻟﻤﺜﺎل هﻮ ذﻟﻚ اﻟﺬى ﻋﻠﻰ اﻟﻴﺴﺎر ‪ ،‬اى ‪ .‬‬ ‫هﺬا ﺑﺒﺴﺎﻃﻪ هﻮ ال ‪ ، device‬وﻣﺎ ﻧﺤﺘﺎﺟﻪ اﻻن ﻻآﻤﺎل ﻋﻤﻠﻴﻪ ال ‪ mount‬هﻮ ال ‪، directory‬‬ ‫وﻣﺎ ﻋﻠﻴﻚ اﻻن ﻓﻌﻠﻪ هﻮ ﻓﻘﻂ اﻧﺸﺎء ﻣﺠﻠﺪ ﻓﺎرغ ‪ -‬ﻣﻦ اى ﻣﺤﺘﻮﻳﺎت‪ -‬ﻟﻴﺘﻢ رﺑﻂ هﺬا ال ‪ device‬ﺑﻪ ‪.‬‬ ‫ﻣﻼﺣﻈﻪ هﺎﻣﻪ‬ ‫ﻳﻼﺣﻆ ان اﻻﻣﺮ ‪ mount‬اﻟﺬى اﺟﺮﻳﻨﺎﻩ ﻋﻠﻰ هﺬا ال ‪ windows partition‬واﻟﺬى ﻗﺎم ﺑﻌﻤﻞ‬ ‫اﻟﺤﺎق ﻟﻬﺬا ال ‪ partition‬واﺳﺘﻄﻌﻨﺎ ﺑﻌﺪﻩ ان ﻧﺘﻌﺎﻣﻞ ﻣﻊ اﻟﺒﻴﺎﻧﺎت اﻟﻤﻮﺟﻮدﻩ ﻓﻰ هﺬا ال ‪partition‬‬ ‫ﻋﺒﺎرﻩ ﻋﻦ اﻟﺤﺎق ﻣﺆﻗﺖ ‪ ،‬اى ﺑﻤﺠﺮد اﻏﻼق اﻟﻨﻈﺎم ﻓﺎن هﺬا ال ‪ partition‬ﺳﻴﺤﺪث ﻟﻪ ‪umount‬‬ ‫وﻟﻦ ﻳﺤﺪث ﻟﻪ ‪ mount‬ﻓﻰ اﻟﻤﺮﻩ اﻟﻤﻘﺒﻠﻪ ﻣﻦ ﺗﺸﻐﻴﻞ اﻟﻨﻈﺎم ‪.‬‬ ‫*اذا آﺎن ﺑﻨﻈﺎﻣﻚ اآﺜﺮ ﻣﻦ ‪ partition‬ﻟﻠﻮﻳﻨﺪوز ‪ ،‬ﻓﻴﻤﻜﻨﻚ اﺧﺘﻴﺎر اﺣﺪهﻢ ﻟﺘﻨﻔﻴﺬ هﺬﻩ اﻟﻌﻤﻠﻴﻪ ﻋﻠﻴﻪ ‪. mount‬‬ ‫ﻳﻼﺣﻆ اﻳﻀﺎ اﻧﻨﺎ ﻳﻤﻜﻦ اﺳﺘﺨﺪام اﻻﻣﺮ ‪ mount‬ﻣﻨﻔﺮدا ‪ ،‬او ﻣﻊ اﻟﺨﻴﺎر ‪ -l‬وذﻟﻚ ﻟﻌﺮض ال‬ ‫‪ device‬اﻟﻤﺘﺼﻞ واﻟﻤﻠﺘﺤﻖ ﺑﺎﻟﻨﻈﺎم اﻻن ‪.‬‬ ‫وﻟﺠﻌﻞ هﺬا ال ‪ mount‬او اﻻﻟﺤﺎق داﺋﻢ ‪-‬ﻻ ﻳﻨﺘﻬﻰ ﺑﺎﻏﻼق اﻟﻨﻈﺎم‪ -‬ﻻ ﺑﺪ ﻣﻦ ﺗﺴﺠﻴﻠﻪ ﻓﻰ ﻣﻠﻒ‬ ‫‪ ، fstab‬وهﺬا اﻻﺟﺮاء ﺑﺴﻴﻂ وﺳﺎﺷﺮﺣﻪ ﺑﻌﺪ اﻻﻧﺘﻬﺎء ﻣﻦ اﻻﻣﺮ ‪.‬‬ ‫اﻻن ﻧﻔﺬ هﺬا اﻻﻣﺮ‬ ‫‪mkdir /mnt/windows‬‬ ‫ﻣﻼﺣﻈﻪ‬ ‫ﻳﻔﻀﻞ اﻧﺸﺎﺋﻪ ﻓﻰ ال ‪ home directory‬اﻟﺨﺎص ﺑﺎى ﻣﺴﺘﺨﺪم ﻋﺎدى ‪-‬وﻟﻨﻔﺘﺮض اﻧﻪ اﻟﻤﺴﺘﺨﺪم اﻟﺬى ﺗﻌﺘﺎد اﻟﺪﺧﻮل‬ ‫ﺑﺎﺳﻤﻪ ﻟﻠﻨﻈﺎم‪ ، -‬واﻟﺴﺒﺐ ﻓﻰ ذﻟﻚ هﻮ ‪ ،‬ﺗﺴﻬﻴﻞ اﻟﺪﺧﻮل ﻟﻬﺬا ال ‪ directory‬واﺳﺘﻌﺮاض ﻣﺤﺘﻮﻳﺎﺗﻪ ‪ ،‬ﻟﻜﻰ ﻻ ﺗﻀﻄﺮ‬ ‫آﻞ ﻣﺮﻩ ﺗﺮﻳﺪ اﻟﺪﺧﻮل ﻓﻴﻬﺎ اﻟﻴﻪ ان ﺗﺘﺤﻮل اﻟﻰ اﻟﻤﺴﺘﺨﺪم ‪.

‬‬ ‫ﻣﺜﺎل ﻋﻠﻰ آﻴﻔﻴﻪ اﺳﺘﺨﺪام هﺬﻩ اﻟﺨﻴﺎرات‬ ‫‪mount -t iso9660 /mnt/cdrom‬‬ ‫اﻟﻨﻮع اﻟﺜﺎﻧﻰ‬ ‫وهﺬا اﻟﻨﻮع ﻣﻦ اﻟﺨﻴﺎرات اﻣﺎ ان ﻳﻮﺿﻊ ﻓﻰ اﻟﻌﻤﻮد اﻟﺮاﺑﻊ ﺑﻤﻠﻒ ‪ fstab‬واﻣﺎ ان ﻳﻜﺘﺐ ﻋﻠﻰ ال‬ ‫‪ shell‬وﻟﻜﻦ ﻻ ﺑﺪ ان ﻳﺴﺒﻘﻪ اﻟﺤﺮف ‪. fstab‬وﺳﻴﺘﻢ ﺳﺮد اﻧﻮاع ال ‪ file system‬ﻓﻰ‬ ‫اﻟﺴﻄﻮر اﻟﻤﻘﺒﻠﻪ ‪. user‬‬ ‫‪ noauto‬وﻏﻴﺮهﻢ ‪ ،‬وﺗﺤﺪد ‪-‬هﺬﻩ اﻟﺨﻴﺎرات‪ -‬ﻣﻌﻠﻮﻣﺎت ﻋﻦ آﻴﻔﻴﻪ رﺑﻂ هﺬا ال ‪.‬‬ ‫‪. suid .‫ﺧﻴﺎرات اﻻﻣﺮ ‪. auto.‬‬ ‫* ‪ -w‬وﺗﻌﻨﻰ ‪ read and write‬اى رﺑﻂ ال ‪ device‬آﻘﺮأﻩ وآﺘﺎﺑﻪ ‪. nouser . exec.‬‬ ‫* ‪ auto‬واﻟﺘﻰ ﺗﻌﻨﻰ رﺑﻂ ال ‪ device‬ﺗﻠﻘﺎﺋﻴﺎ ‪ ،‬ﻓﻼ ﻳﺤﺘﺎج اﻟﻤﺴﺘﺨﺪم ان ﻳﺮﺑﻄﻪ ﺑﺎل ‪device‬‬ .‬‬ ‫* ‪ -t‬وﺑﻌﺪ هﺬا اﻟﺨﻴﺎر ﻧﻜﺘﺐ ﻧﻮع اﻟﻤﻠﻔﺎت ﻟﻬﺬا ال ‪ device‬وﻳﺘﻢ اﺳﺘﻌﻤﺎل هﺬا اﻟﺨﻴﺎر ﻋﻨﺪﻣﺎ ﻻ ﻳﻜﻮن‬ ‫‪ fs‬ﻣﺤﺪد ﻟﻞ ‪ device‬ﺑﺎﻟﻌﻤﻮد اﻟﺜﺎﻟﺚ ﻓﻰ ﻣﻠﻒ ‪ .‬‬ ‫واﺷﻬﺮ هﺬﻩ اﻟﺨﻴﺎرات هﻰ‬ ‫* ‪ defaults‬وهﺬا هﻮ اﺷﻬﺮ اﻟﺨﻴﺎرات ﻋﻠﻰ اﻻﻃﻼق ‪ ،‬ذﻟﻚ ﻻن هﺬا اﻟﺨﻴﺎر ﻳﻌﻨﻰ ﻓﻰ ذاﺗﻪ ‪7‬‬ ‫ﺧﻴﺎرات اﺧﺮى )اى اﻧﻚ ﻟﻮ ﺣﺪدت هﺬا اﻟﺨﻴﺎر ﻟﻞ ‪ device‬ﻓﻜﺎﻧﻚ ﻗﺪ آﺘﺒﺖ ‪ 7‬ﺧﻴﺎرات( وهﻢ ‪async.‬‬ ‫‪ mount option -2‬وهﺬا اﻟﻨﻮع ﻋﺒﺎرﻩ ﻋﻦ ﻣﻘﻄﻊ ﻣﻦ آﻠﻤﻪ )اى اﺧﺘﺼﺎرا ﻟﻬﺎ( ﻣﺜﻞ ‪ro . mount‬‬ ‫ﻳﺎﺗﻰ ﻣﻊ اﻻﻣﺮ ‪ mount‬ﻧﻮﻋﺎن ﻣﻦ اﻟﺨﻴﺎرات او ‪options‬‬ ‫‪ cmd line option -1‬وهﻰ اﻟﺨﻴﺎرات اﻟﺘﻰ اﻋﺘﺪﻧﺎ آﺘﺎﺑﺘﻬﺎ ﻣﻊ اﻻواﻣﺮ ﻣﺜﻞ ‪ -a‬و ‪ -h‬وﻏﻴﺮهﻢ ‪. -o‬‬ ‫وهﺬا اﻟﻨﻮع ﻣﻦ اﻟﺨﻴﺎرات ﻋﺒﺎرﻩ ﻋﻦ آﻠﻤﻪ او ﻣﻘﻄﻊ ﻣﻨﻬﺎ ‪ ،‬وﻟﻴﺲ ﺣﺮف آﺎﻟﻨﻮع اﻻول ‪. device‬‬ ‫اﻟﻨﻮع اﻻول ‪ ،‬واﺷﻬﺮ اﻟﺨﻴﺎرات ﻓﻴﻪ هﻰ‬ ‫* ‪ -a‬وﺗﻌﻨﻰ ارﺑﻂ آﻞ ال ‪ partition‬اﻟﻤﻮﺟﻮد ﻓﻰ ﻣﻠﻒ ‪ ، fstab‬ﻣﺎ ﻋﺪا اوﻟﺌﻚ اﻟﻤﺤﺪدﻳﻦ ﺑﺎﻟﺨﻴﺎر‬ ‫‪ ، noauto‬وهﺬا اﻟﺨﻴﺎر هﻮ اﻟﺬى ﻳﺴﺘﺨﺪﻣﻪ اﻟﻨﻈﺎم ﺣﻴﻦ ﻳﺒﺪأ اﻟﻌﻤﻞ واﻟﻤﻮﺟﻮد ﻓﻰ ال ‪script‬‬ ‫اﻟﺮﺋﻴﺴﻰ ﻟﻠﻨﻈﺎم >‪<sysinit‬‬ ‫* ‪ -o‬وﻳﺤﺪد ﺑﻌﺪ هﺬا اﻟﺤﺮف اى ﺧﻴﺎر ﻣﻦ ﺧﻴﺎرات اﻟﻨﻮع اﻟﺜﺎﻧﻰ ‪ ،‬واﻟﺬى ﺳﻨﺬآﺮهﻢ ﻻﺣﻘﺎ )ﻳﻼﺣﻆ‬ ‫ان ﺣﺮف ‪ o‬اﺧﺘﺼﺎر ﻟﻜﻠﻤﻪ ‪(option‬‬ ‫* ‪ -r‬وﺗﻌﻨﻰ ‪ read only‬اى رﺑﻂ هﺬا ال ‪ device‬ﻟﻠﻘﺮأﻩ ﻓﻘﻂ ‪.rw‬‬ ‫وهﺬا اﻟﺨﻴﺎر ﻣﻔﻴﺪ ﺟﺪا اذا آﻨﺖ ﺟﺪﻳﺪ ﻓﻰ اﻟﺘﻌﺎﻣﻞ ﻣﻊ ﻣﻠﻒ ‪ fstab‬ﻓﺒﺴﻬﻮﻟﻪ ﻳﻤﻜﻨﻚ ﺗﺤﺪﻳﺪﻩ ﻟﻞ‪device‬‬ ‫اﻟﺠﺪﻳﺪ ‪. dev.

‬‬ ‫* ‪ users‬وهﺬا اﻟﺨﻴﺎر ﻣﺜﻞ اﻟﺬى ﻗﺒﻠﻪ ‪ ،‬اﻻ ان اﻟﻔﺮق هﻮ ‪ ،‬ان اى ﻣﺴﺘﺨﺪم ﻳﺴﺘﻄﻴﻊ ﻋﻤﻞ‪umount‬‬ ‫ﻟﻞ ‪ device‬وﻟﻴﺲ اﻟﺬى ﻋﻤﻞ ال ‪ mount‬ﺗﺤﺪﻳﺪا ‪. mount‬‬ ‫* ‪ dev‬وﻳﻌﻨﻰ هﺬا اﻟﺨﻴﺎر ان ال ‪ fs‬ﻳﺴﺘﻄﻴﻊ ان ﻳﻔﻬﻢ وﻳﺘﻌﺎﻣﻞ ﻣﻊ اﻧﻮاع ال ‪ device‬اﻟﻤﻌﻴﻨﻪ ‪ ،‬ﻣﺜﻞ‬ ‫ال ‪ block device‬ﻣﺜﻞ اﻟﻬﺎرد دﻳﺴﻚ ‪،‬وال ‪ character device‬ﻣﺜﻞ ال ‪ terminal‬وﻏﻴﺮهﻢ‬ ‫* ‪ exec‬وﻳﺘﺤﺪد هﺬا اﻟﺨﻴﺎر اذا آﺎن ﺑﺎل ‪ partition‬ﺑﺮاﻣﺞ ‪ executable‬ﻓﺎﻧﻪ ﻳﺘﻢ ﻋﻤﻞ ‪exec‬‬ ‫ﻟﻬﻢ ﺑﻬﺬا اﻟﺨﻴﺎر ‪. security measure‬‬ ‫* ‪ nosuid‬ﻣﻨﻊ ﺗﺎﺛﻴﺮ ال ‪ suid‬و ‪ sgid‬ﻋﻠﻰ اﻟﻤﻠﻔﺎت ال ‪. device‬‬ ‫* ‪ ro‬وﺗﻌﻨﻰ ‪ read only‬وﺗﺘﺴﺎوى ﻣﻊ اﻟﺨﻴﺎر ‪) -r‬ﻣﻦ اﻟﻨﻮع اﻻول(‬ ‫* ‪ rw‬وﺗﻌﻨﻰ ‪ read and write‬واﻳﻀﺎ ﺗﺘﺴﺎوى ﻣﻊ اﻟﺨﻴﺎر ‪) -w‬ﻣﻦ اﻟﻨﻮع اﻻول(‬ ‫* ‪ suid‬وﺗﻌﻨﻰ ﺗﻄﺒﻴﻖ ﺧﺎﺻﻴﻪ ‪ set user id‬واﻳﻀﺎ ‪ set group id‬ﻋﻠﻰ اﻟﻤﻠﻔﺎت ال ‪. exec‬‬ ‫* ‪ user‬وهﺬا اﻟﺨﻴﺎر ﻣﻬﻢ ﺟﺪا ‪ ،‬وﻳﻌﻨﻰ ان اﻟﻤﺴﺘﺨﺪم اﻟﺬى ﻋﻤﻞ ‪ mount‬ﻟﻞ ‪ device‬هﻮ ﻓﻘﻂ‬ ‫ﻣﻦ ﻳﺴﺘﻄﻴﻊ ﻋﻤﻞ ‪ unmount‬ﻟﻪ ‪.‫ﺑﺎﻻﻣﺮ ‪.‬‬ ‫ﻣﺜﺎل ﻋﻠﻰ آﺘﺎﺑﻪ هﺬﻩ اﻟﺨﻴﺎرات ﻣﻊ اﻻﻣﺮ ‪mount‬‬ ‫‪mount -o ro /usr‬‬ ‫ﻳﻤﻜﻦ اﻻﻃﻼع ﻋﻠﻰ ﺑﻘﻴﻪ اﻟﺨﻴﺎرات وذﻟﻚ ﺑﺼﻔﺤﻪ ال ‪ man page‬اﻟﺨﺎﺻﻪ ﺑﺎﻻﻣﺮ ‪ mount‬واﻳﻀﺎ اﻟﺨﺎﺻﻪ ﺑﺎﻟﻤﻠﻒ‬ ‫‪.‬‬ ‫* ‪ noexec‬وﻳﻌﻨﻰ ﻋﺪم ﺗﺸﻐﻴﻞ اى ﺑﺮاﻣﺞ ‪ executable‬ﻣﻮﺟﻮدﻩ ﻓﻰ هﺬا ال ‪ ، partition‬وﻳﻌﺪ‬ ‫هﺬا اﻟﺨﻴﺎر اﺟﺮاء اﻣﻨﻰ هﺎم اى ‪. mount‬‬ ‫* ‪ noauto‬وهﺬا اﻟﺨﻴﺎر ﻋﻜﺲ اﻟﺴﺎﺑﻖ ‪ ،‬ﻓﺎذا ﺗﺤﺪد ﻟﻞ ‪ device‬ﻓﻼ ﺑﺪ ان ﻳﺮﺑﻄﻪ اﻟﻤﺴﺘﺨﺪم ﺑﻨﻔﺴﻪ‬ ‫ﻋﻦ ﻃﺮﻳﻖ اﻻﻣﺮ ‪.‬‬ . executable‬‬ ‫* ‪ nouser‬وﺗﻌﻨﻰ ﻣﻨﻊ اى ﻣﺴﺘﺨﺪم ﻏﻴﺮ ‪ root‬ﻣﻦ ﻋﻤﻞ ‪ mount‬و ‪ umount‬ﻟﻞ ‪. fstab‬‬ ‫وﻟﻜﻦ ﺿﻊ ﻓﻰ اﻋﺘﺒﺎرك داﺋﻤﺎ هﺬﻩ اﻟﺨﻴﺎرات ‪ defaults‬و ‪ nouser‬و ‪ user‬و ‪ users‬ﻻهﻤﻴﺘﻬﺎ‪.

‬ﺑﺎﺳﺘﺜﻨﺎء ‪ swap‬و ‪(proc‬‬ ‫* ‪ vfat‬وهﺬا ال ‪ fs‬ﻳﺘﺤﺪد ل ‪.‬‬ ‫* ‪ proc‬وهﺬا اﻟﻨﻮع ﻣﻦ ال ‪ fs‬ﺧﺎص ﻓﻘﻂ ﺑﺎل ‪.‫اﻧﻮاع ال ‪. file system‬‬ ‫هﺬﻩ اﻻﻧﻮاع ﻣﻦ ال ‪ file system‬هﻰ اﻟﺘﻰ ﺗﻜﺘﺐ ﻓﻰ اﻟﻌﻤﻮد اﻟﺜﺎﻟﺚ ﺑﻤﻠﻒ ‪ ، fstab‬واﻳﻀﺎ ﻳﻤﻜﻦ‬ ‫آﺘﺎﺑﺘﻬﺎ ﻋﻠﻰ ﺳﻄﺮ اﻻواﻣﺮ ‪ shell‬وﻟﻜﻦ ﻻ ﺑﺪ ان ﻳﺴﺒﻘﻬﺎ اﻟﺤﺮف ‪.‬‬ ‫* ‪ nfs‬وﻳﺘﺤﺪد هﺬا ال ‪ fs‬اذا ﻟﻢ ﻳﻜﻦ ال ‪ partition‬ﻣﻮﺟﻮد ﻋﻠﻰ ال ‪ local hard‬وﻟﻜﻨﻪ ﻋﻠﻰ‬ ‫ﺟﻬﺎز اﺧﺮ ﻓﻰ ﻧﻔﺲ اﻟﺸﺒﻜﻪ ‪.‬‬ ‫وﻣﻨﺬ زﻣﻦ ﻟﻴﺲ ﺑﺎﻟﺒﻌﻴﺪ آﺎن ﻳﻮﺿﻊ هﺬا ال ‪ fs‬ﻟﻞ ‪ ، /usr‬ﻋﻨﺪﻣﺎ آﺎن ﻳﻮﺿﻊ هﺬا ال ‪ partition‬ﻋﻠﻰ ال ‪server‬‬ ‫ﻟﻴﺨﺪم آﻞ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ‪ ،‬وذﻟﻚ ﺑﺴﺒﺐ آﺒﺮ ﻣﺴﺎﺣﻪ ال ‪ partition‬ﻣﻦ ﻧﺎﺣﻴﻪ وﻣﻦ ﻧﺎﺣﻴﻪ اﺧﺮى ﺑﺴﺒﺐ ﺻﻐﺮ ﺣﺠﻢ ال‬ ‫‪ hard disk‬ﻟﻠﻤﺴﺘﺨﺪﻣﻴﻦ وﻗﺖ ذاك ‪. windows partition‬‬ ‫* ‪ iso9660‬وهﺬا هﻮ ال ‪ fs‬اﻟﺨﺎص ﺑﺎل ‪ ، cdrom‬وﻟﻪ اﻳﻀﺎ ‪ fs‬اﺧﺮ وهﻮ ‪ udf‬وﻟﻜﻦ اﻻول‬ ‫هﻮ اﻻﺷﻬﺮ وال ‪ default‬اﻳﻀﺎ ‪. none‬‬ .‬‬ ‫* ‪ swap‬وﻳﺘﺤﺪد هﺬا ال ‪ fs‬ﻟﻞ ‪ swap partition‬ﻓﻘﻂ ‪. proc‬‬ ‫وهﺬا اﻟﻨﻮع ‪ -proc-‬ﻻ ﻳﻌﺪ ‪ fs‬ﻓﻰ ﺣﺪ ذاﺗﻪ ‪ ،‬ﺑﻞ هﻮ اﺷﺒﻪ ب ‪ ، virtual file system‬وﻟﻬﺬا ﻓﺎن ﻟﻪ ‪format‬‬ ‫ﺧﺎص ﺑﻪ ‪. -t‬‬ ‫واﺷﻬﺮ هﺬﻩ اﻻﻧﻮاع هﻰ‬ ‫* ‪ ext2‬و ‪ ext3‬وهﺬﻩ ﺑﺎﻟﻄﺒﻊ هﻰ اﻻﻧﻮاع ال ‪ default‬ﻟﻞ ‪ ، linux file system‬ﻓﻨﺠﺪهﻢ‬ ‫داﺋﻤﺎ ﻣﻊ آﻞ ال ‪ partition‬اﻟﺨﺎﺻﻪ ﺑﺎﻟﻨﻈﺎم ‪ ،‬ﻣﺜﻞ ‪ /‬و ‪ boot‬و ‪ home‬و ‪ etc‬و ‪ use‬وﻏﻴﺮهﻢ‬ ‫ﻣﻦ ال ‪ partition‬اﻟﻤﺨﺘﻠﻔﻪ ل ﻟﻴﻨﻮآﺲ ‪) .‬‬ ‫وﻳﻼﺣﻆ اﻳﻀﺎ ‪-‬وﻻﺟﻞ هﺬا اﻟﺴﺒﺐ‪ -‬اﻧﻪ ﻟﻴﺲ ﻟﻪ ‪ device‬ﺧﺎص ﻳﺮﺑﻂ ﺑﻪ ‪ ،‬وﻟﻬﺬا ﻓﺎن ﻓﻰ ﻋﻤﻮد)ﺧﺎﻧﻪ( ال ‪device‬‬ ‫اﻟﺨﺎص ﺑﻪ ﻧﺠﺪ اﻧﻪ ﻻ ﻳﺘﺤﺪد ﻟﻪ ‪ device‬ﺑﻞ ﻳﻜﺘﺐ ‪.

‫ﻣﺜﺎل ﻋﻤﻠﻰ ﻟﻼﻣﺮ ‪. partition‬‬ ‫‪ -5‬ﻓﻰ اﻟﻌﻤﻮد اﻟﺜﺎﻟﺚ واﻟﺨﺎص ﺑﺎل ‪ fs‬ﺳﺘﻜﺘﺐ ‪ vfat‬ﻻن هﺬا ال ‪ partition‬ﻧﻮﻋﻪ وﻳﻨﺪوز ‪. fstab‬‬ ‫وهﺬﻩ اﻻﺟﺮاءات هﻰ‬ ‫‪ -1‬ﻓﺘﺢ اﻟﻤﻠﻒ ‪ fstab‬ﻋﻦ ﻃﺮﻳﻖ اى ‪ text editor‬وﺳﺎﺳﺘﻌﻤﻞ اﻧﺎ ال ‪ vi editor‬وذﻟﻚ ﺑﺎﻻﻣﺮ‬ ‫‪vi /etc/fstab‬‬ ‫‪ -2‬ﺗﺤﺮك ﺑﺎﻻﺳﻬﻢ ﻻﺳﻔﻞ اﻟﻤﻠﻒ ﺛﻢ اﺿﻐﻂ ﻋﻠﻰ ﺣﺮف ‪ o‬ﻟﻴﺒﺪأ ﺑﺎﻟﺘﺴﺠﻴﻞ وﻟﻜﻦ ﻣﻦ اﻟﺴﻄﺮ اﻟﺘﺎﻟﻰ‬ ‫‪ -3‬اآﺘﺐ اوﻻ وﻓﻰ ﺧﺎﻧﻪ ال ‪ device‬رﻗﻢ ال ‪ partition‬ﻋﻠﻰ اﻟﻬﺎرد ﻋﻨﺪك ‪ ،‬وﺳﺘﻜﻮن ﺻﻴﻐﺘﻪ‬ ‫آﺎﻟﺘﺎﻟﻰ ‪ ، /dev/hd?3‬ﻣﻊ ﻣﻼﺣﻈﻪ اﺑﺪال ؟ ﺑﺎﻟﺤﺮف اﻟﻤﻨﺎﺳﺐ ﻋﻠﻰ ﻧﻈﺎﻣﻚ )ﻏﺎﻟﺒﺎ ‪ a‬وﻗﺪ ﻳﻜﻮن ‪b‬‬ ‫او ‪ c‬او ‪ (d‬واﺑﺪال اﻟﺮﻗﻢ ‪ 3‬ﺑﺎﻟﺮﻗﻢ اﻟﻤﻨﺎﺳﺐ ﻟﻞ‪ windows partition‬ﻋﻨﺪك‬ ‫‪ -4‬ﻓﻰ ﺧﺎﻧﻪ اﻟﻤﺠﻠﺪ ﺳﺘﻜﺘﺐ اﺳﻢ اﻟﻤﺠﻠﺪ وﻣﺴﺎرﻩ ‪ ،‬وهﺬا اﻟﻤﺠﻠﺪ هﻮ اﻟﺬى ﺳﺘﺘﻌﺎﻣﻞ ﻣﻦ ﺧﻼﻟﻪ ﻣﻊ ال‬ ‫‪.‬‬ ‫وﺑﻬﺬﻩ اﻟﺨﻄﻮات ﺳﻴﻘﻮم اﻟﻨﻈﺎم ﺑﻌﻤﻞ ‪ mount‬ﻟﻬﺬا ال ‪ partition‬آﻠﻤﺎ ﺑﺪء اﻟﺘﺸﻐﻴﻞ ‪. mount‬‬ ‫وﻳﻤﻜﻦ اﺳﺘﻌﺎرﻩ اﻟﻤﺜﺎل اﻟﺴﺎﺑﻖ اﻟﺬآﺮ واﻟﺬى ﻗﻤﻨﺎ ﻓﻴﻪ ﺑﻌﻤﻞ ‪ mount‬ل ‪ partition‬ﻣﻦ اﻟﻮﻳﻨﺪوز ‪.‬اﻣﺎ اﻻﺟﺮاء اﻟﺪاﺋﻢ اﻟﺬى ﻳﺤﻔﻆ ﻋﻤﻠﻴﻪ ال ‪ mount‬هﺬﻩ وﻳﺠﺮﻳﻬﺎ آﻠﻤﺎ اﺷﺘﻐﻞ اﻟﻨﻈﺎم ‪ ،‬ﻓﻬﻮ‬ ‫ﺑﺘﺴﺠﻴﻞ هﺬا ال ‪ partition‬ﺑﺒﻴﺎﻧﺎﺗﻪ ﻓﻰ ﻣﻠﻒ ‪.‬‬ ‫‪ -6‬وﻓﻰ اﻟﻌﻤﻮد اﻟﺮاﺑﻊ ﺳﺘﻜﺘﺐ اﻟﺨﻴﺎر ‪ defaults‬واﻟﺬى ﺑﻜﺘﺎﺑﺘﻪ ﺳﻴﻐﻨﻴﻚ ﻋﻦ ﻋﺪﻩ ﺧﻴﺎرات اﺧﺮى ‪. mount‬‬ ‫اﻟﻤﻘﺼﻮد ﺑﻬﺬا اﻟﻤﺜﺎل اﻟﻌﻤﻠﻰ هﻮ آﻴﻔﻴﻪ اﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻤﻠﻒ ‪، fstab‬‬ ‫وﻟﻜﻦ ﻻن اﻟﻤﺘﻌﺎﻣﻞ ﻣﻊ هﺬا اﻟﻤﻠﻒ آﺎن ﻻ ﺑﺪ ان ﻳﻜﻮن ﻋﺎﻟﻤﺎ ﺑﺎﻻﻣﺮ ‪ ، mount‬ﻟﻬﺬا ﻓﺎﻧﻰ وﺿﻌﺖ‬ ‫هﺬا اﻟﻤﺜﺎل ﺑﻌﺪﻣﺎ ﺷﺮﺣﺖ اﻻﻣﺮ ‪.‬‬ .‬‬ ‫‪ -7‬ﻓﻰ اﻟﻌﻤﻮد اﻟﺨﺎﻣﺲ واﻟﺨﺎص ﺑﺎﻟﺒﺮﻧﺎﻣﺞ ‪ dump‬ﺳﺘﻜﺘﺐ ‪ 0‬ﻻن هﺬا ال ‪ fs‬ﻟﻴﺲ ﻟﻴﻨﻮآﺲ ‪.‬‬ ‫‪ -8‬ﻓﻰ اﻟﻌﻤﻮد اﻟﺴﺎدس واﻟﺨﺎص ﺑﺎﻟﺒﺮﻧﺎﻣﺞ ‪ fsck‬ﺳﺘﻜﺘﺐ اﻣﺎ رﻗﻢ ‪ 2‬ﻟﻌﻤﻞ ‪ ، fsck‬او ﺳﺘﻜﺘﺐ ‪0‬‬ ‫ﻟﻜﻰ ﻻ ﻳﻘﻮم اﻟﺒﺮﻧﺎﻣﺞ ‪ fsck‬ﺑﻌﻤﻞ ‪ check‬ﻋﻠﻴﻪ ‪.‬‬ ‫ﻓﺎﺳﺘﺨﺪام اﻻﻣﺮ ‪ mount‬ﻓﻰ ﻋﻤﻞ اﻟﺤﺎق ل ‪ device‬ﻣﻌﻴﻦ ﻟﻠﻨﻈﺎم هﻮ اﺟﺮاء ﻣﺆﻗﺖ ﻳﻨﺘﻬﻰ ﺑﺎﻏﻼق‬ ‫اﻟﻨﻈﺎم ‪ .‬‬ ‫ﺑﻌﺪ ذﻟﻚ ﺳﺘﺤﻔﻆ ﻣﺎ آﺘﺒﺘﻪ وﺳﺘﺨﺮج ﻣﻦ اﻟﻤﻠﻒ وذﻟﻚ ﺑﺎﻟﺨﻄﻮات اﻟﺘﺎﻟﻴﻪ‬ ‫•اﺿﻐﻂ ﻋﻠﻰ اﻟﻤﻔﺘﺎح ‪Esc‬‬ ‫•اآﺘﺐ اﻟﺮﻣﺰ ‪ <:> colon‬وذﻟﻚ ﺑﺎﻟﻀﻐﻂ ﻋﻠﻰ ‪ shift‬واﻟﺤﺮف >ك<‬ ‫•اآﺘﺐ اﻟﺤﺮﻓﻴﻦ ‪ ، wq‬وان ﺻﺎدﻓﻚ اﻧﻪ ﻻ ﻳﺴﺘﻄﻴﻊ اﻟﺨﺮوج ﻣﻦ اﻟﻤﻠﻒ ‪ ،‬ﻓﺎﺿﻒ اﻟﺤﺮف > ! <‬ ‫ﻳﻼﺣﻆ ان اﻟﻤﻠﻒ ‪ fstab‬ﻳﻘﻮم اﻟﻨﻈﺎم ﺑﻘﺮأﺗﻪ ﻣﺮﻩ واﺣﺪﻩ وذﻟﻚ ﻋﻨﺪﻣﺎ ﻳﺒﺪأ اﻟﺘﺸﻐﻴﻞ ‪.

mount‬‬ ‫ووﻇﻴﻔﺘﻪ ﺗﺘﻤﺜﻞ ﻓﻰ ﻓﺼﻞ اﻟﺮﺑﻂ او اﻻﻟﺤﺎق ‪ attach‬اﻟﺬى ﻗﺎم ﺑﻪ اﻻﻣﺮ ‪. mount‬‬ ‫ﺻﻴﻐﺘﻪ‬ ‫وهﻮ ﻣﺜﻞ اﻻﻣﺮ ‪ mount‬وﻟﻜﻦ ﻟﻪ ﺻﻴﻐﺘﺎن ﻓﻘﻂ وهﻢ‬ ‫‪umount [option] device‬‬ ‫‪umount [option] directory‬‬ ‫وﻳﻤﻜﻦ اﻋﻄﺎء ال ‪ cdrom‬آﻤﺜﺎل ﻋﻠﻴﻪ‬ ‫ﻓﺒﻌﺪ اﻻﻧﺘﻬﺎء ﻣﻦ ال ‪ cdrom‬وارادﻩ ﻓﺼﻠﻪ ﻋﻦ اﻟﻨﻈﺎم ‪ ،‬ﻻ ﺗﻌﺘﻘﺪ اﻧﻚ ﺑﺒﺴﺎﻃﻪ ﺳﺘﻀﻐﻂ ﻋﻠﻰ اﻟﺰر‬ ‫‪ eject‬وﺳﻴﺨﺮج ال ‪ cd‬ﻣﻦ ال ‪ cdrom‬آﻤﺎ ﻳﺤﺪث ﻓﻰ اﻟﻮﻳﻨﺪوز ‪ ،‬ﻓﻨﻈﺎم ال ‪ file system‬هﻨﺎك‬ ‫ﻏﻴﺮ ﻧﻈﺎﻣﻪ هﻨﺎ ﻓﻰ ﻟﻴﻨﻮآﺲ ‪. umount‬‬ ‫وﻣﺜﺎل اﻟﺼﻴﻐﻪ اﻻوﻟﻰ هﻮ‬ ‫‪umount /dev/cdrom‬‬ ‫وﻣﺜﺎل اﻟﺼﻴﻐﻪ اﻟﺜﺎﻧﻴﻪ هﻮ‬ ‫‪umount /mnt/cdrom‬‬ ‫او ﺑﺒﺴﺎﻃﻪ‬ ‫‪umount /cdrom‬‬ ‫ﻳﻤﻜﻨﻚ ﺑﻌﺪ ذﻟﻚ اﺟﺮاء اﻻﻣﺮ ‪ mount‬ﻓﻘﻂ ﺑﺪون اى ‪ option‬ﻟﺘﺘﺎآﺪ ان ﻋﻤﻠﻴﻪ اﻻﻟﺤﺎق ﻟﻬﺬا ال‬ ‫‪ device‬ﻗﺪ اﻧﺘﻬﺖ ‪ ،‬وﻣﻦ ﻧﺎﺣﻴﻪ اﺧﺮى ﻟﺮؤﻳﻪ ﺑﻘﻴﻪ ال ‪ device‬اﻟﻤﻌﻤﻮل ﻟﻬﻢ ‪.‬‬ ‫ﻓﻜﻤﺎ راﻳﻨﺎ ‪ ،‬اﻟﻨﻈﺎم آﻜﻞ ﻋﺒﺎرﻩ ﻋﻦ ﺷﺠﺮﻩ آﺒﻴﺮﻩ ‪ ،‬وال ‪ cdrom‬ﻓﻴﻬﺎ آﻔﺮع ﻣﻦ اﻓﺮﻋﻬﺎ ‪ ،‬ﻓﺎن اردت‬ ‫ﻓﺼﻞ هﺬا اﻟﻔﺮع ﻋﻦ اﻟﺸﺠﺮﻩ ‪ ،‬ﻓﻴﺘﻢ ذﻟﻚ ﺑﺎﻻﻣﺮ ‪. umount‬‬ ‫ﻳﻌﺪ اﻻﻣﺮ ‪ umount‬ﻋﻜﺲ اﻻﻣﺮ ‪.‫اﻻﻣﺮ ‪. attach‬‬ .

.

‬‬ ‫وﻋﻨﺪ اﻧﺸﺎء اى ﻣﻠﻒ او ﻣﺠﻠﺪ ‪ ،‬ﻓﺎن هﺬا اﻟﻤﻠﻒ‪/‬اﻟﻤﺠﻠﺪ ﺑﺎﻻﺿﺎﻓﻪ اﻟﻰ آﻮﻧﻪ ﻣﻤﻠﻮك ﻟﻤﺴﺘﺨﺪم ‪ ،‬اﻻ اﻧﻪ‬ ‫ﻻ ﺑﺪ ان ﻳﺘﺤﺪد ﻟﻪ ﻣﺠﻤﻮﻋﻪ ‪ ،‬واﻟﺘﻰ ﻏﺎﻟﺒﺎ ﺗﻜﻮن اﻟﻤﺠﻤﻮﻋﻪ ال ‪ default‬ﻟﻠﻤﺴﺘﺨﺪم ‪. group‬‬ ‫ﻓﻨﻈﺎم ﻟﻴﻨﻮآﺲ ﻳﻌﺘﻤﺪ ﻓﻰ اﻟﺪﺧﻮل اﻟﻴﻪ ‪ -log in-‬ﻋﻠﻰ ﺣﺴﺎب ﺳﺎﺑﻖ ﻟﻠﻤﺴﺘﺨﺪم ﺑﺎﻻﺿﺎﻓﻪ اﻟﻰ آﻠﻤﻪ ﺳﺮ‬ ‫‪ ،‬واﻟﺤﺴﺎب او ال ‪ account‬هﺬا ‪ ،‬ﻋﺒﺎرﻩ ﻋﻦ اﺳﻢ هﺬا اﻟﻤﺴﺘﺨﺪم ﻓﻰ ﻣﻌﻈﻢ اﻻﺣﻴﺎن ‪.‬‬ ‫ﻟﻠﻤﺴﺘﺨﺪم ﻓﻰ اﻧﻈﻤﻪ ﻳﻮﻧﻜﺲ وﻟﻴﻨﻮآﺲ اهﻤﻴﻪ آﺒﺮى ‪ ،‬وﻳﻌﺘﻤﺪ ﻋﻠﻴﻪ ﻓﻰ ﺟﺎﻧﺐ آﺒﻴﺮ ﻓﻰ ﺣﻤﺎﻳﻪ اﻟﻨﻈﺎم‬ ‫وﻟﻬﺬا ﻓﺎن ﻟﻠﻤﺴﺘﺨﺪم ﻓﻰ اﻟﻨﻈﺎم )رﻗﻢ( ﺑﺎﻻﺿﺎﻓﻪ اﻟﻰ اﺳﻤﻪ اﻟﻌﺎدى اﻟﺬى ﻳﺪﺧﻞ ﺑﻪ اﻟﻰ اﻟﻨﻈﺎم ‪،‬‬ ‫>ﻓﺎﻟﻤﺴﺘﺨﺪم ﻳﺴﺘﻌﻤﻞ اﺳﻤﻪ ﻓﻰ ﺗﻌﺎﻣﻠﻪ ﻣﻊ اﻟﻨﻈﺎم ‪ ،‬واﻟﻨﻈﺎم ﻳﺴﺘﻌﻤﻞ رﻗﻢ هﺬا اﻟﻤﺴﺘﺨﺪم ﻓﻰ ﻋﻤﻠﻴﺎﺗﻪ< وهﺬا اﻟﺮﻗﻢ‬ ‫ﻓﺮﻳﺪ اى ‪ uniqe‬ﺑﻤﻌﻨﻰ اﻧﻪ ﻻ ﻳﻤﻜﻦ ان ﻳﺘﻜﺮر ﻻى ﻣﺴﺘﺨﺪم اﺧﺮ ﻓﻰ اﻟﻨﻈﺎم ‪.‫‪The User Adminstration‬‬ ‫اﻟﻤﻘﺼﻮد ب ‪ User Adminstration‬هﻮ ادارﻩ ﺣﺴﺎب اﻟﻤﺴﺘﺨﺪم‪/‬اﻟﻤﺠﻤﻮﻋﻪ ‪.‬‬ ‫وﻣﻬﻤﻪ ﻣﺪﻳﺮ اﻟﻨﻈﺎم ‪ Adminstrator‬او ال ‪ ، root‬هﻰ اﻧﺸﺎء هﺬا ال ‪ account‬ﻟﻠﻤﺴﺘﺨﺪم‬ ‫اﻟﺠﺪﻳﺪ ‪ ،‬او ﺗﻬﻴﺌﺘﻪ)ﺑﺎﻟﺘﻌﺪﻳﻞ او اﻻﻟﻐﺎء( اذا آﺎن ﻣﻮﺟﻮد ﻣﻦ ﻗﺒﻞ ‪ ،‬هﺬا ﺑﺎﻻﺿﺎﻓﻪ اﻟﻰ ﺗﻬﻴﺌﺘﻪ اﻟﻤﺠﻤﻮﻋﻪ‬ ‫اﻟﺘﻰ ﻳﻨﺘﻤﻰ اﻟﻴﻬﺎ ‪.‬‬ ‫واﻟﻤﺴﺘﺨﺪم ﻻ ﺑﺪ وان ﻳﻨﺘﻤﻰ اﻟﻰ ﻣﺠﻤﻮﻋﻪ ‪.‬‬ ‫واﻻﻣﺮ ‪) ls -l‬او ﺣﺘﻰ ‪ ( ll‬ﻳﻌﺮض ﻟﻨﺎ اﻟﻤﺴﺘﺨﺪم واﻟﻤﺠﻤﻮﻋﻪ ‪ ،‬اﻟﺘﺎﺑﻊ ﻟﻬﺎ اﻟﻤﻠﻒ اﻟﻤﻌﻴﻦ ‪ ،‬ﻣﺜﻞ‬ ‫ﻓﻨﺮى ﻧﺘﻴﺠﻪ هﺬا اﻻﻣﺮ ﻋﺒﺎرﻩ ﻋﻦ ارﺑﻌﻪ اﺳﻄﺮ ‪ ،‬وﺳﻨﺮآﺰ ﻓﻘﻂ ﻋﻠﻰ اﻟﺴﻄﺮ اﻻول واﻟﺜﺎﻟﺚ‬ .‬‬ ‫هﺬا ﺑﺎﻟﻨﺴﺒﻪ ﻟﺤﺴﺎب اﻟﻤﺴﺘﺨﺪم ﻗﺒﻞ اﻟﺪﺧﻮل ‪ ،‬اﻣﺎ ﺑﻌﺪ اﻟﺪﺧﻮل ﻓﺎن اﻟﻤﺴﺘﺨﺪم ﻻ ﺑﺪ وان ﻳﻨﺘﻤﻰ اﻟﻰ‬ ‫ﻣﺠﻤﻮﻋﻪ ﻣﻦ ﻣﺠﻤﻮﻋﺎت اﻟﻨﻈﺎم ‪.‬‬ ‫وادارﻩ ﺣﺴﺎب اﻟﻤﺴﺘﺨﺪم ‪ user account‬ﺗﺸﻤﻞ اﻧﺸﺎء ﺣﺴﺎﺑﻪ ‪ ،‬وﺗﻌﺪﻳﻞ هﺬا اﻟﺤﺴﺎب ‪ ،‬واﻳﻀﺎ‬ ‫إﻟﻐﺎﺋﻪ ﻣﻦ اﻟﻨﻈﺎم ‪ ،‬هﺬا ﺑﺎﻻﺿﺎﻓﻪ اﻟﻰ اﺟﺮاء ﻧﻔﺲ اﻟﻌﻤﻠﻴﺎت اﻟﺜﻼﺛﻪ ﻋﻠﻰ اﻟﻤﺠﻤﻮﻋﻪ ‪.‬‬ ‫اﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻤﺴﺘﺨﺪم ‪.‬‬ ‫وآﻞ ﻋﻤﻠﻴﻪ ﻳﻘﻮم ﺑﻬﺎ هﺬا اﻟﻤﺴﺘﺨﺪم ﻓﻰ اﻟﻨﻈﺎم ﺗﻜﻮن ﺑﺎﻻﻋﺘﻤﺎد ﻋﻠﻰ رﻗﻤﻪ اﻟﻤﻨﻔﺮد هﺬا ‪ ،‬ﻓﺎﻟﺒﺮاﻣﺞ‬ ‫واﻻواﻣﺮ ﻻ ﺗﻌﺮف اﻻﺳﻤﺎء ‪.

‫ﻓﻨﺠﺪ ﻓﻰ اﻟﺴﻄﺮ اﻻول وﺑﻌﺪ ال ‪ ،permission‬آﻠﻤﻪ ‪ ahmed‬ﻣﻜﺮرﻩ ﻣﺮﺗﺎن ‪ ،‬ﻓﺎﻻوﻟﻰ داﻟﻪ ﻋﻠﻰ‬ ‫اﻟﻤﺴﺘﺨﺪم ‪ ،‬واﻟﺜﺎﻧﻴﻪ داﻟﻪ ﻋﻠﻰ اﻟﻤﺠﻤﻮﻋﻪ ‪) . stat‬‬ .‬‬ ‫اﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻤﺠﻤﻮﻋﻪ ‪.‬‬ ‫* واﻟﻤﺠﻤﻮﻋﻪ اﻻﺳﺎﺳﻴﻪ ﻟﻠﻤﺴﺘﺨﺪم ﺗﺴﻤﻰ ‪.‬وهﻨﺎ اﻟﻤﺠﻤﻮﻋﻪ ﻟﻬﺎ ﻧﻔﺲ اﺳﻢ اﻟﻤﺴﺘﺨﺪم( ‪.‬‬ ‫* وآﻞ ﻣﺴﺘﺨﺪم ﻻ ﺑﺪ وان ﻳﻨﺘﻤﻰ اﻟﻰ ﻣﺠﻤﻮﻋﻪ واﺣﺪﻩ ﻋﻠﻰ اﻻﻗﻞ ‪ ،‬وﻗﺪ ﻳﻨﺘﻤﻰ ﻟﻌﺪﻩ ﻣﺠﻤﻮﻋﺎت ﻓﻰ‬ ‫ﻧﻔﺲ اﻟﻮﻗﺖ ‪.‬‬ ‫* واﻟﻤﺠﻤﻮﻋﻪ ﻟﻬﺎ رﻗﻢ واﺳﻢ ﻣﻨﻔﺮدﻳﻦ ‪ ، uniqe‬ﻓﻼ ﻳﺘﻜﺮر اﺳﻤﻬﺎ او رﻗﻤﻬﺎ ﻣﻊ اى ﻣﺠﻤﻮﻋﻪ اﺧﺮى‬ ‫* واﻟﻤﺠﻤﻮﻋﻪ ﻗﺪ ﺗﺤﻮى ﻣﺴﺘﺨﺪم واﺣﺪ ﻓﻘﻂ ‪ ،‬وﻗﺪ ﺗﺤﻮى اﻟﻌﺸﺮات ﻣﻦ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ‪. root‬‬ ‫وهﻜﺬا ‪ ،‬ﻓﺎﻟﻤﺴﺘﺨﺪم ﻓﻰ اﻟﻤﺜﺎﻟﻴﻦ هﻮ ُﻣﻨﺸﺄ اﻟﻤﻠﻔﺎت ‪ ،‬وﺑﻌﺪ اﻧﺸﺎء هﺬﻩ اﻟﻤﻠﻔﺎت ﻓﺎﻟﻠﻤﺠﻤﻮﻋﻪ اﻟﺘﻰ ﻳﻨﺘﻤﻰ‬ ‫اﻟﻴﻬﺎ اﻟﻤﺴﺘﺨﺪم ﺣﻖ ﻓﻰ هﺬﻩ اﻟﻤﻠﻔﺎت ‪ ،‬وهﺬا اﻟﺤﻖ هﻮ اﻟﺬى ﻳﺤﺪدﻩ اﻟﻤﺴﺘﺨﺪم ‪-‬واﻳﻀﺎ ال ‪-root‬‬ ‫وﻣﺘﻤﺜﻞ ﻓﻰ اﻟﺘﺼﺎرﻳﺢ اﻟﻤﻤﻨﻮﺣﻪ ﻟﻬﺎ ‪. secondry group‬‬ ‫* وﺗﺴﺘﻌﺮض اﻟﻤﻌﻠﻮﻣﺎت ﻋﻦ اﻟﻤﺠﻤﻮﻋﻪ ﺑﻮاﺳﻄﻪ اواﻣﺮ ﻣﺜﻞ ‪ ls -l‬واﻳﻀﺎ ‪. primary group‬‬ ‫*واﻟﻤﺠﻤﻮﻋﻪ اﻟﺜﺎﻧﻴﻪ ﻟﻠﻤﺴﺘﺨﺪم ﺗﺴﻤﻰ ‪.‬‬ ‫اﻣﺎ ﻓﻰ اﻟﺴﻄﺮ اﻟﺜﺎﻟﺚ ‪-‬واﻟﺨﺎص ﺑﺎﻟﻤﻠﻒ‪ -newown‬ﻓﻨﺠﺪ ان ﻣﺎﻟﻜﻪ ﻣﺴﺘﺨﺪم ﻳﺴﻤﻰ ‪ahmed1‬‬ ‫وهﺬا اﻟﻤﺴﺘﺨﺪم ﻣﺸﺘﺮك ﻓﻰ ﻣﺠﻤﻮﻋﻪ ﻣﺪﻳﺮ اﻟﻨﻈﺎم ال ‪ ، root‬وﻟﻬﺬا ﻓﺎن اﻟﻤﺠﻤﻮﻋﻪ ﺗﺴﻤﻰ ‪.‬‬ ‫* ال ‪ group‬هﻰ ﻋﺒﺎرﻩ ﻋﻦ ﻣﺠﻤﻮﻋﻪ ﻣﻦ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ﻳﺠﻤﻊ ﺑﻴﻨﻬﻢ ﺷﻰ ﻣﺸﺘﺮك ﻏﺎﻟﺒﺎ ‪.

‬‬ ‫ﻻﻟﻐﺎء ﺣﺴﺎب ﻣﻮﺟﻮد ﺑﺎﻟﻔﻌﻞ ‪.‬‬ ‫‪ groupmod‬وهﻮ ﻟﺘﻌﺪﻳﻞ ﻣﺠﻤﻮﻋﻪ ﻗﺎﺋﻤﻪ ﺑﺎﻟﻔﻌﻞ ‪.‬‬ ‫ﻓﺎﻻواﻣﺮ اﻟﺘﻰ ﻧﺘﻌﺎﻣﻞ ﺑﻬﺎ ﻣﻊ اﻟﻤﺠﻤﻮﻋﺎت هﻰ‬ ‫‪ groupadd‬وﻳﺴﺘﺨﺪم ﻻﺿﺎﻓﻪ ﻣﺠﻤﻮﻋﻪ ﺟﺪﻳﺪﻩ ‪.‬‬ ‫اﻣﺎ اﻟﻤﻠﻔﺎت )واﻟﻤﻮﺟﻮدﻩ ﻓﻰ اﻟﻤﺴﺎر ‪ ( /etc‬ﻓﻬﻰ‬ ‫‪ passwd‬وهﻮ اﻟﻤﻠﻒ اﻻﺳﺎﺳﻰ ﻓﻰ اﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻤﺴﺘﺨﺪم ‪ ،‬وﻳﺤﻮى ﻣﻌﻠﻮﻣﺎت ﻋﻦ آﻞ ﻣﺴﺘﺨﺪم‬ ‫‪ shadow‬وهﻮ ﻣﻠﻒ ﻳﺤﻮى ﻣﻌﻠﻮﻣﺎت ﺧﺎﺻﻪ ‪ ،‬وﺳﺮﻳﻪ ‪ ،‬وﻻ ﻳﺘﻌﺎﻣﻞ ﻣﻌﻪ اﻻ ال ‪.‬‬ ‫ﻓﺎﻻواﻣﺮ ﺑﺎﻟﻨﺴﺒﻪ ﻟﻠﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻤﺴﺘﺨﺪم هﻰ‬ ‫‪useradd‬‬ ‫‪userdel‬‬ ‫‪usermod‬‬ ‫ﻻﺿﺎﻓﻪ ﺣﺴﺎب ﻟﻤﺴﺘﺨﺪم ﺟﺪﻳﺪ ‪.‬‬ ‫‪ groupdel‬وﻳﺴﺘﺨﺪم ﻻﻟﻐﺎء ﻣﺠﻤﻮﻋﻪ ﻣﻮﺟﻮدﻩ ‪.‬‬ ‫واﻟﻤﻠﻔﺎت اﻟﺨﺎﺻﻪ ﺑﺎﻟﻤﺠﻤﻮﻋﺎت )واﻟﻤﻮﺟﻮدﻩ اﻳﻀﺎ ﺑﺎﻟﻤﺴﺎر ‪ ( /etc‬ﻓﻬﻰ‬ ‫‪group‬‬ ‫‪gshadow‬‬ ‫وﺗﺤﻮى ﻣﻌﻠﻮﻣﺎت ﻋﻦ اﻟﻤﺠﻤﻮﻋﺎت اﻟﻤﻮﺟﻮدﻩ ﺑﺎﻟﻨﻈﺎم ‪. root‬‬ ‫وﺑﺎﻟﻨﺴﺒﻪ ﻟﻠﻤﺠﻤﻮﻋﺎت ‪ ،‬ﻓﺎﻣﺮهﺎ ﺷﺒﻴﻪ ﺑﺎﻟﻤﺴﺘﺨﺪم ‪.‬‬ ‫ﻟﺘﻌﺪﻳﻞ ﺣﺴﺎب ﻟﻤﺴﺘﺨﺪم ﻣﻮﺟﻮد ‪.‬‬ ‫وهﻮ ﻣﺜﻞ اﻟﻤﻠﻒ ‪ shadow‬اﻟﻤﺬآﻮر ﺑﺎﻋﻠﻰ ‪.‬‬ .‫وﺗﺘﻢ ادارﻩ ﺣﺴﺎب اﻟﻤﺴﺘﺨﺪم‪/‬اﻟﻤﺠﻤﻮﻋﻪ ﻋﻦ ﻃﺮﻳﻖ ﻋﺪﻩ اواﻣﺮ واﻳﻀﺎ ﻋﺪﻩ ﻣﻠﻔﺎت ‪.

‫اوﻻ ‪ :‬اﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ‪.‬‬ ‫واﻻﻣﺮ ‪ useradd‬ﻗﺪ ﻳﺴﺘﻌﻤﻞ ﻣﻨﻔﺮدا ﺑﺎﻻﺿﺎﻓﻪ اﻟﻰ اﺳﻢ اﻟﻤﺴﺘﺨﺪم ك ‪ ، argument‬ﻣﺜﻞ‬ ‫‪useradd NAME‬‬ ‫وهﺬﻩ هﻰ اﻟﺼﻴﻐﻪ اﻻﺷﻬﺮ ﻓﻰ اﻧﺸﺎء اﻟﻤﺴﺘﺨﺪﻣﻴﻦ اﻟﺠﺪد ‪.‬‬ ‫اﻻوﻟﻰ ‪ :‬ﻣﻨﻔﺮدا ‪ ،‬وﻣﺜﺎﻟﻪ‬ ‫>‪useradd -G root <user‬‬ ‫ﻓﺎﻟﻨﺎﺗﺞ ﻣﻦ هﺬا اﻟﻤﺜﺎل ﺷﻴﺌﻴﻦ‬ ‫اﻻول هﻮ اﻧﺸﺎء ﻣﺴﺘﺨﺪم ﺟﺪﻳﺪ ﺑﺎﻻﺿﺎﻓﻪ اﻟﻰ اﻧﺸﺎء ﻣﺠﻤﻮﻋﻪ ﻟﻬﺎ ﻧﻔﺲ اﺳﻤﻪ )اى اﻧﻨﺎ ﺳﻨﺠﺪ ﻣﺴﺘﺨﺪم‬ ‫ﻳﺴﻤﻰ >‪ <user‬واﻳﻀﺎ ﺳﻨﺠﺪ ﻟﻪ ﻣﺠﻤﻮﻋﻪ ﻟﻬﺎ ﻧﻔﺲ اﻻﺳﻢ >‪<user‬‬ ‫اﻟﺜﺎﻧﻰ ‪ ،‬ﺳﻴﻀﺎف هﺬا اﻟﻤﺴﺘﺨﺪم اﻟﺠﺪﻳﺪ >‪ <user‬اﻟﻰ ﻣﺠﻤﻮﻋﻪ ال ‪.‬‬ ‫اﻻﻣﺮ ‪. useradd‬‬ ‫ﻣﻴﺰﻩ اواﻣﺮ ادارﻩ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ واﻟﻤﺠﻤﻮﻋﺎت ‪ ،‬اﻧﻬﺎ ذات ﺻﻴﻐﻪ واﺣﺪﻩ ‪.‬‬ ‫ﻓﻜﻞ اﻻواﻣﺮ اﻻﺳﺎﺳﻴﻪ ﻓﻰ ادارﻩ اﻟﻤﺴﺘﺨﺪم ﺗﺒﺪأ ﺑﺎﻟﻜﻠﻤﻪ ‪ user‬ﺛﻢ ﻳﻀﺎف اﻟﻴﻬﺎ اﻟﻤﻘﻄﻊ اﻟﻤﻨﺎﺳﺐ ﻟﻬﺎ ‪،‬‬ ‫ﻣﺜﻞ ‪ add‬ﻟﻼﺿﺎﻓﻪ او ‪ del‬ﻟﻼزاﻟﻪ او ‪ mod‬ﻟﻠﺘﻌﺪﻳﻞ ‪.‬‬ ‫وهﺬا اﻻﻣﺮ اﻟﺴﺎﺑﻖ ﻳﻨﺸﺄ اﻟﻘﻴﻢ اﻻﻓﺘﺮاﺿﻴﻪ او ال ‪ ، default‬ﻣﺜﻞ اﻧﺸﺎء ال ‪home directory‬‬ ‫اﻟﺨﺎص ﺑﻬﺬا اﻟﻤﺴﺘﺨﺪم ﺗﺤﺖ اﻟﻤﺴﺎر ‪ ، /home‬واﻧﺸﺎء ﻣﺠﻤﻮﻋﻪ ﺑﻨﻔﺲ اﺳﻢ اﻟﻤﺴﺘﺨﺪم ‪ ،‬وﻏﻴﺮهﺎ ﻣﻦ‬ ‫اﻟﻘﻴﻢ ال ‪.‬‬ ‫* ‪ -G‬ووﻇﻴﻔﻪ هﺬا ال ‪ option‬هﻮ اﺿﺎﻓﻪ اﻟﻤﺴﺘﺨﺪم اﻟﻰ اآﺜﺮ ﻣﻦ ‪ group‬ﻓﻰ ﻧﻔﺲ اﻟﻮﻗﺖ ‪،‬‬ ‫• وﻳﻤﻜﻦ ان ﻳﺎﺗﻰ هﺬا ال ‪ option‬ﻓﻰ ﺻﻮرﺗﻴﻦ ‪.‬‬ ‫وﻧﻔﺲ اﻟﺸﻰ ﻣﻊ اواﻣﺮ اﻟﻤﺠﻤﻮﻋﺎت ‪. root‬‬ . group -‬‬ ‫ﻓﻠﻮ ﻟﻢ ﻧﺤﺪد اﻟﻤﺠﻤﻮﻋﻪ ﻟﻠﻤﺴﺘﺨﺪم اﻟﺠﺪﻳﺪ ﺑﺎﻟﺨﻴﺎر ‪ -g‬ﻓﺎن اﻟﻨﻈﺎم ﺳﻴﻨﺸﻰ )ﺗﻠﻘﺎﺋﻴﺎ( ﻣﺠﻤﻮﻋﻪ ﻟﻬﺎ ﻧﻔﺲ‬ ‫اﺳﻢ اﻟﻤﺴﺘﺨﺪم ‪. default‬‬ ‫وﻟﻜﻦ ﻋﻨﺪ ارادﻩ ﺗﻐﻴﻴﺮ هﺬﻩ اﻟﻘﻴﻢ ‪ ،‬ﻓﻴﺘﻢ اﺿﺎﻓﻪ ‪ option‬اﻟﻰ اﻻﻣﺮ ‪. useradd‬‬ ‫وﻣﻦ اﺷﻬﺮ ال ‪ option‬اﻟﺘﻰ ﺗﺎﺗﻰ ﻣﻊ اﻻﻣﺮ ‪ useradd‬هﻰ‬ ‫* ‪ -g‬وهﺬا ال ‪ option‬وﻇﻴﻔﺘﻪ ﺗﻐﻴﻴﺮ ال ‪ group‬اﻻﻓﺘﺮاﺿﻴﻪ ‪ default‬اﻟﺘﻰ ﻳﻨﺸﺎهﺎ اﻟﻨﻈﺎم ﺗﻠﻘﺎﺋﻴﺎ‬ ‫ﺑﻨﻔﺲ اﺳﻢ اﻟﻤﺴﺘﺨﺪم اﻟﺠﺪﻳﺪ ‪ ،‬ﻣﺜﺎل‬ ‫>‪useradd -g <gruop> <newuser‬‬ ‫ﻓﻔﻰ هﺬا اﻟﻤﺜﺎل ﺗﻢ اﻟﺤﺎق اﻟﻤﺴﺘﺨﺪم اﻟﺠﺪﻳﺪ )واﻟﺬى ﻳﺴﻤﻰ ‪ (newuser‬ﺑﺎﻟﻤﺠﻤﻮﻋﻪ اﻟﻤﻮﺟﻮدﻩ ﺑﺎﻟﻔﻌﻞ‬ ‫واﻟﻤﺴﻤﺎﻩ ‪-‬ﻋﻠﻰ ﺳﺒﻴﻞ اﻟﻤﺜﺎل‪.

‬‬ ‫ﻳﻼﺣﻆ اﻧﻪ ﻻ ﺑﺪ ﻣﻦ ﺗﻨﻔﻴﺬ اﻻﻣﺮ ‪ passwd‬ﻋﻠﻰ اﻟﻤﺴﺘﺨﺪم اﻟﺠﺪﻳﺪ ﺑﻌﺪ اﻧﺸﺎء ﺣﺴﺎب ﻟﻪ ‪ ،‬ذﻟﻚ ﻻﻧﻪ‬ ‫ﺑﻌﺪم ﺗﻨﻔﻴﺬ ﻣﺜﻞ هﺬا اﻻﻣﺮ ﻟﻦ ﻳﻜﻮن ﻟﻠﻤﺴﺘﺨﺪم ‪ passwd‬ﻋﻠﻰ اﻻﻃﻼق ‪ ،‬وﺑﺎﻟﺘﺎﻟﻰ ﻟﻦ ﻳﺴﺘﻄﻴﻊ هﻮ‬ ‫ﻧﻔﺴﻪ ﻣﻦ اﻟﺪﺧﻮل اﻟﻰ اﻟﻨﻈﺎم ‪.‫اﻟﺜﺎﻧﻴﻪ ‪ :‬ﻣﻊ اﻟﺨﻴﺎر ‪ -g‬ﻣﺜﻞ‬ ‫>‪useradd -g <primary> -G <secondry> <user‬‬ ‫وﺑﻤﻌﺮﻓﻪ اﻟﻔﺮق ﺑﻴﻦ اﻟﺼﻮرﺗﻴﻦ ﺳﻨﻌﺮف ﻧﺘﻴﺠﻪ هﺬا اﻻﻣﺮاﻻﺧﻴﺮ ‪.‬‬ ‫وﻳﻜﻮن اﻟﻤﺴﺘﺨﺪم ﺟﺪﻳﺪ ‪ ،‬ﻻﻧﻪ ﻟﻮ آﺎن ﻣﻮﺟﻮد ﻣﻦ ﻗﺒﻞ ﻓﺎن ﻃﺮﻳﻘﻪ اﺿﺎﻓﺘﻪ اﻟﻰ اﻟﻤﺠﻤﻮﻋﺎت ﻻ ﺗﺘﻢ‬ ‫ﺑﻬﺬﻩ اﻟﻄﺮﻳﻘﻪ‪ ،‬ﺑﻞ ﺳﺘﺘﻢ ﺑﺎﻻﻣﺮ ‪.‬‬ . -G‬‬ ‫اى ان اﻟﻔﺮق ﺑﻴﻦ اﻟﺼﻮرﺗﻴﻦ ﻣﺘﻌﻠﻖ ﺑﺎل‪ group‬اﻟﺘﻰ ﺳﻴﺸﺘﺮك ﻓﻴﻬﺎ ﻟﻠﻤﺴﺘﺨﺪم ‪ ،‬ﻓﺒﺎﻟﺼﻮرﻩ اﻻوﻟﻰ‬ ‫)‪ (-g‬ﺳﻴﻀﻴﻒ اﻟﻨﻈﺎم اﻟﻤﺴﺘﺨﺪم اﻟﺠﺪﻳﺪ اﻟﻰ ﻣﺠﻤﻮﻋﻪ ﺟﺪﻳﺪﻩ ‪ ،‬اﻣﺎ اﻟﺼﻮرﻩ اﻟﺜﺎﻧﻴﻪ ﻓﻨﺤﻦ ﻧﺤﺪد ﺑﺎﻧﻔﺴﻨﺎ‬ ‫اﻟﻤﺠﻤﻮﻋﺘﻴﻦ اﻻوﻟﻰ واﻟﺜﺎﻧﻴﻪ اﻟﺘﻰ ﺳﻴﺸﺘﺮك ﻓﻴﻬﻤﺎ اﻟﻤﺴﺘﺨﺪم اﻟﺠﺪﻳﺪ‪.‬‬ ‫ﻓﺎﻟﻔﺮق ﺑﻴﻨﻬﻢ ﺑﺴﻴﻂ ‪-‬ﻣﻊ ان ﺷﻜﻞ اﻻﻣﺮ ﻳﺨﻴﻒ‪ -‬وهﺬا اﻟﻔﺮق هﻮ اﻧﻨﺎ ﻓﻰ اﻟﻤﺜﺎل اﻟﺜﺎﻧﻰ اﺿﻔﻨﺎ اﻟﻤﺴﺘﺨﺪم‬ ‫اﻟﻰ ﻣﺠﻤﻮﻋﻪ ﻣﻮﺟﻮدﻩ ﺑﺎﻟﻔﻌﻞ )ﺳﻴﻜﺘﺐ اﺳﻤﻬﺎ ﻣﻜﺎن ‪ (primary‬وهﺬا هﻮ وﻇﻴﻔﻪ اﻟﺨﻴﺎر ‪-g‬‬ ‫ﺛﻢ ﺑﻌﺪ ذﻟﻚ اﺿﻔﻨﺎ هﺬا اﻟﻤﺴﺘﺨﺪم اﻟﻰ ﻣﺠﻤﻮﻋﻪ ﺛﺎﻧﻴﻪ )واﺳﻤﻬﺎ ﺳﻴﻜﻮن ﻣﻜﺎن ‪ (secondry‬وهﺬا هﻮ‬ ‫وﻇﻴﻔﻪ اﻟﺨﻴﺎر ‪. chgrp‬‬ ‫* ‪ -d‬وهﺬا ال ‪ option‬وﻇﻴﻔﺘﻪ ﺗﻐﻴﻴﺮ ال ‪ home dir‬ﻟﻠﻤﺴﺘﺨﺪم اﻟﺠﺪﻳﺪ ‪ ،‬ﻣﺜﻞ‬ ‫‪useradd -d /var/newuser newuser‬‬ ‫ﻓﻔﻰ هﺬا اﻟﻤﺜﺎل ﺗﻢ ﺗﻐﻴﻴﺮ ال ‪ home dir‬ﻟﻠﻤﺴﺘﺨﺪم ‪ newuser‬اﻟﻰ ‪) /var/newuser‬واﻟﻤﻜﺎن‬ ‫اﻟﻄﺒﻴﻌﻰ ﻻﻧﺸﺎء ال ‪ home dir‬ﻟﻠﻤﺴﺘﺨﺪﻣﻴﻦ اﻟﺠﺪد هﻮ ‪( /home‬‬ ‫* ‪ -c‬وﺑﻬﺬا ال ‪ option‬ﺳﻴﺘﻢ وﺿﻊ ‪ comment‬ﻟﻠﻤﺴﺘﺨﺪم ‪ ،‬ﺑﻤﻌﻨﻰ اﺧﺮ ‪ ،‬ﻣﻌﻠﻮﻣﺎت اﺿﺎﻓﻴﻪ‬ ‫آﺮﻗﻢ اﻟﺘﻠﻴﻔﻮن ‪ ،‬ﻋﻨﻮاﻧﻪ وهﻜﺬا ‪).‬وﻳﻤﻜﻦ رؤﻳﻪ هﺬﻩ اﻟﺘﻌﻠﻴﻘﺎت ﺑﺎﻻﻣﺮ ‪(finger‬‬ ‫>‪useradd -c <tel 010xxxxx> <user‬‬ ‫وهﻨﺎك اﻟﻌﺪﻳﺪ ﻣﻦ ال ‪ option‬ﻣﻮﺟﻮدﻩ ﺑﺎل ‪ man page‬ﻟﻼﻣﺮ ‪ useradd‬ﻳﻤﻜﻦ اﻻﻃﻼع ﻋﻠﻴﻬﺎ‪،‬‬ ‫وﻟﻜﻦ اﻟﻤﻬﻢ اﻻن هﻮ ال ‪ option‬اﻟﻤﺴﻤﻰ ‪ -D‬وهﻮ ﻣﺎ ﺳﻨﻨﺎﻗﺸﻪ اﻻن ‪.‬‬ ‫ﻟﻜﻦ ﻳﻼﺣﻆ اﻧﻪ ﻻ ﺑﺪ ﻣﻦ وﺟﻮد اﻟﻤﺠﻤﻮﻋﺘﻴﻦ ﺑﺎﻟﻔﻌﻞ ﻋﻠﻰ اﻟﻨﻈﺎم ‪.

default‬‬ ‫ﻳﻤﻜﻦ ﺑﺎل ‪ option‬اﻟﻤﺴﻤﻰ ‪ -D‬ﺗﻌﺪﻳﻞ اﻟﻘﻴﻢ اﻻﺳﺎﺳﻴﻪ ال ‪ default‬اﻟﺘﻰ ﺳﺘﻨﺸﺄ ﻟﻜﻞ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ‬ ‫اﻟﺠﺪد ‪.‬‬ ‫وﻣﻦ هﺬﻩ اﻟﻘﻴﻢ ﻣﺜﻼ ‪ ،‬آﻮن ال ‪ home directory‬اﻟﺨﺎص ﺑﻪ ﻣﻮﺟﻮد ﺗﺤﺖ ‪، /home‬و ﻧﻮع ال‬ ‫‪ shell‬اﻟﺨﺎﺻﻪ ﺑﻪ ‪ ،‬وﻏﻴﺮهﺎ ‪. /home‬‬ ‫ﻓﺎى ﻣﺴﺘﺨﺪم ﺟﺪﻳﺪ ﺳﻴﺘﻢ اﻧﺸﺎء ‪ account‬ﻟﻪ ﺑﺎﻟﻨﻈﺎم ﺑﺎﻻﻣﺮ ‪ useradd‬ﻓﻘﻂ ﺑﺪون اى ‪option‬‬ ‫ﺳﻴﺠﺪ ان ال ‪ home dir‬اﻟﺨﺎص ﺑﻪ ﻣﻮﺟﻮد ﺗﺤﺖ ‪.‬‬ ‫واﻟﻔﺮق ﺑﻴﻦ هﺬا اﻟﺘﻌﺪﻳﻞ ‪ ،‬وﺑﻴﻦ ادﺧﺎل ‪ option‬اﻟﻰ اﻻﻣﺮ ‪ useradd‬هﻮ‬ ‫ﻓﻰ ﺣﺎل ادﺧﺎل ‪ option‬ﻣﻊ اﻻﻣﺮ ‪ useradd‬ﻓﺎن هﺬا اﻟﺘﻌﺪﻳﻞ ﺳﻴﻨﻄﺒﻖ ﻓﻘﻂ ﻋﻠﻰ هﺬا اﻟﻤﺴﺘﺨﺪم‬ ‫اﻟﺬى ﺗﻢ ﺗﻄﺒﻴﻖ هﺬا ال ‪ option‬ﻋﻠﻴﻪ ‪.‬ﻓﻤﺜﻼ اذا آﺘﺒﻨﺎ اﻻﻣﺮ اﻟﺘﺎﻟﻰ‬ ‫‪useradd -D -b /var‬‬ ‫ﻓﺎن ﻧﺘﻴﺠﻪ هﺬا اﻻﻣﺮ هﻮ ﺗﺤﻮﻳﻞ ال ‪ home directory‬ﻻى ﻣﺴﺘﺨﺪم ﺟﺪﻳﺪ ﻓﻰ اﻟﻨﻈﺎم اﻟﻰ اﻟﻤﺴﺎر‬ ‫‪ /var‬ﺑﺪﻻ ﻣﻦ آﻮﻧﻪ ﻓﻰ اﻟﻤﺴﺎر ‪.‫ﺗﻌﺪﻳﻞ اﻟﻘﻴﻢ ال ‪.‬‬ ‫ﻓﻤﺜﻼ ‪ ،‬ﺑﻜﺘﺎﺑﻪ اﻻﻣﺮ ‪ useradd user‬ﻓﺎن اﻟﻨﻈﺎم ﺳﻴﻨﺸﺄ ﻟﻬﺬا اﻟﻤﺴﺘﺨﺪم اﻟﺠﺪﻳﺪ ﻣﺠﻠﺪ ﺗﺤﺖ‬ ‫‪ /home‬ﻟﻴﻜﻮن هﻮ ال ‪ home dir‬ﻟﻪ ‪ ،‬واﻟﺴﺆال هﻨﺎ ﻟﻤﺎذا ﻳﻨﺸﺄ اﻟﻨﻈﺎم هﺬا اﻟﻤﺠﻠﺪ ﻓﻰ هﺬا اﻟﻤﻜﺎن؟‬ ‫واﻻﺟﺎﺑﻪ هﻰ ‪ ،‬اﻧﻪ ﻳﻘﺮأ ﻣﻦ ﻣﻠﻔﺎت ﻣﻌﻴﻨﻪ ‪ ،‬ﺗﺨﺒﺮﻩ هﺬﻩ اﻟﻤﻠﻔﺎت ﺑﺎﻧﻪ ﻻ ﺑﺪ ان ﻳﻨﺸﺄ هﺬا اﻟﻤﺠﻠﺪ ﺗﺤﺖ‬ ‫‪.‬‬ ‫وﻳﻤﻜﻦ اﻻﻃﻼع ﻋﻠﻴﻬﺎ ﻣﻦ ال ‪.‬‬ ‫اﻣﺎ ﻣﻊ ﺣﺎﻟﻪ اﻟﺘﻌﺪﻳﻞ ﺑﺎﻟﺨﻴﺎر ‪ -D‬ﻓﺎن هﺬا اﻟﺘﻌﺪﻳﻞ ﺳﻴﻐﻴﺮ ﻓﻰ اﻟﻘﻴﻢ اﻻﺳﺎﺳﻴﻪ اﻟﺘﻰ ﻳﻀﻌﻬﺎ اﻟﻨﻈﺎم ﻟﻜﻞ‬ ‫اﻟﻤﺴﺘﺨﺪﻣﻴﻦ اﻟﺠﺪد ‪. man page‬‬ ‫* اﻳﻀﺎ ﻳﻤﻜﻦ اﺳﺘﻌﺮاض هﺬﻩ اﻟﻘﻴﻢ ال ‪) default‬واﻟﺘﻰ ﻳﻌﻄﻴﻬﺎ اﻟﻨﻈﺎم ﻻى ﻣﺴﺘﺨﺪم ﺟﺪﻳﺪ( ﺑﺎﻻﻣﺮ‬ ‫‪useradd -D‬‬ ‫ﻓﻘﻂ وﺑﺪون اى اﺿﺎﻓﺎت ‪ ،‬ﻓﺘﺮى ﻧﺎﺗﺠﻪ ﻋﺒﺎرﻩ ﻋﻦ ﻋﺪﻩ ﺳﻄﻮر ‪ ،‬ﺗﺒﻴﻦ هﺬﻩ اﻟﺴﻄﻮر اﻟﻘﻴﻢ ال‬ ‫‪ default‬ﻋﻠﻰ ﻧﻈﺎﻣﻚ ‪.‬‬ ‫* واﻟﻤﻠﻒ اﻟﻤﺴﺠﻞ ﺑﻪ هﺬﻩ اﻟﻘﻴﻢ ﻣﻮﺟﻮد ﻓﻰ ‪. /etc/default/useradd‬‬ . /var‬‬ ‫وﻳﻮﺟﺪ ﻣﻊ اﻟﺨﻴﺎر ‪ -D‬ﻋﺪﻩ ﺧﻴﺎرات )ﻣﺜﻞ ‪ -b‬ﺳﺎﻟﻒ اﻟﺬآﺮ( وﺗﻐﻴﺮ هﺬﻩ اﻟﺨﻴﺎرات اﻟﻘﻴﻢ ال‪default‬‬ ‫ﻟﻠﻨﻈﺎم ‪. /home‬‬ ‫ووﻇﻴﻔﻪ اﻟﺨﻴﺎر ‪ -D‬هﻮ اﻟﺘﻌﺪﻳﻞ ﻓﻰ هﺬﻩ اﻟﻤﻠﻔﺎت ‪ .‬‬ ‫ﻓﺎى ﻣﺴﺘﺨﺪم ﺟﺪﻳﺪ ﻋﻨﺪ اﻧﺸﺎء ‪ account‬ﻟﻪ ﺑﺎﻟﻨﻈﺎم ‪-‬وذﻟﻚ ﺑﺎﻻﻣﺮ ‪ useradd‬ﻓﻘﻂ ﺑﺪون اى‬ ‫‪ -option‬ﻓﺎﻧﻪ ﻳﺎﺧﺪ اﻟﻘﻴﻢ ‪ default‬اﻟﻤﺤﺪدﻩ ﻓﻰ اﻟﻨﻈﺎم ﻣﻦ ﻗﺒﻞ ‪.

‬‬ ‫وﺻﻴﻐﻪ هﺬا اﻻﻣﺮ ﺑﺴﻴﻄﻪ ﺟﺪا وهﻰ‬ ‫>‪userdel <user‬‬ ‫ﻓﺒﺬﻟﻚ ﻳﺘﻢ اﻟﻐﺎء هﺬا اﻟﺤﺴﺎب ﻣﻦ اﻟﻨﻈﺎم ‪.‫اﻻﻣﺮ ‪userdel‬‬ ‫ﻳﺴﺘﺨﺪم اﻻﻣﺮ ‪ userdel‬ﻻﻟﻐﺎء ﺣﺴﺎب )‪ (account‬ﻟﻤﺴﺘﺨﺪم ﻣﻮﺟﻮد ﺑﺎﻟﻔﻌﻞ ﻋﻠﻰ اﻟﻨﻈﺎم ‪.‬‬ .‬‬ ‫وﻳﺎﺗﻰ ﻣﻊ هﺬا اﻻﻣﺮ ﺧﻴﺎر واﺣﺪ ﻓﻘﻂ ‪ ،‬وهﻮ ‪ -r‬وهﺬا ال ‪ option‬وﻇﻴﻔﺘﻪ اﻟﻐﺎء آﻞ اﻟﻤﻠﻔﺎت‬ ‫واﻟﻤﺠﻠﺪات اﻟﻤﻮﺟﻮدﻩ ﻓﻰ ال ‪ home directory‬ﻟﻠﻤﺴﺘﺨﺪم ‪ ،‬ﻣﺜﻞ‬ ‫>‪userdel -r <userNAME‬‬ ‫وﻳﻼﺣﻆ اﻧﻪ اذا ﻟﻢ ﻳﺴﺘﺨﺪم هﺬا ال ‪ option‬ﻓﺎن اﻟﻨﻈﺎم ﺳﻴﻘﻮم ﺑﺎﻟﻐﺎء ﺣﺴﺎب اﻟﻤﺴﺘﺨﺪم ﻓﻘﻂ ‪ ،‬ﻣﻊ‬ ‫اﻻﺑﻘﺎء ﻋﻠﻰ ال ‪ home directory‬اﻟﺨﺎص ﺑﻪ ‪.

modification‬‬ ‫واﻟﺨﻴﺎرات اﻟﺘﻰ ﺗﺎﺗﻰ ﻣﻊ هﺬا اﻻﻣﺮ ﺗﻘﺮﻳﺒﺎ ﻧﻔﺲ اﻟﺨﻴﺎرات اﻟﺘﻰ ﺗﺎﺗﻰ ﻣﻊ اﻻﻣﺮ ‪ ، useradd‬ﻣﺜﻞ‬ ‫• ‪ -g‬ﻟﻞ ‪primary group‬‬ ‫• ‪ -G‬ﻟﻞ ‪secondry group‬‬ ‫• ‪ -c‬ﻟﻠﻤﻌﻠﻮﻣﺎت اﻻﺿﺎﻓﻴﻪ ‪comment‬‬ ‫• ‪ -e‬ﻟﻌﺪد اﻻﻳﺎم اﻟﺒﺎﻗﻴﻪ ﻟﻠﻤﺴﺘﺨﺪم او ‪expire date‬‬ ‫• ‪ -s‬ﻟﺘﻌﺪﻳﻞ ال ‪ shell‬اﻻﻓﺘﺮاﺿﻴﻪ ﻟﻠﻤﺴﺘﺨﺪم ‪default‬‬ ‫• ‪ -u‬ﻟﺘﻐﻴﻴﺮ ال ‪ UID‬او ﺑﻤﻌﻨﻰ اﺧﺮ ‪ ،‬رﻗﻢ اﻟﻤﺴﺘﺨﺪم ﻓﻰ اﻟﻨﻈﺎم‬ ‫وﻏﻴﺮهﻢ ﻣﻦ اﻟﺨﻴﺎرات اﻻﺧﺮى ‪ ،‬وﻟﻜﻦ اﻟﺬى ﻳﺠﺐ اﻟﺘﺮآﻴﺰ ﻋﻠﻴﻪ واﻻﻧﺘﺒﺎﻩ ﻟﻪ ﺧﻴﺎران وهﻢ‬ ‫• ‪ -L‬وﻳﻘﻮم هﺬا ال ‪ option‬ﺑﻌﻤﻞ ‪ lock‬ﻟﻜﻠﻤﻪ اﻟﻤﺮور ‪ password‬اﻟﺨﺎﺻﻪ ﺑﺎﻟﻤﺴﺘﺨﺪم ‪ ،‬ﻓﻼ‬ ‫ﻳﺴﺘﻄﻴﻊ اﻟﻤﺴﺘﺨﺪم اﻟﺪﺧﻮل ﻟﻠﻨﻈﺎم ‪-‬ﻻن ال ‪ password‬ﻣﻐﻠﻘﻪ‪ -‬واﻳﻀﺎ ﻻ ﻳﺴﺘﻄﻴﻊ اﻟﻤﺴﺘﺨﺪم ان‬ ‫ﻳﻐﻴﺮ ال ‪ password‬اﻻ ﺑﻌﺪ ان ﻳﺰﻳﻞ ال ‪ root‬هﺬﻩ اﻟﺨﺎﺻﻴﻪ ‪.‫اﻻﻣﺮ ‪usermod‬‬ ‫وﻇﻴﻔﻪ هﺬا اﻻﻣﺮ هﻮ ﺗﻌﺪﻳﻞ اﻟﺒﻴﺎﻧﺎت اﻟﺨﺎﺻﻪ ﺑﺎﻟﻤﺴﺘﺨﺪم ‪ ،‬وﻟﻬﺬا ﻓﻬﻮ اﺧﺘﺼﺎر ل ‪.‬‬ ‫>‪Usermod -L <userName‬‬ ‫ﻓﺒﻬﺬا اﻻﻣﺮ ﻓﺎﻧﻨﺎ ﻣﻨﻌﻨﺎ اﻟﻤﺴﺘﺨﺪم ﻣﻦ اﻣﻜﺎﻧﻴﻪ ﺗﻐﻴﻴﺮ ال ‪ ، password‬وﻟﻠﺴﻤﺎح ﻟﻪ ‪ ،‬ﻧﻨﻔﺬ اﻻﻣﺮ‬ ‫>‪usermod -U <userName‬‬ .‬‬ ‫وﻳﻀﻴﻒ هﺬا ال ‪ option‬اﻟﻌﻼﻣﻪ > ! < اﻣﺎم آﻠﻤﻪ اﻟﺴﺮ ﻟﻠﻤﺴﺘﺨﺪم ﻓﻰ اﻟﻤﻠﻒ ‪) shadow‬واﻟﺬى‬ ‫ﺳﻨﺘﺤﺪث ﻋﻨﻪ ﺑﻌﺪ ﻗﻠﻴﻞ(‬ ‫• ‪ -U‬وﻳﺘﻢ ﺑﻬﺬا ال‪ option‬ﻋﻤﻞ ‪ unlock‬ﻟﻠﻤﺴﺘﺨﺪم ‪ ،‬وﻣﻦ ﺛﻢ ﺗﻤﻜﻴﻨﻪ ﻣﻦ ﺗﻐﻴﻴﺮ ‪password‬‬ ‫اى ان هﺬا ال ‪ option‬ﻋﻜﺲ اﻟﺬى ﻗﺒﻠﻪ ‪.

‫ﻣﻠﻔﺎت اﻟﻤﺴﺘﺨﺪم ﻋﻠﻰ اﻟﻨﻈﺎم ‪.‬‬ ‫وﻟﻬﺬا ﻓﺎن اﻟﻤﻌﻠﻮﻣﺎت اﻟﺨﺎﺻﻪ ﺑﺎﻟﻤﺴﺘﺨﺪﻣﻴﻦ ﻣﻮﺟﻮدﻩ ﻓﻰ ﻣﻠﻔﺎن ‪ ،‬وهﺬا هﻮ ﻣﺎ ﺳﻨﺘﻌﺮف ﻋﻠﻴﻪ اﻻن ‪.‬‬ ‫وهﺬﻩ اﻟﻤﻠﻔﺎت هﻰ ‪ passwd‬و ‪ shadow‬واﻟﻤﻮﺟﻮدان ﺑﺎﻟﻤﺴﺎر ‪. root‬‬ ‫ﻓﻰ ﺣﻴﻦ ان ال ‪ permission‬اﻟﺨﺎص ﺑﺎﻟﻤﻠﻒ ‪ passwd‬هﻮ ‪ 644‬اى‪ ،‬ﻗﺮأﻩ وآﺘﺎﺑﻪ ﻟﻠﻤﺎﻟﻚ ‪root‬‬ ‫وﻗﺮأﻩ ﻓﻘﻂ ﻟﻤﺠﻤﻮﻋﻪ ال ‪ root‬وﻟﻠﺒﺎﻗﻴﻦ ‪.‬‬ ‫واﻟﻤﻼﺣﻆ هﻨﺎ ﺷﻴﺌﺎن ‪ ،‬هﻤﺎ‬ ‫•اوﻻ ‪ ،‬ان آﺎن ال ‪ permission‬ﻟﻠﻤﻠﻒ ‪ shadow‬هﻮ ﻗﺮأﻩ ﻓﻘﻂ ﻟﻞ ‪ root‬ﻓﻬﺬا ﻻ ﻳﻤﻨﻊ ﻋﻠﻰ‬ ‫اﻻﻃﻼق اﻣﻜﺎﻧﻴﻪ اﻟﺘﻌﺪﻳﻞ ﻓﻴﻪ ‪ ،‬ﻻن ال ‪ root‬ﻟﻪ آﺎﻓﻪ اﻟﺼﻼﺣﻴﺎت ﺑﺎﻟﻨﻈﺎم ‪ ،‬ﻓﻌﻨﺪ ﻣﺤﺎوﻟﻪ اﻟﺘﻌﺪﻳﻞ‬ ‫ﻓﻰ اﻟﻤﻠﻒ ﺳﻴﻈﻬﺮ ﻟﻚ ﺑﺎﺳﻔﻞ اﻟﻤﻠﻒ ﺳﻄﺮ ﻳﻮﺿﺢ ان اﻟﻤﻠﻒ ﻗﺮأﻩ ﻓﻘﻂ ‪ ،‬وﺳﺘﻀﻄﺮ ﺑﻨﺎءً ﻋﻠﻰ ذﻟﻚ‬ ‫ان ﺗﻀﻴﻒ اﻟﻌﻼﻣﻪ> ! < ﺑﻌﺪ اﻟﺤﺮوف ‪ :wq‬ﻟﻜﻰ ﺗﻀﻄﺮﻩ اﻟﻰ ﻗﺒﻮل اﻟﺘﻐﻴﻴﺮ اﻟﺬى ﺣﺪث ‪.passwd‬ﻣﻊ ان آﻠﻴﻬﻤﺎ ﻣﻦ ﻣﻠﻔﺎت اﻟﻨﻈﺎم‪ ، -‬هﻮ ان اﻟﻤﻠﻒ ‪ passwd‬ﻳﺴﺘﺨﺪم ﺑﻮاﺳﻄﻪ ﺑﺮاﻣﺞ‬ ‫ﺗﻌﺘﻤﺪ ﻋﻠﻴﻪ ﻓﻰ ﻋﻤﻠﻬﺎ ‪ ،‬ﻓﺎﻻواﻣﺮ اﻟﺘﻰ ﻻ ﺑﺪ ان ﺗﺘﻌﺮف ﻋﻠﻰ ال ‪ shell‬اﻟﺨﺎﺻﻪ ﺑﺎﻟﻤﺴﺘﺨﺪم او‬ ‫ﺣﺘﻰ اﻟﺘﻰ ﻻ ﺑﺪ ﻟﻬﺎ ﻣﻦ ﻣﻌﺮﻓﻪ ال ‪ UID‬وال ‪ GID‬ﻟﻠﻤﺴﺘﺨﺪم )وهﻰ ﻣﻦ ﺿﻤﻦ اﻟﻤﻌﻠﻮﻣﺎت اﻟﺘﻰ ﻓﻰ‬ ‫اﻟﻤﻠﻒ( ﻻ ﺑﺪ ﻟﻬﺎ ان ﺗﻘﺮأ وﺗﻄﻠﻊ ﻋﻠﻰ هﺬا اﻟﻤﻠﻒ ‪.‬‬ ‫اﻣﺎ اﻟﻤﻠﻒ ‪ /etc/shadow‬ﻓﻬﻮ اﻳﻀﺎ ﻟﺤﻔﻆ ﻣﻌﻠﻮﻣﺎت ﻋﻦ اﻟﻤﺴﺘﺨﺪم ‪ ،‬وﻟﻜﻦ هﺬﻩ اﻟﻤﻌﻠﻮﻣﺎت اآﺜﺮ‬ ‫اهﻤﻴﻪ ﻣﻦ اﻟﻤﻮﺟﻮدﻩ ﺑﺎﻟﻤﻠﻒ ‪.‬‬ ‫• ﺛﺎﻧﻴﺎ ‪ ،‬اﻟﺴﺒﺐ ﻓﻰ ﺟﻌﻞ ال ‪ permission‬ﺑﻬﺬﻩ اﻟﺼﻮرﻩ ﻟﻠﻤﻠﻒ ‪ shadow‬وﻟﻴﺲ آﺬﻟﻚ ﻟﻠﻤﻠﻒ‬ ‫‪. /etc‬‬ ‫ﻓﺎﻟﻤﻠﻒ ‪ /etc/passwd‬ﻣﻬﻤﺘﻪ ﺣﻔﻆ ﻣﻌﻠﻮﻣﺎت ﻋﻦ اﻟﻤﺴﺘﺨﺪم ‪ ،‬وهﺬﻩ اﻟﻤﻌﻠﻮﻣﺎت ‪-‬اﻟﺘﻰ ﺳﻨﺘﻌﺮف‬ ‫ﻋﻠﻴﻬﺎ اﻻن‪ -‬ﺗﻌﺪ ﻣﻌﻠﻮﻣﺎت ﻋﺎﻣﻪ ﻋﻦ اﻟﻤﺴﺘﺨﺪم ‪. passwd‬‬ ‫وﻳﻜﻔﻴﻨﺎ ان ﻧﻌﺮف ان اﻟﻤﻠﻒ ‪ shadow‬ﻟﻪ ‪ permission‬ﺧﺎص ﺟﺪا ‪ ،‬ﻗﻴﻤﺘﻪ ‪ 400‬اى اﻧﻪ ﻳﺴﻤﺢ‬ ‫ﻓﻴﻪ ﺑﺎﻟﻘﺮأﻩ ﻓﻘﻂ ﻟﻤﺎﻟﻜﻪ وهﻮ ﺑﺎﻟﻄﺒﻊ ال ‪.‬‬ .

.‫ﻣﻠﻒ ‪. shadow‬‬ ‫‪ UID -3‬وهﻮ اﻟﺮﻗﻢ اﻟﻤﺤﺪد ﻟﻜﻞ ﻣﺴﺘﺨﺪم ‪ ،‬وهﻮ آﻤﺎ اﺳﻠﻔﻨﺎ ‪ ،‬رﻗﻢ ﻣﻨﻔﺮد ‪.‬‬ ‫‪ home dir -6‬وﺑﻪ ﻳﺘﺤﺪد ال ‪ home directory‬اﻟﺨﺎص ﺑﺎﻟﻤﺴﺘﺨﺪم ‪. uniqe‬‬ ‫‪ GID -4‬وهﻮ رﻗﻢ اﻟﻤﺠﻤﻮﻋﻪ اﻟﺘﻰ ﻳﻨﺘﻤﻰ اﻟﻴﻬﺎ اﻟﻤﺴﺘﺨﺪم ‪.‬‬ ‫‪ comment -5‬وﺑﻬﺬﻩ اﻟﺨﺎﻧﻪ ﺗﻮﺿﻊ اﻟﻤﻌﻠﻮﻣﺎت اﻻﺿﺎﻓﻴﻪ ﻟﻠﻤﺴﺘﺨﺪم ‪ ،‬ﻣﺜﻞ اﻟﺘﻠﻴﻔﻮن او اﻟﻌﻨﻮان ‪.‬‬ ‫‪ shell -7‬وﻳﻜﻮن ﺑﻬﺬﻩ اﻟﺨﺎﻧﻪ ال ‪ shell‬اﻟﻤﺤﺪدﻩ ﻟﻜﻞ ﻣﺴﺘﺨﺪم ﻋﻠﻰ ﺣﺪﻩ ‪..‬‬ . passwd‬‬ ‫ﺷﻜﻞ هﺬا اﻟﻤﻠﻒ آﺎﻻﺗﻰ‬ ‫ﻓﻨﺠﺪ ﺷﻜﻞ اﻟﻤﻠﻒ ‪ passwd‬ﻋﺒﺎرﻩ ﻋﻦ ‪ 7‬اﻋﻤﺪﻩ او ﺧﺎﻧﺎت ‪ ،‬ﻳﻔﺼﻞ ﺑﻴﻨﻬﻢ ﺑﻌﻼﻣﻪ ‪< : > colon‬‬ ‫وﻣﻌﺎﻧﻰ هﺬﻩ اﻻﻋﻤﺪﻩ هﻰ‬ ‫‪ username -1‬وﺑﻪ ﻳﺘﻢ ﺗﺴﺠﻴﻞ اﺳﻢ اﻟﻤﺴﺘﺨﺪم ‪ ،‬وهﺬا هﻮ اﻻﺳﻢ اﻟﺬى ﻳﺪﺧﻞ ﺑﻪ اﻟﻤﺴﺘﺨﺪم ﻟﻠﻨﻈﺎم‬ ‫‪ password -2‬وﻧﺠﺪ ﻓﻰ هﺬﻩ اﻟﺨﺎﻧﻪ اﻟﻌﻼﻣﻪ ‪ x‬واﻟﺘﻰ ﺗﻌﻨﻰ ان ال‪ password‬ﻣﺸﻔﺮﻩ وﻣﻮﺟﻮدﻩ‬ ‫ﺑﺎﻟﻤﻠﻒ ‪.

‫ﻣﺎ ﻳﺠﺐ ﻣﻼﺣﻈﺘﻪ‬ ‫ﻳﻼﺣﻆ ﻋﻠﻰ اﻟﻤﻠﻒ ‪ passwd‬ﻣﺎ ﻳﻠﻰ‬ ‫* آﻞ ﻣﺴﺘﺨﺪم ﺑﺎﻟﻨﻈﺎم ﻟﻪ ﺳﻄﺮ ﺑﻬﺬا اﻟﻤﻠﻒ ‪ ،‬ﺗﺘﺤﺪد ﺑﻪ ﻣﻌﻠﻮﻣﺎت هﺬا اﻟﻤﺴﺘﺨﺪم ‪. GID‬‬ ‫اﻣﺎ اﻻرﻗﺎم ﻣﻦ ‪ 1‬اﻟﻰ ‪ 99‬ﻓﻬﻰ ارﻗﺎم ﺧﺎﺻﻪ ﺑﻤﺴﺘﺨﺪﻣﻴﻦ ﻣﻦ ﻧﻮع ﻣﻌﻴﻦ )ﻳﻄﻠﻖ ﻋﻠﻰ هﺬﻩ اﻟﻨﻮﻋﻴﻪ‬ ‫‪ ، (system account‬ﻣﻦ اﻣﺜﻠﻪ ‪ lp‬او ‪ ftp‬او ‪ ، rpm‬وهﺆﻻء اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ﻟﻬﻢ ﺗﻌﺎﻣﻞ ﺧﺎص ﻣﻊ‬ ‫اﻟﻨﻈﺎم ‪،‬‬ ‫وﻳﺘﻤﺜﻞ هﺬا اﻟﺘﻌﺎﻣﻞ ﺗﻘﺮﻳﺒﺎ ﻓﻰ ان اﻟﻨﻈﺎم ﻋﻨﺪﻣﺎ ﻳﻨﻔﺬ اﻣﺮ ﺧﺎص ﻣﺜﻼ ﺑﺎل ‪ ftp server‬ﻓﺎﻧﻪ ﻳﺴﺘﺪﻋﻰ‬ ‫هﺬا اﻟﻤﺴﺘﺨﺪم اﻟﻤﺴﻤﻰ ‪ ftp‬ﻟﻴﻘﻮم ﺑﺘﻨﻔﻴﺬ ﻣﺜﻞ هﺬﻩ اﻻواﻣﺮ ‪ ،‬وآﺬﻟﻚ اﻟﺤﺎل ﻣﻊ ‪ lp‬وﺑﻘﻴﻪ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ‪. root‬‬ ‫‪ special user -2‬وهﻢ ﻣﻦ ﻧﻮﻋﻴﻪ ‪ bin‬و ‪ daemon‬و ‪ adm‬و ‪ lp‬وﻏﻴﺮهﻢ ‪.‬‬ ‫‪ regular user -3‬وهﻢ ﻣﺜﻞ ‪ ahmed‬و ‪ mohamed‬اﻟﻤﻮﺟﻮدﻳﻦ ﺑﺎﺳﻔﻞ اﻟﻤﻠﻒ ‪.record‬اى ﺳﻄﺮ‪ -‬ﺑﺎﻟﻤﻠﻒ ‪passwd‬‬ ‫ﺑﺎى اﺳﻢ ‪ ،‬ﺛﻢ ﻳﻀﻌﻮن ﻟﻬﺬا اﻻﺳﻢ اﻟﺮﻗﻢ ‪ 0‬وﺑﺬﻟﻚ ﻳﺼﺒﺢ ﻟﻬﻢ ﺻﻼﺣﻴﺎت ال ‪ ، root‬ﻓﻜﻦ ﻋﻠﻰ ﺣﺬر‬ ‫ﻣﻦ هﺬﻩ اﻟﺨﺪﻋﻪ ‪.‬‬ ‫* ان اﻟﻤﺴﺘﺨﺪﻣﻴﻦ اﻟﻤﻮﺟﻮدﻳﻦ ﺑﺎﻟﻤﻠﻒ هﻢ ﺛﻼث اﻧﻮاع‬ ‫‪ super user -1‬وهﻮ ال ‪.‬‬ ‫ﻓﺎل ‪ root‬او ﻣﺪﻳﺮ اﻟﻨﻈﺎم ﻟﻪ رﻗﻢ ﺧﺎص ﺑﻪ ‪ ،‬وهﻮ اﻟﺮﻗﻢ ‪ 0‬ﺳﻮاء ﻟﻞ ‪ UID‬او ‪. 500‬‬ ‫ﻳﻼﺣﻆ اﻳﻀﺎ‬ ‫ان ﺧﺎﻧﻪ ‪ password‬ﻻ ﻳﻜﺘﺐ ﺑﻬﺎ ال ‪ ، password‬ﺑﻞ ﻳﻮﺟﺪ ﻣﻜﺎﻧﻬﺎ اﻟﺤﺮف ‪ ، x‬وهﺬا ﻳﻌﻨﻰ ان‬ ‫ال ‪ password‬ﻣﻮﺟﻮدﻩ ﺑﺎﻟﻤﻠﻒ ‪) shadow‬وذﻟﻚ ﻻﺟﺮأت اﻣﻨﻴﻪ(‬ ‫* ﺧﺎﻧﻪ ال ‪ comment‬ﻧﺠﺪ اﻧﻬﺎ ﻣﻊ ﺑﻌﺾ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ﻓﺎرﻏﻪ وﻣﻊ اﻟﺒﻌﺾ اﻻﺧﺮ ﺑﻬﺎ ﺗﻌﻠﻴﻖ او‬ ‫ﻣﻌﻠﻮﻣﺎت ‪ ،‬وهﺬﻩ اﻟﺨﺎﻧﻪ ﻟﻴﺴﺖ ﻣﻦ اﻻهﻤﻴﻪ ﺑﻤﻜﺎن ‪ ،‬ﻓﺎن اردت اﺳﺘﺨﺪاﻣﻬﺎ ﻓﻴﻤﻜﻨﻚ ذﻟﻚ ‪ ،‬وان ﻟﻢ ﺗﺮد‬ ‫ﻓﻠﻴﺲ ﻓﻰ ذﻟﻚ ﺷﻰ ‪. sh‬‬ ‫* ﻓﻰ اﻟﻨﻬﺎﻳﻪ ‪ ،‬ﻻ ﺑﺪ ﻣﻦ اﻋﻄﺎء اهﻤﻴﻪ ﻟﻞ ‪ root‬ورﻗﻤﻪ ‪ ، 0‬ذﻟﻚ ﻻن ال ‪ crackers‬ﻋﻨﺪﻣﺎ‬ ‫ﻳﺤﺎوﻟﻮن اﻟﺪﺧﻮل ﻟﻠﻨﻈﺎم ‪ ،‬ﻓﺎﻧﻬﻢ ﻳﺪﺧﻠﻮن ﻋﻦ ﻃﺮﻳﻖ آﺘﺎﺑﻪ ‪.‬‬ ‫* ﻳﻼﺣﻆ ان آﻞ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ال ‪ regular‬ﻟﻬﻢ ‪ shell‬ﻣﻦ ﻧﻮﻋﻴﻪ ‪ ، bash‬وهﻰ ال ‪default‬‬ ‫ﻟﻠﻨﻈﺎم ‪ ،‬ﻓﺎن ﻟﻢ ﺗﺘﺤﺪد هﺬﻩ اﻟﺨﺎﻧﻪ ‪ ،‬او ﺗﺮآﺖ ﻓﺎرﻏﻪ ‪ ،‬ﻓﺎن اﻟﻨﻈﺎم ﺳﻴﻌﻄﻰ اﻟﻤﺴﺘﺨﺪم ‪ shell‬ﻣﻦ‬ ‫ﻧﻮﻋﻴﻪ ‪.‬‬ ‫اﻣﺎ اﻻرﻗﺎم ﻣﻦ ‪ 500‬ﻓﻤﺎ ﻓﻮق ﻓﻬﻰ ﻣﺨﺼﺼﻪ ﻟﻠﻤﺴﺘﺨﺪﻣﻴﻦ اﻟﺬﻳﻦ ﺳﻴﺘﻢ اﺿﺎﻓﺘﻬﻢ اﻟﻰ اﻟﻨﻈﺎم ﻋﻦ‬ ‫ﻃﺮﻳﻖ اﻟﻤﺪﻳﺮ ‪ ، root‬وﻟﻬﺬا ﻓﺎن اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ﻣﻦ اﻣﺜﺎل ‪ ahmed‬و ‪ mohamed‬ﻧﺠﺪ ارﻗﺎﻣﻬﻢ‬ ‫ﺗﺒﺪأ ﻣﻦ ‪.‬‬ .

‫ﻣﻠﻒ ‪shadow‬‬
‫وﺷﻜﻞ هﺬا اﻟﻤﻠﻒ آﺎﻻﺗﻰ‬

‫وهﺬا اﻟﻤﻠﻒ آﻤﺎ ﻧﺮاﻩ ﺷﺒﻴﻪ ﺑﺎﻟﻤﻠﻒ ‪ passwd‬اﻻ اﻧﻪ ﻳﺰﻳﺪ ﻋﻦ ﻣﻠﻒ ‪ passwd‬ﺑﺨﺎﻧﺘﻴﻦ او ﻋﻤﻮدﻳﻦ‬
‫‪ ،‬ﻓﻬﺬا اﻟﻤﻠﻒ ‪ 9‬ﺧﺎﻧﺎت ‪ .‬وﻣﻌﺎﻧﻴﻬﻢ هﻰ‬
‫‪ username -1‬وهﻮ اﺳﻢ اﻟﺪﺧﻮل ﻟﻠﻤﺴﺘﺨﺪم ‪ ،‬وهﻮذاﺗﻪ ﻧﻔﺲ اﻻﺳﻢ اﻟﻤﻮﺟﻮد ﺑﻤﻠﻒ ‪. passwd‬‬
‫‪ password -2‬وﻧﺮاهﺎ هﻨﺎ >ﻣﺸﻔﺮﻩ< ‪ ، encrypted‬وهﻰ ﻋﺒﺎرﻩ ﻋﻦ رﻣﻮز ‪.‬‬
‫‪ last passwd chang -3‬واﻟﺮﻗﻢ اﻟﻤﻮﺟﻮد ﻓﻴﻬﺎ‪-‬ﻣﺜﻞ ‪ -12742‬هﻮ رﻗﻢ ‪ standard‬ﻳﺒﺪأ ﻣﻦ‬
‫‪ 1‬ﻳﻨﺎﻳﺮ ‪. 1970‬وﻳﻌﻨﻰ اﺧﺮ ﻣﺮﻩ ﺗﻢ ﺗﻐﻴﻴﺮ ال ‪ password‬ﻓﻴﻬﺎ ‪.‬‬
‫‪ days untill change allow -4‬وهﻮ اﻟﻮﻗﺖ اﻟﺬى ﻳﻨﺘﻈﺮﻩ اﻟﻤﺴﺘﺨﺪم ﻟﻜﻰ ﻳﺴﺘﻄﻴﻊ ﺗﻐﻴﻴﺮ ال‬
‫‪ ، password‬وﻳﺤﺴﺐ ﻣﻦ اﺧﺮ ﻣﺮﻩ ﺗﻢ ﻓﻴﻬﺎ ﺗﻐﻴﻴﺮ ال ‪. password‬‬
‫‪ days before change required -5‬وذﻟﻚ ﻳﻌﻨﻰ اﻣﻬﺎل اﻟﻤﺴﺘﺨﺪم ﻓﺘﺮﻩ ‪ ،‬ﻻ ﺑﺪ ﺑﻌﺪهﺎ ﻣﻦ‬
‫ﺗﻐﻴﻴﺮ ال ‪ ، password‬وهﻰ آﻤﺎ ﻧﺮى اﻧﻬﺎ ‪ standard‬وﻣﺤﺪدﻩ ب ‪. 99999‬‬
‫‪ warning days before passwd expire -6‬وﺗﻮﺿﻊ ﺑﻬﺬﻩ اﻟﺨﺎﻧﻪ ﻋﺪد اﻻﻳﺎم اﻟﺘﻰ ﻻ ﺑﺪ‬
‫ﻟﻠﻤﺴﺘﺨﺪم ان ﻳﻐﻴﻴﺮ ال ‪ password‬ﻓﻴﻬﺎ ﻗﺒﻞ اﻧﺘﻬﺎء ﺣﺴﺎﺑﻪ ‪ ،‬وﻧﺮاهﺎ ﻣﺤﺪدﻩ ب ‪ 7‬اﻳﺎم ‪ .‬ﻓﺎن آﺎن‬
‫ﺣﺴﺎب اﻟﻤﺴﺘﺨﺪم ﻣﺤﺪد ب ‪ 99999‬ﻓﻘﺒﻞ اﻧﺘﻬﺎء هﺬﻩ اﻻﻳﺎم ب ‪ 7‬اﻳﺎم ﻻ ﺑﺪ ان ﻳﺘﻐﻴﺮ ال ‪. passwd‬‬
‫‪ days between expiration and deactivation -7‬وﺑﻪ ﻳﺘﺤﺪد اﻻﻳﺎم ﺑﻴﻦ اﻧﻬﺎء ﺣﺴﺎب‬
‫اﻟﻤﺴﺘﺨﺪم ‪ ،‬وﺑﻴﻦ اﻏﻼق اﻟﺤﺴﺎب آﻠﻴﺎ ‪ ،‬واﻟﻔﺮق ﺑﻴﻨﻬﻤﺎ ‪ ،‬ان اﻻوﻟﻰ ﻣﺘﻌﻠﻘﻪ ﺑﺘﻌﺎﻣﻞ اﻟﻤﺴﺘﺨﺪم ﻣﻊ‬
‫اﻟﻨﻈﺎم ‪ ،‬اﻣﺎ اﻟﺜﺎﻧﻴﻪ ﻓﻤﺘﻌﻠﻘﻪ ﺑﺴﻴﺎﺳﻪ ادارﻩ اﻟﻨﻈﺎم ‪.‬‬

‫‪ account expire -8‬وﺗﻌﻨﻰ ‪ ،‬ان اﻟﺤﺴﺎب ﺳﻴﻐﻠﻖ ﺑﻌﺪ هﺬﻩ اﻟﻔﺘﺮﻩ ‪.‬‬
‫‪ special flag -9‬هﺬﻩ اﻟﺨﺎﻧﻪ ﻏﻴﺮ ﻣﺴﺘﺨﺪﻣﻪ ﺣﺎﻟﻴﺎ ‪ ،‬وﻣﺤﺠﻮزﻩ ﻟﻼﺳﺘﺨﺪام ﻓﻰ اﻟﻤﺴﺘﻘﺒﻞ ‪.‬‬

‫ﻣﺎ ﻳﺠﺐ ﻣﻼﺣﻈﺘﻪ‬
‫ﻳﻼﺣﻆ ﻋﻠﻰ اﻟﻤﻠﻒ ‪ shadow‬ﻣﺎ ﻳﻠﻰ‬
‫* اﻧﻨﺎ ﻻ ﻧﺘﻌﺎﻣﻞ ﻣﻊ آﻞ هﺬﻩ اﻟﺨﺎﻧﺎت او اﻻﻋﻤﺪﻩ ‪ ،‬ﺑﻞ ان ﺗﻌﺎﻣﻠﻨﺎ ‪-‬ﻓﻰ اﻟﻐﺎﻟﺐ‪ -‬ﻳﻘﺘﺼﺮ ﻓﻘﻂ ﻋﻠﻰ ﺛﻼث‬
‫او ارﺑﻊ ﺧﺎﻧﺎت ‪ ،‬وﻟﻬﺬا ﻓﻼ ﺗﺠﻌﻞ ﻋﺪد هﺬﻩ اﻻﻋﻤﺪﻩ وﻣﻌﺎﻧﻴﻬﺎ ﻳﺮهﺒﻚ ‪.‬‬
‫* ﺧﺎﻧﻪ ‪ username‬ﻟﻤﻌﺮﻓﻪ اﻟﻤﺴﺘﺨﺪم اﻟﺬى ﻧﺘﻌﺎﻣﻞ ﻣﻌﻪ ‪ ،‬اى ﻋﻠﻰ ﻣﻦ ﺳﻴﺘﻢ اﻟﺘﻌﺪﻳﻞ اﻟﻤﺮاد ‪.‬‬
‫* ﺧﺎﻧﻪ ال ‪ password‬وﻧﺠﺪ ان ﻟﻬﺎ ﻋﺪﻩ اﺷﻜﺎل ﻓﻰ هﺬا اﻟﻤﻠﻒ‬
‫• اﻟﺸﻜﻞ اﻻول ‪ ،‬وهﻮ > !! < ‪ ،‬واﻟﺬى ﻳﻌﻨﻰ ان هﺬا اﻟﻤﺴﺘﺨﺪم ﻟﻢ ﺗﻮﺿﻊ ﻟﻪ ‪ password‬ﺣﺘﻰ‬
‫اﻻن ‪.‬‬
‫• اﻟﺸﻜﻞ اﻟﺜﺎﻧﻰ وهﻮ > * < واﻟﺬى ﻳﻌﻨﻰ ان هﺬا اﻟﻤﺴﺘﺨﺪم ﻻ ﺗﻮﺿﻊ ﻟﻪ ‪) password‬وﻧﺮى هﺬﻩ‬
‫اﻟﻌﻼﻣﻪ داﺋﻤﺎ ﻣﻊ ال ‪ system account‬ﻣﻦ اﻣﺜﺎل ‪ daemon‬و ‪ bin‬وﻏﻴﺮهﻢ ‪.‬‬
‫• اﻟﺸﻜﻞ اﻟﺜﺎﻟﺚ وهﻮ آﻤﺎ ﻧﺮاﻩ ﻋﺒﺎرﻩ ﻋﻦ اﺣﺮف ورﻣﻮز ‪ ،‬وهﺬا اﻟﺸﻜﻞ ﻳﻮﺿﻊ ﻟﻠﻤﺴﺘﺨﺪﻣﻴﻦ اﻟﺬﻳﻦ‬
‫ﺗﻢ ﺗﺤﺪﻳﺪ ‪ password‬ﻟﻬﻢ ‪ ،‬ﻣﺜﻞ ‪ root‬و ‪ . ahmed‬وهﻮ هﻨﺎ ﺑﺼﻴﻐﻪ ﻣﺸﻔﺮﻩ ‪.‬‬

‫* آﻴﻔﻴﻪ ﻋﻤﻞ ‪ disable‬ﻟﻠﻤﺴﺘﺨﺪم‬
‫اوﻻ ‪ ،‬ﻣﻌﻨﻰ ‪ disable‬هﻮ اﻏﻼق ﺣﺴﺎب اﻟﻤﺴﺘﺨﺪم ﻋﻠﻰ اﻟﻨﻈﺎم ‪.‬‬
‫اى ان اﻟﻤﺴﺘﺨﺪم ﻻ ﻳﺴﺘﻄﻴﻊ اﻟﺪﺧﻮل اﻟﻰ اﻟﻨﻈﺎم ‪ ،‬وﻓﻰ ﻧﻔﺲ اﻟﻮﻗﺖ ﻓﺎن آﻞ ﻣﻠﻔﺎﺗﻪ و اﻟﻌﻤﻠﻴﺎت‬
‫اﻟﻤﺘﻌﻠﻘﻪ ﺑﺤﺴﺎﺑﻪ ﺗﻈﻞ ﻣﻮﺟﻮدﻩ ﻋﻠﻰ اﻟﻨﻈﺎم ‪.‬‬
‫واﻟﻔﺮق ﺑﻴﻦ ال ‪ disable‬وال ‪ delete‬ﻟﺤﺴﺎب اﻟﻤﺴﺘﺨﺪم ‪-‬ﻣﻊ اﻧﻬﻤﺎ ﻣﺘﺴﺎوﻳﻴﻦ ﺑﺎﻟﻨﺴﺒﻪ ﻟﻠﻤﺴﺘﺨﺪم‪-‬‬
‫ان اﻻوﻟﻰ ﻻ ﺗﻠﻐﻰ ﻣﻠﻔﺎت وﻋﻤﻠﻴﺎت اﻟﻤﺴﺘﺨﺪم ‪ ،‬ﻓﻰ ﺣﻴﻦ ان اﻟﺜﺎﻧﻴﻪ ﺗﻠﻐﻴﻬﻢ ‪.‬‬
‫وﻳﺘﻢ ﻋﻤﻞ ‪ disable‬ﻋﻦ ﻃﺮﻳﻖ ﺧﻄﻮﻩ ﺑﺴﻴﻄﻪ ﺟﺪا ‪ ،‬ﻣﺘﻤﺜﻠﻪ ﻓﻰ آﺘﺎﺑﻪ اﻟﺮﻗﻢ اﻟﻤﻮﺟﻮد ﻓﻰ اﻟﺨﺎﻧﻪ ‪3‬‬
‫ﺑﻌﺪ اﻧﻘﺎص)ﻳﻮم( ﻣﻦ ﻗﻴﻤﺘﻪ ‪ ،‬اﻟﻰ اﻟﺨﺎﻧﻪ ‪. 8‬‬
‫ﻓﻠﻮ آﺎن اﻟﺮﻗﻢ اﻟﻤﻮﺟﻮد ﻓﻰ اﻟﺨﺎﻧﻪ ‪ 3‬ﻣﺜﻼ ‪ 12824‬ﻓﻴﻜﺘﺐ ‪ 12823‬ﻓﻰ اﻟﺨﺎﻧﻪ ‪. 8‬‬
‫واﻟﻌﻠﻪ ﻓﻰ هﺬا هﻰ ‪.‬‬
‫ان اﻟﺨﺎﻧﻪ ‪ 3‬ﻳﻌﺘﺒﺮهﺎ اﻟﻨﻈﺎم ﺑﺪاﻳﻪ ﺣﺴﺎب اﻟﻤﺴﺘﺨﺪم ‪) ،‬ﻋﺪد اﻻﻳﺎم اﻟﻤﻮﺟﻮدﻩ ﺑﻬﺎ ﻣﻨﺬ ‪ 1970‬وهﻮ ال ‪time‬‬
‫‪ zero‬ﻟﺘﺸﻐﻴﻞ ﻳﻮﻧﻜﺲ( اﻣﺎ اﻟﺨﺎﻧﻪ ‪ 8‬ﻓﺘﺨﺒﺮاﻟﻨﻈﺎم ﻣﺘﻰ ﺳﻴﻨﺘﻬﻰ هﺬا اﻟﺤﺴﺎب )‪ (account‬ﻓﻠﻮ اﻧﻘﺼﻨﺎ‬
‫اﻟﻌﺪد اﻟﻤﻮﺟﻮد ﺑﺎﻟﺨﺎﻧﻪ ‪ 8‬ﻋﻦ اﻟﻌﺪد اﻟﻤﻮﺟﻮد ﺑﺎﻟﺨﺎﻧﻪ ‪ 3‬ﻓﺴﻴﻔﻬﻢ اﻟﻨﻈﺎم ان ﺣﺴﺎب اﻟﻤﺴﺘﺨﺪم هﺬا ﻗﺪ‬
‫اﻧﺘﻬﻰ ‪.‬‬
‫وﻻ ﻓﺮق ﻋﻨﺪ اﻟﻨﻈﺎم ان آﺎن هﺬا اﻟﻌﺪد ﻗﺪ ﺗﻢ ﺗﺤﺪﻳﺪﻩ اﻣﺲ او ﻣﻦ ﺳﻨﻪ او ﺣﺘﻰ ﻣﻦ ‪ 10‬ﺳﻨﻮات ‪ ،‬ﺑﻞ اﻟﻤﻬﻢ ﻋﻨﺪﻩ هﻮ ان‬
‫اﻟﺮﻗﻢ ‪ 8‬ﻗﺪ ﻃﺎﺑﻖ اﻟﺮﻗﻢ ‪. 3‬‬

‬‬ ‫• اﻟﺨﺎﻧﻪ ‪ 8‬ﺗﺴﺘﺨﺪم ﻟﻠﺤﺴﺎﺑﺎت اﻟﻤﺆﻗﺘﻪ )اﺳﺒﻮع او ﺷﻬﺮ( وﻳﺘﻢ آﺘﺎﺑﻪ اﻻﻳﺎم اﻟﻤﺮاد ﺿﺒﻂ اﻟﺤﺴﺎب‬ ‫ﻋﻠﻴﻬﺎ ‪ ،‬ﻓﻠﻮ آﺎﻧﺖ ﺷﻬﺮ ﻳﻜﺘﺐ ‪ 30‬وان آﺎﻧﺖ اﺳﺒﻮع ﻳﻜﺘﺐ ‪ 7‬وهﻜﺬا ‪.‬‬ .‬‬ ‫• اﻟﺨﺎﻧﻪ ‪) 7‬واﻟﺨﺎﺻﻪ ﺑﻌﺪد اﻻﻳﺎم ﺑﻴﻦ اﻧﺘﻬﺎء ﻋﻤﻞ ال ‪ passwd‬وﺑﻴﻦ اﻏﻼق اﻟﺤﺴﺎب( وﺗﻮﺿﻊ‬ ‫ﺑﻬﺎ ﻗﻴﻤﺘﺎن ‪ < 0 >،‬او> ‪ ، < -1‬ﻓﺎﻻول اى ‪ 0‬ﺳﻴﻘﻮم ﺑﻌﻤﻞ ‪ disable‬ﻟﻠﺤﺴﺎب ﻣﺒﺎﺷﺮﻩ ﺑﻌﺪ‬ ‫اﻧﺘﻬﺎء اﻟﻮﻗﺖ اﻟﻤﺤﺪد ﻟﻞ ‪ ، passwd‬اﻣﺎ ‪ -1‬ﻓﺎﻧﻬﺎ ﺗﻮﻗﻒ هﺬا ال ‪ disable‬اﻟﺘﻠﻘﺎﺋﻰ ﻟﻠﺤﺴﺎب‪.‫*ﻳﻮﺟﺪ ﺑﻌﺪ ذﻟﻚ ﻋﺪﻩ ﺧﺎﻧﺎت ﻗﺪ ﻳﺘﻢ اﻟﺘﻌﺎﻣﻞ ﻣﻌﻬﻢ وﻗﺪ ﻳﺘﺮآﻮا آﻤﺎ هﻢ ‪ ،‬وﻣﻦ هﺬﻩ اﻟﺨﺎﻧﺎت‬ ‫• اﻟﺨﺎﻧﻪ ‪ 4‬وﺑﻬﺎ ﻳﺘﻢ ﺗﻘﻴﻴﺪ اﻟﻤﺴﺘﺨﺪم ﺑﻌﺪد ﻣﻌﻴﻦ ﻣﻦ اﻻﻳﺎم ﻗﺒﻞ ﻣﺤﺎوﻟﻪ ﺗﻐﻴﻴﺮ ال ‪ password‬ﻣﻦ‬ ‫ﺟﺪﻳﺪﻩ ‪ ،‬ﻓﻼ ﻳﺴﺘﻄﻴﻊ ﺗﻐﻴﻴﺮ ال ‪ passwd‬اﻻ ﺑﻌﺪ اﻧﺘﻬﺎء اﻻﻳﺎم اﻟﻤﻮﺟﻮدﻩ ﺑﻬﺬﻩ اﻟﺨﺎﻧﻪ ‪.

022‬ﻗﺮأﻩ وآﺘﺎﺑﻪ ﻟﻠﻤﺎﻟﻚ ﻓﻘﻂ ‪ ،‬و ﻗﺮأﻩ ﻓﻘﻂ ﻟﻠﺒﺎﻗﻴﻦ ‪.‫ﺛﺎﻧﻴﺎ ‪ :‬اﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻤﺠﻤﻮﻋﺎت ‪.002‬ﻗﺮأﻩ وآﺘﺎﺑﻪ ﻟﻠﻤﺎﻟﻚ وﻣﺠﻤﻮﻋﺘﻪ وﻗﺮأﻩ ﻓﻘﻂ ﻟﻼﺧﺮﻳﻦ‪-‬‬ ‫اﻣﺎ ﻣﻊ اﻻﺻﺪارات اﻻﺧﺮى ﻓﺎن ال ‪ permission‬ﻳﻜﻮن ‪. permission‬‬ ‫ﻓﻤﻊ ردهﺎت ﻓﺎن ال‪ permission‬ﻟﻠﻤﻠﻔﺎت اﻟﺠﺪﻳﺪﻩ ﻳﻜﻮن ‪.‬‬ ‫ﻳﺘﻢ اﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻤﺠﻤﻮﻋﺎت ﺑﻨﻔﺲ اﺳﻠﻮب اﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ‪.‬‬ ‫وﺗﺴﻤﻰ ﻃﺮﻳﻘﻪ ‪ redhat‬هﺬﻩ ﺑﺎل ‪. shared-group‬‬ . user private group‬‬ ‫اﻣﺎ اﻟﻄﺮﻳﻘﻪ اﻻﺧﺮى ﻓﺘﺴﻤﻰ ‪.‬‬ ‫وهﺬا اﻻﺳﻠﻮب ﻳﺴﻬﻞ ﻋﻤﻠﻴﻪ ادارﻩ اﻟﻤﺠﻤﻮﻋﺎت ‪ ،‬ﻻﻧﻚ ﺑﺴﻬﻮﻟﻪ ﺗﺴﺘﻄﻴﻊ ﺣﻔﻆ هﺬﻩ اﻻواﻣﺮ ‪ ،‬ﻓﻜﻤﺎ اﻧﻪ‬ ‫هﻨﺎك ﺛﻼﺛﻪ اواﻣﺮ ﻻدارﻩ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ وهﻢ ‪ useradd‬و ‪ userdel‬و ‪. -users‬‬ ‫واﻟﻔﺮق ﺑﻴﻦ اﻟﻄﺮﻳﻘﺘﻴﻦ ﻳﻈﻬﺮ ﻓﻰ ال ‪. usermod‬‬ ‫ﻓﻬﻨﺎك اﻳﻀﺎ ﺛﻼث اواﻣﺮ ﻻدارﻩ اﻟﻤﺠﻤﻮﻋﺎت وهﻢ‬ ‫‪groupadd‬‬ ‫‪groupdel‬‬ ‫‪groupmod‬‬ ‫ﻻﺿﺎﻓﻪ ﻣﺠﻤﻮﻋﻪ ﺟﺪﻳﺪﻩ‬ ‫ﻻﻟﻐﺎء ﻣﺠﻤﻮﻋﻪ ﻣﻮﺟﻮدﻩ‬ ‫ﻟﺘﻌﺪﻳﻞ ﻣﺠﻤﻮﻋﻪ ﻣﻮﺟﻮدﻩ‬ ‫وﻧﻔﺲ اﻟﺸﻰ آﺬﻟﻚ ﻣﻊ ﻣﻠﻔﺎت اﻟﻨﻈﺎم اﻟﺨﺎﺻﻪ ﺑﺎﻟﻤﺠﻤﻮﻋﺎت ‪ ،‬ﻓﻬﻨﺎك اﻳﻀﺎ ﻣﻠﻔﺎن رﺋﻴﺴﻴﺎن ‪ ،‬هﻤﺎ‬ ‫‪ /etc/group‬وهﻮ ﻣﺜﻞ اﻟﻤﻠﻒ ‪passwd‬‬ ‫‪ /etc/gshadow‬وهﻮ ﻣﺜﻞ ﻣﻠﻒ ‪shadow‬‬ ‫ﻣﻼﺣﻈﻪ هﺎﻣﻪ‬ ‫اﺻﺪارﻩ ‪ redhat‬ﻟﻬﺎ ﻃﺮﻳﻘﻪ ﻣﻌﻴﻨﻪ ﻓﻰ اﻧﺸﺎء اﻟﻤﺠﻤﻮﻋﺎت ‪ ،‬ﺑﻌﻜﺲ اﻻﺻﺪارات اﻻﺧﺮى وهﺬﻩ اﻟﻄﺮﻳﻘﻪ ﺗﺘﻤﺜﻞ ﻓﻰ‬ ‫ﻋﻨﺪ اﻧﺸﺎء ﺣﺴﺎب ﻟﻤﺴﺘﺨﺪم ﺟﺪﻳﺪ ﻋﻠﻰ اﻟﻨﻈﺎم ﻓﺎن اﻟﻨﻈﺎم ﻳﻨﺸﻰ ﻟﻪ ﻣﺠﻤﻮﻋﻪ ﺑﻨﻔﺲ اﺳﻤﻪ ‪ ،‬وﺑﺎﻟﺘﺎﻟﻰ ﻓﺎن آﻞ ﻣﺴﺘﺨﺪم ﻟﻪ‬ ‫ﻣﺠﻤﻮﻋﺘﻪ اﻟﺨﺎﺻﻪ ‪ ،‬ﺑﻌﻜﺲ اﻻﺻﺪارات اﻻﺧﺮى ‪ ،‬ﻓﺎن هﺬﻩ اﻻﺧﻴﺮﻩ ﺗﻀﻴﻒ آﻞ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ اﻟﻰ ﻣﺠﻤﻮﻋﻪ واﺣﺪﻩ‬ ‫آﺒﻴﺮﻩ ‪-‬وﻏﺎﻟﺒﺎ ﺗﺴﻤﻰ ‪.

‬‬ ‫ﻣﺜﻞ‬ ‫>‪groupadd -g 510 <grpname‬‬ ‫‪ -r‬وذﻟﻚ ﻋﻨﺪ ارادﻩ ﺟﻌﻞ هﺬﻩ اﻟﻤﺠﻤﻮﻋﻪ ﻣﻦ ﻣﺠﻤﻮﻋﺎت اﻟﻨﻈﺎم ‪ ،‬واﻟﺘﻰ ﺗﺎﺧﺬ ارﻗﺎم اﻗﻞ ﻣﻦ ‪. 500‬‬ ‫‪ -f‬وﻳﺘﻢ اﻻﺳﺘﻌﺎﻧﻪ ﺑﻬﺬا اﻟﺨﻴﺎر ﻟﻌﻤﻞ ‪ force‬او اﻧﺸﺎء اﻟﻤﺠﻤﻮﻋﻪ )ﺑﺎﻟﻘﻮﻩ( وذﻟﻚ ﻟﻤﻨﻊ اﻟﻨﻈﺎم ﻣﻦ‬ ‫اﺧﺮاج رﺳﺎﺋﻞ اﻟﺨﻄﺄ اذا آﺎﻧﺖ اﻟﻤﺠﻤﻮﻋﻪ ﻣﺜﺒﺘﻪ ﺑﺎﻟﻔﻌﻞ ‪.‬‬ .‫اﻻﻣﺮ ‪groupadd‬‬ ‫هﺬا اﻻﻣﺮ هﻮ اﻟﻤﺴﺌﻮل ﻋﻦ اﺿﺎﻓﻪ ﻣﺠﻤﻮﻋﺎت ﺟﺪﻳﺪﻩ ﻟﻠﻨﻈﺎم ‪ ،‬وﺻﻴﻐﺘﻪ ﺑﺴﻴﻄﻪ وهﻰ‬ ‫>‪groupadd <groupname‬‬ ‫وﻳﺎﺗﻰ ﻣﻌﻪ ﺛﻼث ﺧﻴﺎرات ﻓﻘﻂ‬ ‫‪ -g‬واﻟﺘﻰ ﺗﺤﺪد رﻗﻢ ال ‪ ، group‬وذﻟﻚ ﻋﻨﺪ ارادﻩ ﺗﺤﺪﻳﺪ رﻗﻢ ﻣﻌﻴﻦ ﻟﻠﻤﺠﻤﻮﻋﻪ ‪ ،‬وﻋﺪم ﺗﻤﻜﻴﻦ‬ ‫اﻟﻨﻈﺎم ﻣﻦ وﺿﻊ اﻟﺮﻗﻢ اﻟﺘﺴﻠﺴﻠﻰ ﻟﻠﻤﺠﻤﻮﻋﺎت ‪ ،‬وﻳﺘﺒﻊ هﺬا اﻟﺨﻴﺎر اﻟﺮﻗﻢ اﻟﻤﺮاد ‪ ،‬ﺛﻢ اﺳﻢ اﻟﻤﺠﻤﻮﻋﻪ ‪.‬‬ ‫اﻻﻣﺮ ‪groupdel‬‬ ‫وﻇﻴﻔﻪ هﺬا اﻻﻣﺮ هﻮ اﻟﻐﺎء اﻟﻤﺠﻤﻮﻋﻪ اﻟﻤﻮﺟﻮدﻩ ﺑﺎﻟﻔﻌﻞ ‪ ،‬وﻻ ﻳﺎﺗﻰ ﻣﻌﻪ اى ﺧﻴﺎر ‪ ،‬ﻓﻘﻂ اﻻﻣﺮ واﺳﻢ‬ ‫اﻟﻤﺠﻤﻮﻋﻪ ﻣﺜﻞ‬ ‫>‪groupdel <groupname‬‬ ‫وﻳﻼﺣﻆ اﻧﻪ ﻋﻨﺪ ارادﻩ اﻟﻐﺎء اﻟﻤﺠﻤﻮﻋﻪ اﻻﺳﺎﺳﻴﻪ )‪ (primary group‬ﻟﻠﻤﺴﺘﺨﺪم اﻟﻤﻮﺟﻮد ﺑﺎﻟﻔﻌﻞ‬ ‫ﻋﻠﻰ اﻟﻨﻈﺎم ﻓﺎﻧﻪ ﻳﺘﻢ اﻟﻐﺎء ﺣﺴﺎب اﻟﻤﺴﺘﺨﺪم اوﻻ ﺛﻢ ﺑﻌﺪ ذﻟﻚ اﻟﻐﺎء ﻣﺠﻤﻮﻋﺘﻪ اﻻﺳﺎﺳﻴﻪ ‪.

‬‬ ‫ﻓﺎن اﻟﻨﻈﺎم ﻳﻜﺴﺮهﺬﻩ اﻟﻘﺎﻋﺪﻩ وﻳﺘﻴﺢ ﻟﻠﻤﺪﻳﺮ ان ﻳﻀﻊ رﻗﻢ ﻏﻴﺮ ﻣﻨﻔﺮد ‪-‬اى ان هﺬا اﻟﺮﻗﻢ ﻣﻮﺟﻮد ﺑﺎﻟﻔﻌﻞ‬ ‫ﻟﻤﺠﻤﻮﻋﻪ اﺧﺮى‪ -‬وﺑﺎﻟﺘﺎﻟﻰ ﺳﻴﻜﻮن ﻋﻨﺪك ﻣﺠﻤﻮﻋﺘﻴﻦ ﺑﻨﻔﺲ اﻟﺮﻗﻢ ‪ ،‬وهﺬﻩ اﻻﻣﻜﺎﻧﻴﻪ ﺗﺎﺗﻰ ﺑﺎﻟﺨﻴﺎر ‪-o‬‬ ‫وﺻﻴﻐﺘﻪ هﻰ‬ ‫‪groupmod -g 502 <group> -o‬‬ ‫ﻓﺎن آﺎن ﺑﻨﻈﺎﻣﻚ ﻣﺠﻤﻮﻋﻪ ﻣﻮﺟﻮدﻩ ﻣﻦ ﻗﺒﻞ ﻟﻬﺎ رﻗﻢ ‪ ، 502‬ﻓﺎﻧﻚ ﺳﺘﺠﺪ اﻧﻚ اﻻن ﺗﻤﺘﻠﻚ ﻣﺠﻤﻮﻋﺘﻴﻦ‬ ‫ﻟﻬﻤﺎ ﻧﻔﺲ اﻟﺮﻗﻢ ‪.‬‬ ‫وﻟﻜﻦ ﻳﻼﺣﻆ ان ﺗﻐﻴﻴﺮ رﻗﻢ اﻟﻤﺠﻤﻮﻋﻪ اﻣﺮ ﺧﻄﻴﺮ ﺟﺪا ‪ ،‬ﻻن آﻞ اﻟﻤﻠﻔﺎت ‪-‬اﻟﺴﺎﺑﻘﻪ ﻟﻠﺘﻐﻴﻴﺮ‪ -‬ﺳﺘﻈﻞ‬ ‫ﻣﺤﺘﻔﻈﻪ ﺑﺮﻗﻤﻬﺎ اﻻول ‪ ،‬ﻣﻤﺎ ﻳﻌﻨﻰ وﺟﻮد ﻣﻠﻔﺎت ﻟﻤﺠﻤﻮﻋﻪ ﻟﻴﺴﺖ ﻣﻮﺟﻮدﻩ ‪ ،‬وﻟﺬﻟﻚ ﻓﻌﻨﺪ ارادﻩ ﺗﻐﻴﻴﺮ‬ ‫رﻗﻢ اﻟﻤﺠﻤﻮﻋﻪ او ﺣﺘﻰ اﺳﻤﻬﺎ ‪ ،‬ﻓﻼ ﺑﺪ ان ﺗﻜﻮن ﻋﻠﻰ دراﻳﻪ ﺑﻤﺎ ﺳﻮف ﻳﺘﺮﺗﺐ ﻋﻠﻰ هﺬا اﻟﺘﻐﻴﻴﺮ ‪.‫اﻻﻣﺮ ‪groupmod‬‬ ‫وﻇﻴﻔﻪ هﺬا اﻻﻣﺮ هﻮ ﺗﻌﺪﻳﻞ اﻟﻤﺠﻤﻮﻋﻪ اﻟﻤﻮﺟﻮدﻩ ﻋﻠﻰ اﻟﻨﻈﺎم ‪ ،‬وﺻﻴﻐﺘﻪ هﻰ‬ ‫>‪groupmod <groupname‬‬ ‫وﻳﺎﺗﻰ ﻣﻊ هﺬا اﻻﻣﺮ ﺧﻴﺎران ‪ ،‬وهﻤﺎ‬ ‫‪ -g‬وﻳﻘﻮم هﺬا اﻟﺨﻴﺎر ﺑﺘﻌﺪﻳﻞ رﻗﻢ اﻟﻤﺠﻤﻮﻋﻪ اﻟﻤﻌﻴﻨﻪ ‪ ،‬وﻟﻬﺬا ﻓﺎﻧﻪ ﻳﺎﺗﻰ ﺑﻌﺪﻩ اﻟﺮﻗﻢ اﻟﺠﺪﻳﺪ ﺛﻢ اﺳﻢ‬ ‫اﻟﻤﺠﻤﻮﻋﻪ ‪ ،‬وذﻟﻚ ﻣﺜﻞ‬ ‫>‪groupmod -g 530 <group‬‬ ‫ﻓﻤﺎ ﺳﻴﺤﺪث هﻮ ان اﻟﻤﺠﻤﻮﻋﻪ اﻟﻤﺤﺪدﻩ ﺳﻴﺘﻢ ﺗﻐﻴﻴﺮ رﻗﻤﻬﺎ اﻟﻰ هﺬا اﻟﺮﻗﻢ اﻟﻤﺤﺪد ﺑﺎل ‪ cmd line‬وهﻮ‬ ‫آﻤﺎ ﻓﻰ هﺬا اﻟﻤﺜﺎل ﺳﻴﺼﺒﺢ ‪.‬‬ . 530‬‬ ‫وان آﺎﻧﺖ اﻟﻘﺎﻋﺪﻩ اﻻﺳﺎﺳﻴﻪ ﺗﺨﺒﺮﻧﺎ اﻧﻪ ﻻ ﺑﺪ ان ﻳﻜﻮن هﺬا اﻟﺮﻗﻢ اﻟﺠﺪﻳﺪ ﻣﻨﻔﺮدا ‪ ،‬اى ﻟﻴﺲ ﻣﻮﺟﻮد ﻣﻦ‬ ‫ﻗﺒﻞ ﺑﺎﻟﻨﻈﺎم ‪.‬‬ ‫‪ -n‬وﻳﺘﻢ ﺑﻬﺬا اﻟﺨﻴﺎر ﺗﻐﻴﻴﺮ اﺳﻢ اﻟﻤﺠﻤﻮﻋﻪ ﻣﺜﻞ‬ ‫>‪groupmod -n <new> <old‬‬ ‫ﻓﻴﻮﺿﻊ اﻻﺳﻢ اﻟﺠﺪﻳﺪ ﺑﻌﺪ اﻟﺨﻴﺎر ‪ -n‬ﺛﻢ ﺑﻌﺪ ذﻟﻚ اﻻﺳﻢ اﻟﻘﺪﻳﻢ ﻟﻠﻤﺠﻤﻮﻋﻪ ‪.

‬‬ ‫آﻤﺎ ﺳﺒﻖ ان ذآﺮﻧﺎ ‪ ،‬ﻓﺎن ﻟﻠﻤﺠﻤﻮﻋﺎت ﻣﻠﻔﺎن ‪ ،‬ﻣﺜﻠﻬﻤﺎ ﻣﺜﻞ ﻣﻠﻔﺎت اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ‪. /etc‬‬ ‫اﻟﻤﻠﻒ ‪.‬‬ .‫ﻣﻠﻔﺎت اﻟﻤﺠﻤﻮﻋﺎت ﻋﻠﻰ اﻟﻨﻈﺎم ‪. group‬‬ ‫ﺷﻜﻞ هﺬا اﻟﻤﻠﻒ ﺑﺴﻴﻂ ‪ ،‬ﻓﻬﻮ ﻳﺘﻜﻮن ﻣﻦ ارﺑﻌﻪ اﻋﻤﺪﻩ ﻓﻘﻂ آﻤﺎ ﻧﺮى‬ ‫ﻓﺎذا ﺿﺮﺑﻨﺎ ﻣﺜﺎل ﺑﺎﻟﻤﺠﻤﻮﻋﻪ اﻟﺨﺎﺻﻪ ﺑﺎﻟﻤﺴﺘﺨﺪم ‪) root‬وهﻮ اول ﺳﻄﺮ ﺑﺎﻟﻤﻠﻒ( ﻓﺴﻨﺠﺪ ان اﻟﺴﻄﺮ‬ ‫اﻟﺨﺎص ﺑﻬﺬﻩ اﻟﻤﺠﻤﻮﻋﻪ ﺑﻪ ﻓﻘﻂ ارﺑﻌﻪ اﻋﻤﺪﻩ ‪ ،‬ﻳﻔﺼﻞ ﺑﻴﻨﻬﻤﺎ ﺑﻌﻼﻣﻪ ‪.‬‬ ‫‪ users -4‬وهﻮ ﻳﻮﺿﺢ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ اﻟﻤﻨﺘﻤﻴﻦ اﻟﻰ اﻟﻤﺠﻤﻮﻋﻪ ‪. colon‬‬ ‫‪ groupname -1‬اﻟﺨﺎﻧﻪ اﻻوﻟﻰ ﺧﺎﺻﻪ ﺑﺎﺳﻢ اﻟﻤﺠﻤﻮﻋﻪ ‪.‬‬ ‫‪ password -2‬وهﻮ ﺧﺎص ﺑﺎل ‪ passwd‬ﻟﻬﺬﻩ اﻟﻤﺠﻤﻮﻋﻪ ‪.‬‬ ‫‪ GID -3‬ﻳﺘﺤﺪد ﺑﻪ رﻗﻢ هﺬﻩ اﻟﻤﺠﻤﻮﻋﻪ ‪.‬‬ ‫وهﺬﻩ اﻟﻤﻠﻔﺎت هﻰ ‪ group‬و ‪ gshadow‬اﻟﻤﻮﺟﻮدان ﺗﺤﺖ اﻟﻤﺴﺎر ‪.

gshadow‬‬ ‫هﺬا اﻟﻤﻠﻒ ﺷﺒﻴﻪ ﺑﻮﻇﻴﻔﻪ اﻟﻤﻠﻒ ‪ ، shadow‬وﻟﻬﺬا ﻓﺎﻧﻪ ﻟﻪ ﻧﻔﺲ اﺳﻤﻪ ﻣﻊ اﺿﺎﻓﻪ ﺣﺮف ‪ g‬ﻓﻰ اﻟﺒﺪاﻳﻪ‬ ‫وﻟﻜﻦ هﺬا اﻟﻤﻠﻒ ﻟﻴﺲ ‪-‬ﺷﺪﻳﺪ اﻟﺴﺮﻳﻪ‪ -‬ﻣﺜﻞ اﻟﻤﻠﻒ ‪. group‬‬ ‫وﻣﻌﺎﻧﻰ اﻟﺨﺎﻧﺎت اﻻرﺑﻊ اﻟﺘﻰ ﻳﺘﻜﻮن ﻣﻨﻬﺎ هﺬا اﻟﻤﻠﻒ ‪ ،‬هﻰ ذاﺗﻬﺎ ﻧﻔﺲ اﻟﻤﻌﺎﻧﻰ ﻟﻤﻠﻒ ‪ group‬ﻓﻼ‬ ‫داﻋﻰ ﻟﺘﻜﺮارهﺎ ﺛﺎﻧﻴﻪ ‪.‬‬ ‫ﻻﺣﻆ ان اﻟﻮﺿﻊ ال‪ default‬ﻟﺠﻤﻴﻊ اﻟﻤﺠﻤﻮﻋﺎت اﻟﻤﻮﺟﻮدﻩ ﺑﻬﺬا اﻟﻤﻠﻒ اﻧﻪ ﻻ ﻳﻮﺟﺪ ﻟﻬﺎ ‪.‬‬ ‫وهﺬا هﻮ ﺷﻜﻞ اﻟﻤﻠﻒ ‪gshadow‬‬ ‫ﻓﻬﻮ ﻳﻌﺪ ﻧﺴﺨﻪ ﻃﺒﻖ اﻻﺻﻞ ﻣﻦ اﻟﻤﻠﻒ ‪.‬‬ ‫وﻟﻜﻦ ﻳﺘﻐﻴﺮ ﺷﻜﻠﻪ ﺑﻌﺾ اﻟﺸﻰ ﻋﻨﺪ وﺿﻊ ‪ password‬ﻟﻠﻤﺠﻤﻮﻋﻪ ‪ ،‬ﻓﻴﺘﺤﻮل اﻟﺤﺮف ‪ x‬اﻟﻰ ال‬ ‫‪ password‬اﻟﻤﺸﻔﺮﻩ ‪.‫اﻟﻤﻠﻒ ‪. shadow‬‬ ‫وﻟﻬﺬا ﻓﺎﻧﻨﺎ ﻧﺮى ان ال ‪ permission‬اﻟﺨﺎص ﺑﻪ ‪-‬وﺑﺎﻟﻤﻠﻒ ‪ group‬اﻳﻀﺎ‪ -‬هﻮ ‪.passwd‬‬ ‫ﺳﻮاء آﺎﻧﺖ ﻣﺠﻤﻮﻋﺎت اﻟﻨﻈﺎم ﻣﺜﻞ ‪ root‬و ‪ bin‬وﻏﻴﺮهﺎ ‪ ،‬او اﻟﻤﺠﻤﻮﻋﺎت اﻟﺘﻰ ﻳﻘﻮم ﻣﺪﻳﺮ اﻟﻨﻈﺎم‬ ‫ﺑﺎﺿﺎﻓﺘﻬﻢ ‪ ،‬ﻓﻼ ﺗﺤﺎول وﺿﻊ ‪ passwd‬اﻻ اذا آﻨﺖ ﺗﻌﻠﻢ ﻣﺎ اﻟﺬى ﺗﻔﻌﻠﻪ ‪.‬‬ . 644‬‬ ‫وﺷﻜﻞ اﻟﻤﻠﻒ ‪ gshadow‬ﺗﻘﺮﻳﺒﺎ هﻮ ﺷﻜﻞ اﻟﻤﻠﻒ ‪ group‬ﺗﻤﺎﻣﺎ ‪.

.

‬‬ ‫ﻧﻘﻞ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ﻣﻦ ﻧﻈﺎم اﻟﻰ ﻧﻈﺎم اﺧﺮ ‪.‬‬ ‫او ﻗﺪ ﺗﺮﻳﺪ ‪-‬ﻓﻰ ﺣﺎﻻت اﺧﺮى‪ -‬اﻻﻋﺘﻤﺎد ﻋﻠﻰ ﻣﻠﻒ واﺣﺪ ﻓﻰ ادارﻩ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ﺑﺪﻻ ﻣﻦ ﻣﻠﻔﻴﻦ ‪. group‬‬ ‫واﻳﻀﺎ‬ ‫‪grpconv‬‬ ‫ﻻرﺟﺎع اﻟﻤﻠﻒ ‪.‬‬ ‫ﻗﺪ ﺗﺤﺘﺎج ‪-‬ﻻى ﺳﺒﺐ آﺎن‪ -‬ان ﺗﻨﻘﻞ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ اﻟﻤﻮﺟﻮدﻳﻦ ﻋﻠﻰ ﻧﻈﺎﻣﻚ اﻟﻰ ﻧﻈﺎم اﺧﺮ ‪ ،‬آﺄن ﻗﺎم‬ ‫ﻣﺜﻼ اﻟﻤﺴﺌﻮﻟﻴﻦ ﻋﻦ اﻟﻨﻈﺎم ﺑﺘﻐﻴﻴﺮ اﻻﺻﺪارﻩ اﻟﺘﻰ آﻨﺖ ﺗﻌﻤﻞ ﻋﻠﻴﻬﺎ ‪.‬‬ ‫واﻳﻤﺎ آﺎن اﻟﺴﺒﺐ ‪ ،‬ﻓﺎن اﻟﻨﻈﺎم ﻳﺘﻴﺢ ﻟﻚ اﺳﺘﺨﺪام اﻟﻤﻠﻒ ‪ passwd‬ﻓﻘﻂ دون اﻟﻤﻠﻒ ‪. gshadow‬‬ ‫وﻳﺘﻢ ذﻟﻚ ﻋﻦ ﻃﺮﻳﻖ ﻋﺪﻩ اواﻣﺮ ‪ ،‬هﻰ‬ ‫‪pwunconv‬‬ ‫ﻓﻬﺬا اﻻﻣﺮ ﻳﻜﺘﺐ ﻣﻨﻔﺮدا ‪ ،‬ﺑﺪون اى ‪ option‬او ‪ ، argument‬وﻳﺘﻤﺜﻞ اﻟﻨﺎﺗﺞ ﻣﻨﻪ ﻓﻰ اﻧﻪ ﻳﺤﻮل ال‬ ‫‪ password‬اﻟﻤﻮﺟﻮدﻩ ﺑﺎﻟﻤﻠﻒ ‪ shadow‬اﻟﻰ اﻟﻤﻠﻒ ‪. passwd‬‬ ‫وﺑﺎﻟﺘﺎﻟﻰ ﺳﻴﺘﻢ اﻟﻐﺎء اﻟﻤﻠﻒ ‪ ، shadow‬واﻻﻋﺘﻤﺎد ﻓﻘﻂ ﻋﻠﻰ اﻟﻤﻠﻒ ‪.‬‬ ‫وﻟﻜﻦ هﻨﺎك ﻋﺪﻩ اواﻣﺮ ﻣﺘﻌﻠﻘﻪ ﺑﺎدارﻩ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ﻋﻠﻰ اﻟﻨﻈﺎم ‪ ،‬ورأﻳﺖ ﻟﻜﻰ ﺗﺘﻢ اﻟﻔﺎﺋﺪﻩ ﻟﻠﻘﺎرى ان‬ ‫اآﻤﻞ هﺬا اﻟﻔﺼﻞ ﺑﻬﺬﻩ اﻻواﻣﺮ وﻟﻮ ﺣﺘﻰ ﺑﺸﻜﻞ ﻣﻮﺟﺰ ‪. gshadow‬‬ .‬‬ ‫ﻳﻌﺪ اﻟﺠﺰء اﻟﺴﺎﺑﻖ اﻟﺬى ﺗﺤﺪﺛﺎ ﻓﻴﻪ ﻋﻦ ادارﻩ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ وادارﻩ اﻟﻤﺠﻤﻮﻋﺎت ﻋﻠﻰ اﻟﻨﻈﺎم آﺎﻓﻴﺎ‬ ‫ﻟﻴﺴﺘﻄﻴﻊ ﻣﺪﻳﺮ اﻟﻨﻈﺎم اﻟﻘﻴﺎم ﺑﻤﻬﻤﻪ ادارﻩ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ‪.‬‬ ‫ﺑﻞ ان اﻟﻜﺜﻴﺮ ﻣﻦ اﻟﻜﺘﺐ ﻋﻨﺪﻣﺎ ﺗﺘﺤﺪث ﻋﻦ ادارﻩ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ‪ ،‬ﻓﺎﻧﻬﺎ ﺗﻘﺘﺼﺮ ﻓﻘﻂ ﻋﻠﻰ ﻣﺎ ﺗﻢ ذآﺮﻩ‬ ‫ﻣﻦ ﺗﻔﺎﺻﻴﻞ ‪. passwd‬‬ ‫وﻳﺘﻢ ارﺟﺎع اﻟﻮﺿﻊ آﻤﺎ آﺎن ﻋﻦ ﻃﺮﻳﻖ اﻻﻣﺮ‬ ‫‪pwconv‬‬ ‫ﻓﺘﺠﺪ ان اﻟﻤﻠﻒ ‪ shadow‬ﻗﺪ ﺗﻢ آﺘﺎﺑﺘﻪ ﺛﺎﻧﻴﻪ ‪ ،‬وﺗﻢ اﻳﻀﺎ ﺗﺤﻮﻳﻞ )‪ (convert‬ال ‪ password‬اﻟﻴﻪ‬ ‫هﺬا ﺑﺎﻟﻨﺴﺒﻪ ﻟﻠﻤﺴﺘﺨﺪﻣﻴﻦ وﻣﻠﻔﺎﺗﻬﻢ ‪ ،‬وﻧﻔﺲ اﻻﺟﺮاء ﻳﺘﻢ ﻟﻠﻤﺠﻤﻮﻋﺎت و ﺑﺎواﻣﺮ ﻣﺸﺎﺑﻬﻪ ‪ ،‬وهﻰ‬ ‫‪grpunconv‬‬ ‫وﺑﺘﻨﻔﻴﺬﻩ ﻳﺘﻢ اﻻﻋﺘﻤﺎد ﻓﻘﻂ ﻋﻠﻰ اﻟﻤﻠﻒ ‪.‫اواﻣﺮ ﻣﺘﻌﻠﻘﻪ ﺑﺎدارﻩ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ‪. shadow‬‬ ‫واﻳﻀﺎ ﻳﺘﻴﺢ ﻟﻚ اﺳﺘﺨﺪام اﻟﻤﻠﻒ ‪ group‬ﻓﻘﻂ دون اﻟﻤﻠﻒ ‪.

‬‬ ‫اﻣﺎ اﻻﻣﺮ ‪ groups‬ﻓﻼ ﻳﺎﺧﺪ اى ‪ ، option‬ﻓﻘﻂ ﻳﺎﺧﺬ ‪ argument‬ﻣﺘﻤﺜﻞ ﻓﻰ اﺳﻢ اﻟﻤﺴﺘﺨﺪم ‪.‬‬ ‫هﻨﺎك اﻣﺮان ﻳﺘﻢ اﻟﺘﻌﺮف ﺑﻬﻤﺎ ﻋﻠﻰ ﺑﻴﺎﻧﺎﺗﻚ وهﻤﺎ‬ ‫‪id‬‬ ‫وﻳﻜﺘﺐ هﺬا اﻻﻣﺮ اﻣﺎ ﻣﻨﻔﺮدا ‪ ،‬او ﺑﺎﺿﺎﻓﻪ اﺳﻢ ﻣﺴﺘﺨﺪم ﺑﻌﺪﻩ ‪.‬‬ .‬‬ ‫اﻣﺎ ﻓﻰ ﺣﺎﻟﻪ اﺿﺎﻓﻪ اﺳﻢ ﻣﺴﺘﺨﺪم ﺑﻌﺪﻩ ‪ ،‬ﻓﺎﻧﻪ ﻳﻌﺮض اﻟﻤﺠﻤﻮﻋﺎت ﻟﻬﺬا اﻟﻤﺴﺘﺨﺪم ‪.‫اﻟﺘﻌﺮف ﻋﻠﻰ ﺑﻴﺎﻧﺎﺗﻚ ‪.‬هﺬا اذا ﺗﻢ آﺘﺎﺑﺘﻪ ﻣﻨﻔﺮدا ‪.‬‬ ‫واﻟﻨﺎﺗﺞ ﻣﻦ هﺬا اﻻﻣﺮ ﻳﻌﺮض‬ ‫• اﺳﻢ اﻟﻤﺴﺘﺨﺪم ورﻗﻤﻪ‬ ‫• اﺳﻢ ﻣﺠﻤﻮﻋﺘﻪ ورﻗﻤﻬﺎ‬ ‫• اﻟﻤﺠﻤﻮﻋﺎت اﻟﺘﻰ ﻳﺸﺘﺮك ﻓﻴﻬﺎ اﻟﻤﺴﺘﺨﺪم‬ ‫وآﻤﺎ ﻧﺮى ﻓﻰ اﻟﻤﺜﺎل‬ ‫ﻓﻌﻨﺪ ﺗﻄﺒﻴﻖ هﺬا اﻻﻣﺮ ﻣﻊ اﻟﻤﺴﺘﺨﺪم ‪ ، root‬ﻧﺮاﻩ ﻗﺪ ﻋﺮض اﻟﻤﻌﻠﻮﻣﺎت اﻟﺜﻼﺛﻪ وهﻰ ‪ uid‬و ‪ gid‬و‬ ‫‪) groups‬وهﻰ اﻟﻤﺠﻤﻮﻋﺎت اﻟﺘﻰ ﻳﺸﺘﺮك ﻓﻴﻬﺎ اﻟﻤﺴﺘﺨﺪم ‪(root‬‬ ‫ﺛﻢ ﺑﻌﺪ ذﻟﻚ ﺗﺤﻮﻟﺖ اﻟﻰ اﻟﻤﺴﺘﺨﺪم ‪ ahmed‬وﻃﺒﻘﺖ ﻧﻔﺲ اﻻﻣﺮ ﻋﻠﻴﻪ ‪ ،‬ﻓﻜﺎن اﻟﻨﺎﺗﺞ ﻣﺘﻤﺎﺛﻞ اﻻ ﻓﻰ‬ ‫اﻟﻤﺠﻤﻮﻋﺎت اﻟﺘﻰ ﻳﺸﺘﺮك ﻓﻴﻬﺎ اﻟﻤﺴﺘﺨﺪم ‪ ، ahmed‬ﻻﻧﻪ ﻏﻴﺮ ﻣﺸﺘﺮك ﻓﻰ اﻳﻪ ﻣﺠﻤﻮﻋﺎت ‪-‬ﺑﺎﺳﺘﺜﻨﺎء‬ ‫ﻣﺠﻤﻮﻋﺘﻪ ﻃﺒﻌﺎ‪-‬‬ ‫واﻻﻣﺮ اﻟﺜﺎﻧﻰ هﻮ‬ ‫‪groups‬‬ ‫وﻧﺎﺗﺠﻪ ﻣﺜﻞ اﻟﻤﻌﻠﻮﻣﻪ اﻟﺜﺎﻟﺜﻪ اﻟﺘﻰ ﻳﻈﻬﺮهﺎ اﻻﻣﺮ ‪ ، id‬ﺑﻤﻌﻨﻰ اﻧﻪ ﻳﻈﻬﺮ اﻟﻤﺠﻤﻮﻋﺎت اﻟﺘﻰ ﻳﻜﻮن‬ ‫اﻟﻤﺴﺘﺨﺪم ﻣﺸﺘﺮك ﻓﻴﻬﺎ ‪ .‬‬ ‫واﻻﻣﺮ ‪ id‬ﻗﺪ ﻳﺎﺧﺬ اﻟﻌﺪﻳﺪ ﻣﻦ ال ‪ option‬واﻟﺘﻰ ﺗﻌﺪل ﻓﻰ ﺷﻜﻞ ﻧﺎﺗﺠﻪ ‪ ،‬وﻳﻤﻜﻦ اﻻﻃﻼع ﻋﻠﻴﻬﻢ ﻣﻦ‬ ‫ﺻﻔﺤﺎت اﻟﻤﺴﺎﻋﺪﻩ ‪.

‬‬ ‫وﻳﻤﻜﻦ ﻟﻠﻤﺴﺘﺨﺪم ان ﻳﺮﺟﻊ ﺛﺎﻧﻴﻪ اﻟﻰ ﻣﺠﻤﻮﻋﺘﻪ اﻻوﻟﻰ ﻋﻦ ﻃﺮﻳﻖ اﻻﻣﺮ ‪ exit‬او ﻋﻦ ﻃﺮﻳﻖ اﻻﻣﺮ‬ ‫‪ newgrp‬ﻓﻘﻂ ﺑﺪون اى اﺳﻢ ﺑﻌﺪﻩ ‪.‫اﻟﺘﺤﻮل اﻟﻰ ﻣﺠﻤﻮﻋﻪ اﺧﺮى ‪. primary group‬‬ ‫وﻋﻨﺪﻣﺎ ﻳﻜﻮن هﺬا اﻟﻤﺴﺘﺨﺪم ﻟﻪ اﺷﺘﺮاك ﻓﻰ اآﺜﺮ ﻣﻦ ﻣﺠﻤﻮﻋﻪ ‪ ،‬ﻓﺎن اﻟﻨﻈﺎم ﻳﺴﻤﺢ ﻟﻪ ﺑﺎﻟﺘﺤﻮل اﻟﻰ‬ ‫هﺬﻩ اﻟﻤﺠﻤﻮﻋﻪ ﻋﻦ ﻃﺮﻳﻖ اﻻﻣﺮ‬ ‫‪newgrp‬‬ ‫ﻓﺒﻜﺘﺎﺑﻪ هﺬا اﻻﻣﺮ وإﺗﺒﺎﻋﻪ ﺑﺎﺳﻢ اﻟﻤﺠﻤﻮﻋﻪ اﻟﺘﻰ ﻳﺮﻳﺪ اﻟﻤﺴﺘﺨﺪم اﻟﺘﺤﻮل اﻟﻴﻬﺎ ‪ ،‬ﻓﺎن اﻟﻨﻈﺎم ﻳﺤﻮﻟﻪ اﻟﻰ‬ ‫هﺬﻩ اﻟﻤﺠﻤﻮﻋﻪ ‪.‬‬ ‫واﻟﻤﻼﺣﻆ هﻨﺎ ان اﻟﻤﺴﺘﺨﺪم ﻳﺘﺤﻮل ﻓﻘﻂ اﻟﻰ اﻟﻤﺠﻤﻮﻋﻪ اﻻﺧﺮى وﺑﺎﻟﺘﺎﻟﻰ ﻓﺎن آﺎﻓﻪ ﺑﻴﺎﻧﺎﺗﻪ ﺗﻈﻞ آﻤﺎ‬ ‫هﻰ ﻓﻴﻤﺎ ﻋﺪا اﻟﻌﻤﻠﻴﺎت اﻟﺘﻰ ﻳﺠﺮﻳﻬﺎ ‪ ،‬ﻣﺜﻞ اﻧﺸﺎء اﻟﻤﻠﻔﺎت وﻧﺤﻮﻩ ‪ ،‬ﻓﺎﻧﻬﺎ ﺗﻜﻮن ﻓﻰ هﺬﻩ اﻟﺤﺎﻟﻪ ﻣﻤﻠﻮآﻪ‬ ‫ﻟﻠﻤﺠﻤﻮﻋﻪ اﻟﺘﻰ ﺗﻐﻴﺮ اﻟﻴﻬﺎ ‪.‬‬ .‬‬ ‫ﻋﻨﺪﻣﺎ ﻳﺪﺧﻞ اﻟﻤﺴﺘﺨﺪم اﻟﻰ اﻟﻨﻈﺎم ﻓﺎﻧﻪ ﻳﺪﺧﻞ ﺗﻠﻘﺎﺋﻴﺎ اﻟﻰ اﻟﻤﺠﻤﻮﻋﻪ ال ‪ default‬ﻟﻪ ‪ ،‬او ﺑﻤﻌﻨﻰ اﺧﺮ‬ ‫ال ‪.

‬‬ ‫ﻳﺘﻢ وﺿﻊ ‪ password‬ﻟﻠﻤﺠﻤﻮﻋﻪ ﻋﻦ ﻃﺮﻳﻖ اﻻﻣﺮ‬ ‫‪gpasswd‬‬ ‫وهﻮ آﻤﺎ ﻧﺮى ‪ ،‬ﻣﺸﺎﺑﻬﻪ ﻟﻼﻣﺮ ‪.passwd‬اﻟﺨﺎص ﺑﺎﻟﻤﺴﺘﺨﺪﻣﻴﻦ‪ -‬ﻣﻊ اﺿﺎﻓﻪ ﺣﺮف ‪ g‬ﻓﻰ اﻟﺒﺪاﻳﻪ ‪.‫وﺿﻊ ‪ password‬ﻟﻠﻤﺠﻤﻮﻋﻪ ‪.‬‬ ‫واﻻﻣﺮ ‪ gpasswd‬ﻻ ﻳﺴﺘﺨﺪم ﻓﻘﻂ ﻟﻮﺿﻊ ‪ password‬ﻟﻠﻤﺠﻤﻮﻋﻪ ‪ ،‬ﺑﻞ ان ﻟﻪ اﺳﺘﺨﺪام اﺧﺮ اآﺜﺮ‬ ‫اهﻤﻴﻪ ‪ ،‬وهﻮ اﻧﻪ ﻳﻤﻜﻦ ﺑﻬﺬا اﻻﻣﺮ اﺿﺎﻓﻪ ﻣﺴﺘﺨﺪم اﻟﻰ ﻣﺠﻤﻮﻋﻪ ﺑﻌﻴﻨﻬﺎ ‪ .‬‬ ‫وﻳﻜﺘﺐ اﺳﻢ اﻟﻤﺠﻤﻮﻋﻪ اﻟﻤﺮاد ﻋﻤﻞ ‪ passwd‬ﻟﻬﺎ ﺑﻌﺪ هﺬا اﻻﻣﺮ ‪ ،‬ﻣﺜﻞ‬ ‫>‪gpasswd <group‬‬ ‫وﻳﺘﻢ اﻟﺘﻨﺒﻴﻪ ﻟﻠﻤﺮﻩ اﻟﺜﺎﻧﻴﻪ ان اﻟﻤﺠﻤﻮﻋﺎت ﺑﻄﺒﻌﻬﺎ ال ‪ default‬ﻻ ﻳﺘﻢ وﺿﻊ ‪ password‬ﻟﻬﺎ ‪،‬‬ ‫وﻟﻜﻦ ﻋﻨﺪ ارادﻩ وﺿﻊ ‪ password‬ﻻى ﻣﺠﻤﻮﻋﻪ ‪ ،‬ﻓﻼ ﺑﺪ ان ﺗﻜﻮن ﻋﻠﻰ دراﻳﻪ ﺑﻤﺎ ﺗﻔﻌﻞ ‪. gpasswd‬‬ .‬ﺑﺎﻻﺿﺎﻓﻪ اﻟﻰ ﻋﺪﻩ وﻇﺎﺋﻒ‬ ‫اﺧﺮى ﻟﻬﺬا اﻻﻣﺮ وهﻰ آﻤﺎ ﻳﻠﻰ‬ ‫>‪gpasswd -a <user> <group‬‬ ‫ﻻﺿﺎﻓﻪ ﻣﺴﺘﺨﺪم اﻟﻰ ﻣﺠﻤﻮﻋﻪ‬ ‫>‪gpasswd -d <user> <group‬‬ ‫ﻻزاﻟﻪ ﻣﺴﺘﺨﺪم ﻣﻦ ﻣﺠﻤﻮﻋﻪ‬ ‫>‪gpasswd -A <user> <group‬‬ ‫وﺿﻊ ‪ Adminsrator‬ﻟﻠﻤﺠﻤﻮﻋﻪ‬ ‫>‪ gpasswd -M <user> <group‬اﺿﺎﻓﻪ ‪ Member‬ﻟﻠﻤﺠﻤﻮﻋﻪ‬ ‫>‪gpasswd -r <group‬‬ ‫ﻻزاﻟﻪ ال ‪ password‬اﻟﺨﺎﺻﻪ ﺑﺎﻟﻤﺠﻤﻮﻋﻪ‬ ‫>‪gpasswd -R <group‬‬ ‫ﻟﻤﻨﻊ اﻟﺪﺧﻮل ﻟﻠﻤﺠﻤﻮﻋﻪ ﺑﺎﻻﻣﺮ ‪newgrp‬‬ ‫وﻟﻌﻞ اﻟﻤﻼﺣﻆ ان اواﻣﺮ اﻟﻤﺠﻤﻮﻋﺎت اﻟﺘﻰ ﺳﺒﻖ ﺷﺮﺣﻬﺎ ﻓﻰ اﻟﺼﻔﺤﺎت اﻟﺴﺎﺑﻘﻪ ﻣﺜﻞ ‪) groupmod‬واﺧﻮﺗﻬﺎ( ‪ ،‬ﻻ‬ ‫ﺗﻘﻮم ﺑﻬﺬﻩ اﻟﻮﻇﻴﻔﻪ )وهﻰ اﻻﺿﺎﻓﻪ اﻟﻰ اﻟﻤﺠﻤﻮﻋﻪ( ﺑﻞ ﻳﻘﻮم ﺑﻬﺬا اﻻﻣﺮ ‪.

.

‬وهﺬا هﻮ ﻣﺎ ﻳﺴﻤﻰ ﺑﺎل ‪ path‬اى اﻟﻤﺴﺎر‪.‬‬ .‬‬ ‫اذا ﻓﺎن ﻣﻌﻨﻰ اﻟﻤﺼﻄﻠﺢ ‪ ، /etc‬هﻮ ان اﻟﻤﺠﻠﺪ ‪ etc‬ﻣﻮﺟﻮد ﺗﺤﺖ ‪.partition‬وﻟﻨﻔﺘﺮض اﻧﻪ ال ‪ -C partition‬ﻳﻮﺟﺪ ﻣﺠﻠﺪ ﻳﺴﻤﻰ‬ ‫‪ directory‬وداﺧﻞ هﺬا اﻟﻤﺠﻠﺪ ﻣﻠﻒ ﻳﺴﻤﻰ ‪.‬‬ ‫ﻓﻠﻠﻨﻈﺎم ﺟﺬر رﺋﻴﺴﻰ ‪ ،‬وﻳﺘﻔﺮع ﻣﻦ هﺬا اﻟﺠﺬر ﺑﻘﻴﻪ اﻻﻓﺮع اﻟﻤﻜﻤﻠﻪ ﻟﻠﻨﻈﺎم ‪.‬‬ ‫‪File system Hierarchy Standard‬‬ ‫ﻳﻌﺪ اﻟﺘﺮﺗﻴﺐ اﻟﻬﺮﻣﻰ ﻟﻨﻈﺎم اﻟﻤﻠﻔﺎت ﻓﻰ ﻟﻴﻨﻮآﺲ ﻣﻦ اﻻﺷﻴﺎء "اﻟﻤﺤﻴﺮﻩ" ﻟﻠﻤﺘﻌﺎﻣﻞ اﻟﺠﺪﻳﺪ ﻣﻊ ﻟﻴﻨﻮآﺲ ‪،‬‬ ‫وهﺬا ﺑﺎﻟﻄﺒﻊ ﻟﻠﻤﺴﺘﺨﺪم اﻟﺬى اﻋﺘﺎد اﻟﻌﻤﻞ ﻣﻊ ﻧﻈﺎم اﻟﺘﺸﻐﻴﻞ ‪.mouse‬آﻄﺮﻳﻘﻪ ﺳﻬﻠﻪ ﻓﻰ اﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻮﻳﻨﺪوز‪-‬‬ ‫وﺳﺘﻘﻮم ﺑﺎﻟﻀﻐﻂ ‪ double click‬ﻋﻠﻰ ‪ my computer‬اوﻻ ‪ ،‬ﺛﻢ ﺑﻌﺪ ذﻟﻚ ﻋﻠﻰ ‪C partition‬‬ ‫ﺛﻢ ﺗﺘﺒﻊ ذﻟﻚ ﺑﺎﻟﻀﻐﻂ ﻋﻠﻰ اﻟﻤﺠﻠﺪ ‪ ، directory‬وﻣﻦ ﺛﻢ ﺳﺘﺠﺪ ﻧﻔﺴﻚ اﻣﺎم اﻟﻤﻠﻒ ‪.‬‬ ‫وﻓﻰ اﻟﺴﻄﻮر اﻟﻘﺎدﻣﻪ ﺳﻨﺘﻌﺮض ﻟﻨﻈﺎم اﻟﻤﻠﻔﺎت هﺬا ﺑﺼﻮرﻩ ﻣﺨﺘﺼﺮﻩ وﻣﺎ ﻳﻌﻨﻴﻪ آﻞ ﻓﺮع ﻣﻦ اﻓﺮﻋﻪ ‪. file‬‬ ‫آﻞ هﺬﻩ اﻟﺨﻄﻮات ﺗﺮاهﺎ ﻗﺪ ﻇﻬﺮت ﻓﻰ ال ‪ adderss bar‬ﺑﻬﺬا اﻟﺸﻜﻞ ‪. windows‬‬ ‫ﻓﻠﻨﻔﺘﺮض ان ﺑﺪاﺧﻞ اﺣﺪ ال ‪. windows‬‬ ‫وﻳﻄﻠﻖ ﻋﻠﻰ هﺬا اﻟﺸﻜﻞ ‪ file system hierarchy standard‬او اﺧﺘﺼﺎرا ‪.‬‬ ‫وﺳﻴﺘﻢ ﻋﺮض هﺬﻩ اﻻﺟﺰاء ﺑﺎﻻﻋﺘﻤﺎد ﻋﻠﻰ اﻟﺘﺮﺗﻴﺐ اﻻﺑﺠﺪى ‪. /‬‬ ‫وﻣﻌﻨﻰ ‪ /etc/passwd‬هﻮ ان اﻟﻤﻠﻒ ‪ passwd‬ﻣﻮﺟﻮد ﺗﺤﺖ ‪ etc‬وهﻮ ﺑﺪورﻩ ﻣﻮﺟﻮد ﺗﺤﺖ ‪/‬‬ ‫وهﻜﺬا ‪ .‫اﻟﺘﺮﺗﻴﺐ اﻟﻬﺮﻣﻰ ﻟﻨﻈﺎم اﻟﻤﻠﻔﺎت ‪. C:\directory\file‬‬ ‫وهﺬا ﺑﺎﻟﻀﺒﻂ ﻣﻌﻨﻰ اﻟﺠﺬر واﻻﻓﺮع ‪ ،‬ﻓﺎﻟﺠﺬر اﻟﺮﺋﻴﺴﻰ ﻓﻰ ﻟﻴﻨﻮآﺲ ﻗﺪ ﻧﻌﺘﺒﺮﻩ هﺬا ال ‪C partition‬‬ ‫وآﻞ ﻓﺮع ﺗﺤﺖ هﺬا اﻟﺠﺬر ‪-‬ﻣﺜﻞ ‪ etc‬و ‪ lib‬وﻏﻴﺮهﻢ ﻓﻰ ﻟﻴﻨﻮآﺲ‪ -‬ﺷﺒﻴﻪ ﺑﻬﺬا اﻟﻤﺠﻠﺪ وﺑﻬﺬا اﻟﻤﻠﻒ ‪. file‬‬ ‫وﻟﻜﻰ ﺗﺼﻞ اﻟﻰ هﺬا اﻟﻤﻠﻒ ﺳﺘﺴﺘﺨﺪم ﺑﺎﻟﻄﺒﻊ ال ‪.‬‬ ‫واذا اردﻧﺎ ﻣﺜﺎﻻ ﻳﻮﺿﺢ ﻣﻌﻨﻰ اﻟﺠﺬر واﻓﺮﻋﻪ ‪ ،‬ﻓﺎﻧﻨﺎ ﻳﻤﻜﻦ اﻻﺳﺘﻌﺎﻧﻪ ﺑﺎﻟﻌﻨﻮان اﻟﺬى ﻳﻜﺘﺐ ﻓﻰ ال‬ ‫‪ adderss bar‬اﻟﻤﻮﺟﻮد ﻓﻰ ﻧﻈﺎم ‪. FHS‬‬ ‫وهﺬا اﻟﺸﻜﻞ)اﻟﺘﺮﺗﻴﺐ اﻟﻬﺮﻣﻰ( ﺷﺒﻴﻪ ﺑﺎﻟﺸﺠﺮﻩ ‪.

inittab‬‬ ‫وﻧﺴﺨﻪ اﻟﻜﺮﻧﻞ اﻟﻤﻮﺟﻮدﻩ ﻓﻰ هﺬا اﻟﻤﺠﻠﺪ ﺗﺴﻤﻰ ‪ vmlinuz‬وﻳﺘﺒﻌﻬﺎ ﺑﻘﻴﻪ رﻗﻢ اﻟﻜﺮﻧﻞ ‪. devices‬‬ ‫وﻳﻌﺒﺮ ﻋﻨﻬﻢ ﺑﺎﺧﺘﺼﺎرات ﻣﻦ اﻣﺜﺎل ‪ hd‬او ‪ fd‬وهﻜﺬا ‪.‬‬ ‫وهﺬا اﻟﻤﺠﻠﺪ ﻻ ﻳﺤﻮى ﻣﺠﻠﺪات ﻓﺮﻋﻴﻪ ﺗﺤﺘﻪ )‪ (subdirectory‬ﺑﻞ ﻳﺤﻮى اﻻواﻣﺮ ﻓﻘﻂ وهﻰ ﻣﺎ‬ ‫ﺗﺴﻤﻰ ب ‪.‬‬ ‫وهﻰ ﻧﺴﺨﻪ ﻣﺼﻐﺮﻩ ﻣﻦ اﻟﻜﺮﻧﻞ ‪ ،‬وﻇﻴﻔﺘﻬﺎ ﻓﻘﻂ هﻰ ﺗﺤﻤﻴﻞ هﺬا اﻟﻜﺮﻧﻞ ‪-‬اﻟﺼﻐﻴﺮ‪ -‬ﻓﻰ اﻟﺬاآﺮﻩ ‪Ram‬‬ ‫ﺛﻢ ﻳﻘﻮم ﺑﻌﺪ ﺗﺤﻤﻴﻞ ﺑﻔﺴﻪ ﺑﺎﻟﺬاآﺮﻩ ‪ ،‬ﺑﺎرﺷﺎد اﻟﻜﺮﻧﻞ اﻻﺳﺎﺳﻰ ﻟﻠﻨﻈﺎم ﻟﻜﻰ ﻳﺒﺪأ ﻋﻤﻠﻪ ‪.‬‬ ‫* وهﺬا اﻟﻤﺠﻠﺪ ﻳﻌﺪ ﺿﺮورى ﻟﻠﻨﻈﺎم )‪(mandatory‬‬ ‫‪ /dev -4‬وﻳﺤﺘﻮى هﺬا اﻟﻤﺠﻠﺪ ﻋﻠﻰ اﺟﺰاء اﻟﻬﺎردوﻳﺮ واﻟﺘﻰ ﺗﺴﻤﻰ ‪ ، devices‬وهﻰ ﻋﺒﺎرﻩ ﻋﻦ‬ ‫ﻣﻠﻔﺎت ‪-‬ﻻن آﻞ ﺷﻰ ﺑﺎﻟﻨﻈﺎم هﻮ ﻋﺒﺎرﻩ ﻋﻦ ﻣﻠﻒ‪ ، -‬وﺗﺸﻤﻞ آﻞ اﻧﻮاع ال ‪ devices‬اﻟﻤﻮﺟﻮدﻩ ﺑﺎﻟﻨﻈﺎم ‪،‬‬ ‫ﻣﻦ اﻣﺜﺎل ‪ hard disk‬و ‪ floppy disk‬و ‪ terminals‬وﻏﻴﺮهﻢ ﻣﻦ ال ‪.‫‪ / -1‬وهﺬا هﻮ اﻟﺠﺬر اﻟﺮﺋﻴﺴﻰ ﻟﻠﻨﻈﺎم وﻟﺒﻘﻴﻪ اﻻﻓﺮع اﻻﺧﺮى ‪ ،‬وﻳﻄﻠﻖ ﻋﻠﻰ هﺬا اﻟﺠﺬر ﻋﺪﻩ اﺳﻤﺎء‬ ‫ﻓﻴﻄﻠﻖ ﻋﻠﻴﻪ ال ‪ root‬ﺑﺎﻋﺘﺒﺎرﻩ ﺟﺬر اﻟﻨﻈﺎم ‪.‬‬ ‫‪ /bin -2‬وﻳﺤﺘﻮى هﺬا اﻟﻤﺠﻠﺪ ﻋﻠﻰ اﻟﺒﺮاﻣﺞ واﻻواﻣﺮ‪-‬اﻟﻬﺎﻣﻪ‪ -‬اﻟﺘﻰ ﻳﺤﺘﺎج اﻟﻴﻬﺎ ﻣﺪﻳﺮ اﻟﻨﻈﺎم ﻓﻰ ال‬ ‫‪ single user mode‬وﻓﻰ ﺣﺎﻟﻪ ال ‪) rescue‬اﻟﻄﻮارى( اﻳﻀﺎ ‪.‬‬ ‫وﻳﻄﻠﻖ ﻋﻠﻴﻪ ‪ slash‬ﺗﻤﻴﻴﺰا ﻟﻪ ﺑﺎﻻﻋﺘﻤﺎد ﻋﻠﻰ ﺷﻜﻠﻪ ‪. binary‬‬ ‫* وهﺬا اﻟﻤﺠﻠﺪ ﻣﻦ اﻻﺟﺰاء اﻟﻀﺮورﻳﻪ ﻟﻠﻨﻈﺎم )‪(mandatory‬‬ ‫‪ /boot -3‬وﻳﺤﺘﻮى هﺬا اﻟﻤﺠﻠﺪ ﻋﻠﻰ ﺟﻤﻴﻊ اﻟﻤﻠﻔﺎت اﻟﺘﻰ ﻳﺤﺘﺎﺟﻬﺎ اﻟﻨﻈﺎم ﻟﻜﻰ ﻳﺴﺘﻄﻴﻊ ان ﻳﺒﺪأ اﻟﻌﻤﻞ‬ ‫ﻓﻬﻮ ﻳﺤﺘﻮى ﻋﻠﻰ ﻧﺴﺨﻪ ﻣﻦ اﻟﻜﺮﻧﻞ ‪ ،‬وهﻰ اﻟﺘﻰ ﻳﺘﻢ ﺗﺤﻤﻴﻠﻬﺎ ﻓﻰ ال ‪ Ram‬وهﻰ اﻟﺨﻄﻮﻩ اﻻوﻟﻰ‬ ‫واﻟﺒﺴﻴﻄﻪ ﻟﺒﺪاﻳﻪ ﻧﻈﺎم اﻟﺘﺸﻐﻴﻞ ‪ ،‬ﺛﻢ ﻳﺘﺒﻌﻬﺎ اﻟﻨﻈﺎم ﺑﺘﺤﻤﻴﻞ آﻞ ﻣﻠﻔﺎﺗﻪ ‪ ،‬وذﻟﻚ ﻃﺒﻘﺎ ﻟﻤﺎ هﻮ ﻣﻮﺟﻮد‬ ‫ﺑﺎﻟﻤﻠﻔﺎت ‪ fstab‬و ‪.‬وﻳﻨﻄﻖ )اى ﺗﻰ ﺳﻰ( ‪.‬‬ ‫* وهﺬا اﻟﻤﺠﻠﺪ ﺿﺮورى )‪(mandatory‬‬ .‬‬ ‫* وهﺬا اﻟﻤﺠﻠﺪ ﺿﺮورى )‪(mandatory‬‬ ‫‪ /etc -5‬وﻳﺤﻮى هﺬا اﻟﻤﺠﻠﺪ آﻞ ﻣﻠﻔﺎت اﻟﺘﻬﻴﺌﻪ اﻟﺨﺎﺻﻪ ﺑﺎﻟﻨﻈﺎم ‪ .‬‬ ‫* وهﺬا ال ‪ /‬ﻣﻦ اﻻﺟﺰاء اﻟﻀﺮورﻳﻪ)‪ (mandatory‬ﻟﻠﺘﻜﻮﻳﻦ اﻟﻬﺮﻣﻰ ﻟﻠﻨﻈﺎم ‪ ،‬ﺑﻞ اﻧﻪ ﻳﻌﺪ اهﻢ ﺟﺰء ﻓﻰ اﻟﻨﻈﺎم ‪.‬‬ ‫وهﺬا اﻟﻤﺠﻠﺪ ﻳﺤﻮى ﻣﻠﻔﺎت و ﻣﺠﻠﺪات ‪ .‬وﺗﺸﻤﻞ آﻞ ﻣﻠﻔﺎت اﻟﺘﻬﻴﺌﻪ ‪ ،‬ﺳﻮاء‬ ‫آﺎﻧﺖ ﻟﻞ ‪ boot‬او ﻟﻞ ‪ x window‬او اﻟﺸﺒﻜﺎت واﻟﺴﻴﺮﻓﺮات ‪.

hard disk‬‬ ‫ﺑﻞ اﻧﻪ ﻳﺤﻮى ‪ process‬اى ﻋﻤﻠﻴﺎت ‪ ،‬وﻣﻌﻠﻮﻣﺎت اﻟﻜﺮﻧﻞ اﻟﺘﻰ ﻳﻌﻤﻞ اﻻن ﻋﻠﻰ اﻟﻨﻈﺎم ‪.‬‬ ‫* وهﺬا اﻟﻤﺠﻠﺪ اﺧﺘﻴﺎرى )‪(optional‬‬ ‫‪ /opt -9‬وهﺬا اﻟﻤﺠﻠﺪ ﻣﺨﺼﺺ ﻟﻠﺒﺮاﻣﺞ اﻟﺘﻰ ﺗﻀﺎف ﻟﻠﻨﻈﺎم واﻟﺘﻰ ﺗﺴﻤﻰ ﺑﺎل ‪ thired party‬اى‬ ‫اﻟﺘﻰ ﻟﻴﺴﺖ ﻣﻦ اﻧﺘﺎج اﻟﺸﺮآﻪ اﻟﺘﻰ ﻗﺎﻣﺖ ﺑﺎﺧﺮاج اﻟﻨﻈﺎم ‪.‬‬ ‫وهﻢ ﻣﻘﺴﻤﻮن اﻟﻰ ﻣﺠﻠﺪات ﻓﺮﻋﻴﻪ ﺗﺤﺖ هﺬا اﻟﻤﺠﻠﺪ ‪ ،‬ﻣﺜﻞ ‪ /home/user1‬ﻓﻠﻜﻞ ﻣﺴﺘﺨﺪم ﻣﺠﻠﺪ‬ ‫ﺧﺎص ﺑﻪ ‪ ،‬وﻳﺘﻤﻴﺰ آﻞ ﻣﺠﻠﺪ ﻋﻦ اﻻﺧﺮ ﺑﺎﺳﻢ اﻟﻤﺴﺘﺨﺪم ﻋﻠﻰ اﻟﻨﻈﺎم ‪.‫‪ /home -6‬وهﺬا اﻟﻤﺠﻠﺪ هﻮ ال ‪ home directory‬ﻟﺠﻤﻴﻊ اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ﻋﻠﻰ اﻟﻨﻈﺎم ‪.‬‬ ‫* وهﺬا اﻟﻤﺠﻠﺪ اﺧﺘﻴﺎرى )‪(optional‬‬ ‫‪ /lib -7‬وﻳﺤﺘﻮى هﺬا اﻟﻤﺠﻠﺪ ﻋﻠﻰ اﻟﻤﻜﺘﺒﺎت اﻟﺘﻰ ﺗﻌﺘﻤﺪ ﻋﻠﻴﻬﺎ اﻻواﻣﺮ واﻟﺒﺮاﻣﺞ ﻓﻰ ﻋﻤﻠﻬﺎ ‪ ،‬وﻟﻬﺬا‬ ‫اﻟﺴﺒﺐ ﻓﺎن هﺬﻩ اﻟﻤﻜﺘﺒﺎت ﺗﺴﻤﻰ ‪. shared libraries‬‬ ‫وﻓﻜﺮﻩ هﺬﻩ ال ‪ shared libraries‬ﻓﻰ اﻧﻬﺎ ﺗﺤﺘﻮى ﻋﻠﻰ اﻻﺟﺰاء اﻟﺘﻰ ﺗﺘﻜﺮر ﻓﻰ اﻟﻜﻮد ﻟﻬﺬﻩ‬ ‫اﻟﺒﺮاﻣﺞ ‪ ،‬ﻣﻤﺎ ﻳﺠﻌﻞ اﻟﻤﺒﺮﻣﺠﻴﻦ ﻳﺘﻔﺎدون آﺘﺎﺑﻪ هﺬﻩ اﻻﺟﺰاء ﻣﻊ آﻞ ﺑﺮﻧﺎﻣﺞ ﻋﻠﻰ ﺣﺪﻩ ‪.‬‬ ‫* وهﺬا اﻟﻤﺠﻠﺪ اﺧﺘﻴﺎرى )‪(optional‬‬ ‫‪ /proc -10‬ﻳﺤﻮى هﺬا اﻟﻤﺠﻠﺪ ﻧﻈﺎم ﻣﻠﻔﺎت ‪-‬ﻏﻴﺮ ﺣﻘﻴﻘﻰ‪ -‬وهﻮ ﻣﺎ ﻳﺴﻤﻰ ﺑﺎل ‪virtual‬‬ ‫‪ . /usr‬‬ ‫* وهﺬا اﻟﻤﺠﻠﺪ ﺿﺮورى )‪(mandatory‬‬ ‫‪ /mnt -8‬وﻳﺤﺘﻮى هﺬا اﻟﻤﺠﻠﺪ ﻋﻠﻰ ال ‪ temprory mount‬او اﻻﺟﺰاء اﻟﺘﻰ ﺗﻠﺤﻖ ﺑﺎﻟﻨﻈﺎم‬ ‫ﺑﺸﻜﻞ ﻣﺆﻗﺖ ‪ ،‬ﻣﺜﻞ ‪ floppy‬و ‪.‬‬ ‫ﻓﻴﻮﺟﺪ ﺑﻪ اﻟﻌﺪﻳﺪ ﻣﻦ ﻣﻠﻔﺎت اﻟﺘﻬﻴﺌﻪ اﻟﺘﻰ ﻳﻘﻮم اﻟﻤﺪﻳﺮ ﺑﺎﻧﺸﺎﺋﻬﺎ ﻻدارﻩ ﻧﻈﺎﻣﻪ ‪. cdrom‬‬ ‫واﻳﻀﺎ ﻗﺪ ﻳﺸﻤﻞ ال ‪ partition‬ﻻﻧﻈﻤﻪ اﻟﺘﺸﻐﻴﻞ اﻻﺧﺮى اﻟﺘﻰ ﺗﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻨﻈﺎم ‪ ،‬ﻣﺜﻞ وﻳﻨﺪوز ‪.‬‬ ‫وهﺬﻩ ال ‪ libraries‬هﻰ اﻟﺘﻰ ﻳﺤﺘﺎﺟﻬﺎ اﻟﻨﻈﺎم ﻓﻰ ﺣﺎﻻت ﻣﺜﻞ ال ‪ single user mode‬وﺣﺎﻻت‬ ‫اﻟﻄﻮارى ‪ ،‬اﻣﺎ هﺬﻩ اﻟﺘﻰ ﻳﺤﺘﺎﺟﻬﺎ اﻟﻨﻈﺎم ﻓﻰ اﻻﻋﻤﺎل اﻻﻗﻞ اهﻤﻴﻪ ﻓﺘﻮﺟﺪ ﺗﺤﺖ ‪.‬‬ ‫وﻏﺎﻟﺒﺎ ﻣﺎ ﻳﻜﻮن هﺬا اﻟﻤﺠﻠﺪ ‪ ،‬اﻻآﺒﺮ ﺣﺠﻤﺎ ﻋﻠﻰ اﻟﻨﻈﺎم ‪ ،‬ﻻﻧﻪ ﻣﻦ اﻟﻤﺘﻮﻗﻊ ان ﻳﻨﻤﻮ ﺑﺎﺳﺘﻤﺮار ‪.‬‬ ‫واﻟﺴﺒﺐ ﻓﻰ اﻧﺸﺎء هﺬا ال ‪ home‬ﻟﻞ ‪. I/O ports‬‬ ‫* وهﺬا اﻟﻤﺠﻠﺪ اﺧﺘﻴﺎرى )‪(optional‬‬ ‫‪ /root -11‬وهﺬا اﻟﻤﺠﻠﺪ هﻮ ال ‪ home directory‬ﻟﻤﺪﻳﺮ اﻟﻨﻈﺎم ‪.‬‬ ‫* وهﺬا اﻟﻤﺠﻠﺪ اﺧﺘﻴﺎرى )‪(optional‬‬ ‫‪ /sbin -12‬وهﺬا اﻟﻤﺠﻠﺪ ﻣﺜﻞ اﻟﻤﺠﻠﺪ ‪ ، bin‬اﻻ ان هﺬا ﻳﺤﺘﻮى ﻋﻠﻰ اﻻواﻣﺮ واﻟﻤﻠﻔﺎت اﻟﺘﻰ ﺗﻌﺪ ﻣﻦ‬ ‫ادوات ادارﻩ اﻟﻨﻈﺎم ‪ ،‬ﻣﻦ اﻣﺜﺎل ‪ mkfs‬و ‪ shutdown‬و ‪ qoutaon‬وﻏﻴﺮهﺎ ﻣﻦ اواﻣﺮ اﻟﻨﻈﺎم ‪.‬‬ ‫* وهﺬا اﻟﻤﺠﻠﺪ ﺿﺮورى )‪(mandatory‬‬ .root‬ﻣﻊ ان اﻟﻨﻈﺎم ﺑﺎآﻤﻠﻪ ﺗﺤﺖ ادارﺗﻪ‪ -‬هﻮ ﻣﻨﻊ اﻣﺘﻼء ال‬ ‫‪ /‬اﻻﺳﺎﺳﻰ ﻟﻠﻨﻈﺎم ﺑﻤﻠﻔﺎت اﻟﺘﻬﻴﺌﻪ اﻟﺘﻰ ﻳﻨﺸﺄهﺎ اﻟﻤﺪﻳﺮ ﻟﻠﻤﻬﺎم اﻟﻤﺨﺘﻠﻔﻪ ‪.‬‬ ‫وﺗﻌﺪ هﺬﻩ اﻟﻤﻌﻠﻮﻣﺎت هﺎﻣﻪ ﺟﺪا ﻓﻰ اوﻗﺎت ال ‪ ، trouble shotting‬ﺧﺎﺻﻪ اﻟﻤﺘﻌﻠﻘﻪ ﺑﺎﻟﻬﺎردوﻳﺮ ‪،‬‬ ‫واهﻢ اﻟﻤﻌﻠﻮﻣﺎت اﻟﺘﻰ ﻗﺪ ﺗﺤﺘﺎج اﻟﻴﻬﺎ هﻰ ‪ interrupts‬و ‪ devices‬و ‪. filesystem‬واﻟﺴﺒﺐ ﻓﻰ آﻮﻧﻪ ‪ virtual‬هﻮ اﻧﻪ ﻻ ﻳﻮﺟﺪ ﺑﺎﻟﻔﻌﻞ ﻋﻠﻰ ال ‪.

‫‪ /tmp -13‬وهﺬا اﻟﻤﺠﻠﺪ ﺧﺎص ﺑﺎﻟﻤﻠﻔﺎت اﻟﻤﺆﻗﺘﻪ اﻟﺘﻰ ﺗﻨﺸﺄهﺎ اﻟﺒﺮاﻣﺞ واﻻواﻣﺮ اﻟﻤﺨﺘﻠﻔﻪ اﺛﻨﺎء ادأهﺎ‬ ‫ﻟﻮﻇﺎﺋﻔﻬﺎ ‪. read only‬‬ ‫* وهﺬا اﻟﻤﺠﻠﺪ ﺿﺮورى )‪(mandatory‬‬ ‫‪ /var -15‬وهﺬا اﻟﻤﺠﻠﺪ ﻳﺤﺘﻮى ﻋﻠﻰ اﻟﻤﻠﻔﺎت واﻟﻤﺠﻠﺪات اﻟﺘﻰ ﻳﺘﻐﻴﺮ ﺣﺠﻤﻬﺎ وﺑﻴﺎﻧﺎﺗﻬﺎ ﺑﺎﺳﺘﻤﺮار ‪. emergency‬‬ ‫وﻟﻬﺬا اﻟﻤﺠﻠﺪ ﺷﻜﻞ هﺮﻣﻰ ﻣﺸﺎﺑﻪ ﻟﻠﻤﻮﺟﻮد ﺗﺤﺖ ‪ /‬ذات ﻧﻔﺴﻪ ‪.‬‬ ‫وﻻن هﺬا اﻟﻤﺠﻠﺪ ﻻ ﻳﺤﺘﺎﺟﻪ اﻟﻨﻈﺎم ﻓﻰ ﻋﻤﻠﻴﻪ ‪ ، start up‬ﻓﺎﻧﻪ ‪ -‬ﻓﻰ اﻻﻧﻈﻤﻪ ذات اﻟﻤﺴﺎﺣﺎت‬ ‫اﻟﻤﺤﺪودﻩ ﻓﻰ ال‪ -hard disk‬ﻳﺘﻢ رﺑﻄﻪ )‪ (mount‬ﺑﺎﻟﻨﻈﺎم ﻣﻦ ﺧﻼل اﻟﺸﺒﻜﻪ ‪).‬‬ ‫ﻓﻤﻠﻔﺎت ال ‪.printer‬اﻟﺘﻰ ﺗﺘﻐﻴﺮ ﺑﻴﺎﻧﺎﺗﻬﺎ ﺑﺎﺳﺘﻤﺮار‪ -‬وﻏﻴﺮهﺎ ﻣﻦ اﻟﻤﻠﻔﺎت ‪.‬‬ ‫* وهﺬا اﻟﻤﺠﻠﺪ ﺿﺮورى )‪(mandatory‬‬ ‫‪ /usr -14‬ﻳﻌﺪ هﺬا اﻟﻤﺠﻠﺪ ﻣﻦ اﻟﻤﺠﻠﺪات اﻟﻬﺎﻣﻪ واﻟﺘﻰ ‪-‬ﻻ ﺑﺪ ان‪ -‬ﻳﺨﺼﺺ ﻟﻬﺎ ﻣﺴﺎﺣﻪ آﺒﻴﺮﻩ ‪.login‬واﻟﺘﻰ ﺗﺘﻐﻴﺮ آﻠﻤﺎ ﻗﺎم اﻟﻨﻈﺎم ﺑﻌﻤﻠﻴﻪ ‪ login‬ﺟﺪﻳﺪﻩ‪ -‬ﻳﺘﻢ ﺗﺨﺰﻳﻨﻬﺎ ﻓﻰ هﺬا اﻟﻤﺠﻠﺪ ‪.‬‬ ‫آﻠﻤﻪ اﻟﻤﺠﻠﺪ اﻟﺘﻰ ﺗﻢ ذآﺮهﺎ ﻣﻊ آﻞ ال ‪ filesystem‬ﻗﺪ ﺗﻌﺘﺒﺮ ﻣﺮادﻓﻪ ﻟﻜﻠﻤﻪ ‪ ، partition‬وﻟﻜﻦ آﻠﻤﻪ ﻣﺠﻠﺪ اﻋﻢ ﻓﻰ‬ ‫اﺳﺘﺨﺪاﻣﻬﺎ ‪ ،‬واﻟﺴﺒﺐ هﻮ ‪ ،‬ان آﻞ ﻣﺎ هﻮ ﻣﻮﺟﻮد ﺗﺤﺖ ال) ‪ ( /‬ﻋﺒﺎرﻩ ﻋﻦ ﻣﺠﻠﺪ ‪ ،‬واﻟﺒﻌﺾ ﻣﻨﻪ ﻓﻘﻂ ‪.‬‬ ‫اﻣﺎ ﺑﺎﻟﻨﺴﺒﻪ ﻟﻠﻤﺠﻠﺪات ‪ ،‬ﻓﻴﻮﺟﺪ ﻣﺠﻠﺪات ﻣﺨﺘﻠﻔﻪ ﺗﺨﺪم اﻟﻌﺪﻳﺪ اﻟﺴﻴﺮﻓﺮات ‪ ،‬ﻣﺜﻞ ال ‪ ftp server‬وهﻮ‬ ‫اﻟﺬى ﻳﺨﺪم ﺳﻴﺮﻓﺮ ‪ ، ftp‬اﻳﻀﺎ ﺳﻴﺮﻓﺮ اﻻﺑﺎﺗﺸﻰ واﻟﺬى ﺗﻮﺿﻊ ﻣﻠﻔﺎﺗﻪ ﻓﻰ اﻟﻤﺠﻠﺪ ‪ www‬وﻏﻴﺮهﻢ ‪.‬‬ ‫* وهﺬا اﻟﻤﺠﻠﺪ ﺿﺮورى )‪(mandatory‬‬ ‫‪ lost+found -16‬ﻳﻮﺟﺪ هﺬا اﻟﻤﺠﻠﺪ ﻓﻰ آﻞ ‪ partition‬ﻣﻮﺟﻮد ﻋﻠﻰ اﻟﻨﻈﺎم ‪ ،‬ﻓﺎن آﺎن ﻓﻰ‬ ‫ﻧﻈﺎﻣﻚ ‪-‬ﻋﻠﻰ ﺳﺒﻴﻞ اﻟﻤﺜﺎل‪ partition 7 -‬ﻓﺎﻧﻚ ﺳﺘﺠﺪ هﺬا اﻟﻤﺠﻠﺪ ‪ 7‬ﻣﺮات ‪. mount point‬وان ﻟﻢ ﻳﻮﺟﺪ ﻟﻪ ‪ partition‬ﻓﻬﻮ ﻋﺒﺎرﻩ ﻋﻦ ﻣﺠﻠﺪ ﺗﺎﺑﻊ ﻟﻞ ) ‪( /‬‬ .‬‬ ‫ﺑﺎﻻﺿﺎﻓﻪ اﻟﻰ ﻣﻠﻔﺎت ال ‪.‬‬ ‫ووﻇﻴﻔﻪ هﺬا اﻟﻤﺠﻠﺪ هﻰ ‪ ،‬ﻋﻨﺪﻣﺎ ﻳﻘﻮم اﻟﺒﺮﻧﺎﻣﺞ ‪ fsck‬ﺑﻌﻤﻞ ‪ check‬ﻋﻠﻰ ال ‪ filesystem‬ﺑﻌﺪ‬ ‫ﻋﻤﻠﻴﻪ ال ‪ system crash‬ﻓﺎن ﻣﻦ وﻇﺎﺋﻔﻪ ‪ -fsck-‬ان ﻳﻘﻮم ﺑﺎرﺟﺎع آﻞ اﻟﻤﻠﻔﺎت اﻟﻰ اﻣﺎآﻨﻬﺎ‬ ‫اﻟﻄﺒﻴﻌﻴﻪ ﻓﻰ اﻟﻨﻈﺎم ‪ ،‬ﻓﺎن ﺻﺎدف وﻟﻢ ﻳﺘﻌﺮف ﻋﻠﻰ ﻣﻠﻔﺎت ﺑﻌﻴﻨﻬﺎ ‪ ،‬ﻓﺎﻧﻪ ﻳﻀﻌﻬﺎ ﻓﻰ هﺬا اﻟﻤﺠﻠﺪ ‪،‬‬ ‫ﺗﺎرآﺎ اﻻﻣﺮ اﻟﻰ ﻣﺪﻳﺮ اﻟﻨﻈﺎم ﻟﻴﻘﻮم هﻮ ﺑﻨﻔﺴﻪ ﺑﺎرﺟﺎﻋﻬﺎ ‪ ،‬او اﺳﺘﺒﺪاﻟﻬﺎ اذا ﻟﺰم اﻻﻣﺮ ‪. partition‬‬ ‫ﺑﻤﻌﻨﻰ اﺧﺮ‪،‬اذا آﺎن ﻟﻠﻤﺠﻠﺪ ‪ partition etc‬ﻋﻠﻰ اﻟﻬﺎرد ‪ ،‬اذا ﻓﺎن هﺬا ال ‪ partition‬هﻮ ال ‪ mount‬واﻟﻤﺠﻠﺪ‪etc‬‬ ‫هﻮ ال ‪ .‬اى اﻧﻪ ﻳﻮﺟﺪ ﻋﻠﻰ‬ ‫اﻟﺴﻴﺮﻓﺮ اﻟﺮﺋﻴﺴﻰ ﻟﻴﺨﺪم ﺑﻘﻴﻪ اﻻﺟﻬﺰﻩ ﺑﺎﻟﺸﺒﻜﻪ ‪ ،‬ﺑﺪﻻ ﻣﻦ ﺗﻜﺮار وﺿﻌﻪ ﻋﻠﻰ آﻞ ﺟﻬﺎز ﻋﻠﻰ ﺣﺪﻩ(‬ ‫وﻳﺘﻢ اﻳﻀﺎ رﺑﻄﻪ )‪ (mount‬آﻘﺮأﻩ ﻓﻘﻂ ‪.‬‬ ‫ذﻟﻚ ﻻن هﺬا اﻟﻤﺠﻠﺪ ﺗﻮﺟﺪ ﺑﻪ اﻟﺒﺮاﻣﺞ اﻟﺘﻰ ﻳﺤﺘﺎﺟﻬﺎ اﻟﻨﻈﺎم ﻓﻰ اﻋﻤﺎﻟﻪ اﻻﻋﺘﻴﺎدﻳﻪ ‪ ،‬ﺑﻤﻌﻨﻰ اﻧﻬﺎ ﻻ‬ ‫ﻳﺤﺘﺎج اﻟﻴﻬﺎ اﻟﻨﻈﺎم اﺛﻨﺎء ﻋﻤﻠﻴﻪ ال ‪ start up‬وﻻ ال ‪.

‬‬ ‫• ‪/tmp‬‬ ‫اﻟﻤﻠﻔﺎت اﻟﻤﺆﻗﺘﻪ او ال ‪.‬‬ ‫• ‪/mnt‬‬ ‫ﺧﺎص ﺑﺎل ‪ mount‬اﻟﻤﺆﻗﺖ )ﻣﺜﻞ ‪ cd‬و‪.‬‬ ‫• ‪ /home‬ﻣﺠﻠﺪات اﻟﻤﺴﺘﺨﺪﻣﻴﻦ ‪.‬‬ ‫• ‪/sbin‬‬ ‫ﻣﺜﻞ ‪ /bin‬وﻟﻜﻨﻪ ﺧﺎص ﺑﺎواﻣﺮ ادارﻩ اﻟﻨﻈﺎم ‪.‬‬ ‫• ‪ /lost+found‬ﻟﻠﻤﻠﻔﺎت اﻟﻨﺎﺗﺠﻪ ﻣﻦ ﺑﺮﻧﺎﻣﺞ ‪.‬‬ ‫وﺑﻌﺪ ﺣﻞ اﻟﻤﺸﻜﻠﻪ ‪ ،‬وﻋﻤﻞ ‪ ، reboot‬واﻟﺪﺧﻮل ﻟﻠﻨﻈﺎم ﻓﻰ ﺣﺎﻟﺘﻪ اﻟﻄﺒﻴﻌﻴﻪ ‪ ،‬ﻓﻔﻰ هﺬﻩ اﻟﺤﺎﻟﻪ ﺳﺘﻘﻮم ﺑﺎﺳﺘﺨﺪام اﻻواﻣﺮ‬ ‫اﻟﻤﻮﺟﻮدﻩ ﻓﻰ اﻟﻤﺠﻠﺪات ﺳﺎﻟﻔﻪ اﻟﺬآﺮ واﻳﻀﺎ اوﻟﺌﻚ اﻟﻤﻮﺟﻮدﻩ ﺗﺤﺖ ‪.‬‬ ‫• ‪/root‬‬ ‫ال ‪ home directory‬اﻟﺨﺎص ﺑﻤﺪﻳﺮ اﻟﻨﻈﺎم ‪.‬‬ ‫• ‪/bin‬‬ ‫ﺑﻪ ﺟﻤﻴﻊ اﻻواﻣﺮ اﻟﻌﺎدﻳﻪ اﻟﺘﻰ ﻳﺤﺘﺎﺟﻬﺎ اﻟﻨﻈﺎم ﻓﻰ ﺣﺎﻟﻪ اﻟﻄﻮارى ‪. rescue mode‬‬ ‫واﻳﺎ آﺎﻧﺖ اﻟﻄﺮﻳﻘﻪ ‪ ،‬ﻓﻬﺬا ﻻ ﻳﻬﻢ ‪ ،‬ﺑﻞ ان اﻟﻤﻬﻢ هﻮ ‪ ،‬ﺷﻜﻞ اﻟﻨﻈﺎم ﺑﻌﺪ اﻟﺪﺧﻮل اﻟﻴﻪ ﺑﻬﺬﻩ اﻟﻄﺮﻳﻘﻪ ؟‬ ‫ﻓﺎﻧﺖ ﺳﺘﺪﺧﻞ اﻟﻰ اﻟﻨﻈﺎم وﻟﻜﻦ ﻟﻴﺲ آﺎﻟﺪﺧﻮل اﻟﻌﺎدى اﻟﺬى ﻳﺤﺪث ﻓﻰ اﻻوﻗﺎت اﻟﻌﺎدﻳﻪ ‪ ،‬ﺑﻞ ان هﺬا اﻟﺪﺧﻮل ﻳﺴﻤﻰ‬ ‫دﺧﻮل وﻟﻜﻦ ﻓﻰ ﺣﺎﻟﻪ اﻟﻄﻮارى ‪.‫ﻣﻠﺨﺺ ‪.‬‬ ‫• ‪/etc‬‬ ‫ﺑﻪ ﺟﻤﻴﻊ ﻣﻠﻔﺎت اﻟﺘﻬﻴﺌﻪ ‪.‬‬ ‫اﻟﻔﺮق ﺑﻴﻦ ﻣﺠﻠﺪات ﻣﺜﻞ ‪ /bin‬و ‪ /sbin‬و ‪ /lib‬وﻏﻴﺮهﻢ ﻣﻦ اﻟﻤﺠﻠﺪات اﻟﺘﻰ ﺗﻮﺟﺪ ﺗﺤﺖ ال ‪ /‬واﻳﻀﺎ ﺗﺤﺖ ‪ ، /usr‬هﻮ‬ ‫ﻋﻨﺪﻣﺎ ﻳﺤﺪث ﻟﻠﻨﻈﺎم اى ﻣﺸﻜﻠﻪ ‪ ،‬وﻟﻨﻔﺘﺮض ﻣﺜﻼ اﻧﻪ ﻻ )ﻳﺒﻮت ‪ (booting-‬ﻓﺎن ﻣﺎ ﻧﻘﻮم ﺑﻪ هﻮ اﻣﺎ ﺟﻌﻞ اﻟﻨﻈﺎم ﻳﺒﻮت‬ ‫ﻣﻦ ‪ ، start up floppy‬او ﻣﻦ اﻻﺳﻄﻮاﻧﻪ وﻟﻜﻦ ك ‪. (floppy‬‬ ‫• ‪/opt‬‬ ‫ﻟﻠﺒﺮاﻣﺞ اﻟﻐﻴﺮ ﺗﺎﺑﻌﻪ ﻟﻼﺻﺪارﻩ اﻟﺘﻰ ﺗﻌﻤﻞ ﻋﻠﻴﻬﺎ ‪.‬‬ ‫•‪/‬‬ ‫هﻮ اﻟﺠﺬر اﻟﺮﺋﻴﺴﻰ ﻟﻠﻨﻈﺎم ‪.‬‬ ‫• ‪/boot‬‬ ‫ﻳﺤﺘﻮى ﻋﻠﻰ آﻞ اﻟﻤﻠﻔﺎت اﻟﻤﻄﻠﻮﺑﻪ وﻗﺖ ال ‪. temprory‬‬ ‫• ‪/usr‬‬ ‫ﺑﻪ ﺟﻤﻴﻊ اﻟﺒﺮاﻣﺞ اﻟﺘﻰ ﻳﺴﺘﺨﺪﻣﻬﺎ اﻟﻨﻈﺎم ﻓﻰ ﻋﻤﻠﻪ اﻟﻌﺎدى ‪. /usr‬‬ ‫* >اذا ﻓﺎن اﻻواﻣﺮ اﻟﻤﻮﺟﻮدﻩ ﻓﻰ ‪ /bin‬وﻏﻴﺮهﺎ ‪ ،‬هﻰ اﻻواﻣﺮ اﻟﺘﻰ ﺑﺎﻟﻜﺎد ‪ ،‬ﺗﺤﺘﺎﺟﻬﺎ ﻓﻘﻂ ﻓﻰ ﺣﺎﻻت اﻟﻄﻮارى<‬ .‬‬ ‫• ‪/var‬‬ ‫ﻳﻮﺟﺪ ﺑﻪ اﻟﻤﻠﻔﺎت واﻟﻤﺠﻠﺪات اﻟﺘﻰ ﺗﺘﻐﻴﺮ ﺑﺎﺳﺘﻤﺮار ‪. booting‬‬ ‫• ‪/dev‬‬ ‫آﻞ ال ‪ devices‬ﻣﻮﺟﻮدﻩ ﺗﺤﺘﻪ ‪.‬وﻓﻰ هﺬﻩ اﻟﺤﺎﻟﻪ ﻓﺎﻧﺖ ﺳﺘﺴﺘﺨﺪم اﻻواﻣﺮ اﻟﻤﻮﺟﻮدﻩ ﻓﻰ اﻟﻤﺠﻠﺪات ‪ /bin‬و‪ /sbin‬وﻏﻴﺮهﻢ ‪.‬‬ ‫• ‪/lib‬‬ ‫ﻳﺤﻮى ﺟﻤﻴﻊ اﻟﻤﻜﺘﺒﺎت اﻟﻤﺸﺘﺮآﻪ ‪.‬‬ ‫• ‪/proc‬‬ ‫ﺗﻜﺘﺐ ﺑﻪ اﻟﻤﻌﻠﻮﻣﺎت اﻟﺨﺎﺻﻪ ﺑﺎﻟﻜﺮﻧﻞ اﻟﺬى ﻳﻌﻤﻞ ﺣﺎﻟﻴﺎ ‪. fsck‬‬ ‫ﻣﻼﺣﻈﻪ ‪.‬‬ ‫وﻣﺎ ﻳﺤﺪﺛﻪ هﺬا اﻟﺪﺧﻮل هﻮ ﻋﻤﻞ ‪ mount‬ﻟﻠﺠﺬر اﻟﺮﺋﻴﺴﻰ ﻟﻠﻨﻈﺎم ) ‪ ( /‬ﻓﻘﻂ ‪ ،‬وﺑﺎﻟﺘﺎﻟﻰ ﻋﻤﻞ ‪ mount‬ﻟﻜﻞ اﻟﻤﺠﻠﺪات‬ ‫اﻟﻤﻮﺟﻮدﻩ ﺗﺤﺘﻪ ‪ .