sudo相关知识
-
sudo 入门指南你在使用 Linux 命令行时曾经得到过“拒绝访问(Permission denied)”的错误提示吗?这可能是因为你正在尝试执行一个需要 root 权限的操作。例如,下面的截图展示了当我尝试复制一个二进制文件到一个系统目录时产生的错误。那么该怎么解决这个错误?很简单,使用 sudo 命令。用户运行此命令后会被提示输入他们(自己)的登录密码。一旦输入了正确的密码,操作将会成功执行。毫无疑问,sudo 是任何在 Linux 上使用命令行的人都必须知道的命令。但是,为了更负责、更有效地使用该命令,你还是要知道一些相关(及深入)的细节。这正是我们将会在这篇文章中讨论的。在我们继续之前,值得提一下的是,这篇文章所提到的所有命令指示都已经在 Ubuntu 14.04 LTS 下的 4.3.11 版 Bash 下通过测试。什么是 sudo正如你们大部分人所知道的,sudo 用来执行需要提升权限(通常是作为 root 用户)的命令。在这篇文章之前的简介部分已经讨论过这样的一个例子。然而,如果你想的话,你能用 sudo 以
-
sudo 出现unable to resolve host 解决方法sudo 出现unable to resolve host 解决方法 Ubuntu环境, 假设这台机器名字叫abc(机器的hostname), 每次执行sudo 就出现这个警告讯息: sudo: unable to resolve host abc 虽然sudo 还是可以正常执行, 但是警告讯息每次都出来,而这只是机器在反解上的问题, 所以就直接从/etc/hosts 设定, 让abc(hostname) 可以解回127.0.0.1 的IP 即可./etc/hosts 原始内容 127.0.0.1 localhost # The following lines are desirable for IPv6 capable hosts ::1 localhost ip6-localhost ip6-loopback ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefi
-
输错密码?这个 sudo 会“嘲讽”你你在 Linux 终端中会有很多的乐趣。我今天要讲的不是在终端中跑火车。我今天要讲的技巧可以放松你的心情。前面一篇文章中,你学习了如何在命令行中增加 sudo 命令的超时。今天的文章中,我会向你展示如何让 sudo 在输错密码的时候“嘲讽”你(或者其他人)。对我讲的感到疑惑?这里,让我们看下这张 gif 来了解下 sudo 是如何在你输错密码之后“嘲讽”你的。那么,为什么要这么做?毕竟,“嘲讽”不会让你的一天开心,不是么?对我来说,一点小技巧都是有趣的,并且要比以前的“密码错误”的错误提示更有趣。另外,我可以向我的朋友展示来逗弄他们(这个例子中是通过自由开源软件)。我很肯定你有你自己的理由来使用这个技巧的。在 sudo 中启用“嘲讽”你可以在sudo配置中增加下面的行来启用“嘲讽”功能:Defaults insults让我们看看该如何做。打开终端并使用下面的命令:sudo visudo这会在 nano中打开配置文件。是的,我知道传统的 ‘visudo’ 应该在 vi 中打开 /etc/sudoers
-
Linux 系统中 sudo 命令的 10 个技巧概览sudo 表示 “superuser do”。 它允许已验证的用户以其他用户的身份来运行命令。其他用户可以是普通用户或者超级用户。然而,大部分时候我们用它来以提升的权限来运行命令。sudo 命令与安全策略配合使用,默认安全策略是 sudoers,可以通过文件 /etc/sudoers 来配置。其安全策略具有高度可拓展性。人们可以开发和分发他们自己的安全策略作为插件。与 su 的区别在 GNU/Linux 中,有两种方式可以用提升的权限来运行命令:使用 su 命令使用 sudo 命令su 表示 “switch user”。使用 su,我们可以切换到 root 用户并且执行命令。但是这种方式存在一些缺点:我们需要与他人共享 root 的密码。因为 root 用户为超级用户,我们不能授予受控的访问权限。我们无法审查用户在做什么。sudo 以独特的方式解决了这些问题。首先,我们不需要妥协来分享 root 用户的密码。普通用户使用他们自己的密码就可以用提升的权限来执行命令。我们可以控制 sudo 用户的访问,这意
sudo相关课程
sudo相关教程
- 4. sudo 命令介绍 sudo 是 Linux 系统管理指令,是允许系统管理员让普通用户执行一些或者全部的 root 命令的一个工具,如 halt,reboot,su 等等。这样不仅减少了 root 用户的登录和管理时间,同样也提高了安全性。sudo 不是对 shell 的一个代替,它是面向每个命令的。下面演示一个普通用户执行 root 权限的过程,过程命令下:cat /etc/shadow # 使用普通用户直接查看 /etc/shadow 会提示权限不够sudo cat /etc/shadow # 使用 sudo 执行 root 权限su root # 切换 root 用户执行结果如下图:Tips:之前提到过 /etc/shadow 只有 root 权限才能访问。如上图所示切换至 root 用户之后,可以在 /etc/sudoers 文件中设置 study_linux 用户的 sudo 权限,首先使用 Vim 打开 /etc/sudoers 文件,命令如下:vim /etc/sudoers执行结果如下图:保存退出之后,切换至 study_linux 用户,重新执行之前查看 /etc/shadow 文件的过程,命令如下:su study_linuxcat /etc/shadowsudo cat /etc/shadow执行结果如下:
- 2.2 安装配置 创建日志文件和配置文件:--consul日志sudo touch /consul/log/consul.log--Consul配置sudo touch /consul/consul.d/consul_config.json--服务注册sudo touch /consul/consul.d/proxysql.json 安装 Consul:--解压缩即可cd /consulunzip consul_1.8.4_linux_amd64.zip--创建软链接ln -s /consul/consul /usr/bin/consul--查看版本consul --versionConsul v1.8.4
- 1. none 模式 容器有自己的网络命名空间,但不做任何配置,它与宿主机、与其他容器都不连通的。我们新建一个 none 模式的 busybox 镜像 b0:docker run -d -t --network none --name b0 busybox使用 docker exec b0 ip a 查看它的网络状态, 验证它仅有 lo 接口,不能与容器外通信:两个容器之间可以直连通信,但不通过主机网桥进行桥接。解决的办法是创建一对 peer 接口,分别放到两个容器中,配置成点到点链路类型即可。⚠️ 以下操作需要在 Linux 下进行:首先启动 2 个容器:docker run -it -d --net=none --name=none1 busyboxdocker run -it -d --net=none --name=none2 busybox 找到这两个容器的进程号:docker inspect -f '{{.State.Pid}}' none1 #6545docker inspect -f '{{.State.Pid}}' none2 #6606然后创建网络命名空间的跟踪文件:sudo mkdir -p /var/run/netnssudo ln -s /proc/6545/ns/net /var/run/netns/6545sudo ln -s /proc/6606/ns/net /var/run/netns/6606创建一对 peer 接口,然后配置路由: sudo ip link add A type veth peer name B sudo ip link set A netns 6545 sudo ip netns exec 6545 ip addr add 10.1.1.1/32 dev A sudo ip netns exec 6545 ip link set A up sudo ip netns exec 6545 ip route add 10.1.1.2/32 dev A sudo ip link set B netns 6606 sudo ip netns exec 6606 ip addr add 10.1.1.2/32 dev B sudo ip netns exec 6606 ip link set B up sudo ip netns exec 6606 ip route add 10.1.1.1/32 dev B现在这 2 个容器就可以相互 ping 通,并成功建立连接。点到点链路不需要子网和子网掩码:测试完毕删除无用的容器:docker rm -f none1 none2
- 2. 预装依赖包 Nginx 是完全用 c 语言编写的,所以想要编译 Nginx,必须要有 c 编译器(gcc), 只要系统里有 gcc, Nginx 就可以编译安装。但是往往我们会用的到 Nginx 的一些重要功能,比如压缩和解压缩功能,这时就必须需要依赖 zlib 库,想在配置文件中使用正则表达式,就必须安装 pcre 库,最后想实现 SSL/TLS 功能,必须安装 openssl 库。无论是在 Ubuntu 还是 CentOS 系统中都大致如此,只不过管理软件包的工具不一样,依赖库的名称也不一样。在 Ubuntu 系统下,在 Ubuntu 中执行如下命令安装依赖库:$ sudo apt-get update # 更新下apt源$ sudo apt-get install gcc # Nginx必备$ sudo apt-get install make # 编译安装需要make工具$ sudo apt-get install libz-dev$ sudo apt-get install libpcre3-dev$ sudo apt-get install libssl-dev
- 4.1 安装 virtualenv 在 linux 下,使用 apt 命令安装 virtualenv:$ sudo apt install virtualenv或者,使用 pip3 命令安装 virtualenv:$ sudo pip3 install virtualenv
- 1.2 解压语言包 解压文件,一般解压到/usr/local。解压后得到/usr/local/go文件夹,这一步可能需要 root 权限,如果你是 root 账号,则可以不加 sudo 。sudo tar -C /usr/local -zxvf go1.13.5.linux-amd64.tar.gz解压 Go 语言的安装包
sudo相关搜索
-
s line
safari浏览器
samba
SAMP
samplerate
sandbox
sanitize
saper
sas
sass
save
smarty模板
smil
smtp
snapshot
snd
snmptrap
soap
soapclient
soap协议