найдите общую оперативную память и подкачайте память

Вы заявляете: "Если я добавил бы eth0 с dhcp опцией к/etc/network/interfaces, это работает".

Почему не просто используют это? Если существует № eth0, может там быть eth1?

Если Вам не нужен специальный/локальный сервер имен, Вы могли добавить постоянную группу серверов имен серверов имен Google (8.8.8.8/8.8.4.4)

Если Вы ДЕЙСТВИТЕЛЬНО нуждаетесь в специальном/локальном и имеете некоторый контроль, по которому Вы могли сделать его очень статичным и помещать это там. (как 172.31.254.254,172.31.1.254)

Я думал, что у или Вас будет статический resolv.conf, ИЛИ Вы получили бы его от своего dhcp сервера.

Если Вы не можете заставить свой pxe загрузочный образ включать статический, Вы могли бы добавить/etc/rc.local (или equiv для Вашего дистрибутива), который ударяет значения на месте.

1
28.02.2013, 08:23
2 ответа

/proc/meminfo файл содержит информацию, которая Вы после. Довольно легко проанализировать также.

Это получит Вас RAM и подкачка (в том порядке, единица является КБ во всех системах, которые я знаю):

awk '/^(MemTotal|SwapTotal)/{print $2}' /proc/meminfo

Для форматирования его Вы могли сделать что-то как:

printf "%s\t%d\t%d\n" $(hostname) \
                      $(awk '/^(MemTotal|SwapTotal)/{print $2}' /proc/meminfo)

Для объединения этого с ssh сделайте что-то как:

for host in your_list_of_servers ; do
  printf "%s\t%d\t%d\n" $host \
                   $(ssh $host "awk '/^(MemTotal|SwapTotal)/{print \$2}' /proc/meminfo")
done
4
27.01.2020, 23:17
  • 1
    это поможет во время входа к каждому серверу и выполнит его. –  Venom 28.02.2013, 08:48
  • 2
    , которому это помогло бы, если бы я выполняюсь в каждом сервере Здесь, я должен сделать в 2000 сервер, он был бы похож на вход к каждому серверу и выполнил бы команду. [root@master/] # ssh redhat1 'printf "%s\t%d\t%d\n" $ (имя хоста) $ (awk '/^ (MemTotal|SwapTotal) / {печатают 2$}'/proc/meminfo)', удар: синтаксическая ошибка около неожиданного маркера' (' вывод –  Venom 28.02.2013, 08:52
  • 3
    Обновленный с примером того, как Вы могли сделать это в цикле. –  Mat 28.02.2013, 09:54

Сначала необходимо установить пароль меньше входа в систему, можно отослать эту страницу.

После этого можно использовать ниже сценария согласно требованию.

#!/bin/bash
# store username:ip combo here separated by a whitespace
_pair="root@192.168.250.30 user1@192.168.x.x user1@192.x.x.x.x"

for e in $_pair
do
        # extract user and ips for each $e in $_pair
        IFS='@'
        set -- $e
        _user="$1"
        _ip="$2"

        sleep 2
        echo "Connecting to server '${_ip}' via SSH..."
        ssh ${_user}@${_ip} "free -m | awk -v h=$HOSTNAME '(/Mem/||/Swap/){printf("%s\t%s%d\t",h,$1,$2)}'; echo -e"
done
1
27.01.2020, 23:17
  • 1
    таким образом redhat1 Мадам: 7855M redhat1 Подкачка: 3371M может Вы говорить мне, как добраться таким образом, вывод redhat1 7855M 3371M –  Venom 28.02.2013, 09:07
  • 2
    является таким образом redhat1 Мадам: 7855M redhat1 Подкачка: 3371M может Вы говорить мне, как заставить таким образом redhat1 7855M 3371M –  Venom 28.02.2013, 09:10
  • 3
    @ashwini, который я Обновил согласно Вашему требованию, проверяет его теперь. –  Rahul Patil 28.02.2013, 11:20

Теги

Похожие вопросы