在 HDFS 中,文件被分割成块,这些块分布在多个节点上。
我想知道在以下分布式文件系统中是否也是如此:NFS、Andrew 文件系统(以及 Bayou、Coda,如果你碰巧知道的话)?
谢谢。
在 HDFS 中,文件被分割成块,这些块分布在多个节点上。
我想知道在以下分布式文件系统中是否也是如此:NFS、Andrew 文件系统(以及 Bayou、Coda,如果你碰巧知道的话)?
谢谢。
HTTP:权威指南说
未虚拟托管且不允许资源因请求的主机而异的源服务器可能会忽略 Host 标头字段值。但是任何基于主机区分资源的源服务器都必须使用以下规则来确定 HTTP/1.1 请求中请求的资源:
如果HTTP 请求消息中的 URL是绝对的(即,包含方案和主机组件),则忽略 Host 标头中的值以支持 URL。
如果HTTP 请求消息中的 URL没有主机,并且请求包含 Host 头,则从 Host 头中获取主机/端口的值。
如果通过步骤 1 或 2 无法确定有效主机,则向客户端返回 400 Bad Response 响应。
“HTTP 请求消息中的 URL”在哪里?
它是请求行中的那个吗(在 HTTP 请求的第一行,在方法之后GET
)?
谢谢。
https://en.wikipedia.org/wiki/Virtual_hosting
基于名称的虚拟主机对同一 IP 地址使用多个主机名。
基于名称的虚拟主机所需的技术先决条件是具有 HTTP/1.1 支持(今天很常见)的 Web 浏览器,以在请求中包含目标主机名。这允许在一个 IP 地址后面托管多个站点的服务器提供正确的站点内容。更具体地说,它意味着设置 Host HTTP 标头,这在 HTTP/1.1 中是强制性的。[2]
例如,服务器可能正在接收对两个域 www.example.com 和 www.example.net 的请求,这两个域都解析为相同的 IP 地址。对于 www.example.com,服务器将从目录 /var/www/user/Joe/site/ 发送 HTML 文件,而对 www.example.net 的请求将使服务器从 /var/www/user 提供页面/玛丽/网站/。同样,同一域的两个子域可以托管在一起。例如,博客服务器可能同时托管 blog1.example.com 和 blog2.example.com。
当同一 Web 服务器上的多个基于名称的虚拟主机共享同一个 IP 时,它们是否一定共享同一个端口?
谢谢。
我之前在这里问过一个问题。我的问题是我试图通过管道将我的密码提供给 scp
echo mypassword | scp [email protected]:project/* ~/project/
但是它仍然要求我手动输入密码。我应该如何在命令中指定 mypassword 到 scp?
我仍然不明白其中一个答复。例如,TTY 的输入流是什么?输入流的常用方式有哪些?如何知道输入到命令的标准输入是什么类型的输入流?例如 ssh/scp。
(1) 我想上传一些文件到服务器
for (( i=0 ; i < 23 ; i+=1 )); do
echo mypassword | scp [email protected]:project/$i/train10000/finer_search_c_g ~/project/$i/train10000/
done
我希望通过将我的密码传递给 scp,循环将在没有交互的情况下执行。但是它仍然要求我手动输入密码。我应该如何将 mypassword 指定给 scp?
(2) 我不使用 ssh-keygen 生成的身份验证密钥,因为服务器实际上是集群的头节点。我发现如果我使用 ssh-keygen 生成身份验证密钥,~/.ssh 下的文件会使节点之间的访问需要密码,我找不到解决方案。是否可以在使用身份验证密钥从集群外部访问头节点时使用空密码进行节点之间的访问?
谢谢并恭祝安康!
我有一个附加的屏幕会话,我正在运行一些作业。我关闭了它的终端而没有分离它,因为它没有突然响应。现在screen -ls
我可以看到它仍然是附加的。但是我不能在不先将其分离的情况下重新连接它,但是分离它需要很长时间并且还没有完成。
bash-3.2$ screen -ls
There are screens on:
14493.ssh2others (Attached)
1 Socket in /tmp/uscreens/S-tim.
bash-3.2$ screen -r 14493
There is a screen on:
14493.ssh2others (Attached)
There is no screen to be resumed matching 14493.
bash-3.2$ screen -d 14493
我想知道为什么需要这么长时间并且还没有完成分离?
由于我的工作正在屏幕会话中运行,我担心杀死它也会杀死我的工作。那么我现在可以做些什么来分离和重新连接它呢?
谢谢!
我在计算机 A 上使用以下命令生成从计算机 A 到计算机 B 的 ssh 身份验证密钥
ssh-keygen -t rsa
scp ~/.ssh/id_rsa.pub B:.ssh/authorized_keys2
如果进一步我需要生成从计算机 C 到计算机 B 的 ssh 身份验证密钥,如何防止覆盖 B 上的现有文件 .ssh/authorized_keys2 以供 A 到 B?
谢谢并恭祝安康!
我与服务器的 ssh 连接失败。这是连接的输出
$ ssh -v [server]
OpenSSH_5.1p1 Debian-3ubuntu1, OpenSSL 0.9.8g 19 Oct 2007
debug1: Reading configuration data /home/tim/.ssh/config
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug1: Connecting to [server] [server ip] port 22.
debug1: Connection established.
debug1: identity file /home/tim/.ssh/identity type -1
debug1: identity file /home/tim/.ssh/id_rsa type 1
debug1: Checking blacklist file /usr/share/ssh/blacklist.RSA-2048
debug1: Checking blacklist file /etc/ssh/blacklist.RSA-2048
debug1: identity file /home/tim/.ssh/id_dsa type -1
ssh_exchange_identification: Connection closed by remote host`
有谁知道怎么了?谢谢并恭祝安康!
我一直在通过 linux 服务器上的 bash 脚本运行一个耗时的后台程序。在同一个 bash 脚本中,我通过“set -o notify”设置通知,这样我就可以知道后台作业何时完成。
可能是昨天晚上突然弹出通知说后台作业已完成,之后出现以下错误消息,我不确定是在后台作业完成后立即发生还是稍后发生,因为我不在终端那时:
do_ypcall: clnt_call: RPC: 无法接收;errno = 连接被拒绝
do_ypcall: clnt_call: RPC: 无法接收;errno = 连接被拒绝
do_ypcall: clnt_call: RPC: 无法接收;errno = 连接被拒绝
我还将后台作业的 stdout 输出重定向到一个日志文件,该文件似乎表明该程序未按预期完成,但在中途终止。
你能解释一下错误信息的含义吗?如果可能的话,我可能会遇到什么样的问题?难道是管理员对我可以在该服务器上使用的资源设置了一些限制?
谢谢并恭祝安康!
更新:
同一个硬盘驱动器通过 NFS 安装在多个服务器上,包括上述服务器。我刚刚发现另一台服务器上发生了类似但不同的错误:
do_ypcall:clnt_call:RPC:超时
此错误和之前的错误似乎不会影响正在运行的程序。顺便说一句,我的程序有 IO 操作。
在我们的服务器上查看 top 的输出时,我的一位同事告诉我,某些进程的“%CPU”低于 100 是因为我运行了太多进程。他补充说,根据他的经验,如果我运行的进程少于 6 个,那么可能所有进程都有 100“%CPU”。
我不想成为其他用户的烦恼,但我怀疑他所说的是否正确。服务器有 16 个核心,当前平均负载在 10 到 11 之间。据我了解,它并没有过载。但我不知道为什么有些进程只得到少于 100“%CPU”?真的是因为我吗?
谢谢并恭祝安康!
这是top的输出:
top - 16:34:13 up 32 days, 1:36, 12 users, load average: 10.61, 10.39, 10.22
Tasks: 380 total, 10 running, 370 sleeping, 0 stopped, 0 zombie
Cpu(s): 55.0%us, 1.7%sy, 0.0%ni, 42.2%id, 0.5%wa, 0.1%hi, 0.4%si, 0.0%st
Mem: 130766620k total, 39859784k used, 90906836k free, 849412k buffers
Swap: 47351548k total, 279456k used, 47072092k free, 19792956k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
17197 tim 18 -2 1315m 1.3g 1504 R 100 1.0 4510:11 MLtest
28762 tim 18 -2 1315m 1.3g 1504 R 100 1.0 4633:01 MLtest
29249 tim 18 -2 1315m 1.3g 1504 R 100 1.0 4623:03 MLtest
29560 tim 18 -2 1315m 1.3g 1504 R 100 1.0 4626:59 MLtest
4904 tim 18 -2 1315m 1.3g 1504 R 100 1.0 4757:12 MLtest
5143 tim 18 -2 1315m 1.3g 1504 R 100 1.0 4759:40 MLtest
29389 tim 18 -2 1315m 1.3g 1504 R 99 1.0 4622:11 MLtest
5285 tim 18 -2 1315m 1.3g 1504 R 97 1.0 4758:49 MLtest
4763 tim 18 -2 1315m 1.3g 1504 R 93 1.0 4754:22 MLtest
9456 zma 18 -2 206m 85m 11m S 48 0.1 60:46.78 dropbox
7527 vals 18 -2 1266m 436m 42m S 4 0.3 613:57.10 MATLAB
2903 root 15 -5 0 0 0 S 1 0.0 19:00.01 rpciod/0
19133 vals 18 -2 1380m 503m 42m S 1 0.4 798:47.99 MATLAB
12454 tim 18 -2 19248 1588 1024 R 1 0.0 0:48.88 top
12 root RT -5 0 0 0 S 1 0.0 35:01.05 migration/3
2924 root 15 -5 0 0 0 S 1 0.0 27:20.92 nfsiod
12690 jun 18 -2 913m 84m 2684 S 1 0.1 121:55.65 MATLAB
19650 jun 18 -2 19244 1600 1028 S 1 0.0 6:58.41 top
6 root RT -5 0 0 0 S 0 0.0 129:49.45 migration/1
9 root RT -5 0 0 0 S 0 0.0 104:34.66 migration/2
2870 daemon 20 0 8180 404 308 S 0 0.0 5:18.91 portmap
8985 root 20 0 28484 344 264 S 0 0.0 6:24.77 hald-addon-stor
9293 root 20 0 369m 4208 2316 S 0 0.0 83:36.35 kdm_greet
24028 tim 18 -2 871m 140m 45m S 0 0.1 7:50.56 MATLAB
1 root 20 0 4104 304 224 S 0 0.0 0:03.59 init
2 root 15 -5 0 0 0 S 0 0.0 0:00.26 kthreadd
3 root RT -5 0 0 0 S 0 0.0 0:00.31 migration/0
4 root 15 -5 0 0 0 S 0 0.0 1:08.91 ksoftirqd/0
我正在使用具有 128GB 内存和 24 个内核的 linux 服务器。我使用 top 来查看它的使用量。它的输出粘贴在帖子的末尾。这里有两个问题:
(1)我看到每个正在运行的进程占用的内存比例很小(%MEM不超过0.2%,大多数只有0.0%),但是总内存怎么用的差不多,就像第四行的输出一样( “内存:总共 130766620k,使用了 130161072k,605548k 空闲,919300k 缓冲区”)?所有进程中已用内存百分比的总和似乎不太可能达到几乎 100%,不是吗?
(2)如何理解第一行的平均负载(“平均负载:14.04, 14.02, 14.00”)?
谢谢并恭祝安康!
编辑:
谢谢!
我也很喜欢听到一些基于已用内存百分比的粗略数字,以确定服务器是否负载过重,因为我曾经是在不了解当前负载的情况下塞满服务器的人。
交换是否被视为与内存几乎相同?例如,当内存和swap大小几乎相同时,如果内存快用完了,但swap仍然大部分是空闲的,我可以只看内存+swap的使用百分比仍然不高,然后运行其他新的吗?流程?
您如何考虑 CPU 或内存(或内存 + 交换)的使用?如果它们中的任何一个达到太高或两者兼而有之,您会担心吗?
顶部输出:
$顶部
顶部 - 19 天 12:45:33,23:11,18 个用户,平均负载:14.04、14.02、14.00 任务:共 484 个,运行 12 个,睡眠 472 个,停止 0 个,僵尸 0 个 CPU:36.7%us、19.7%sy、0.0%ni、43.6%id、0.0%wa、0.0%hi、0.0%si、0.0%st 内存:总计 130766620k,已使用 130161072k,空闲 605548k,919300k 缓冲区 交换:总计 63111312k,已使用 500556k,免费 62610756k,缓存 124437752k PID 用户 PR NI VIRT RES SHR S %CPU %MEM TIME+ 命令 6529 桑切斯 18 -2 1075m 219m 13m S 100 0.2 13760:23 MATLAB 13210 蒂莫西 18 -2 48336 37m 1216 R 100 0.0 3:56.75 荒谬 13888 蒂莫西 18 -2 48336 37m 1204 R 100 0.0 2:04.89 荒谬 14542 蒂莫西 18 -2 48336 37m 1196 R 100 0.0 1:08.34 荒谬 14544 蒂莫西 18 -2 2888 2076 400 R 100 0.0 1:06.14 收集数据 6183 桑切斯 18 -2 1133m 195m 13m S 100 0.2 13676:04 MATLAB 6795 桑切斯 18 -2 1079m 210m 13m S 100 0.2 13734:26 MATLAB 10178 蒂莫西 18 -2 48336 37m 1204 R 100 0.0 11:33.93 荒谬 12438 蒂莫西 18 -2 48336 37m 1216 R 100 0.0 5:38.17 荒谬 13661 蒂莫西 18 -2 48336 37m 1216 R 100 0.0 2:44.13 荒谬 14098 蒂莫西 18 -2 48336 37m 1204 R 100 0.0 1:58.31 荒谬 14335 蒂莫西 18 -2 48336 37m 1196 R 100 0.0 1:08.93 荒谬 14765 蒂莫西 18 -2 48336 37m 1196 R 99 0.0 0:32.57 荒谬 13445 蒂莫西 18 -2 48336 37m 1216 R 99 0.0 3:01.37 荒谬 28990 根 20 0 0 0 0 S 2 0.0 65:50.21 pdflush 12141 蒂姆 18 -2 19380 1660 1024 R 1 0.0 0:04.04 顶部 1240 根 15 -5 0 0 0 S 0 0.0 16:07.11 kjournald 9019 根 20 0 296m 4460 2616 S 0 0.0 82:19.51 kdm_greet 1 根 20 0 4028 728 592 S 0 0.0 0:03.11 初始化 2 根 15 -5 0 0 0 S 0 0.0 0:00.00 kthreadd 3 根 RT -5 0 0 0 S 0 0.0 0:01.01 迁移/0 4 根 15 -5 0 0 0 S 0 0.0 0:08.13 ksoftirqd/0 5 根 RT -5 0 0 0 S 0 0.0 0:00.00 看门狗/0 6 根 RT -5 0 0 0 S 0 0.0 17:27.31 迁移/1 7 根 15 -5 0 0 0 S 0 0.0 0:01.21 ksoftirqd/1 8 根 RT -5 0 0 0 S 0 0.0 0:00.00 看门狗/1 9 根 RT -5 0 0 0 S 0 0.0 10:02.56 迁移/2 10 根 15 -5 0 0 0 S 0 0.0 0:00.34 ksoftirqd/2 11 根 RT -5 0 0 0 S 0 0.0 0:00.00 看门狗/2 12 根 RT -5 0 0 0 S 0 0.0 4:29.53 迁移/3 13 根 15 -5 0 0 0 S 0 0.0 0:00.34 ksoftirqd/3
我正在尝试在家中设置一个通过无线路由器连接到互联网的 ssh 服务器。既然它的IP是动态的,那么如何在客户端指定它的地址呢?谢谢!
我通过 OpenSSH 在笔记本电脑上的 Ubuntu 上设置了 SSH 服务器。虽然 ssh localhost 没问题,但我尝试先从 ssh 到另一台计算机,然后从那里 ssh 使用其外部 IP 地址返回到我的笔记本电脑,但它失败并显示“连接到主机 xxx 端口 xxx:连接超时”。我的笔记本电脑通过以 Comcast 作为提供商的路由器无线连接到互联网。所以我想我有一个动态IP?设置或连接的正确方法是什么?谢谢并恭祝安康!