我目前正在尝试在Windows操作系统上安装和更新一些软件包。唯一的问题是我使用Cygwin来通过终端键入命令(因为我知道,我可以在Cygwin上键入Linux类型命令,如cd,ls等 - 我可能错了)。但是,当我尝试安装类似的包时:
sudo apt-get install paparazzi-dev
我收到了回复:
-sh: sudo: command not found.
有没有人知道如何解决这个问题?
答案 0 :(得分:27)
以管理员身份运行cygwin ..那么你就不需要任何sudo命令了。
答案 1 :(得分:12)
Cygwin不是完整的Linux发行版。因此,您没有sudo或Debian / Ubuntu包管理器apt-get。 Cygwin存储库提供了许多软件包:http://cygwin.com/packages/ 您必须在安装过程中选择这些包。
答案 2 :(得分:1)
Windows没有sudo,apt或几乎所有Linux命令。 Cygwin可能允许一些,但由于程序没有安装在Windows上,因为apt-get软件包将无法运行。 Windows程序的安装程序为.exe或.msi。
如果您需要以另一个用户身份运行某些内容,则将Windows版本的sudo称为runas。或者,您可以以管理员身份运行Cygwin。
如果必须使用Linux,则需要Linux。您可以直接安装它来替换Windows,双启动或使用VMware VirtualBox等虚拟化软件。
答案 3 :(得分:0)
在@Aimal的答案中给出了解释性答案,因为它对我有效。
通过点击正常模式下的Cygwin
图标, permissions to create folders and files
可能无法获得Cygwin
。
Cygwin
仅在right click -> "run as adminitrator"
上cygwin icon
获得正确的授权,因为它获得了permissions to create folders and files
。
答案 4 :(得分:0)
Cygwin允许您运行某些命令,例如cd,ls或mv;但它不允许你运行其他命令,例如sudo或apt-get。
如果您尝试将软件包添加到Cygwin安装中,请重新运行Cygwin安装程序。它可能仍在您的“下载”文件夹中。再次完成所有步骤。 Cygwin安装程序将自动下载并安装所需的软件包,并将其添加到您的Cygwin安装中。 (我认为它可能还会将您所有其他已安装的Cygwin软件包升级到最新版本。)
如果您所需的套餐不在Cygwin package list但在Cygwin Ports package list上,请按照Cygwin Ports installation instructions进行操作。请注意,Cygwin Ports与Cygwin是分开的。请不将有关Cygwin Ports软件包的消息发送到cygwin.com邮件列表。
如果您有多年的Linux经验,您可以在Cygwin中编译您想要的软件。这可能具有挑战性。
或许比“自己编译”更简单的选项是:您可以安装VirtualBox,然后在虚拟机中安装您喜欢的Linux发行版,然后在Linux中安装所需的软件包。 (我喜欢Ubuntu Linux,它的“Universe”存储库中有超过27,000个包。)现在你可以同时运行Linux和Windows。
答案 5 :(得分:0)
我认为在做了一些研究之后我尝试了以下步骤。成功(在Windows上)
1.使用powershell 3安装scoop(iex(new-object net.webclient).downloadstring('https://get.scoop.sh')) 2.做scoop install --global sudo 3.确保在环境路径变量中添加路径(C:\ Users \\ scoop \ shims& C:\ ProgramData \ scoop \ shims)。
答案 6 :(得分:-2)
在我的情况下,我想安装curl,但是在运行命令“make install”时无法创建目录/ usr / local / curl / lib,因为权限拒绝。所以我需要更改/ usr / local权限。当我运行sudo chmod 755 / usr / local时,找不到sudo命令。
搜索了几个解决方案后,发现默认情况下没有在Cygwin中安装sudo。但我尝试了Aimal提供的解决方案,即以管理员身份运行Cygwin。我终于可以更改文件夹权限了。谢谢Aimal。