Forwarded from Linuxor ?
خوندن متن از توی عکس OCR با جاوا اسکریپت ! میتونید توی بخش پردازش اسناد و چیزای دیگه که از سمت کاربر آپلود میشه استفادش کنید خیلی هم دقیقه.
tesseract.projectnaptha.com
@Linuxor
tesseract.projectnaptha.com
@Linuxor
Forwarded from Linuxor ?
ما برنامه نویسا تلاقی فکر داریم مثلا من فرم آپلود رو یه جور درست میکنم یهو میبینی سلیمان هم از احمدآباد مستوفی هم یه چیزی درست کرد با همون نوع کد زدن من؛ میگید نه این کد های وب رو ببنید 50 تا پروژه متفاوت وبی که خام بدون فریمورک نوشته شده از اسلایدر بگیر تا درگ و دراپ با کد های خودتون مقایسه کنید اگه تاحالا نزدید هم منبع خوبی برای آموزشه :
50projects50days.com
سورس کدشون هم توی گیتهابشون هست.
@Linuxor
50projects50days.com
سورس کدشون هم توی گیتهابشون هست.
@Linuxor
Forwarded from Go Casts 🚀
قرعه کشی دوره به نفع بیماران پروانه ای و خانه ای بی
شکر خدا را که در پناه حسینیم
عالم از این خوب تر پناه ندارد
به مناسبت ایام سوگواری حضرت سیدالشهدا، امام حسین علیه السلام، دوره و تیمسازی gocasts به قید قرعه به ۵ نفر با مبلغ دو و نیم میلیون تومان به فروش خواهد رسید و تمامی مبلغ به حساب خانه ای بی واریز خواهد شد.
فیش واریز مبلغ جمع خرید قرعه کشی به حساب خانه ای بی
https://t.iss.one/gocasts/694?single&comment=6112
جدای از این، میتونید از طریق این لینک کمک های نقدی خود را به حساب خانه ای بی واریز کنید.
https://ebhome.ngo/support?utm_campaign=gocasts140404
@gocasts
سایت خانه ای بی
https://ebhome.ngo
اینستاگرام خانه ای بی
https://instagram.com/eb_home
شکر خدا را که در پناه حسینیم
عالم از این خوب تر پناه ندارد
به مناسبت ایام سوگواری حضرت سیدالشهدا، امام حسین علیه السلام، دوره و تیمسازی gocasts به قید قرعه به ۵ نفر با مبلغ دو و نیم میلیون تومان به فروش خواهد رسید و تمامی مبلغ به حساب خانه ای بی واریز خواهد شد.
فیش واریز مبلغ جمع خرید قرعه کشی به حساب خانه ای بی
https://t.iss.one/gocasts/694?single&comment=6112
جدای از این، میتونید از طریق این لینک کمک های نقدی خود را به حساب خانه ای بی واریز کنید.
https://ebhome.ngo/support?utm_campaign=gocasts140404
@gocasts
سایت خانه ای بی
https://ebhome.ngo
اینستاگرام خانه ای بی
https://instagram.com/eb_home
Forwarded from 🎄 یک برنامه نویس تنبل (Lazy 🌱)
🔶 تیلور اتول می گوید : یه چیزی که مدتها توی لاراول اذیتم میکرد، نحو خیلی طولانی و شلوغ تعریف کلیدهای اصلی افزایشی (incrementing primary keys) و کلیدهای خارجی (foreign keys) بود، مخصوصاً بعد از اینکه نوع پیشفرض به "big integer" تغییر کرد.
برای همین یه سینتکس جدید و سادهتر ساختم که توی نسخه بعدی منتشر می شود.
#لاراول
@TheRaymondDev
برای همین یه سینتکس جدید و سادهتر ساختم که توی نسخه بعدی منتشر می شود.
#لاراول
@TheRaymondDev
Forwarded from 🎄 یک برنامه نویس تنبل (Lazy 🌱)
🔶 آدمایی که بچه ندارند و درباره مدیریت زمان و بهره وری حرف میزند واقعاً خنده دار هستند.
@TheRaymondDev
@TheRaymondDev
Forwarded from Curious Geek ⚡️
فعالیت های عمومی من صرفا از طریق این کانال ها انجام میشه، بجز اینا هر اکانت / کانالی دیدید بدونید من نیستم. 😊
تلگرام:
Curious Geek ⚡️
Hirad Notes - AI
Hirad Notes - IBM Cloud Computing
Hirad Notes - Data Structure & Algorithms
English for Everybody
دیگر شبکه ها: اینستاگرام - ایکس - گیتهاب - یوتیوب - لینکدین
🆔 @Hiradsajde
تلگرام:
Curious Geek ⚡️
Hirad Notes - AI
Hirad Notes - IBM Cloud Computing
Hirad Notes - Data Structure & Algorithms
English for Everybody
دیگر شبکه ها: اینستاگرام - ایکس - گیتهاب - یوتیوب - لینکدین
🆔 @Hiradsajde
Telegram
Curious Geek ⚡️
✉️ [email protected] 🌐 hiradsajde.ir
Forwarded from linuxtnt(linux tips and tricks) (hosein seilany https://seilany.ir/)
🔰نسخه جدید ابزار محبوب curl با شماره 8.15.0 منتشر شد.
🔹233 باگ برطرف شده و 334 کامیت طی یک چرخه توسعه ۴۲ روزه انجام شده است.
🔹پشتیبانی از Secure Transport و BearSSL حذف شده؛ توسعهدهندگان باید به TLSهایی مثل OpenSSL یا wolfSSL مهاجرت کنند.
🔹هیچ اصلاحیه امنیتی در این نسخه وجود ندارد، که نشاندهنده امنیت پایدار نسخههای قبلی است.
🔹57 مشارکتکننده در این نسخه حضور داشتند که 29 نفر آنها جدید بودند؛ مشارکتکنندگان کل پروژه اکنون به 3460 نفر رسیده است.
🔹تمام قابلیتهای قبلی حفظ شدهاند؛ هیچ گزینه جدیدی به دستور curl اضافه نشده و تمام APIهای libcurl نیز بدون تغییر باقی ماندهاند.
🔹این نسخه تمرکز ویژهای بر پایداری، کیفیت کد و حفظ سازگاری با نسخههای قبلی دارد.
🔹233 باگ برطرف شده و 334 کامیت طی یک چرخه توسعه ۴۲ روزه انجام شده است.
🔹پشتیبانی از Secure Transport و BearSSL حذف شده؛ توسعهدهندگان باید به TLSهایی مثل OpenSSL یا wolfSSL مهاجرت کنند.
🔹هیچ اصلاحیه امنیتی در این نسخه وجود ندارد، که نشاندهنده امنیت پایدار نسخههای قبلی است.
🔹57 مشارکتکننده در این نسخه حضور داشتند که 29 نفر آنها جدید بودند؛ مشارکتکنندگان کل پروژه اکنون به 3460 نفر رسیده است.
🔹تمام قابلیتهای قبلی حفظ شدهاند؛ هیچ گزینه جدیدی به دستور curl اضافه نشده و تمام APIهای libcurl نیز بدون تغییر باقی ماندهاند.
🔹این نسخه تمرکز ویژهای بر پایداری، کیفیت کد و حفظ سازگاری با نسخههای قبلی دارد.
Forwarded from haashemi.dev
GitHub
Home
SeaweedFS is a fast distributed storage system for blobs, objects, files, and data lake, for billions of files! Blob store has O(1) disk seek, cloud tiering. Filer supports Cloud Drive, xDC replica...
As of the recent Minio (console) changes and the path they're following, I decided to give Seaweedfs a shot and hopefully migrate to it.
So, Let's begin:
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Linux & OpenSource
اینترنت آزادتر!
«آزادی» واژه شریفیه که آخرش به «تر» نمیرسه، آزادی یا هست یا نیست، وسطی وجود نداره!
Mohammad H Jahanpanah
@uselinux
«آزادی» واژه شریفیه که آخرش به «تر» نمیرسه، آزادی یا هست یا نیست، وسطی وجود نداره!
Mohammad H Jahanpanah
@uselinux
Forwarded from linuxtnt(linux tips and tricks) (hosein seilany https://seilany.ir/)
آمازون با معرفی IDE جدید مبتنی بر هوش مصنوعی به رقابت با Cursor میرود – قابل استفاده در لینوکس
در تاریخ ۱۶ جولای ۲۰۲۵، Amazon Web Services (AWS) از یک محیط توسعه جدید به نام Kiro رونمایی کرد. این ابزار بهعنوان یک جایگزین پیشرفته برای ویرایشگرهای کدنویسی مبتنی بر هوش مصنوعی معرفی شده و اکنون برای کاربران لینوکس نیز در دسترس است.
ویژگیهای کلیدی Kiro:
🔹مبتنی بر مدل Claude Sonnet 4 از شرکت Anthropic، با گزینه پشتیبان Sonnet 3.7.
🔹توسعه مبتنی بر مشخصات (Specs-driven Development): با وارد کردن دستورات ساده در زبان طبیعی، Kiro میتواند نیازمندیها و طراحیهای فنی تولید کند قبل از نوشتن هرگونه کد.
🔹دارای Agent Hooks: نوعی اتوماسیون داخلی برای بهروزرسانی تستها یا مستندات بهطور خودکار هنگام ویرایش یا ذخیرهسازی فایلها.
🔹گفتوگوی Agentic Chat: امکان صحبت تعاملی با IDE درباره ساختار پروژه، کدها یا مستندات برای دریافت پاسخهای مبتنی بر زمینه.
🔹پشتیبانی از MCP Servers: برای اتصال امن با APIها، ابزارها و منابع داده خارجی، بدون ترک IDE.
🔹دارای Steering: قابلیتی برای راهنمایی هوش مصنوعی با استفاده از فایلهای Markdown قابل خواندن توسط انسان که ساختار پروژه، استانداردهای کدنویسی، الگوهای معماری و قوانین تیم را تعریف میکند.
🔹پایهگذاریشده بر VS Code متنباز: با حفظ سازگاری با افزونهها و تنظیمات قبلی کاربران.
در تاریخ ۱۶ جولای ۲۰۲۵، Amazon Web Services (AWS) از یک محیط توسعه جدید به نام Kiro رونمایی کرد. این ابزار بهعنوان یک جایگزین پیشرفته برای ویرایشگرهای کدنویسی مبتنی بر هوش مصنوعی معرفی شده و اکنون برای کاربران لینوکس نیز در دسترس است.
ویژگیهای کلیدی Kiro:
🔹مبتنی بر مدل Claude Sonnet 4 از شرکت Anthropic، با گزینه پشتیبان Sonnet 3.7.
🔹توسعه مبتنی بر مشخصات (Specs-driven Development): با وارد کردن دستورات ساده در زبان طبیعی، Kiro میتواند نیازمندیها و طراحیهای فنی تولید کند قبل از نوشتن هرگونه کد.
🔹دارای Agent Hooks: نوعی اتوماسیون داخلی برای بهروزرسانی تستها یا مستندات بهطور خودکار هنگام ویرایش یا ذخیرهسازی فایلها.
🔹گفتوگوی Agentic Chat: امکان صحبت تعاملی با IDE درباره ساختار پروژه، کدها یا مستندات برای دریافت پاسخهای مبتنی بر زمینه.
🔹پشتیبانی از MCP Servers: برای اتصال امن با APIها، ابزارها و منابع داده خارجی، بدون ترک IDE.
🔹دارای Steering: قابلیتی برای راهنمایی هوش مصنوعی با استفاده از فایلهای Markdown قابل خواندن توسط انسان که ساختار پروژه، استانداردهای کدنویسی، الگوهای معماری و قوانین تیم را تعریف میکند.
🔹پایهگذاریشده بر VS Code متنباز: با حفظ سازگاری با افزونهها و تنظیمات قبلی کاربران.
Forwarded from linuxtnt(linux tips and tricks) (hosein seilany https://seilany.ir/)
آموزش فشرده 27 دستور کاربردی Nmap
1. پینگ ساده (بررسی فعال بودن هاست):
2. اسکن SYN (اسکن سریع و کمصدا):
3. اسکن UDP (بررسی پورتهای UDP):
4. تشخیص OS (شناسایی سیستمعامل هدف):
5. تشخیص نسخه سرویسها:
6. اسکن تهاجمی (ترکیب چندین تکنیک):
7. اسکن سریع (فقط پورتهای رایج):
8. اسکن تمام پورتها:
9. اسکن پورتهای پراستفاده:
10. عبور از فایروال (تقسیم بستهها):
11. بررسی آسیبپذیریها:
12. اسکن با اسکریپتهای پیشفرض:
13. اسکن با آدرس جعلی:
14. مشاهده مسیر تا هدف:
15. اسکن پورتهای دلخواه:
16. ذخیره نتایج در فایل:
17. جعل آدرس MAC:
18. حمله Brute-Force به DNS:
19. مشاهده عنوان صفحات وب:
20. بررسی اشتراکهای SMB:
21. بررسی FTP ناشناس:
22. مشاهده گواهی SSL:
23. تشخیص WAF:
24. بررسی متدهای HTTP:
25. استخراج robots.txt:
26. جستجوی Whois:
27. اجرای اسکریپتهای امن:
نویسنده: حسین سیلانی
اخبار و آموزش های بیشتر در کانال:
https://t.iss.one/linuxtnt
1. پینگ ساده (بررسی فعال بودن هاست):
nmap -sn target 2. اسکن SYN (اسکن سریع و کمصدا):
nmap -sS target 3. اسکن UDP (بررسی پورتهای UDP):
nmap -sU target 4. تشخیص OS (شناسایی سیستمعامل هدف):
nmap -O target 5. تشخیص نسخه سرویسها:
nmap -sV target 6. اسکن تهاجمی (ترکیب چندین تکنیک):
nmap -A target 7. اسکن سریع (فقط پورتهای رایج):
nmap -F target 8. اسکن تمام پورتها:
nmap -p- target 9. اسکن پورتهای پراستفاده:
nmap --top-ports 100 target 10. عبور از فایروال (تقسیم بستهها):
nmap -f --data-length 200 target 11. بررسی آسیبپذیریها:
nmap --script vuln target 12. اسکن با اسکریپتهای پیشفرض:
nmap --script default target 13. اسکن با آدرس جعلی:
nmap -D RND:5 target 14. مشاهده مسیر تا هدف:
nmap --traceroute target 15. اسکن پورتهای دلخواه:
nmap -p 80,443,22 target 16. ذخیره نتایج در فایل:
nmap -oA result target 17. جعل آدرس MAC:
nmap --spoof-mac 0 target 18. حمله Brute-Force به DNS:
nmap --script dns-brute domain.com 19. مشاهده عنوان صفحات وب:
nmap --script http-title target 20. بررسی اشتراکهای SMB:
nmap --script smb-enum-shares target 21. بررسی FTP ناشناس:
nmap --script ftp-anon target 22. مشاهده گواهی SSL:
nmap --script ssl-cert -p 443 target 23. تشخیص WAF:
nmap --script http-waf-detect target 24. بررسی متدهای HTTP:
nmap --script http-methods target 25. استخراج robots.txt:
nmap --script http-robots.txt target 26. جستجوی Whois:
nmap --script whois domain.com 27. اجرای اسکریپتهای امن:
nmap --script safe targetنویسنده: حسین سیلانی
اخبار و آموزش های بیشتر در کانال:
https://t.iss.one/linuxtnt
Forwarded from linuxtnt(linux tips and tricks) (hosein seilany https://seilany.ir/)
آموزش فشرده 27 دستور کاربردی Nmap با مثالهای واقعی
1. پینگ ساده (بررسی فعال بودن هاست):
2. اسکن SYN (اسکن سریع و کمصدا):
3. اسکن UDP (بررسی پورتهای UDP):
4. تشخیص OS (شناسایی سیستمعامل هدف):
5. تشخیص نسخه سرویسها:
6. اسکن تهاجمی (ترکیب چندین تکنیک):
7. اسکن سریع (فقط پورتهای رایج):
8. اسکن تمام پورتها:
9. اسکن پورتهای پراستفاده:
10. عبور از فایروال (تقسیم بستهها):
11. بررسی آسیبپذیریها:
12. اسکن با اسکریپتهای پیشفرض:
13. اسکن با آدرس جعلی:
14. مشاهده مسیر تا هدف:
15. اسکن پورتهای دلخواه:
16. ذخیره نتایج در فایل:
17. جعل آدرس MAC:
18. حمله Brute-Force به DNS:
19. مشاهده عنوان صفحات وب:
20. بررسی اشتراکهای SMB:
21. بررسی FTP ناشناس:
22. مشاهده گواهی SSL:
23. تشخیص WAF:
24. بررسی متدهای HTTP:
25. استخراج robots.txt:
26. جستجوی Whois:
27. اجرای اسکریپتهای امن:
نویسنده: حسین سیلانی
📢 اخبار و آموزشهای بیشتر در کانال:
https://t.iss.one/linuxtnt)
1. پینگ ساده (بررسی فعال بودن هاست):
nmap -sn 192.168.1.1 nmap -sn google.com2. اسکن SYN (اسکن سریع و کمصدا):
nmap -sS 10.0.0.5 nmap -sS example.org3. اسکن UDP (بررسی پورتهای UDP):
nmap -sU 192.168.1.100 -p 53,161 nmap -sU dns.server.com4. تشخیص OS (شناسایی سیستمعامل هدف):
nmap -O 172.16.1.15 sudo nmap -O webserver.local5. تشخیص نسخه سرویسها:
nmap -sV 192.168.0.10 nmap -sV mail.example.com -p 25,110,1436. اسکن تهاجمی (ترکیب چندین تکنیک):
nmap -A 203.0.113.42 sudo nmap -A vulnerable-server.org7. اسکن سریع (فقط پورتهای رایج):
nmap -F 192.168.1.0/24 nmap -F scanme.nmap.org8. اسکن تمام پورتها:
nmap -p- 10.10.10.10 sudo nmap -p- critical-server.local9. اسکن پورتهای پراستفاده:
nmap --top-ports 50 192.168.2.20 nmap --top-ports 1000 scanme.nmap.org10. عبور از فایروال (تقسیم بستهها):
nmap -f 198.51.100.5 sudo nmap -f --mtu 24 secure-gateway.com11. بررسی آسیبپذیریها:
nmap --script vuln 192.168.1.50 sudo nmap --script vuln -p 80,443 webapp.test12. اسکن با اسکریپتهای پیشفرض:
nmap --script default 10.0.0.100 nmap --script default,http* webserver.local13. اسکن با آدرس جعلی:
nmap -D RND:10,ME 192.168.1.200 sudo nmap -D decoy1.com,decoy2.com,ME target.com14. مشاهده مسیر تا هدف:
nmap --traceroute 8.8.8.8 nmap --traceroute example.org15. اسکن پورتهای دلخواه:
nmap -p 22,80,443 192.168.1.10 nmap -p 1-1000,3306,8080-8090 test.server16. ذخیره نتایج در فایل:
nmap -oA scan_results 192.168.0.50 sudo nmap -A -oA full_scan pentest-target.com17. جعل آدرس MAC:
nmap --spoof-mac Apple 192.168.1.33 sudo nmap --spoof-mac 0 10.0.0.1518. حمله Brute-Force به DNS:
nmap --script dns-brute example.com nmap --script dns-brute -d3 domain.org19. مشاهده عنوان صفحات وب:
nmap --script http-title 192.168.1.80 -p 80,443 nmap --script http-title -p 8080 webapp.local20. بررسی اشتراکهای SMB:
nmap --script smb-enum-shares 192.168.1.66 sudo nmap --script smb-* fileserver.local21. بررسی FTP ناشناس:
nmap --script ftp-anon 10.0.0.20 -p 21 nmap --script ftp-anon ftp.server.com22. مشاهده گواهی SSL:
nmap --script ssl-cert -p 443 192.168.1.150 nmap --script ssl-enum-ciphers secure-site.com23. تشخیص WAF:
nmap --script http-waf-detect 203.0.113.10 nmap --script http-waf-fingerprint webapp.org24. بررسی متدهای HTTP:
nmap --script http-methods 192.168.1.99 nmap --script http-methods -p 80,443 api.example.com25. استخراج robots.txt:
nmap --script http-robots.txt 192.168.0.77 nmap --script http-robots.txt -p 80 blog.site26. جستجوی Whois:
nmap --script whois example.net nmap --script whois -v2 domain.info27. اجرای اسکریپتهای امن:
nmap --script safe 192.168.1.0/24 sudo nmap --script "not intrusive" scanme.nmap.orgنویسنده: حسین سیلانی
📢 اخبار و آموزشهای بیشتر در کانال:
https://t.iss.one/linuxtnt)
Forwarded from 🎄 یک برنامه نویس تنبل ( MΞ)
از این به بعد با هر کی اینترنت طبقاتی میگیره، نه هم وطنیم، نه همراه.ما خیلی وقته ازتون جدا شدیم، تو فکر، تو نگاه به آزادی، تو معنی وطن.
ولی از امروز، دیگه حتی تو درد هم باهاتون شریک نیستیم.
وای به روزی که بخواد از ما انتظار همدلی داشته باشه.
#اینترنت_یا_برای_همه_یا_هیچکس
@TheRaymondDev
Forwarded from Woland's Linux Journal (Woland)
💠ترمینال چگونه کار میکند💠
ترمینال، tty، getty، stty، و pty مفاهیمی هستند که در سیستمعاملهای یونیکس و لینوکس نقش کلیدی در ورودی/خروجی متنی و تعامل کاربر با سیستم دارند.
در لینوکس، «ترمینال» به طور کلی به محیطی گفته میشود که کاربر میتواند دستورات متنی وارد کند و خروجی دریافت کند. این محیط میتواند فیزیکی (مثل ترمینال سریال) یا مجازی (مثل ترمینال گرافیکی در یک شبیهساز ترمینال یا session SSH) باشد.
🔹tty (teletypewriter)
به دستگاهی گفته میشود که برای ورودی و خروجی کاربر استفاده میشود. در سیستم لینوکس، فایلهای
ترمینال مجازی اول در محیط console (قابل دسترسی با کلیدهای Ctrl+Alt+F1)
یک pseudo terminal slave در یک session ترمینالی مانند SSH یا ترمینال گرافیکی
فرمان
🔷getty (get tty)
یک برنامه کاربر (user-space) است که برای مدیریت login روی یک tty خاص اجرا میشود. در محیط boot سنتی (مثل System V init)، چندین نمونه از getty برای ترمینالهای مجازی مانند
- روی tty بنشیند و منتظر ورودی کاربر باشد
- درخواست نام کاربری کند
- فرآیند login را راهاندازی کند
در سیستمهایی که systemd استفاده میشود، این وظایف با سرویسهایی مثل
🔹stty
در واقع فرمان
به عنوان مثال:
این فرمان باعث میشود که ورودی کاربر در ترمینال نمایش داده نشود (برای مثال هنگام وارد کردن رمز عبور).
اگه یادتون باشه توی نوشتن بازی ماینسوییپ با بش ازش استفاده کردیم
🔹pty (pseudo-terminal)
یک pseudo-terminal، دستگاهی است که ارتباط ترمینالی بین دو برنامه را شبیهسازی میکند. معمولا به صورت یک جفت (pair) از master و slave وجود دارد:
- master: کنترل کامل روی slave دارد و دادههایی که به آن نوشته میشود، در slave ظاهر میشود.
- slave: از دید برنامهای که اجرا میشود، یک ترمینال واقعی است (مثل tty فیزیکی).
وقتی شما یک ترمینال گرافیکی مثل xterm، gnome-terminal، یا یک session SSH باز میکنید، کرنل یک جفت pty ایجاد میکند. ترمینال گرافیکی به سمت master وصل میشود و پوسته کاربر روی slave اجرا میشود.
در لینوکس، این دستگاهها در
🔹نحوه ارتباط این اجزا
اول - پس از بوت شدن سیستم، init یا systemd چند getty برای ttyهای مجازی (مثلا tty1) راهاندازی میکند.
دوم - getty روی هر tty منتظر ورود کاربر میماند.
سوم - پس از وارد کردن نام کاربری، getty برنامه login را اجرا میکند.
چهارم - login پس از تأیید اعتبار، یک پوسته (مثلا bash) روی tty راهاندازی میکند.
پنجم - کاربر اکنون میتواند دستورات را تایپ کند؛ این دستورات از tty خوانده شده و خروجی آن نیز به tty ارسال میشود.
ششم - اگر session ترمینال از طریق SSH باشد، یک جفت pty ایجاد میشود، پوسته روی slave اجرا میشود و master توسط sshd کنترل میشود.
خلاصه:
تیتیوای tty: رابط ورودی/خروجی متنی (فیزیکی یا مجازی)
گتی getty: فرآیندی برای فعالسازی login روی tty
استیتیوای stty: ابزاری برای تغییر پارامترهای tty
پیتیوای pty: ترمینال مجازی شبیهسازیشده برای sessionهای غیرمحلی یا گرافیکی
این مفاهیم برای فهم دقیق معماری ارتباط بین کاربر و هسته در لینوکس ضروری هستند، مخصوصا در سیستمهایی که به صورت headless یا از طریق SSH مدیریت میشوند.
#آمورش #لینوکس #ترمینال #بش
ترمینال، tty، getty، stty، و pty مفاهیمی هستند که در سیستمعاملهای یونیکس و لینوکس نقش کلیدی در ورودی/خروجی متنی و تعامل کاربر با سیستم دارند.
در لینوکس، «ترمینال» به طور کلی به محیطی گفته میشود که کاربر میتواند دستورات متنی وارد کند و خروجی دریافت کند. این محیط میتواند فیزیکی (مثل ترمینال سریال) یا مجازی (مثل ترمینال گرافیکی در یک شبیهساز ترمینال یا session SSH) باشد.
🔹tty (teletypewriter)
به دستگاهی گفته میشود که برای ورودی و خروجی کاربر استفاده میشود. در سیستم لینوکس، فایلهای
/dev/tty نشاندهنده دستگاههای ترمینال هستند. بهعنوان مثال:/dev/tty1 ترمینال مجازی اول در محیط console (قابل دسترسی با کلیدهای Ctrl+Alt+F1)
/dev/pts/0 یک pseudo terminal slave در یک session ترمینالی مانند SSH یا ترمینال گرافیکی
فرمان
tty در پوسته، نام tty متصلشده به session جاری را چاپ میکند.🔷getty (get tty)
یک برنامه کاربر (user-space) است که برای مدیریت login روی یک tty خاص اجرا میشود. در محیط boot سنتی (مثل System V init)، چندین نمونه از getty برای ترمینالهای مجازی مانند
/dev/tty1 تا /dev/tty6 راهاندازی میشوند. getty وظیفه دارد:- روی tty بنشیند و منتظر ورودی کاربر باشد
- درخواست نام کاربری کند
- فرآیند login را راهاندازی کند
در سیستمهایی که systemd استفاده میشود، این وظایف با سرویسهایی مثل
[email protected] انجام میگیرند.🔹stty
در واقع فرمان
stty برای تنظیم ویژگیهای ترمینال استفاده میشود، setty به کاربر اجازه میدهد پارامترهایی مانند نرخ baud، echo کردن ورودی، نوع کاراکتر انتها، نحوه کنترل سیگنالهای کنترلی (مانند Ctrl+C) را تنظیم کند.به عنوان مثال:
stty -echo
این فرمان باعث میشود که ورودی کاربر در ترمینال نمایش داده نشود (برای مثال هنگام وارد کردن رمز عبور).
🔹pty (pseudo-terminal)
یک pseudo-terminal، دستگاهی است که ارتباط ترمینالی بین دو برنامه را شبیهسازی میکند. معمولا به صورت یک جفت (pair) از master و slave وجود دارد:
- master: کنترل کامل روی slave دارد و دادههایی که به آن نوشته میشود، در slave ظاهر میشود.
- slave: از دید برنامهای که اجرا میشود، یک ترمینال واقعی است (مثل tty فیزیکی).
وقتی شما یک ترمینال گرافیکی مثل xterm، gnome-terminal، یا یک session SSH باز میکنید، کرنل یک جفت pty ایجاد میکند. ترمینال گرافیکی به سمت master وصل میشود و پوسته کاربر روی slave اجرا میشود.
در لینوکس، این دستگاهها در
/dev/ptmx (master multiplexer) و /dev/pts/* (slaves) ظاهر میشوند. سیستم فایل مجازی /dev/pts توسط devpts مدیریت میشود و در زمان بوت در /dev/pts mount میشود.🔹نحوه ارتباط این اجزا
اول - پس از بوت شدن سیستم، init یا systemd چند getty برای ttyهای مجازی (مثلا tty1) راهاندازی میکند.
دوم - getty روی هر tty منتظر ورود کاربر میماند.
سوم - پس از وارد کردن نام کاربری، getty برنامه login را اجرا میکند.
چهارم - login پس از تأیید اعتبار، یک پوسته (مثلا bash) روی tty راهاندازی میکند.
پنجم - کاربر اکنون میتواند دستورات را تایپ کند؛ این دستورات از tty خوانده شده و خروجی آن نیز به tty ارسال میشود.
ششم - اگر session ترمینال از طریق SSH باشد، یک جفت pty ایجاد میشود، پوسته روی slave اجرا میشود و master توسط sshd کنترل میشود.
خلاصه:
تیتیوای tty: رابط ورودی/خروجی متنی (فیزیکی یا مجازی)
گتی getty: فرآیندی برای فعالسازی login روی tty
استیتیوای stty: ابزاری برای تغییر پارامترهای tty
پیتیوای pty: ترمینال مجازی شبیهسازیشده برای sessionهای غیرمحلی یا گرافیکی
این مفاهیم برای فهم دقیق معماری ارتباط بین کاربر و هسته در لینوکس ضروری هستند، مخصوصا در سیستمهایی که به صورت headless یا از طریق SSH مدیریت میشوند.
#آمورش #لینوکس #ترمینال #بش
Forwarded from linuxtnt(linux tips and tricks) (hosein seilany https://seilany.ir/)
داستان کامل انیاک و زنان پیشگام برنامهنویسی: از فراموشی تا جاودانگی
در سال ۱۹۴۵، در آزمایشگاههای مخفی دانشگاه پنسیلوانیا، ماشین عظیم ENIAC (اولین کامپیوتر تمام الکترونیک جهان) متولد شد. اما قلب تپنده این غول ۳۰ تنی، نه مدارهای الکترونیکی، بلکه ۶ زن جوان و نابغه بود که تاریخ آنها را فراموش کرد:
——————————-
### ۱. تولد یک انقلاب در سایه جنگ
کاامپیوتر - ENIAC برای محاسبه مسیر توپخانه در جنگ جهانی دوم ساخته شد
- مردان مهندس فقط سختافزار را طراحی کردند
- ارتش آمریکا ۶ ریاضیدان زن را استخدام کرد:
• بتتی هولبرتون (خالق اولین دیباگر تاریخ)
• جین بارتیک (مغز متفکر معماری نرمافزار)
• کی مکنالتی (پیشگام توابع ریاضی در کد)
• مارلین ملتزر (متخصص سیستمهای ورودی/خروجی)
• روت تایتلبام (نابغه محاسبات مسیر بالستیک)
• فرانسیس اسپنس (معمار الگوریتمهای موازی)
——————————————-
### ۲. برنامهنویسی بدون هیچ ابزاری!
این زنان با چالشهای باورنکردنی روبرو بودند:
🔹 هیچ زبان برنامهنویسی وجود نداشت → کدها را با سوئیچهای فیزیکی مینوشتند
🔹 هیچ خطایابی (Debugger) نداشتند → اشکالات را با محاسبات دستی پیدا میکردند
🔹 حتی دسترسی به خود کامپیوتر محدود بود → برنامهها را روی کاغذ طراحی میکردند
اختراعات کلیدی آنها:
🔹 مفهوم Subroutine (زیربرنامه)
🔹 تکنیک Breakpoint برای خطایابی
🔹معماری پرش شرطی (If-Then)
———————————-
### ۳. توطئه سکوت تاریخی
در مراسم رونمایی ENIAC در ۱۹۴۶:
🔹 عکسها فقط مردان مهندس را نشان دادند
🔹 در مستندات رسمی نامی از زنان برده نشد
🔹رسانهها آنها را فقط به عنوان "مدلهای تبلیغاتی" معرفی کردند
در ۱۹۸۵، کتی کلیمن (دانشجوی MIT) به طور تصادفی:
- عکسهای قدیمی از زنان کنار ENIAC را دید
- با تحقیق فهمید آنها واقعاً برنامهنویسان اصلی بودند
- ۲۰ سال تلاش کرد تا داستان را افشا کند که منجر شد:
✓ فیلم مستند "Top Secret Rosies" در ۲۰۱۰
✓ جایزه پیشگامان کامپیوتر از ACM در ۱۹۹۷
✓ ورود به تالار مشاهیر اینترنت در ۲۰۲۲
نویسنده: حسین سیلانی
📢 اخبار و آموزشهای بیشتر در کانال:
https://t.iss.one/linuxtnt)
در سال ۱۹۴۵، در آزمایشگاههای مخفی دانشگاه پنسیلوانیا، ماشین عظیم ENIAC (اولین کامپیوتر تمام الکترونیک جهان) متولد شد. اما قلب تپنده این غول ۳۰ تنی، نه مدارهای الکترونیکی، بلکه ۶ زن جوان و نابغه بود که تاریخ آنها را فراموش کرد:
——————————-
### ۱. تولد یک انقلاب در سایه جنگ
کاامپیوتر - ENIAC برای محاسبه مسیر توپخانه در جنگ جهانی دوم ساخته شد
- مردان مهندس فقط سختافزار را طراحی کردند
- ارتش آمریکا ۶ ریاضیدان زن را استخدام کرد:
• بتتی هولبرتون (خالق اولین دیباگر تاریخ)
• جین بارتیک (مغز متفکر معماری نرمافزار)
• کی مکنالتی (پیشگام توابع ریاضی در کد)
• مارلین ملتزر (متخصص سیستمهای ورودی/خروجی)
• روت تایتلبام (نابغه محاسبات مسیر بالستیک)
• فرانسیس اسپنس (معمار الگوریتمهای موازی)
——————————————-
### ۲. برنامهنویسی بدون هیچ ابزاری!
این زنان با چالشهای باورنکردنی روبرو بودند:
🔹 هیچ زبان برنامهنویسی وجود نداشت → کدها را با سوئیچهای فیزیکی مینوشتند
🔹 هیچ خطایابی (Debugger) نداشتند → اشکالات را با محاسبات دستی پیدا میکردند
🔹 حتی دسترسی به خود کامپیوتر محدود بود → برنامهها را روی کاغذ طراحی میکردند
اختراعات کلیدی آنها:
🔹 مفهوم Subroutine (زیربرنامه)
🔹 تکنیک Breakpoint برای خطایابی
🔹معماری پرش شرطی (If-Then)
———————————-
### ۳. توطئه سکوت تاریخی
در مراسم رونمایی ENIAC در ۱۹۴۶:
🔹 عکسها فقط مردان مهندس را نشان دادند
🔹 در مستندات رسمی نامی از زنان برده نشد
🔹رسانهها آنها را فقط به عنوان "مدلهای تبلیغاتی" معرفی کردند
در ۱۹۸۵، کتی کلیمن (دانشجوی MIT) به طور تصادفی:
- عکسهای قدیمی از زنان کنار ENIAC را دید
- با تحقیق فهمید آنها واقعاً برنامهنویسان اصلی بودند
- ۲۰ سال تلاش کرد تا داستان را افشا کند که منجر شد:
✓ فیلم مستند "Top Secret Rosies" در ۲۰۱۰
✓ جایزه پیشگامان کامپیوتر از ACM در ۱۹۹۷
✓ ورود به تالار مشاهیر اینترنت در ۲۰۲۲
نویسنده: حسین سیلانی
📢 اخبار و آموزشهای بیشتر در کانال:
https://t.iss.one/linuxtnt)
Forwarded from متخصص وردپرس | پوینا
میخواستیم توی اینماد از یه کسب و کار برای اقواممون شکایت کنیم
جالبه امکان شکایت در اینماد انقدر سخته شما نمیتونید شکایت کنید اصلا متخصص حوزه وب و دیجیتال هم باشه نمیتونید
اینماد واقعا خیلی مزخرفه پول رو میگیره یه لوگو بهت میده بعدشم هیچ کار نمیکنه
چرا؟
وقتی میخوای شکایت کنید:
باید شماره شماره ترمینال/پایانه رو وارد کنید یعنی وقتی وارد درگاه میشید عکس بگیرید از اون سمت چپ شماره ترمینال رو بردارید اونم اگر درگاهش رو عوض نکنه بعدا
شماره ارجاع که بانک بهتون 10 ثانیه نشون میده پیامک هم نمیکنه سریع بردارید
بعد مبلغ هم دقیقا با مالیاتش بردارید بزنید حتی ریال آخرشم نزنید نمیشه ها
تاریخشم درست درست باشه
بعد اینماد همه رو آنلاین چک میکنه یکیش صحیح نباشه امکان ثبت شکایت وجود نداره بعد اگر سیستمش وصل هم نباشه نمیتونید شکایت کنید
بعد تازه اینا هیچ کدومم پیامک نمیشه
این مسخره بازیاتون جمع کنید بهتره
ما توی اینماد یه شکایت ساده نمیتونیم ثبت کنیم
خدا به داد مردم عادی برسه که این همه سرشون کلاه میره
مشکل از کلاه بردار نیست مشکل از شماست
چون کلاه بردار میدونه شکایتی ازش نمیشه جرائت خلاف داره
@poinair پوینا
جالبه امکان شکایت در اینماد انقدر سخته شما نمیتونید شکایت کنید اصلا متخصص حوزه وب و دیجیتال هم باشه نمیتونید
اینماد واقعا خیلی مزخرفه پول رو میگیره یه لوگو بهت میده بعدشم هیچ کار نمیکنه
چرا؟
وقتی میخوای شکایت کنید:
باید شماره شماره ترمینال/پایانه رو وارد کنید یعنی وقتی وارد درگاه میشید عکس بگیرید از اون سمت چپ شماره ترمینال رو بردارید اونم اگر درگاهش رو عوض نکنه بعدا
شماره ارجاع که بانک بهتون 10 ثانیه نشون میده پیامک هم نمیکنه سریع بردارید
بعد مبلغ هم دقیقا با مالیاتش بردارید بزنید حتی ریال آخرشم نزنید نمیشه ها
تاریخشم درست درست باشه
بعد اینماد همه رو آنلاین چک میکنه یکیش صحیح نباشه امکان ثبت شکایت وجود نداره بعد اگر سیستمش وصل هم نباشه نمیتونید شکایت کنید
بعد تازه اینا هیچ کدومم پیامک نمیشه
این مسخره بازیاتون جمع کنید بهتره
ما توی اینماد یه شکایت ساده نمیتونیم ثبت کنیم
خدا به داد مردم عادی برسه که این همه سرشون کلاه میره
مشکل از کلاه بردار نیست مشکل از شماست
چون کلاه بردار میدونه شکایتی ازش نمیشه جرائت خلاف داره
@poinair پوینا