====== Справочник команд Putty / SSH / Unix / Linux ====== Чтобы получить доступ к серверу по протоколу SSH (войти в консоль сервера) из Windows требуется установить на свой компьютер специальную программу (SSH client), например [[http://www.chiark.greenend.org.uk/~sgtatham/putty/|PuTTY]]. Программа распростаняется бесплатно. После установки программы рекомендуем вам ознакомиться с основными командами, которые применяются для управления сервером. Доступ по SSH обычно используют тогда, когда необходима аренда выделенного сервера или специальный хостинг сайтов, обычно ВИП тариф, а так же если вы берете в аренду виртуальный сервер. ===== SSH ===== * ssh user@host -- подключится к host как user * ssh -p port user@host -- подключится к host на порт port как user * ssh-copy-id user@host -- добавить ваш ключ на host для user чтобы включить логин без пароля и по ключам ===== Архивация ===== * tar cf file.tar files -- создать tar-архив с именем file.tar содержащий files * tar xf file.tar -- распаковать file.tar * tar czf file.tar.gz files -- создать архив tar с сжатием Gzip * tar xzf file.tar.gz -- распаковать tar с Gzip * tar cjf file.tar.bz2 -- создать архив tar с сжатием Bzip2 * tar xjf file.tar.bz2 -- распаковать tar с Bzip2 * gzip file -- сжать file и переименовать в file.gz * gzip -d file.gz -- разжать file.gz в file ===== Клавиатурные сочетания ===== * Ctrl+C -- завершить текущую команду * Ctrl+Z -- остановить текущую команду, продолжть с fg на переднем плане или bg в фоне * Ctrl+D -- разлогиниться, тоже самое, что и exit * Ctrl+W -- удалить одно слово в текущей строке * Ctrl+U -- удалить строку * !! -- повторить последнюю команду * exit -- разлогиниться ===== Монтирование файловых систем ===== Убедитесь что директории в которые монтируем разделы существуют. * mount -o loop file.iso /mnt/file.iso -- монтирование iso-образа в /mnt/file.iso * mount -t vfat /dev/sda1 /mnt/flash -o iocharset=utf8,codepage=866,rw -- монтирование раздела с файловой системой FAT в /mnt/flash * mount -t ntfs-3g /dev/sda1 /mnt/flash -o umask=0,nls=utf8 -- монтирование раздела с NTFS в /mnt/flash (в системе должен быть установлен пакет ntfs-3g). См. также - [[wiki:technical:ds:mount_ntfs|Монтирование ntfs разделов в linux]]. * mount -t iso9660 /dev/cdrom /mnt/dvd -- монтирование CD/DVD в /mnt/dvd * mount -t ext3 /dev/sda1 /mnt/data -- монтирование EXT3 в /mnt/data ===== Поиск ===== * grep pattern files -- искать pattern в files * grep -r pattern dir -- искать рекурсивно pattern в dir * command | grep pattern -- искать pattern в выводе command * locate file -- найти все файлы с именем file * find /etc -name %%"filename.ext"%% -- найти рекурсивно, начиная с /etc все файлы с именем filename.ext. Используйте маски, например - %%"*file*"%%. ===== Пользователи и группы ===== * groupadd group_name -- создать группу group_name * groupdel group_name -- удалить группу group_name * groupmod -n group_name_new group_name_old -- переименовать группу group_name_old в group_name_new * useradd -g admin -d /home/user1 -s /bin/bash user1 -- создать пользователя user1, назначить ему домашний каталог /home/user1, командный интерпретатор /bin/bash, включить его в группу admin * userdel -r user1 -- удалить пользователя user1 и его домашний каталог * passwd -- сменить пароль * passwd user1 -- сменить пароль пользователя user1 (только root) ===== Права доступа на файлы ===== * chmod octal file -- сменить права file на octal, раздельно для пользователя, группы и для всех добавлением: * 4 -- чтение %%(r)%% * 2 -- запись (w) * 1 -- исполнение (x) Примеры: * chmod 777 -- чтение, запись, исполнение для всех * chmod 755 -- rwx для владельца, rx для группы и остальных. Дополнительные опции: man chmod * chown user1:group1 file1 -- сменить владельца на user1, группу на group1 для файла file1 * chown -R user1:group1 dir1 -- сменить рекурсивно владельца на user1, группу на group1 для файлов и директорий в dir1 Дополнительные опции: man chown ===== Сеть ===== * ping host -- пропинговать host и вывести результат * whois domain -- получить информацию whois для domain * dig domain -- получить DNS информацию domain * dig -x host -- реверсивно искать host * wget file -- скачать file * wget -c file -- продолжить остановленную закачку ===== Системная информация ===== * date -- вывести текущую дату и время * cal -- вывести календарь на текущий месяц * uptime -- показать текущий аптайм * w -- показать пользователей онлайн * whoami -- имя, под которым вы залогинены * finger user -- показать информацию о user * uname -a -- показать информацию о ядре * cat /proc/cpuinfo -- информация ЦПУ * cat /proc/meminfo -- информация о памяти * cat /proc/mounts -- информация о смонтированных файловых системах * man command -- показать мануал для command * df -- показать инф. о использовании дисков * du -- вывести “вес” текущего каталога * free -- использование памяти и swap * whereis app -- возможное расположение программы app * which app -- какая app будет запущена по умолчанию ===== Управление процессами ===== * ps -- вывести ваши текущие активные процессы * top -- показать все запущенные процессы * kill pid -- убить процесс с id pid * killall proc -- убить все процессы с именем proc * * bg -- список остановленных и фоновых задач; продолжить выполнение остановленной задачи в фоне * fg -- выносит на передний план последние задачи * fg n -- вынести задачу n на передний план ===== Установка пакетов ===== Установка из исходников: ./configure make make install Установка готовых пакетов: * apt-get install package -- установить пакет (apt) в Debian, Ubuntu * yum install package_name -- установить пакет (rpm) в Fedora, Red Hat, CentOS и т.п. ===== Файловые команды ===== * ls -- список файлов и каталогов * ls -al -- форматированный список со скрытыми каталогами и файлами * cd dir -- сменить директорию на dir * cd .. -- перейти в директорию уровнем выше * cd ../.. -- перейти в директорию двумя уровнями выше * cd -- сменить на домашний каталог * pwd -- показать текущий каталог * mkdir dir -- создать каталог dir * rm file -- удалить file * rm -r dir -- удалить каталог dir * rm -f file -- удалить форсированно file * rm -rf dir -- удалить форсированно каталог dir * * cp file1 file2 -- скопировать file1 в file2 * cp -r dir1 dir2 -- скопировать dir1 в dir2; создаст каталог dir2, если он не существует * mv file1 file2 -- переименовать или переместить file1 в file2. если file2 существующий каталог - переместить file1 в каталог file2 * ln -s file link -- создать символическую ссылку link к файлу file * touch file -- создать file * cat > file -- направить стандартный ввод в file * more file -- вывести содержимое file * head file -- вывести первые 10 строк file * tail file -- вывести последние 10 строк file * tail -f file -- вывести содержимое file по мере роста, начинает с последних 10 строк