ایجاد دایرکتوری در لینوکس با استفاده از دستور mkdir
لینوکس یکی از سیستم عامل هایی است که در عین پیچیدگی و گستردگی که دارد، بسیار قابل اطمینان و سازگار است که آن را به یک انتخاب محبوب برای کاربران تبدیل می کند که از آن برای آسان تر کردن وظایفشان استفاده می کنند.
ایجاد دایرکتوری در لینوکس، روش های مختلفی دارد که یکی از آن ها، استفاده از دستور mkdir است.
ویژگی قدرتمندی که ترمینال لینوکس دارد، این است که طیف وسیعی از عملیات از جمله نصب برنامه های جدید و بهینه سازی سیستم عامل را پوشش می دهد و ممکن می کند. اگر شما مدیر سرور هستید و از سرور لینوکس هم استفاده می کنید، حتما سعی کنید که به پر کاربرد ترین دستورات لینوکس مسلط باشید.
لینوکس در استفاده از دستورات انعطاف پذیری بالایی دارد و شما می توانید به راحتی یک سرور لینوکس را به صورت کاملا حرفه ای و بدون محیط گرافیکی، مدیریت کنید. اگر سرور مجازی لینوکس خریداری کردید، باید این را بدانید که چه مدیر سرور باشید و چه یک فرد مبتدی در استفاده از سرور، نیاز است که با نحوه ایجاد پوشه یا دایرکتوری در لینوکس آشنا باشید.
اگر شما از یک رابط گرافیکی استفاده کنید، به راحتی و مانند ویندوز و مک می توانید دایرکتوری در لینوکس ایجاد کنید، اما گاها نیاز به استفاده از دستورات خط فرمان یا Command-line برای ایجاد دایرکتوری داریم.
راهکارهای مختلفی برای ایجاد کردن دایرکتوری در لینوکس وجود دارد که ما می خواهیم این کار را به کمک دستور mkdir انجام دهیم. پس اگر سرور مجازی لینوکس خودتان را به تازگی خریده اید و می خواهید در آن دایرکتوری ایجاد کنید، توصیه می کنیم تا آخر این مقاله همراه ما باشید تا به صورت کامل با این فرایند آشنا شوید.
دستور mkdir [Make Directory Command] در لینوکس
برای ایجاد دایرکتوری در سیستم های لینوکسی باید ازخط فرمان و File manager کمک بگیرید و به منظور ایجاد فولدر و دایرکتوری منفرد یا چندگانه در لینوکس از دستور و اسکریپتی به نام mkdir استفاده کنید. دستور mkdir لینوکس که مخفف عبارت make directory است، ابزار مفیدی برای این کار است؛ با استفاده از این دستور می توان یک دایرکتوری جدیدتعریف کرد و اگر یک دایرکتوری قبلا در همان مسیری که تعیین کردید با همان نام وجود داشته باشد، با اروری مواجه خواهید شد مبنی بر این که چنین دایرکتوری ای از قبل وجود دارد.
دستور «mkdir» همچنین به شما این امکان را می دهد که با یک دستور چندین دایرکتوری ایجاد کنید، به تنظیم مجوزها بپردازید و بسیاری از عملیات دیگر را انجام دهید.
پیش نیاز های اجرای دستور mkdir
برای اجرای دستور mkdir به موارد زیر نیاز خواهید داشت:
- سیستم عامل لینوکس یا یونیکس (شما می توانید با خرید سرور مجازی لینوکس (Linux VPS)، به راحتی یک سرور با سیستم عامل لینوکس داشته باشید و کارتان را پیش ببرید.)
- دسترسی به ترمینال خط فرمان (جهت اجرای دستور)
- دسترسی لازم کاربر برای ایجاد دایرکتوری
نحوه استفاده از Linux mkdir Command Syntax
Syntax مورد نیاز برای اجرای دستور mkdir به شرح زیر است:
mkdir [option] dir_name
هر تعداد نام دایرکتوری را می توان به عنوان آرگومان به این دستور ارسال کرد.
انتخاب گزینه های جایگزین برای دستور mkdir برای ساخت دایرکتوری
گزینه / نحو | Description |
mkdir dir_name | این دستور یک دایرکتوری جدید در پوشه فعلی ایجاد می کند. |
mkdir {dir1،dir2،dir3،dir4} | می توانید از این دستور برای ایجاد زیر شاخه های بیشتری در فهرست فعلی استفاده کنید. مراقب باشید از فاصله بین نمادها استفاده نکنید{}. |
mkdir –p dir/path/new_dir | این دستور شما را قادر می سازد تا یک ساختار دایرکتوری ایجاد کنید که شامل دایرکتوری های والد گم شده باشد (در صورت وجود) |
mkdir –m777 dir_name | با استفاده از این دستور می توانید به همه کاربران دسترسی کامل خواندن، نوشتن و اجرای یک دایرکتوری جدید را فراهم کنید. |
mkdir –v dir_name(s) | با اطلاعات ارائه شده توسط این دستور، می توانید دستور mkdir را در دایرکتوری فعلی با موفقیت اجرا کنید. |
دستورالعمل های ساخت دایرکتوری لینوکس
برای اجرای دستور mkdir، در صورتی که دسترسی برای ادمین تعریف شده باشد، به ترمینال بروید و از دسترسی لازم و مجوز های مناسب برای اجرای دستور mkdir اطمینان حاصل کنید
نکته: برای اجرای درست دستورات، به حروف بزرگ و کوچک توجه داشته باشید؛ با اشتباه تایپی و بدون توجه به بزرگی و کوچکی حروف ممکن است معنی دستورات به کلی تغییر کند.
1.انتقال نام دایرکتوری
برای ایجاد دایرکتوری جدید در لینوکس، نام دایرکتوری را به عنوان argument به دستور mkdir انتقال دهید. مثلا اگر می خواهید دایرکتوری جدید تحت عنوان Newdir ایجاد کنید، لازم است دستور زیر را اجرا کنید:
mkdir newdir
2. تایید دایرکتوری
اگر این دستور را وارد کنید، یک دایرکتوری جدید در پوشه دایرکتوری فعلی شما ساخته می شود. پس از ایجاد موفقیت آمیز دایرکتوری، باید یک خط خالی در ترمینال ببینید. دستور “ls” را می توان برای بازرسی و تایید دایرکتوری پس از ایجاد آن استفاده کرد.
ls –l
در نظر داشته باشید که اگر به همراه تعیین نام دایرکتوری که در حال ایجاد آن هستید، مسیر آن را تعیین نکنید، در دایرکتوری فعلی شما ایجاد خواهید شد.
نکته: دستور CD به شما کمک می کند تا بتوانید مسیر دایرکتوری که در حال ایجاد آن هستید را تغییر دهید.
3. ساخت دایرکتوری در مکانی دیگر
هنگام ساختن دایرکتوری جدید در جای دیگر، باید مسیر فایل مطلق یا نسبی را به دایرکتوری والد مشخص کنید. به عنوان مثال اگر بخواهید دایرکتوری جدیدی در پوشه /tmp، ایجاد کنید، دستور زیر را وارد نمایید:
mkdir /tmp/newdir
4. ایجاد یک دایرکتوری در parent directory
توجه داشته باشید، در صورتی که بخواهید دایرکتوری در فهرست والد تعریف کنید که در آن برای کاربر محدودیت هایی مشخص شود و اجازه کافی برای کاربر تعیین نکند، با خطای Permission denied مواجه می شوید:
mkdir /root/newdir
out put
mkdir: cannot create directory '/root/newdir': Permission denied
5. استفاده از گزینه -v (–verbose) برای بررسی دایرکتوری
برخی مواقع پس از اجرای دستور «mkdir» هیچ نشانه ای از ایجاد یا عدم موفقیت دایرکتوری دریافت نمی کنید. گزینه «-v» دستور «mkdir» اطلاعات مفصلی را در مورد فرآیند ایجاد دایرکتوری نمایش می دهد. گزینه -v (–verbose) به mkdir این دستور را صادر میکند که برای هر دایرکتوری جدیدی که ساخته میشود، باید پیامی ارسال شود.
نکته: پس از دریافت اطلاعات از ایجاد دایرکتوری، می توانید از دستور «ls» برای بررسی دایرکتوری تولید شده صرف نظر کنید؛ زیرا از قبل، تمام اطلاعات مورد نیاز در مورد ساخت آن را دارید.
نحوه ایجاد دایرکتوری های والدین
گزینه ی «-p:» دستور «mkdir» ایجاد دایرکتوری با زیرشاخه های متعدد و مختلف را ممکن می کند. با انتخاب این گزینه، می توانید مطمئن باشید که دایرکتوری والد گم شده به طور خودکار ایجاد می شود.
به عنوان مثال، برای ایجاد یک دایرکتوری فرعی در داخل یک دایرکتوری دیگر در لینوکس، در اینجا، مثلا اضافه کردن «dirtest2» در داخل «dirtest1»، از دستور «mkdir» با مسیر کامل، مانند روند زیر استفاده کنید:
mkdir –p Linux/dirtest1/dirtest2
پس از اجرای دستور «mkdir» با مسیر کامل، می توانید از دستور «ls» به همراه گزینه «-R» استفاده کنید تا مطمئن شوید که دایرکتوری واقعا ایجاد شده است.
ls-R
اگر گزینه «-p» را فراموش کنید، با خطایی از طرف ترمینال مواجه می شوید که می گوید دایرکتوری مشخص شده وجود ندارد.
IF: mkdir Linux/dirtest3/dirtest2
Out put
mkdir: cannot create directory ' Linux/dirtest3/dirtest2' : No such file or directory
همانطور که مشاهده می کنید، نه تنها دایرکتوری والد جدیدی ایجاد نشد، بلکه خطایی در مورد وجود نداشتن dirtest3 را دریافت کردید.
همچنین اگر دایرکتوری های والد وجود نداشته باشد، همین خطا رو به رو می شوید.
اگر دایرکتوری های والد موجود نیست، می توانید با استفاده از دستور mkdir با گزینه -p به جای ایجاد دستی آنها در زمان صرفه جویی کنید.
نکته: فقط برای ایجاد یک دایرکتوری جدید در صورتی که از قبل وجود نداشته باشد، می توان از گزینه -p استفاده کرد.
برای ایجاد دایرکتوری که از قبل موجود بوده و گزینه –p ارائه نشده باشد، خطای File exists error را دریافت خواهید کرد:
mkdir newdir
out put
mkdir: cannot create directory 'newdir': File exists
تنظیمات مجوز ها برای ایجاد دایرکتوری
با ایجاد هر دایرکتوری در سیستم لینوکس، مجوز «rwx» منحصرا به نفع کاربری که دایرکتوری را ایجاد کرده است، اعطا می شود. اگر می خواهید برای دایرکتوری ایجاد شده، مجوز خاصی را با استفاده از دستور «mkdir» داشته باشید، گزینه «-m» یا (-mode) مجوزهای دایرکتوری را برای همه کاربران تغییر می دهد. طریقه تخصیص مجوز ها همانند دستور chmod است.
برای درک بهتر مثالی تعریف می کنیم که برای دایرکتوری جدید مجوزی به عنوان «777» تنظیم می کنیم، به این معنی که فایل برای کاربری که دایرکتوری را ایجاد کرده است، در دسترس باشد و قابل اجرا، خواندن و نوشتن باشد.
mkdir -m {permissions} {dirName}
for example: mkdir -m 777 newdir
Next: ls –l
اگر تصمیم دارید به بررسی مشخصات دایرکتوری جدید و مجوز های آن بپردازید، باید به فهرست گسترده ای از دایرکتوری ها دسترسی پیدا کنید که برای انجام این کار، کافیست «ls -l» را در خط فرمان تایپ کنید.
نکته: اگر هنگام ساخت دایرکتوری جدید گزینه -m را مشخص نکنید، دایرکتور های تازه ایجاد شده متناسب با مقدار unmask با مجوز های 775 یا 755 به صورت پیش فرض مشخص می شوند.
ایجاد چندین دایرکتوری مختلف (Creating multiple directories)
از دستور «mkdir» می توان برای ایجاد جداگانه چندین دایرکتوری در یک دایرکتوری خاص استفاده کرد؛ در حالی که برای اجرای دستورات به صورت فردی باید زمان بیشتری را سپری کنید. به عبارت دیگر دستور mkdir همچنین می تواند برای راه اندازی یک ساختار دایرکتوری پیچیده با یک دستور استفاده شود. در نتیجه اگر به دنبال راه حلی هستید که زمان زیادی را در اجرای دستورات جداگانه هدر ندهید و به سرعت چندین دایرکتوری ایجاد کنید، استفاده از دستور «mkdir» بهترین گزینه است.
در دستور «mkdir» می توانید نام دایرکتور های مختلف را توسط کاما از یکدیگر جدا کنید و لیستی از دایرکتوری را به یک دایرکتوری اضافه کنید.
به عنوان مثال: نگاهی به این مورد برای ساخت چندین پوشه به طور همزمان بیندازید.
mkdir {test1،test2،test3}
نکته: نیاز نیست داخل {} بین نام های دایرکتوری فاصله بگذارید؛ با گذاشتن فاصله به نام جدیدی نیاز خواهید داشت.
مثال زیر را در نظر بگیرید:
mkdir -p Art/{ Cubism / Fauvism، Impressionism ، Realism ، Symbolism /{ Expressionism، Constructivism ، Abstract }، Romanesque /Baroque/ Rococo }
درختی که زیر می بینید، نتیجه ی دستوری است که در بالا اجرا کرده اید:
Art/
|-- Romanesque
| `-- Baroque
| `-- Rococo
|-- Realism
|-- Impressionism
|-- Cubism
| `-- Fauvism
`-- Symbolism
|-- Expressionism
|-- Abstract
`-- Constructivism
سخن آخر
در لینوکس ساخت دایرکتوری به روش ها و دستورات مختلفی ممکن است و برای مدیران سرور های لینوکس موضوع مهمی است. اگر دایرکتوری داخلی نداشتید، می توانید از گزینه های دیگری استفاده کنید و اگر قصد ایجاد دایرکتوری به صورت بازگشتی داشتید می توانید از گزینه «-P» استفاده کنید.
در این مقاله تمام آنچه که باید در مورد دستور mkdir برای ایجاد دایرکتوری و پوشه در لینوکس بدانید را آموزش دادیم. شما می توانید از دستور mkdir به همراه گزینه های مختلفی که ارائه می دهد برای موارد مختلف در ایجاد دایرکتوری بهره مند شوید. تنها کافیست به بزرگی و کوچکی حروف هنگام وارد کردن دستورات در خط فرمان دقت داشته باشید؛ زیرا هر اشتباه وارده در دستورات، منجر به دریافت پیام خطا می شود.
امیدواریم این مقاله آموزشی به طور کامل شما را در فرایند ایجاد دایرکتوری در لینوکس با دستور mkdir راهنمایی کرده باشد. هرگونه سوالی در این حوزه داشتید با ما در بخش نظرات به اشتراک بگذارید.
سوالات متداول:
برای تنظیم مجوزها از چه گزینه هایی استفاده می شود؟
برای اینکه بتوانید مجوزها را تنظیم کنید، باید از گزینه -m(-mod) استفاده کنید.