linux命令笔记su sudo df du

#id /whoami 查看当前用户

su 切换用户

#su - username

“-”作用,加上后初始化当前用户的各种环境变量

切换环境变量。 不加 - 切换过去后,目录不变,PATH也不变

如下比较:

su aming123

[aming123@zekLinux root]$ pwd

/root

[aming123@zekLinux root]$ echo $PATH

/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

[aming123@zekLinux root]$ ls

ls: 无法打开目录.: 权限不够

[aming123@zekLinux root]$ exit

exit

[root@zekLinux ~]# su - aming123

[aming123@zekLinux ~]$ pwd

/home/aming123

[aming123@zekLinux ~]$ echo $PATH

/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/aming123/bin

[aming123@zekLinux ~]$

普通用户下#su 直接切换到root 当环境变量还是当前用户的环境变量

普通用户下#su - 切换到root,环境变量也切换到root环境变量

命令:#su - -c “命令” username 可以不切换到username下以uaername用户身份执行“命令”

如:

[root@zekLinux ~]#su - -c "mkdir /tmp/1212" aming123

[root@zekLinux ~]# su - -c "ls -ld /tmp/1212" aming123

drwxrwxr-x 2 aming123 aming123 4096 12月 27 01:59 /tmp/1212

#logout与#exit的异同

exit 退出控制台,对于多层shell,用于逐层退出,到最顶层shell,如果在shell当中执行命令bash,就进入子shell中,这时候我们可以使用exit退出当期子shell,但不能使用logout退出子shell。当到最最原始的shell时,我们使用exit或者logout都会退出。如果没有切换过用户的话,这两个命令都是退出控制台了。 如果切换过用户的话,这两个命令都是注销当前用户,返回上一个用户。

sudo 普通用临时以root身份执行命令

#visudo 打开sudo的配置文件

找到:root ALL=(ALL) ALL 在后添加

aming123 ALL=(root) /bin/ls 让aming123普通用户获得root权限执行ls命令,但ls 必须写成绝对路径。

用#可以注释某一行

#sudo -l 查看当前用户是否有sudo命令可以执行。

若添加多个命令用逗号隔开

aming123 ALL=(root) /bin/ls,/usr/bin/passwd

若让aming123用户执行sudo ls /root 命令时不需要输入aming123用户的密码则序设置为:

aming123 ALL=(root) NOPASSWD:/bin/ls

若多个用户须执行某个命令则将多个用加入到wheel组里即可,然后对wheel组进行限制。

%wheel ALL=(ALL) ALL

df 查看分区及使用情况

free 连同swap一起查看

df 默认文件以K为单位

df -k -m(以M为单位) -i(inode)-h(自动匹配单位)-a显示所有分区(包括隐藏分区)

du 查看文件或目录大小

du 默认以K为单位

#du -m -h -b(bytes为单位)

#du -sh dir/filename 查看指定目录dir或文件filename大小

#du -sh filename/dir 查看文件或目录占用磁盘大小

#ls -lh filename/dir 查看文件或目录本身大小

当然#du -sb #ls -lb查看文件大小一样

更多相关文章
一周排行