آشنایی با سیستم عامل UNIX
تاریخچه :
UNIX نام سیستم عاملی است که اولین بار توسط یک گروه تحقیقاتی در آزمایشگاههای Bell متعلق به شرکت AT&T طراحی و ایجاد گردید.این سیستم عامل ابتدا بر روی چندین مینی کامپیوتر ساخت شرکت DEC نصب شده و بتدریج با توسعه آن بر روی دیگر کامپیوترها عرضه و ارائه گردید.
چگونگی تولد و رشد سیستم عامل unix با دیگر سیستم های عامل متفاوت است.ورود این سیستم عامل به دنیای تکنولوژی از سمت دنیای تجارت نبوده و این خود دلیلی است برای همه گیر شدنش.
این سیستم عامل که توسط کن تامپسون در سال ١٩۶۹طراحی شد، گروههای برنامه نویسان را در توسعه برنامه ها حمایت می کرد و در جهت ساده تر کردن نحوه ارتباط (dialogue) بین انسان و ماشین می کوشید.
البته این سیسنم عامل یکباره نوشته نشد، بلکه در پاسخ به نیازهای برنامه نویسی در پروژه های خاص بتدریج تکامل یافت و تا به امروز نیز به این سیر تکاملی ادامه داده است.
در این بخش خلاصه ای از این سیر تکاملی را می بینیم.
۱۹۶۹در آزمایشگاه AT&T کن تامپسون بخاطر مسائل کامپیوتر ها و منابعی که در دست داشت.
پروژه Multics را متوقف کرد و کار روی ماشین PDP-7 را شروع کرد و برای این ماشین یک فایل سیستم، یک مفسر فرمان و چند برنامه مفید دیگر طراحی نمود.
۱۹۶۹کن تامپسون و دنیس ریچی زبان B را طراحی کرده و unix را به این زبان دوباره نویسی کردند.
و روی ماشین PDP-11 آزمایش نمودند.
۱۹۶۹کن تامپسون و دنیس ریچی زبان B را طراحی کرده و unix را به این زبان دوباره نویسی کردند.
۱۹۷۳دنیس ریچی زبان B را دوباره نویسی کرده و آن را زبان C نامید و unix را دوباره به این زبان نوشت.
۱۹۷۵ نسخه ۶از unix بعنوان اولین نسخه قابل ارائه در دسترس عموم قرار گرفت.
۱۹۷۸ نسخه هفتم unix نوشته شد.
۱۹۸۰ در دانشگاه برکلی کالیفورنیا فعالیت زیادی روی unix انجام و برنامه های مفید فراوانی برای این سیستم عامل تهیه شد.
بخصوص نرم افزار مربوط به شبکه در این دانشگاه نوشته شد.
نسخه هایی از unix که در این دانشگاه نوشته شدند، نام BSD گرفتند.
از جمله امکانات این نسخه، termcap,csh,vi را می توان نام برد.
۱۹۸۱ اتحادیه جهانی /user/group تشکیل و کمپانی SCO با همکاری شرکت مایکروسافت نسخه xenix را تولید کرد.
۱۹۸۲ سیستم سوم از نسخه unix نوشته شد (کندترین نسخه unix) ۱٩۸۳ سیستم ۵(system 5) نوشته شد که ۳۰درصد از نسخه قبلی سریعتر است.
١٩۸۵ سیستم 5.2 نوشته شد.
(System 5 Relase 2) ۱۹۸۶ سیستم 5.3 نوشته شد.
(S5R3) ۱۹۸۷ سیستم 5.4 نوشته شد.
(S5R4) اسامی نسخه های مختلف unix عبارتند از: BSD – نسخه های نوشته شده در دانشگاه برکلی که بیشتر در زمینه های علمی و مهندسی نوشته شده اند.
Xenix – نسخه نوشته شده در کمپانی SCO که روی کامپیوترهای شخصی و سیستم های desletop قابل پیاده شدن است.
Unix system 5 – نسخه هایی از unix که در زمینه های اداری و مالی و تجاری نوشته شده و روی ماشین های متوسط تا کامپیوترهای بزرگ قابل پیاده شدن است.
SunOs – نسخه هایی از unix که روی ماشین های Sun پیاده می شوند دارای محیط های گرافیکی و شبکه NFs است.
S5R4 – این نسخه از unix جدیدترین و آخرین نسخه unix نوشته شده توسط AT&T است و روی بیشتر ماشین ها قابل ارائه است و بعنوان unix استاندارد شناخته شده است.
این نسخه در جهت تکمیل و تصحیح نسخه قبلی نوشته شده است.
بغیر از رفع مسائلی که استفاده کنندگان unix احساس می کردند، این نسخه آسانتر، سریعتر و بهتر تز نسخه قبلی عمل می نماید.
آشنایی با سیستم عامل در یک تعریف ساده می توان گفت که سیستم عامل برنامه ای است که سخت افزار را کنترل می کند.
یک سیستم عامل برنامه ای است که سهولت استفاده از کامپیوتر و نتایج آن را برای کاربران فراهم می سازد.
پایه ای ترین وظیفه یک سیستم عامل مدیریت منابع (Resources) سیستم است.مهمترین منابعی که یک سیستم عامل مدیریت می کند عبارتند از: پردازشگر cpu حافظه اصلی حافظه جانبی دستگاه های ورودی و خروجی (I/O) داده ها (Data) تعریف رابط کاربری (محیطی که کاربران از طریق آن با سیستم ارتباط برقرار می کنند) امکان اشتراک داده ها بین کاربران مختلف مدیریت ورودی و خروجی زمانبندی منابع بین کاربران مختلف بازیابی سیستم پس از بروز خطا ویژگی های سیستم عامل unix ۱- multiprogramming : چند برنامه در آن واحد روی primary storage ،Resident شده اند و پروسسور بین آنها switch می کند.
علت موفقیت این مشخصه، بعنوان وسیله ای درافزایش بازدهی سیستم، تفاوت در سرعت دستگاههای ورودی و خروجی، پروسسور مرکزی است.
وقتی برنامه ای تقاضای I/O می کند در حالت single user پروسسور به حالت idle در می آید.
شاید در یک بار صبر کردن تا ۵۰۰۰۰سیکل پروسسور wait انجام شود.
استفاده از چنین زمانی برای انجام برنامه ای دیگر توسط پردازنده مرکزی کارایی سیستم را افزایش می دهد.
۲ – Time sharing : در این روش پردازنده مرکزی جسمی است که توسط تمام کاربران و پروسس ها، استفاده می شود.
به این ترتیب که زمان cpu بین پروسس های مختلف سیستم و کاربران تقسیم می شود و به هر یک کسری از زمان cpu تعلق می گیرد.
۳ – Multi user : در صورتیکه در هر لحظه بیش از یک کاربر بتواند از سیستم استفاده کند سیستم multi user یا چند کاربره نامیده می شود.
۴ – Multi Tasking : امکان اجرای برنامه به صورت fore ground و back ground ۵ – دارا بودن file system بصورت سلسله مراتبی و تامین protection برای داده های سیستم ۶ – Generality : بدین معنا که سک روش واحد بتواند اهداف چند گانه ای را برآورده کند که این امر از دو طریق حاصل شده است: الف – وجود system callهای یکسان برای خواندن و نوشتن روی فایل ها و deviceها و بافرهای موجود بین پروسس ها ب – نامگذاری و protection یکسان برای فایل های داده، Directory ها و Device ها ۷ – قابلیت حمل (Transportability) : سیستم عامل unix به آسانی قابل حمل است.
برای یک سیستم جدید، با دستکاری اندک بر روی کدهای سیستم عامل unix می توان آن را جهت نصب آماده نمود.
توانایی حمل سیستم عامل unix از یک نوع کامپیوتر به کامپیوتر دیگر دلیل اصلی موفقیت آن می باشد.
ساختار سیستم عامل unix سیستم عامل unix شامل چهار بخش اصلی زیر است: 1)kernel 2)file system 3)shell 4)commands ۱- kernel : که در قلب سیستم عامل قرار دارد و سخت افزار را کنترل می کند.
تمام سیستم عامل ها یک kernel دارند و بر اساس فرامین مختلف قسمتهایی از سیستم کامپیوتری را فعال یا غیر فعال می سازد.
در سیستم عامل unix سعی بر این بوده است که kernel وظایف کمتری را انجام دهد.
بطوریکه اغلب وظایف سیستم عامل توسط برنامه های سودمند انجام می شود.
در سیستم عامل unix هر پروسس یک برنامه در حال اجرا می باشد.
وظایف kernel عبارتند از: زمانبندی پروسس ها اختصاص حافظه اصلی مدیریت فضای دیسک نظارت بر انتقال داده ها مابین حافظه اصلی و دستگاههای جانبی اختیار دادن به تقاضاها مابین حافظه اصلی و دستگاههای جانبی پروسس ها دو حالت دارند: user mode kernel mode در user mode پروسس های user در cpu اجرا شده و به داده های کاربر دسترسی دارند و در حالت kernel پردازنده پروسس های سیستم را اجرا کرده و به داده های سیستم دسترسی دارد.
پروسس های سیستم دارای اولویت بالاتری نسبت به پروسس های کاربران هستند و سریعتر از کاربران، cpu را در اختیار می گیرند.
پروسس های کاربران بر اساس زمان لازم جهت اجرا طبقه بندی می شوند.
تخصیص حافظه های اصلی و فرعی همانطور که قبلا ذکر شد در هر لحظه مقداری پروسس در حالت اجرا در حافظه اصلی قرار دارند و فقط یکی از آن ها پردازنده یا cpu را برای اجرا در اختیار دارد.
پروسس هایی که برای اجرا آماده هستند (Ready) در حافظه فرعی قرار دارند.
اگر یکی از پرویی هایی که روی حافظه فرعی قرار دارد دارای اولویت بالاتری نسبت به پروسس های موجود در حافظه اصلی باشد باید به حافظه اصلی منتقل شود و پردازنده را در اختیار بگیرد.
برای انتقال یک پروسس به حافظه اصلی ابتدا فضای آزاد موجود در حافظه اصلی چک شده و در صورتیکه به اندازه کافی بزرگ نباشد (به اندازه مورد نیاز پروسس) باید یکی از پروسس های موجود در حافظه اصلی به حافظه فرعی منتقل گردد.
(swap out) برای انجام این کار پروسس هایی که زمان بیشتری در حافظه اصلی بوده اند، دارای اولویت بالاتری برای انتقال به حافظه فرعی یا swap out می باشند.
اختصاص حافظه به پروسس ها از وظایف kernel بوده و عمل انتقال پروسس ها از حافظه فرعی به اصلی و بالعکس را swapping می گویند.
حافظه فرعی اصطلاحا یک swap device نامیده شده و در صورتیکه در زمان انتقال، تمام پروسس های موجود در حافظه اصلی به این device منتقل گردد، سیستم عامل یک swapping system و در صورتیکه فقط صفحه ای (یک page) ازروسس ها به این device منتقل گردد، سیستم عامل یک paging system نامیده می شود.
کنترل دستیابی به دستگاههای جانبی در سیستم عامل unix به ازاء هر دستکاه جانبی سخت افزاری مانند ترمینال، چاپگر، دیسکت و ...
یک برنامه نرم افزاری (device driver) وجود دارد که ویژگیهای آن را به سیستم معرفی می کند.
Device driver ها از اجزاء kernel می باشند.
برنامه معرفی هر دستگاه جدید به سیستم عامل ابتدا باید device driver آن تهیه شده و سپس این برنامه به kernel ملحق (link) شده و kernel جدید ایجاد شود.
کنترل هر دستگاه از طریق device driver متناظر و به یکی از دو شیوه زیر انجام می پذیرد: 1- (structured I/O) Block device I/O system برای دستگاههایی مانند دیسک سخت و فلاپی 2- (unstructured I/O) character or raw device I/O system برای دستگاههایی مانند ترمینال یا چاپگرهای خطی اگر دسترسی به اطلاطات دستگاه جانبی بصورت بلوک به بلوک باشد دستگاه block device نامیده می شود مانند دیسک و نوار.
اینگونه دستگاهها برای انتقال اطلاعات به سیستم اصلی از مکانیزم buffering استفاده می کنند.
اگر انتقال اطلاعات مابین دستگاه جانبی و سیستم اصلی بدون استفاده از buffering و حرف به حرف صورت گیرد دستگاه character device نامیده می شود.
هر دستگاه جانبی یک نام مانند نام یک فایل داشته و مانند یک فایل با آن برخورد می شود.
نوع این فایل (دستگاه جانبی) با دیگر فایل های درون سیستم متفاوت بوده و آن را device special file می نامند.
نوع فراخوانی های سیستم (system calls) نظیر write، read، close و open که در مورد فایل های عادی بکار برده می شود، به همان شکل برای special file ها نیز قابل استفاده هستند.
۲- فایل سیستم (file system) : فایل سیستم ساختمانی برای ذخیره و بازیابی اطلاعات ارائه می دهد.
هر فایل سیستم دیسک را به چهار منطقه تقسیم می کند: a- boot block b- super block c- ilist d- data a- boot block : اولین بلاک حافظه جانبی برای استفاده سیستم رزرو می شود که حاوی اطلاعات لازم جهت راه اندازی سیستم می باشد.
این بلاک به نام boot block شناخته شده است.
b- super block : بلاک یک را super block می نامند.
این بلاک شامل مجموعه اطلاعاتی است که وضعیت ایل سیستم را مشخص می کند.
این اطلاعات عبارتند از : - سایز فایل سیستم - تعداد inode های موجود - آدرس اولین بلاک حاوی اطلاعات - تعداد کل بلاکهای موجود - تعداد بلاکهای آزاد تعداد inode های آزاد زمان آخرین update فایل سیستم Device های فایل سیستم c- ilist : این ناحیه شامل یک لیست پیوندی از inode ها می باشد.
inode ساختاری به طول ۶۴ بایت می باشد و شماره آن از ۱ آغاز می شود و حاوی اطلاعات زیر می باشد: - شماره user فایل (uid) - شماره گروه فایل (gid) - آدرس فیزیکی محتوای فایل روی دیسک - سایز فایل - زمان ایجاد فایل - نوع فایل - زمان آخرین دستیابی به فایل - زمان آخرین تغییر روی فایل - protection های فایل (مجوزهای کاربر، گروه و دیگران) - تعداد لینکهای فایل Inode شماره ۱ برای سیستم رزرو شده است و inode شماره ۲ مربوط به فهرست ریشه می باشد.
d- Data : فضای آزاد باقی مانده روی دیسک بصورت یک link list از بلوکهای در دسترس دیسک نگهداری می شوند.
سیستم عامل unix حداقل یک فایل سیستم روی هارد دیسک اولیه دارد.
این فایل سیستم root نام دارد و با علامت / مشخص می شود.
فایل سیستم root شامل برنامه ها و دایرکتوری هایی است که توسط سیستم عامل ایجاد می شود.
مسیرهای معمول در unix عبارتند از: / : نام دایرکتوری root است /bin : شامل اکثر دستورالعمل های مورد استفاده می باشد /dev : شامل فایلهای ویژه (special device file) می باشد /dev/console : فایلهای مربوط به console /dev/tty : اطلاعات مربوط به ترمینال های سیستم در آن نگهداری می شود /temp : محلی برای نگهداری فایل های موقت /etc : شامل برنامه های کاربردی می باشد /home : حاوی فهرست های مربوط به کاربران است /mnt : برای فایل سیستم ها به فهرست root مورد استفاده قرار می گیرد هارد دیسک اولیه می تواند به بیش از یک فایل سیستم تقسیم شود.
یکی از معمول ترین تقسیمات فایل سسیستم استفاده کننده ها از /u است که توسط آن حساب کاربران از فایل سیستم ریشه (/) اجرا می شود.فایل سیستم های جدید می تواند توسط مدیریت سیستم ایجاد و هر گاه مورد نیاز بود mount یا unmount شود.
نگهداری اطلاعات در فایل سیستم از وظایف سیستم عامل است.
از دست دادن اطلاعات اتفاق نادری است زیرا فایل سیستم در برابر تخریب اطلاعات بسیار مقاوم است.
سیستم عامل unix از برنامه (file system check) fsck برای تعمیر فایل سیستم خراب شده استفاده می کند.fsck در هنگام بوت، بطور اتوماتیک فایل سیستم root را چک می کند و پیامهایی که می فرستد بصورت زبر است: Phase 1- check block and sizes Phase 2- pathnames Phase 3- connectivity Phase 4- reference counts Phase 5- check free list هنگامی که سیستم بطور غیر معمول terminate شده باشد، fsck برای تمیز کردن فایل سیستم از مدیر سئوال می کند و در صورت تایید او، فایل سیستم تمیز می گردد.
۳- shell : بین سیستم عامل و استفاده کننده قرار می گیرد و ارتباط دهنده این دو می باشد.
وظیفه shell خواندن دستورات وارده و تفسیر آن بعنوان درخواستی جهت اجرای برنامه، دسترسی به فایل ها یا ایجاد خروجی است.
Shell همچنین دارای زبان برنامه نویسی قدرتمندی با قابلیت کنترل جریان اجرای برنامه ها (حتی بصورت شرطی) است.
Shellهای رایج در سیستم عامل unix عبارتند از: rshell، jshell، kshell، cshell و shell استاندارد ۴- commands : دستورها (commands) اسامی برنامه هایی هستند که استفاده کننده تقاضای اجرای آنها را از کامپیوتر می نماید.
شکل کلی دستورات unix بصورت زیر است: Command [-options] [arguments] [file names] مثال : ls -rl /home نکته : - اضافه کردن .
به انتهای نام فایل، آن را مخفی می نماید با اضافه کردن ; به انتهای یک دستور می توان چند دستور را در یک خط فرمان اجرا کرد.
مثال: Data;who;ls دریافت دستورها در Unix : به منظور استفاده از امکانات سیستم، از یک shell استفاده می شود.
Shell در واقع یک برنامه است که دستورات ورودی کاربر را گرفته و آنها را اجرا می نماید.
در سیستم MS-DOS این کار توسط برنامه command.com انجام می شود.
از مهم ترین انواع shell در Unix می توان به BASH، CSH و TCSH و همچنین X Window که امکان استفاده تؤام ماوس و صفحه کلید را می دهد نام برد.
شروع و پایان کاربرد : یک کامپیوتر با سیستم Unix در یک مرکز کامپیوتر همواره روشن نگاه داشته می شود و شروع استفاده هر کاربر از آن با وارد کردن نام و رمز عبور صورت می گیرد.
و هر کاربر برای پایان دادن به کار خود تنها دستورات logout یا exit و یا Ctel+d را وارد کرده و فقط مانیتور را خاموش می کند.
از reset نمودن یا خاموش کردن یک کامپیوتر یونیکس، که مورد استفاده کاربران دیگری قرار می گیرد اکیدا" پرهیز نماید، زیرا در هر لحظه کاربران دیگری نیز از کامپیوتر یونیکسی که ظاهرا" تنها کاربر آن برروی کنسول، شما هستند، از راه دور در حال استفاده می باشند و یا در پیش زمینه دارای برنامه های در حال اجرا هستند.
حساس به بزرگی و کوچکی حروف : در یونیکس کلیه دستورات تنها با حروف کوچک پذیرفته می شوند و نام فایل ها و دایرکتوری ها دقیقا" باید به همان صورت تعریف شده مورد استفاده قرار گیرند.
به عبارت دیگر سیستم عامل یونیکس نسبت به حروف کوچک و بزرگ حساس است.
آرگومان ها و سوییچ های دستورات : در سیستم یونیکس، آرماگون ها یا سوییچ های یک دستور نمی تواند بلافاصله بعد از آن قرار گیرد و یک فضای خالی برای دستور و دیگر اجزا لازم می باشد.
به طور مثال در دستور cd..
بین دستور cd و ..
نیاز به یک فاصله خالی است.
ضمن این که در یونیکس سوییچ ها پس از کاراکتر «-» قرار می گیرند.
لازم به ذکر است که برای استفاده از چند سوییچ به همراه یک دستور می توان به جای قراردادن «-» قبل از هر سوییچ یک بار آن را نوشته و هر تعداد سوییچ را در ادامه بیاوریم.
قواعد نامگذاری فایل ها : در یونیکس پسوند آنگونه که در MS-DOS تعریف می شود معنی ندارد و طول نام فایل و یا دایرکتوری می تواند حداکثر تا 255 کاراکتر باشد.
فرآیند پیش زمینه : فرآیند پیش زمینه یا background process قابلیتی در یونیکس است که اجازه می دهد برنامه ای به اجرای خود حتی پس از خروج از کامپیوتر (logout) ادامه دهد.
سطوح دسترسی و علائم آن : در سیستم یونیکس حداقل سه سطح دسترسی وجود دارد که عبارتند از : ۱- دسترسی صاحب فایل ۲- دسترسی گروه تعریف شده ای که صاحب فایل در آن گروه قرار دارد ۳- دسترسی کلیه افرادی که بر روی آن کامپیوتر دارای حساب می باشند.
به طور مثال به بررسی سطوح دسترسی در فایل زیر می پردازیم : -rwxr-xr-- 1 ece www 236 Dec 6 11 : 18 mbox همان طور که مشاهده می گردد در ابتدای خط ۱۰علامت وجود دارد که اولی نشان دهنده دایرکتوری، link یا فایل بودن است (در اینجا یا فایل داریم) و ٩تای دیگر، در دسته های سه تایی به ترتیب مشخص کننده حقوق دسترسی کاربر، گروهی که کاربر در آن تعریف شده و دیگر کاربرانی که روی این کامپیوتر حساب دارندمی باشد.
در ادامه از چپ به راست عدد 1 تعداد فایل هایی که دارای محتوای کاملا" یکسان در هر لحظه با این فایل هستند و یا اصطلاحا"hard link شده اند را نشان می دهد، ece نام کاربر صاحب فایل و www نام گروهی است که کاربر حقوق دسترسی گروه را به افراد تعریف شده در آن می تواند اختصاص دهد، بیان می کند.
۲۳۶حجم فایل برحسب بایت است.
نهایتا" زمان آخرین تغییرات محتوای این فایل، که نام آن mbox می باشد، ۶دسامبر در ساعت ۱۱و ۱۸دقیقه بوده است.
شناخت گروه ها و کاربران : اطلاعات کلیه گروه ها و کاربران به ترتیب در فایل های group و passwd در داخل دایرکتوری /etc قرار دارد.
تغییر گروه فایل (chgrp) : New _group file _name (s) Chgrp -r جهت تغییر گروه فایل از دستور chgrp استفاده می نماییم.
لازم به ذکر است که تنها به شرط آن که عضو گروه مربوط باشید می توانید گروه فایل های خود را به آن گروه تغییر دهید.
تغییر صاحب فایل (chown) : Chown -r new_owner .new_group file_name(s) دستور chown به منظور تغییر صاحب فایل به کار می رود.
خاطر نشان می کنیم که تنها سرپرست سیستم (کاربر root) می تواند این دستور را انجام دهد.
تغییر علائم دسترسی فایل (chmod) : همان طور که گفته شد در یونیکس سه سطح دسترسی داریم.
با به کارگیری این دستور می توان دسترسی های هر کدام از سه دسته را تغییر داد.
برای این کار می توان از دو روش زیر استفاده نمود : ۱- شیوه کاراکتری : دراین شیوه شکل کلی زیر قابل استفاده است : Chmod who opration permission file_name که در آن آرگومان who با یکی از حروف زیر جایگزین می شود : و آرگومان operation یا عملیات از لیست زیر انتخاب می شود : ۲- شیوه عددی : روش دیگر براساس عددی است که با هر اجازه دستیابی متناظر است : با جایگزین نمودن آرماگون های تغییر chmod با عدد سه رقمی که ارقام آن از چپ به راست مربوط به صاحب فایل، گروه و عموم هستند و هر رقم حاصل جمع عدد متناظر با اجاره هایی که به آن دسته داده ایم، عمل دستیابی صورت می پذیرد.
چند علامت در تعیین محل فایل و دایرکتوری ها : برای انجام عملیاتی در مسیر جاری از علامت «-» استفاده می شود.
برای انجام عملیاتی برای دایرکتوری قبلی از علامت «..» استفاده می گردد.
برای مثال برای انتقال اطلاعات از روی فلاپی بر روی مسیر جاری می نویسیم : mv a:* .
و یا برای گرفتن لیست از دایرکتوری قبلی می توان از دستور زیر استفاده کرد : 1s ..
صفحات راهنمای یونیکس : جهت استفاده از راهنمای یونیکس در مورد یک دستور خاص از دستور زیر استفاده کنید.
حرکت بین صفحات راهنما به وسیله spacebar و b و خروج از راهنما با استفاده از کلید q امکانپذیر است.
نام دستور man همچنین برای نمایش خلاصه ای از نحوه به کارگیری یک دستور خاص می توانیم به شکل زیر عمل کنیم : -help نام دستور تغییر رمز عبور : برای تغییر رمز عبور از دستور passwd استفاده می شود.
دستور cd : از این دستور به منظور وارد شدن به یک مسیر خاص و یا خروج از همه زیرشاخه ها و یا آخرین زیرشاخه به شکل های زیر استفاده می شود : دستور 1s : از این دستور جهت تهیه لیستی از فایل ها و دایرکتوری ها استفاده می گردد.
برخی از سوییچ هایی که همراه این دستور کار می روند عبارتند از : f : اطلاعات در مورد نوع فایل می دهد.
به این ترتیب که در انتهای دایرکتوری ها/، در انتهای فایل های اجرایی * و در انتهای لینک ها @ قرار می دهد.
1 : یک فهرست طولانی شامل اندازه فایل، صاحب آن، نوع دسترسی و ...
تولید می کند.
a : تمام فایل ها،از جمله فایل های مخفی را نشان می دهد.
(نام فایل هایی مخفی با "." شروع می شود.
c : نام فایل ها را به صورت ستونی مرتب می کند.
x : نام فایل ها را به صورت سطری مرتب می کند.
t : فایل ها را براساس تاریخ آخرین تغییر مرتب می کند.
u : فایل ها را براساس تاریخ آخرین دسترسی مرتب می نماید.
دستور cp : از این دستور جهت کپی کردن فایل ها و دایرکتوری ها از یک مسیر در مسیر دیگر استفاده می شود : مسیر مقصد میسر مبدأ cp مسیر مقصد این دستور با علامت نقطه cp a:tkol0627.180 .
: مثال بدین معناست که در همین مسیر جاری کپی می گردد.
اگر سوییچ i به همراه این دستور مورد استفاده قرار گیرد قبل از انجام هر عمل کپی باید این عمل توسط کاربر تأیید شود و در صورت استفاده از سوییچ r همراه با این دستور تمام فایل ها و زیرشاخه های موجود در شاخه مبدأ در مقصد کپی می شوند.
دستور mv : فایل ها و دایرکتوری ها را از یک مسیر به مسیر دیگری منتقل می کند، همچنین برای تغییر نام یک فایل از این دستور استفاده می شود.
مسیر مقصد مسیر مبدأ mv این دستور جهت تغییر نام فایل Mv trans75.233 transw.txt : مثال استفاده می گردد.
دستور rm : جهت حذف فایل ها و دایرکتوری ها از این دستور استفاده می شود.
لازم به ذکر است که برای حذف دایرکتوری خالی باید از دستور rmdir استفاده نمود.
این نکته را نیز در نظر داشته باشید که دایرکتوری جاری را نمی توان حذف کرد.
سوییچ های پرکاربردی که همراه این دستور به کار می روند عبارتند از : i : قبل از حذف فایل یا دایرکتوری از کاربر تأیید می گیرد.
r : تمام فایل ها و دایرکتوری موجود در شاخه انتخابی را حذف می کند.
f : در صورتی که دستور rm طوری تعریف شده باشد که همواره باید برای استفاده از آن توسط کاربر عمل حذف، تأیید می گردد، این سوییچ آن را خنثی می کند.
مسیر و نام فایل یا دایرکتوری rm دستور more و less : محتویات فایل ها را به صورت صفحه به صفحه نمایش می دهد.
با کلیدهای spacebar و b به ترتیب یک صفحه به جلو با یک صفحه به عقب می رویم و برای قطع نمایش محتوای فایل از کلید q استفاده می کنیم.
مسیر و نام فایل more دستور less مشابه دستور more است با این تفاوت که امکان استفاده از کلیدهای جهت نما را جهت حرکت خط به خط در محتوای فایل می دهد.
دستور cat : از این دستور جهت نمایش محتویات یک فایل، ایجاد فایل و یا سر هم ساختن چند فایل استفاده می شود.
۱- این دستور محتوای فایل را روی صفحه نمایش نشان می دهد.
مسیر و نام فایل cat ۲- این دستور جهت ساخت فایل جدیدی مورد استفاده قرار می گیرد.
پس از اینتر کردن این دستور، سیستم منتظر ورود اطلاعات (محتویات) فایل می ماند.
در پایان وارد کردن اطلاعات جهت ذخیره فایل باید کلید crr1+d را بزنید.
مسیر و نام فایل cat ۳- جهت ادغام محتویات دو فایل با هم از دستور زیر استفغاده می کنیم.
نام فایل جدید (فایل ادغامی) نام فایل دوم نام فایل اول cat دستور grep : با استفاده از این دستور می توان یک عبارت یا جمله را در محتویات یک یا چند فایل مورد جستجو قرار داد.
قابل ذکر است در صورتی که بخواهید عمل جستجو بدون در نظرگرفتن کوچک یا بزرگ بودن حروف انجام گیرد این دستور را با سوییچ i به کار ببرید.
نام فایل های مورد جستجو، عبارت مورد جستجو، grep -i دستور pwd : از این دستور جهت نمایش مسیر جاری (دایرکتوری فعال) استفاده می شود.
دستور chfn و finger : از دستور chfn برای تغییر اطلاعات کاربر، از قبیل نام و نام خانوادگی، شماره تلفن و ساعت حضور در محل کار و ...
استفاده می شود.
این اطلاعات با اجرای دستور finger توسط کاربران دیگر کاربران قابل مشاهده می باشد.
finger -1 username@hostame دستور who و rwho : دستور who ویا معادل آن دستور w کاربرانی که برروی سیستم وارد شده و در حال استفاده از منابع هستند را نمایش می دهد.
برای نمایش کاربران فعال در دیگر میزبان های مرتبط، از دستور rwho استفاده می شود.
دستور last لیستی از آخرین کاربرانی که از سیستم استفاده کرده اند را نمایش می دهد.
دراین دستور number تعداد کاربرانی که می خواهیم اطلاعات مربوط به آنها را به دست آوریم تعیین می کند.
last -number -h hostname username دستور clear : برای پاک کردن صفحه نمایش از این دستور استفاده می شود.
دستور du : این دستور فضای اشغال شده توسط یک فایل یا دایرکتوری و کلیه دایرکتوری های زیرین آن را بر حسب کیلوبایت نمایش می دهد.
البته این اطلاعات توسط دستور 1s -1 نیز به دست می آید.
نام فایل یا دایرکتوری du دستور find : از این دستور جهت جستجوی فایل ها در یک مسیر خاص استفاده می شود.
قابل ذکر است در صورتی که بخواهیم این دستور نسبت به حروف کوچک و بزرگ نام فایل نباشد از iname به جای name باید استفاده نمود.
نام فایل مورد جستجو -name مسیر جستجو find دستور In : به منم اسن دستور می توان یک hard link ایجاد کرد.
به این ترتیب می توان از یک فایل نمونه های مجزایی را ایجاد که تغییذ در محتوای هر یک باعث تغییر در سایر فایل ها نیز می گردد.
اما حذف یکی تأثیری روی سایر فایل ها ندارد.
کاربرد این دستور در زمانی است که افراد یک گروه بخواهند بر روی تهیه یک گزارش یا راهنما با یکدیگر همکاری کنند و هریک بخشی از تهیه فایل را عهده دار باشد.
نام فایل جدید نام فایل In همچنین درصورتی که کاربر به طور مکرر با یک مسیر خاص کار می کند به کمک این دستور می تواند معادل یک کلمه ای را برای یک مسیر طولانی از شاخه ها و زیرشاخه ها تعریف کند.
معادل یک کلمه ای مسیر/مسیر اصلی/In -s دستور date : برای نمایش تاریخ و زمان سیستم از این دستور استفاده نمایید.
دستور df : به کمک این دستور فایل سیستم و کل فای آزاد آن نمایش داده می شود.
این نکته قابل ذکر است که در یونیکس ابزاری به نام NFS وجود دارد که اجازه می دهد تا هارد دیسک کامپیوترهای دیگر مانند هارددیسک کامپیوتر اصلی در دسترس باشند.
ستورات 1pr m و 1pq و lpr : از دستور 1pr جهت چاپ یک فایل استفاده می شود.
معمولا" قبل از چاپ فایل اصلی در اولین برگ اطلاعات header فایل شامل نام کاربر، تعداد طفحات فایل، تاریخ و ...
چاپ می شود که برای جلوگیری از این عمل از سوییچ –h استفاده می نماییم.
جهت مطلع شدن از فایل هایی که در صف چاپگر قرار گرفته اند از دستور 1pq استفاده می کنیم.
برای لغو چاپ یک فایل که در صف قرار دارد پس از اجرای دستور 1pq و به دست آوردن id فایل مورد نظر از دستور 1prm id استفاده می نماییم.
دستور ps : با استفاده از این دستور می توان فرآیندهای در حال انجام را مشاهده نمود.
دستور rlogin : این دستور جهت ورود از راه دور به میزبانی دیگر به کار می رود.
در پاسخ این دستور میزبان طرف مقابل درخواست رمز عبور می نماید.
rlogin hostname -1 username دستور alias : از این دستور برای معادل نمودن یک عبارت با یک دستور (معمولا" طولانی) استفاده می گردد.
"عبارت جایگزین دستور" = دستور alias دستور tar : tar ابزاری است که با آن می توان از فایل ها و دایرکتوری ها نسخه پشتیبان (back up) تهیه کرد و یا چندین فایل و دایرکتوری را جهت ارسال راحت تر برروی شبکه در درون یک فایل جا داد.
tar از معدود دستوراتی است که تایپ "-" قبل از سوییچ های آن ضروری نمی باشد.
لازم به ذکر است که دستور tar هیچ گونه فشرده سازی برروی فایل انجام نمی دهد.
برخی سوییچ های پرکاربرد این دستور عبارتند از : v : وضعیت انجام کار را برروی صفحه نمایش می دهد.
f : تقریبا" در کلیه استفاده های معمول وجود این سوییچ ضروری است.
c : جهت ایجاد آرشیو به کار می رود.
x : جهت بازیابی محتویات فایل به کار می رود.
u : به منظور اعمال تغییرات انجام شده در فایل ها و دایرکتوری ها بر روی آرشیو قبلی به کار می رود.
t : نمایش درون آرشیو M : به منظور ایجاد یا بازیابی آرشیو به نحوی که برروی چندین دیسکت قابل دستیابی باشد مورد استفاده قرار می گیرد.
z : قبل از عمل tar تک تک فایل ها را با gzip فشرده می سازد.