часто используемые команды в UNIX

27.12.2012

Надергал полезных команд, постоянно забываю их. Теперь команды будут хранится на моем сайте, чтобы не надо было искать по всему интернету

Работа с архивами

 

bunzip2 file1.bz2                                  разжимает файл 'file1.gz'

gunzip file1.gz 

gzip file1                                                  сжимает файл 'file1'

bzip2 file1

gzip -9 file1                                          сжать файл file1 с максимальным сжатием

rar a file1.rar test_file                                  создать rar-архив 'file1.rar' и включить в него файл test_file

rar a file1.rar file1 file2 dir1                  создать rar-архив 'file1.rar' и включить в него file1, file2 и dir1

rar x file1.rar                                          распаковать rar-архив

unrar x file1.rar

tar -cvf archive.tar file1                          создать tar-архив archive.tar, содержащий файл file1

tar -cvf archive.tar file1 file2 dir1           создать tar-архив archive.tar, содержащий файл file1, file2 и dir1

tar -tf archive.tar                                  показать содержимое архива

tar -xvf archive.tar                                  распаковать архив

tar -xvf archive.tar -C /tmp                     распаковать архив в /tmp

tar -cvfj archive.tar.bz2 dir1                  создать архив и сжать его с помощью bzip2(Прим.переводчика. ключ -j работает не во всех *nix системах)

tar -xvfj archive.tar.bz2                          разжать архив и распаковать его(Прим.переводчика. ключ -j работает не во всех *nix системах)

tar -cvfz archive.tar.gz dir1                          создать архив и сжать его с помощью gzip

tar -xvfz archive.tar.gz                           разжать архив и распаковать его

zip file1.zip file1                                           создать сжатый zip-архив

zip -r file1.zip file1 file2 dir1                   создать сжатый zip-архив и со включением в него нескольких файлов и/или директорий

unzip file1.zip                                          разжать и распаковать zip-архив

 

 

Подключение к mysql
mysql -uusername -ppassword -hlocalhost
Здесь сокращения:
-h host
-u user
-p password
Пробел после них отсутствует.

Посмотреть имеющиеся базы данных
mysql> show databases;

Создать базу данных с именем new_db
mysql> create database new_db default character set utf8;

Переключение между базами (выбор конкретной базы)
mysql> use new_db;

Посмотреть имеющиеся таблицы в базе данных
mysql> show tables;

Посмотреть структуру таблицы zipcodes
mysql> describe zipcodes;

Удалить базу new_db
mysql> drop database new_db;

Заливаем дамп базы данных из old_db.sql в базу my_db
mysql -hlocalhost -uusername -ppassword my_db < old_db.sql

----------------------------------

Команда для создания backup базы данных, с помощью Mysqldump, выглядит следующим образом:
 
#mysqldump -u [имя пользователя] -p[ пароль ] --databases [имя базы данных] > [backup]
 
 
#mysqldump -u adminDB -padminDBpass -B info-linux.ru > /backup/info-linux.ru.sql
 
Можно создавать дампы только необходимых таблиц, конкретной базы данных:
 
#mysqldump -u adminDB -padminDBpass -B info-linux.ru --tables article users > /backup/info-linux.ru_tables.sql
 
Восстановить базу из дампа
 
#mysql -u adminDB -padminDBpass test < test_table.sql
Этой командой мы делаем бэкап базы данных под именем name_database на диск С в файл mydb_backup_name_database.txt
mysqldump -u root -p -f name_database > C:\mydb_backup_name_database.txt

mysqldump -u root -pпассворд -f name_database > C:\mydb_backup_name_database.txt

----------------------------------
 
 
ФАЙЛЫ

cp /home/file.txt   /etc/file.txt  (копировать файл)
cp -la  /home /home2    (копировать директорию)
ln -s  /home/file.txt   /etc/  (символьная ссылка)
rm -rf /ets/папка (удалить папку с файлами)
 
---------------------------
место на диске
 
