হ্যাঁ. এখানে --help
:
$ su --help
Usage: su [options] [LOGIN]
Options:
-c, --command COMMAND pass COMMAND to the invoked shell
-h, --help display this help message and exit
-, -l, --login make the shell a login shell
-m, -p,
--preserve-environment do not reset environment variables, and
keep the same shell
-s, --shell SHELL use SHELL instead of the default in passwd
এবং কিছু পরীক্ষা (আমি অ্যাকাউন্টটির sudo
পাসওয়ার্ড জানি না বলেই আমি ব্যবহার করেছি nobody
)
$ sudo su -c whoami nobody
[sudo] password for oli:
nobody
যখন আপনার কমান্ড আর্গুমেন্ট নেয় আপনার এটিকে উদ্ধৃত করা দরকার। যদি আপনি না করেন, অদ্ভুত জিনিস ঘটবে। এখানে আমি -as মধ্যে / হোম / অলি (অলি) একটি ডিরেক্টরি তৈরি করার চেষ্টা root- am ছাড়া পূর্ণ কমান্ড উদ্ধৃত:
# su -c mkdir /home/oli/java oli
No passwd entry for user '/home/oli/java'
এটি কেবল পতাকার mkdir
মান হিসাবে পড়ে -c
এবং এটি /home/oli/java
ব্যবহারকারীর নাম হিসাবে ব্যবহার করার চেষ্টা করছে । যদি আমরা এটিকে উদ্ধৃত করি তবে এটি কেবল কার্যকর:
# su -c "mkdir /home/oli/java" oli
# stat /home/oli/java
File: ‘/home/oli/java’
Size: 4096 Blocks: 8 IO Block: 4096 directory
Device: 811h/2065d Inode: 5817025 Links: 2
Access: (0775/drwxrwxr-x) Uid: ( 1000/ oli) Gid: ( 1000/ oli)
Access: 2016-02-16 10:49:15.467375905 +0000
Modify: 2016-02-16 10:49:15.467375905 +0000
Change: 2016-02-16 10:49:15.467375905 +0000
Birth: -
sudo cat /etc/passwd | grep user-abc
। যদি আপনি এই জাতীয় কিছু দেখতে পান:user-abc:x:994:994::/home/user-abc:/bin/false
তবে এটি কার্যকর হবে না। এটি কারণ শেষ অংশ "/bin/false
" এর অর্থ that ব্যবহারকারীর জন্য কোনও শেল নেই।