bash:fdisk:command not found 解决办法

时间:2022-07-02 01:45:36

 

1)用"fdisk  -l"查看硬盘分区信息时,出现了“-bash: fdisk: command not found”的错误,解决办法如下:
      1,管理员登录
      2,执行命令 # ln -s /sbin/fdisk /usr/bin
      OK!

2)

root权限运行 fdisk -l 会出现

bash:fdisk:command not found
先查看你当前的命令搜索路径:

[root@localhost sbin]# echo $PATH
/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/home/vincent/bin

以上第二行显示的是命令搜索路径,再看看自己系统中fdisk所在路径。

用whereis fdisk 查询显示路径

[root@localhost home]# whereis fdisk
fdisk: /sbin/fdisk /usr/share/man/man8/fdisk.8.gz

以上第二行显示的fdisk所在路径 /sbin/fdisk......

找到原因,/sbin的目录路径(系统用户目录)不在root的$PATH变量中造成的。

$su
#cd /home/wangwei(你的用户名)
#gedit .bash_porfile

在出现的文本编辑器中,找到PATH=$PATH:$HOME/bin。

在该行后面加上“:/sbin“(不含引号),如下行:

PATH=$PATH:$HOME/bin:/sbin

保存退出。

注销→勾选保存当前设置→重新启动。

 

3)

Linux命令找不到?(找不到命令)
这个问题其实很简单,如果你在终端输入一个命令,而系统提示你说命令没有找到(Command not found)的话,要么是因为你没有装相应的软件包,要么就是因为路径设置的问题。如果是因为软件包的问题,那没有别的好说的,安装相应的软件包就好了。而另外一种情况,则需要对用户的路径进行设置。这里针对普通用户和超级用户分开介绍,以Redhat些列为例。
       
一、普通用乎
如果一些程序没有安装在系统默认的路径(ie /bin/, /usr/bin, /usr/local/bin/ )里面,这个时候普通用户想要调用这些命令,必须设定路径。方法很简单:以普通用户登录,然后在终端输入:

vi ~/.bash_profile

会出现如下的内容:
# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

# User specific environment and startup programs

export PATH
此时,只要在export PATH前面加入自己的路径即可,例如我的修改后如下:
[yyc@localhost bin]$ cat ~/.bash_profile
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:/usr/local/programs/crosstool/gcc-4.0.2-glibc-2.3.6/arm-linux-gnu/bin/
export PATH
二、超级用户
这里主要是一些用在系统管理上的命令,例如ifconfig, route等等, 他们位于/sbin, 或/usr/sbin/下。其实这些命令本身就没有任何问题,软件包早已安装完毕,路径设置也没有丝毫问题。而出现Command not found的原因在于:在终端使用su变成超级用户的时候没有将root的路径(环境)一起切换过来,从而导致身份虽然已经是root,但是工作的环境和路径依旧是普通用户的。这种问题的解决方法有两个,其一是按照(一)里面提到的,对普通用户的工作路径进行修改,但是这样比较麻烦。其二则简单的多,只要在使用su的时候在其后家上一个空格和”-“ ,即将su改为 su -  。这样就可以在成为root的同时将root的工作路径也一起切换过来了。如果你已经使用su变成了root,那也没有关系,只要在输入一下su - 就好了。

(PS:用最后一种解决了)