دستور id یک ابزار خط فرمان است که شناسه های واقعی و موثر کاربر و گروه را نشان می دهد.
در ادامه با ما در شتابان هاست همراه باشید.
نحو دستور id به شرح زیر است:
id [OPTIONS] [USERNAME]
اگر نام کاربری حذف شود ، دستور id اطلاعات مربوط به کاربر وارد شده در حال حاضر را نمایش می دهد.
اگر بدون هیچ گزینه ای فراخوانی شود ، شناسه کاربر واقعی (uid) ، شناسه اصلی گروه اصلی کاربر (gid) و شناسه های واقعی گروه های اضافی (گروههایی) که کاربر به آنها تعلق دارد را نشان می دهد. شناسه کاربری موثر ، شناسه گروهی و شناسه های گروهی تکمیلی فقط درصورت متفاوت بودن از شناسه واقعی نشان داده می شوند.
id
خروجی:
uid=1000(linuxize) gid=1000(linuxize) groups=1000(linuxize),4(adm),27(sudo),998(docker)
اگر SELinux فعال باشد ، شناسه همچنین زمینه امنیتی کاربر (زمینه) را نشان می دهد:
uid=1000(linuxize) gid=1000(linuxize) groups=1000(linuxize) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
برای به دست آوردن اطلاعات در مورد کاربر دیگر ، نام کاربری یا شناسه کاربری را به عنوان آرگومان به دستور id منتقل کنید:
id mark
خروجی:
uid=1001(mark) gid=1001(mark) groups=1001(mark),998(docker)
در صورتی که کاربری با نام مشابه شناسه ارائه شده در سیستم وجود داشته باشد ، جستجوی نام اولویت دارد. هنگام استفاده از شناسه کاربر به عنوان آرگومان ، شناسه را با نماد + پیشوند کنید تا از تفسیر شناسه به عنوان یک نام جلوگیری کنید.
به عنوان مثال ، اگر شما یک کاربر با نام ۱۰۱۰ و یک کاربر دیگر با ID 1010 دارید ، اگر id 1010 را تایپ کنید ، این فرمان اطلاعات مربوط به کاربر با نام ۱۰۱۰ را نمایش می دهد. برای به دست آوردن اطلاعات کاربر با ID 1010 ، id +1010 را تایپ کنید.
دستور id چندین گزینه را می پذیرد که به شما امکان می دهد فقط اطلاعات خاص را نمایش دهید. این هنگام استفاده از id در اسکریپت های پوسته مفید است.
برای چاپ فقط شناسه کاربری موثر ، از گزینه -u (–user) استفاده کنید:
id -u
خروجی:
۱۰۰۰
گزینه -g (–group) به id می گوید که فقط شناسه موثر گروه را چاپ کند:
id -g
خروجی:
۱۰۰۰ ۴ ۲۷ ۹۹۸
از گزینه -G (–groups) برای چاپ شناسه های م effectiveثر همه گروه هایی که کاربر به آنها تعلق دارد استفاده کنید:
id -G
خروجی:
۱۰۰۰
برای چاپ نام به جای اعداد از گزینه -n ، –name استفاده کنید. این گزینه فقط در ترکیب با -u ، -g و -G قابل استفاده است.
id -un
خروجی:
shetabanhost
اجرای دستور id با گزینه های -un همان خروجی اجرای whoami را تولید می کند و خروجی id -Gn برابر است با خروجی دستور گروه ها.
از گزینه -r ، (-real) می توان به جای مقادیر موثر در ترکیب با -u ، -g و -G برای چاپ واقعی استفاده کرد:
id -ur
برای چاپ فقط زمینه امنیتی فرآیند ، که معمولاً زمینه امنیتی کاربر است ، از گزینه -Z (–context) استفاده کنید:
id -Z
خروجی:
unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
اگر SELinux غیرفعال باشد ، شناسه پیام خطایی را چاپ می کند:
id: --context (-Z) works only on an SELinux-enabled kernel
گزینه -z (- صفر) به id می گوید که موارد خروجی را با کاراکتر NUL محدود کند نه فضای خالی:
id -znG
خروجی:
shetabanhostadmsudodocker
این می تواند در هنگام پایپ خروجی به دستوری مفید باشد که می تواند خطوط جدید را تجزیه کند.
دستور id در صورت عدم ارائه نام کاربری یا شناسه به عنوان آرگومان ، اطلاعات مربوط به کاربر داده شده یا کاربر فعلی وارد شده را چاپ می کند.
اگر سوالی دارید در صورت تمایل می توانید نظر دهید.
امیدوارم این مقاله براتون مفید بوده باشه.
ما رو تو شتابان هاست دنبال کنید.