{"id":5496,"date":"2015-12-28T13:02:52","date_gmt":"2015-12-28T05:02:52","guid":{"rendered":"http:\/\/rmohan.com\/?p=5496"},"modified":"2015-12-28T17:42:19","modified_gmt":"2015-12-28T09:42:19","slug":"rhce7-certification-study-notes","status":"publish","type":"post","link":"https:\/\/mohan.sg\/?p=5496","title":{"rendered":"RHCE7 certification study notes"},"content":{"rendered":"<p><strong>RHCE7 certification study notes<\/strong><\/p>\n<p>&#8212; system file directory structure<\/p>\n<p>, RHEL7 system file directory<\/p>\n<p>Basically RHEL7 directory structure remains the same as the original directory structure RHEL6,<br \/>\nthe difference is, RHEL7 increasing the Run directory, the default file is used to automatically mount CD-ROM, and CD-ROM in RHEL6 default mount directory is the Media.<\/p>\n<p>choose manual zoning, you must divide the partition: \/, boot, swap.<\/p>\n<p>2, reinstall the system, you only need to format the &#8220;\/&#8221; directory to other directories on their own partitions without formatting, keeping the original user files are not deleted<\/p>\n<p>&nbsp;<\/p>\n<p>[root@RHEL7HARDEN \/]# ls<br \/>\nbin\u00a0 boot\u00a0 dev\u00a0 etc\u00a0 home\u00a0 lib\u00a0 lib64\u00a0 media\u00a0 mnt\u00a0 opt\u00a0 proc\u00a0 root\u00a0 run\u00a0 sbin\u00a0 srv\u00a0 sys\u00a0 tmp\u00a0 usr\u00a0 var<br \/>\n[root@RHEL7HARDEN \/]#<\/p>\n<p>&nbsp;<br \/>\nstudy notes 2<\/p>\n<p>&#8212; command line file<\/p>\n<p>1, create and delete files<\/p>\n<p>Create a file touch xxxx<\/p>\n<p>touch -t 20151225 create a file and specify time properties<\/p>\n<p>rm xxx\u00a0 delete the file<\/p>\n<p>rm -rf forced to delete files<\/p>\n<p>2. Create a directory and delete the directory<\/p>\n<p>mkdir -p xxx\/yyy recursively create directories;<\/p>\n<p>rmdir xxx delete empty directories;<\/p>\n<p>rm -rf XXX\u00a0 forcibly remove non-empty directories;<\/p>\n<p>3, copy files and directories<\/p>\n<p>cp \/path1\/xxx \/path2\/xxx\/<\/p>\n<p>cp -p \/path1\/xxx \/path2\/yyy copy files to retain the original file attributes;<\/p>\n<p>cp -Rf (or -rf)\/path1\/ \/path2\/ copy files to a directory directory path1 path2<\/p>\n<p>cp -a\u00a0\u00a0 cp -dR &#8211;preserve=all<\/p>\n<p>4 Cut files<\/p>\n<p>mv \/path1\/xx \/path2\/yy<\/p>\n<p>5 View Files<\/p>\n<p>cat xx less<br \/>\nmore<br \/>\nless<\/p>\n<p>3&#8211; redirection and piping<\/p>\n<p>Redirect correct content:<\/p>\n<p>cat xx.file&gt; yy.file equivalent<\/p>\n<p>cat xx.file 1&gt; yy.file redirected to the file contents yy.file, will overwrite the original file contents;<\/p>\n<p>cat \/etc\/passwd &amp; &gt;&gt; \/tmp\/xx<\/p>\n<p>cat \/etc\/passwd &gt; \/tmp\/xx 2&gt;&amp;1<\/p>\n<p>tail -f \/var\/log\/messages &gt;\/tmp\/xx 2&gt;\/tmp\/yy<\/p>\n<p>ps\u00a0 aux | grep tail | grep -v &#8216;grep&#8217;<\/p>\n<p>ls -al \/dev\/<\/p>\n<p>to redirect the file contents input to a command<\/p>\n<p>tr<\/p>\n<p>cat &gt; \/tmp\/xxx &lt;&lt;EOF<br \/>\n&gt;test1<br \/>\n&gt;test2<br \/>\n&gt;test3<br \/>\n&gt;EOF<\/p>\n<p>cat &lt;&lt;EOF&gt; \/tmp\/xxx<br \/>\n&gt;test2<br \/>\n&gt;test3<br \/>\n&gt;test4<br \/>\n&gt;EOF<\/p>\n<p>number of rows grep -n before looking for the number of rows plus -i ignore case, -A 3 looking for then displayed, B 3 show the number of rows -v looking for negative keywords before after content, -q Do not display output;<\/p>\n<p>grep -n1 B1 -A root \/etc\/passwd<\/p>\n<p>ifconfig | grep &#8216;inet&#8217;|grep -v &#8216;inet6&#8217;| awk &#8216;BEGIN{print &#8220;IP\\t\\tnetmask&#8221;}{print $2,&#8221;\\t&#8221;,$4}END{}&#8217;<\/p>\n<p>ifconfig | grep &#8216;inet&#8217;|grep -v &#8216;inet6&#8217;| tee -a \/tmp\/yy|awk &#8216;BEGIN{print &#8220;IP\\t\\tnetmask&#8221;}{print $2,&#8221;\\t&#8221;,$4}END{}&#8217;<\/p>\n<p>4 &#8211; Vim editor use<\/p>\n<p>1, gedit graphical editing files<\/p>\n<p>2, Vim operating a file, if the file exists is opened, if the file does not exist, it is created:<\/p>\n<p>When using Vim to edit the file to open, the default is the command-line mode:<\/p>\n<p>4. When you edit the file, enter the command line insert mode, press the following keys to enter:<\/p>\n<p>i, from the current cursor enters;<\/p>\n<p>a, from the current cursor one character to enter;<\/p>\n<p>o, in the current row into the next row;<\/p>\n<p>I, from the current cursor jump to the beginning of the line and into the Bank;<\/p>\n<p>A, skip to the end and enter the Bank;<\/p>\n<p>O, in the Bank of the line to insert a row;<\/p>\n<p>r, to replace the current character;<\/p>\n<p>R, to replace the current character and move to the next character;<\/p>\n<p>number + G: jump to a specific row, such as 10G jumps to line 10, GG jump to the last line, gg jump to the first line;<\/p>\n<p>number + yy: copy current number of rows down, in any line can be pasted by p;<\/p>\n<p>number + dd: Cut down the number of rows currently in any line adhesive according to p;<\/p>\n<p>u: undo the last step of the operation;<\/p>\n<p>ctrl + r: to restore the previous step;<\/p>\n<p>ctrl + v: to enter visual block mode, the cursor moves up and down, select the content, press y copy selected content, at any position by pasting;<\/p>\n<p>Fast beginning of the line to add a comment #, move the cursor to select the line, then press I to the start position,<\/p>\n<p>press #, press ESC to exit<\/p>\n<p>#abrt:x:173:173::\/etc\/abrt:\/sbin\/nologin<br \/>\n#pulse:x:171:171:PulseAudio System Daemon:\/var\/run\/pulse:\/sbin\/nologin<br \/>\n#gdm:x:42:42::\/var\/lib\/gdm:\/sbin\/nologin<br \/>\n#gnome-initial-setup:x:993:991::\/run\/gnome-initial-setup\/:\/sbin\/nologin<br \/>\n:split?ctrl+w<\/p>\n<p>To view detailed help Vim, you can enter Vimtutor.<\/p>\n<p>5, line mode to save the file, find, property settings, replacement and other operations<\/p>\n<p>Enter the last line mode, ESC from insert into command mode, enter \ud83d\ude41 \/ or generally used to find, n from the look down, N from the look-up)<\/p>\n<p>Save: wq to save and exit, or x;<\/p>\n<p>Force Quit: q without saving the file content;!<\/p>\n<p>Display line numbers: set nu, if the default display line numbers, you will need to modify the home directory vimrc file or \/ etc \/ vimrc, no file is created, insert a row set nu;<\/p>\n<p>Switching specified line: direct input line number;<\/p>\n<p>Replace: 1,$s \/old \/new \/g Replace globally all<\/p>\n<p>m, ns \/old \/new \/g replace m row to match the contents of all n rows, on behalf of the current line, $representatives last line,<br \/>\n$ -. 1 represents the penultimate line, (1, $) can also be used to replace%,<br \/>\nThey are expressed full text. If you want to match the contents of which have special characters such as \/, *, etc., to be added in front of the escape character \\<\/p>\n<p>You can use the s # old # new #, using the # separator, the special characters do not need to escape;<\/p>\n<p>Find backslash below, if you want to ignore the case, look at the back of the content plus \\ c, for example: \/ servername \\ c<\/p>\n<p>study notes 5&#8211; manage users and user groups<\/p>\n<p>[root@RHEL7HARDEN \/]# passwd &#8211;help<br \/>\nUsage: passwd [OPTION&#8230;] &lt;accountName&gt;<br \/>\n-k, &#8211;keep-tokens\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 keep non-expired authentication tokens<br \/>\n-d, &#8211;delete\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 delete the password for the named account (root only)<br \/>\n-l, &#8211;lock\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 lock the password for the named account (root only)<br \/>\n-u, &#8211;unlock\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 unlock the password for the named account (root only)<br \/>\n-e, &#8211;expire\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 expire the password for the named account (root only)<br \/>\n-f, &#8211;force\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 force operation<br \/>\n-x, &#8211;maximum=DAYS\u00a0\u00a0\u00a0\u00a0\u00a0 maximum password lifetime (root only)<br \/>\n-n, &#8211;minimum=DAYS\u00a0\u00a0\u00a0\u00a0\u00a0 minimum password lifetime (root only)<br \/>\n-w, &#8211;warning=DAYS\u00a0\u00a0\u00a0\u00a0\u00a0 number of days warning users receives before password expiration (root only)<br \/>\n-i, &#8211;inactive=DAYS\u00a0\u00a0\u00a0\u00a0 number of days after password expiration when an account becomes disabled (root only)<br \/>\n-S, &#8211;status\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 report password status on the named account (root only)<br \/>\n&#8211;stdin\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 read new tokens from stdin (root only)<\/p>\n<p>Help options:<br \/>\n-?, &#8211;help\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Show this help message<br \/>\n&#8211;usage\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Display brief usage message<br \/>\n[root@RHEL7HARDEN \/]#<\/p>\n<p>[root@RHEL7HARDEN \/]# chage &#8211;help<br \/>\nUsage: chage [options] LOGIN<\/p>\n<p>Options:<br \/>\n-d, &#8211;lastday LAST_DAY\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 set date of last password change to LAST_DAY<br \/>\n-E, &#8211;expiredate EXPIRE_DATE\u00a0 set account expiration date to EXPIRE_DATE<br \/>\n-h, &#8211;help\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 display this help message and exit<br \/>\n-I, &#8211;inactive INACTIVE\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 set password inactive after expiration<br \/>\nto INACTIVE<br \/>\n-l, &#8211;list\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 show account aging information<br \/>\n-m, &#8211;mindays MIN_DAYS\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 set minimum number of days before password<br \/>\nchange to MIN_DAYS<br \/>\n-M, &#8211;maxdays MAX_DAYS\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 set maximim number of days before password<br \/>\nchange to MAX_DAYS<br \/>\n-R, &#8211;root CHROOT_DIR\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 directory to chroot into<br \/>\n-W, &#8211;warndays WARN_DAYS\u00a0\u00a0\u00a0\u00a0\u00a0 set expiration warning days to WARN_DAYS<\/p>\n<p>root@RHEL7HARDEN \/]# useradd &#8211;help<br \/>\nUsage: useradd [options] LOGIN<br \/>\nuseradd -D<br \/>\nuseradd -D [options]<\/p>\n<p>Options:<br \/>\n-b, &#8211;base-dir BASE_DIR\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 base directory for the home directory of the<br \/>\nnew account<br \/>\n-c, &#8211;comment COMMENT\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 GECOS field of the new account<br \/>\n-d, &#8211;home-dir HOME_DIR\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 home directory of the new account<br \/>\n-D, &#8211;defaults\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 print or change default useradd configuration<br \/>\n-e, &#8211;expiredate EXPIRE_DATE\u00a0 expiration date of the new account<br \/>\n-f, &#8211;inactive INACTIVE\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 password inactivity period of the new account<br \/>\n-g, &#8211;gid GROUP\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 name or ID of the primary group of the new<br \/>\naccount<br \/>\n-G, &#8211;groups GROUPS\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 list of supplementary groups of the new<br \/>\naccount<br \/>\n-h, &#8211;help\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 display this help message and exit<br \/>\n-k, &#8211;skel SKEL_DIR\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 use this alternative skeleton directory<br \/>\n-K, &#8211;key KEY=VALUE\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 override \/etc\/login.defs defaults<br \/>\n-l, &#8211;no-log-init\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 do not add the user to the lastlog and<br \/>\nfaillog databases<br \/>\n-m, &#8211;create-home\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 create the user&#8217;s home directory<br \/>\n-M, &#8211;no-create-home\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 do not create the user&#8217;s home directory<br \/>\n-N, &#8211;no-user-group\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 do not create a group with the same name as<br \/>\nthe user<br \/>\n-o, &#8211;non-unique\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 allow to create users with duplicate<br \/>\n(non-unique) UID<br \/>\n-p, &#8211;password PASSWORD\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 encrypted password of the new account<br \/>\n-r, &#8211;system\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 create a system account<br \/>\n-R, &#8211;root CHROOT_DIR\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 directory to chroot into<br \/>\n-s, &#8211;shell SHELL\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 login shell of the new account<br \/>\n-u, &#8211;uid UID\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 user ID of the new account<br \/>\n-U, &#8211;user-group\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 create a group with the same name as the user<br \/>\n-Z, &#8211;selinux-user SEUSER\u00a0\u00a0\u00a0\u00a0 use a specific SEUSER for the SELinux user mapping<\/p>\n<p>[root@RHEL7HARDEN \/]# usermod &#8211;help<br \/>\nUsage: usermod [options] LOGIN<\/p>\n<p>Options:<br \/>\n-c, &#8211;comment COMMENT\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 new value of the GECOS field<br \/>\n-d, &#8211;home HOME_DIR\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 new home directory for the user account<br \/>\n-e, &#8211;expiredate EXPIRE_DATE\u00a0 set account expiration date to EXPIRE_DATE<br \/>\n-f, &#8211;inactive INACTIVE\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 set password inactive after expiration<br \/>\nto INACTIVE<br \/>\n-g, &#8211;gid GROUP\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 force use GROUP as new primary group<br \/>\n-G, &#8211;groups GROUPS\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 new list of supplementary GROUPS<br \/>\n-a, &#8211;append\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 append the user to the supplemental GROUPS<br \/>\nmentioned by the -G option without removing<br \/>\nhim\/her from other groups<br \/>\n-h, &#8211;help\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 display this help message and exit<br \/>\n-l, &#8211;login NEW_LOGIN\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 new value of the login name<br \/>\n-L, &#8211;lock\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 lock the user account<br \/>\n-m, &#8211;move-home\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 move contents of the home directory to the<br \/>\nnew location (use only with -d)<br \/>\n-o, &#8211;non-unique\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 allow using duplicate (non-unique) UID<br \/>\n-p, &#8211;password PASSWORD\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 use encrypted password for the new password<br \/>\n-R, &#8211;root CHROOT_DIR\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 directory to chroot into<br \/>\n-s, &#8211;shell SHELL\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 new login shell for the user account<br \/>\n-u, &#8211;uid UID\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 new UID for the user account<br \/>\n-U, &#8211;unlock\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 unlock the user account<br \/>\n-Z, &#8211;selinux-user SEUSER\u00a0\u00a0\u00a0\u00a0 new SELinux user mapping for the user account<\/p>\n<p>[root@RHEL7HARDEN \/]# useradd test1<br \/>\n[root@RHEL7HARDEN \/]#\u00a0 mkdir \/home\/test<br \/>\nroot@RHEL7HARDEN \/]# usermod -d \/home\/test1 test<br \/>\nusermod: user &#8216;test&#8217; does not exist<br \/>\n[root@RHEL7HARDEN \/]# cp -a \/etc\/skel\/.[^.]* \/home\/test\/<br \/>\n[root@RHEL7HARDEN \/]# groups test1<br \/>\ntest1 : test1<br \/>\nusermod -a -G mohan test1<\/p>\n<p>usermod -g<\/p>\n<p>[root@RHEL7HARDEN \/]# gpasswd &#8211;help<br \/>\nUsage: gpasswd [option] GROUP<\/p>\n<p>Options:<br \/>\n-a, &#8211;add USER\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 add USER to GROUP<br \/>\n-d, &#8211;delete USER\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 remove USER from GROUP<br \/>\n-h, &#8211;help\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 display this help message and exit<br \/>\n-Q, &#8211;root CHROOT_DIR\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 directory to chroot into<br \/>\n-r, &#8211;delete-password\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 remove the GROUP&#8217;s password<br \/>\n-R, &#8211;restrict\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 restrict access to GROUP to its members<br \/>\n-M, &#8211;members USER,&#8230;\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 set the list of members of GROUP<br \/>\n-A, &#8211;administrators ADMIN,&#8230;<br \/>\nset the list of administrators for GROUP<br \/>\nExcept for the -A and -M options, the options cannot be combined.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>RHCE7 certification study notes<\/p>\n<p>&#8212; system file directory structure<\/p>\n<p>, RHEL7 system file directory<\/p>\n<p>Basically RHEL7 directory structure remains the same as the original directory structure RHEL6, the difference is, RHEL7 increasing the Run directory, the default file is used to automatically mount CD-ROM, and CD-ROM in RHEL6 default mount directory is the Media.<\/p>\n<p>choose [&#8230;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[73],"tags":[],"_links":{"self":[{"href":"https:\/\/mohan.sg\/index.php?rest_route=\/wp\/v2\/posts\/5496"}],"collection":[{"href":"https:\/\/mohan.sg\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mohan.sg\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mohan.sg\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mohan.sg\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=5496"}],"version-history":[{"count":3,"href":"https:\/\/mohan.sg\/index.php?rest_route=\/wp\/v2\/posts\/5496\/revisions"}],"predecessor-version":[{"id":5501,"href":"https:\/\/mohan.sg\/index.php?rest_route=\/wp\/v2\/posts\/5496\/revisions\/5501"}],"wp:attachment":[{"href":"https:\/\/mohan.sg\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=5496"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mohan.sg\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=5496"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mohan.sg\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=5496"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}