узнать размер папок 
du -hs /путь/*
 
узнать занятое место на диске
df -h 

 

 










создать бекап диска
sudo dd if=/dev/sda | gzip -c > /home/shara/arc/backup.iso.gz
 
воссстановить бекап диска
sudo gzip -x /home/shara/arc/backup.iso.gz | dd of=/dev/sda
 
удалить старые файлы
find /home/shara/arc/baza/ -mtime +5 -type f -exec rm -f {} \;
 
создать пользователя рутфтп
sudo ftpasswd --passwd --file=/etc/proftpd/ftpd.passwd --name=serbor --shell=/bin/false --home=/home/www/ --uid=1000 --gid=1000
 
создать пользователя ww-data фтп
sudo ftpasswd --passwd --file=/etc/proftpd/ftpd.passwd --name=serbor --shell=/bin/false --home=/home/www/ --uid=33 --gid=33
 
-----------------------------------------------------
Управление Exim
 
Пуск/Остановка/Рестарт Exim
 
/etc/init.d/exim start|stop|restart
Чем в данный момент занят MTA Exim?
 
exiwhat
Проверка маршрутизации почты по адресу электронной почты
 
exim -bt Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра.
Генерирование и отображение статистики Exim из лог-файла
 
eximstats /path/to/exim_mainlog
Проверка SMTP содинения из коммандной строки для определенного IP-адреса. Результат покажет через какие проверки будет проходить письмо с данного IP-адреса, через какие ACL и фильтры. Необходимо заменить x.x.x.x на необходмый IP-адрес.
 
exim -bh x.x.x.x
Отображение всех настроек Exim
 
exim -bP
Информация по очередям(Queue)
 
Вывести информацию по колличеству писем в очереди
 
exim -bpc
Вывести список сообщений в очереди (время в очереди, размер, идентификатор сообщения, отправитель, получатель)
 
exim -bp
Отображение всех сообщений в очереди (количество, объем, старых, новых, области, и итоги)
 
exim -bp|exiqsumm
Поиск сообщений в очереди
 
Поиск в очереди сообщения от определенного отправителя
 
exiqgrep -f [user]@example.com
Поиск в очереди сообщений для конкретного получателя/домена
 
exiqgrep -r [user]@example.com
Вывод только Message-ID, как результат одного из двух поисковых запросов выше
 
exiqgrep -i [ -r | -f ] ...
Вывод количества сообщений, как результат одного из поисковых запросов выше
 
exiqgrep -c [ -r | -f ] ...
Вывод только Message-ID очереди
 
exiqgrep -i
Просмотр сообщений в очереди
 
Просмотр заголовков сообщения в очереди
 
exim -Mvh
Просмотр тела сообщения в очереди
 
exim -Mvb
Просмотр лога сообщения
 
exim -Mvl
Управление очередью
 
Начать процесс выполнения очереди
 
exim -q -v
Начать процесс выполнения только для локальных получателей
 
exim -ql -v
Удалить сообщение из очереди
 
exim -Mrm
Удалить все сообщения, которые старше, чем Х секунд из очереди (например, 5 дней будет 432 000 секунд)
 
exiqgrep -o 432000 -i | xargs exim -Mrm
Заморозить все сообщения в очереди от отправителя
 
exiqgrep -i -f Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра. | xargs exim -Mf
Просмотр заголовков сообщения в очереди
 
exim -Mvh
Просмотр теля сообщения в очереди
 
exim -Mvb
Просмотр лога сообщения
 
exim -Mvl
Удалить все сообщения из очереди (плохая идея)
 
exiqgrep -i | xargs exim -Mrm

проверить поддержку TRIM
sudo hdparm -I /dev/sda | grep "TRIM supported"

Активация поддержки TRIM
#!/bin/sh
LOG=/var/log/trim.log
echo "*** $(date -R) ***" >> $LOG
fstrim -v / >> $LOG
fstrim -v /home >> $LOG

Отключить запись времени обращения к файлам и папкам, т.к. для твердотельного диска это плохо

 
sudo gedit /etc/fstab


Ишем строчку

# / was on /dev/sda5 during installation
UUID=a189806d-eb0e-4d69-8fc6-e7e3d7eb53d7 / ext4 errors=remount-ro 0 1

ОТключаем
discard - Включает технологию TRIM, которая распределяет нагрузку на SSD
noatime и nodiratime - Благодаря этим опциям ОС не будет записывать время последнего обращения к файлам и папкам
# / was on /dev/sda5 during installation
UUID=a189806d-eb0e-4d69-8fc6-e7e3d7eb53d7 / ext4 noatime,nodiratime,discard,errors=remount-ro 0 1

Даже если не делать SWAP раздел, все равно отключаем работу с файлом подкачки
открываем файл /etc/sysctl.conf
vm.swappiness = 1

Перегружаемся или вводим команду, чтобы изменения вступили в силу
sudo sysctl -p

С помощью отложенной записи ядро будет хранить данные, ожидающие записи на диск, и записывать их либо при острой необходимости, либо по истечении таймаута. Обычно время хранения ставится на 60 секунд, но можно и больше. Для этого открываем файл /etc/sysctl.conf:

sudo gedit /etc/sysctl.conf

Добавляем

vm.laptop_mode = 5
vm.dirty_writeback_centisecs = 6000
Пишут, что для SSd больше подходит планировщик noop
sudo gedit /etc/default/grub

получается
GRUB_CMDLINE_LINUX_DEFAULT="elevator=noop"

Комментарии  

#1 user 28.09.2013 17:52
Пригодилось, спасибо
Цитировать


Оставить комментарий...

Добавить комментарий


Защитный код
Обновить