این آزمون مفاهیم دو درس «مرور سریع لینوکس برای داکر» و «WSL2 برای کاربرهای ویندوز» را میسنجد. هر سؤال را که جواب بدهی، بلافاصله جواب درست و توضیحش را میبینی. نتیجهات در همین مرورگر ذخیره میشود و در صفحهی پیشرفت من دیده میشود.
خروجی ls -l یک فایل با «-rwxr-xr-x» شروع میشود. گروه چه دسترسیای دارد؟
سه نویسهی وسط (r-x) مربوط به گروه است: خواندن و اجرا، بدون نوشتن.
chmod 640 file چه دسترسیای میدهد؟
6 = rw- برای مالک، 4 = r-- برای گروه، 0 = --- برای بقیه.
چرا ls بدون گزینه فایل .gitignore را نشان نمیدهد؟
گزینهی -a (all) فایلهای مخفی را هم فهرست میکند.
کدام دستور بدون ترس از اشتباه به پوشهی قبلی برمیگردد و مسیرش را هم چاپ میکند؟
cd - به پوشهی قبلی میرود (مثل دکمهی Back).
خطای «Address already in use» بیشتر یعنی…
هر پورت را فقط یک پروسه میتواند بگیرد. با ss -tulpn پیدا کن چه کسی آن را دارد.
WSL 2 چه فرقی با WSL 1 دارد که داکر را ممکن میکند؟
کانتینرها به هستهی لینوکس نیاز دارند و WSL 2 همین هسته را فراهم میکند.
پروژهی داکر را برای بیشترین سرعت کجا نگه دار؟
ابزارهای داکر داخل لینوکساند و رد شدن از مرز دو فایلسیستم کند است.
کدام دستور در PowerShell نشان میدهد توزیعهای WSL با کدام نسخه کار میکنند؟
wsl -l -v (یعنی --list --verbose) نام، وضعیت و نسخه را نشان میدهد.
داخل پوشهی home یک پروژهی shop با زیرپوشههای src، config و scripts بساز. سپس:
۱. فایل config/app.env را بساز و طوری دسترسی بده که فقط خودت بتوانی بخوانی و بنویسی.
۲. اسکریپت scripts/health.sh را بنویس که با ss -tulpn پورتهای listen را چاپ کند، و آن را اجرایی کن.
۳. یک سرور Python روی پورت 8000 در پسزمینه بالا بیاور، health.sh را اجرا کن و ثابت کن پورت ۸۰۰۰ در خروجی هست.
۴. PID سرور را از همان خروجی بیرون بکش (نه حدسی) و آن را ببند.
راهنمایی
برای دسترسی 600، برای اجرایی کردن chmod +x و برای بیرون کشیدن PID از sed یا awk کمک بگیر.
راهحل
mkdir -p ~/shop/{src,config,scripts} && cd ~/shoptouch config/app.env && chmod 600 config/app.envprintf '#!/bin/bash\nss -tulpn\n' > scripts/health.sh && chmod +x scripts/health.shpython3 -m http.server 8000 > /dev/null 2>&1 &sleep 2./scripts/health.sh | grep 8000pid=$(./scripts/health.sh | grep ':8000' | sed -E 's/.*pid=([0-9]+).*/\1/')kill "$pid"; sleep 1./scripts/health.sh | grep -c 8000ls -l config/app.env scripts/health.shtcp LISTEN 0 5 0.0.0.0:8000 0.0.0.0:* users:(("python3",pid=7086,fd=3))0-rw------- 1 ali ali 0 Oct 3 10:31 config/app.env-rwxr-xr-x 1 ali ali 22 Oct 3 10:31 scripts/health.sh