Как узнать модель сервера и его серийный номер в Windows, Linux, FreeBSD

Если вам понадобилось узнать модель сервера или серийный номер, то необязательно запускать всякого рода утилиты для управления сервером или сбора информации, а уже тем более не за чем идти в серверную. Всё это можно узнать не отходя от компьютера.
Для Windows систем нужно запустить командную строку и узнать интересующие сведения средствами Windows Management Instrumentation (WMI):

- Производитель:

wmic csproduct get vendor

- Серийный номер

wmic bios get serialnumber

- Модель:

wmic csproduct get name

Для Linux систем существует утилита dmidecode. Обычно эта утилита установлена в дистрибутивы, но если нет, то её можно всегда установить отдельно.
Команда для получения информации о сервере:

# dmidecode –t system
Как создать файл нужного/большого размера в Linux или в FreeBSD

Если вам нужен файл определенного размера для тестирования скорости сети или т.п., то необязательно искать "реальные" файлы для этого. Можно просто создать нужный файл такого размера, какого вы захотите. Для этого используется утилита dd. Она будет работать и в Linux и в Unix.

Командой ниже создастся файл размером 3 Gb:

# dd if=/dev/zero of=filename bs=1000M count=3

Результатом команды будет файл в 3 Gb и вывод на консоль следующего:

# dd if=/dev/zero of=filename bs=1000M count=3
3+0 records in
3+0 records out
3145728000 bytes (3.1 GB) copied, 13.3651 s, 235 MB/s
Скрипт проверки свободного дискового пространства в Linux с отправкой на e-mail

Представляю скрипт на bash для вычисления свободного места на жестком диске сервера Linux. В случае если свободное пространство подходит к концу - мы получаем уведомление на почту.

Второй вариант скрипта, где задается определенный лимит на папку с бэкапами, при достижении которого, удаляются самые старые бэкапы:

Как узнать какой дистрибутив Linux установлен

Как узнать какой дистрибутив Linux установлен?

Если вам неизвестно ничего о системе, на которой вы работаете, то можно легко и просто узнать название дистрибутива, его версию, краткое описание и т.п. Попробуйте использовать следующие команды:

# cat /etc/*release
# cat /etc/*version
# cat /etc/issue
Shell-скрипт скачивания/закачивания файла по ftp

Иногда нужно быстро скачать файл с ftp с помощью shell. Предлагаю очень простой скрипт для этой задачи:

# wget -c ftp://ftp_username:username_password@35.34.222.61/data/backup/file.bk

Скачать файл по ftp с помощью скрипта shell можно и таким способом:

ftp -ind 24.11.66.21 <<_EOF_ quote user ftp_username quote pass username_password cd data/www/backup binary #скачать файл get backup.tar #закачать файл put data.file quit _EOF_
Shell-скрипт с условием проверки наличия файла для Linux/FreeBSD

Представлю вам скрипт, который архивирует файл, если он есть в заданной директории. Если файла нет - архив не создается.

#!/bin/sh
#Задаем переменную директории
DIR=/home/user/data
#Если в директории имеются файл. Ключ -f проверяет наличие файлов.
if [ -f $DIR/1.txt ];
# архивируем этот файл
then
cd $DIR
tar -cpf archive.tar 1.txt
#если файлов нет - выдается сообщение
else
echo “Нет файла”
fi

Остальные ключи проверки файлов/каталогов:

-f        проверка существования файла
-s       проверка, является ли файл пустым
-x       проверка исполняемости файла
-d       проверка существования каталога

Второй вариант bash-скрипта для проверки условия существования файлов и их архивирования при наличии:

#!/bin/sh
if A=$(find . -name "*.txt" -exec echo -n "1" \; ); [ "$A" = "" ]
then
echo “Нет файлов”
else
tar -cpf archive.tar *.txt
fi

Третий вариант проверки условия существования любых файлов в каталоге:

#!/bin/sh 

#Задаем переменную директории
DIR=/000/test/test

#вычисляем количество файлов, которые есть в заданной директории
filecount=`find $DIR -type f | wc -l`

#если количество файлов равно нулю, то есть их нет, то выдается сообщение
if [ $filecount -eq 0 ];
then
echo "Файлов нет, выполняем скрипт дальше"
else
echo "Есть файлы, прекращаем работу скрипта" && exit
fi

Четвертый вариант проверки условия существования любых файлов в каталоге с бесконечным циклом:

#!/bin/sh
#Задаем переменную директории
DIR=/000/test/test 

while true
do
case `find $DIR -type f | wc -l` in
0 ) echo "no file" ;; #Если файлов нет - выводится сообщение (или можно подставить любой ваш скрипт или команду)
* ) sleep 5 ;; #если файлы в каталоге есть - ждем 5 секунд и дальше проверяем по-новому (к первому шагу)
esac
done
exit 0