1. Список не ваших процессов.
список всех процессов, которые запустили не вы:
ps aux | grep -v `whoami`
Или, сделаем чуть хитрее, получим список из 10 процессов, которые больше всего нагружают процессор:ps aux --sort=-%cpu | grep -m 11 -v `whoami`2. Замена текста в файлах
Сложность: средняя
Приложение: find/Perl
Если надо заменить текст не в одном файле, то есть несколько способов. Для того, чтобы заменить текст «Windows» на «Linux» во всех файлах в текущей директории, название которой начинается с «test», введите в консоли:
perl -i -pe 's/Windows/Linux/;' test*Чтобы провести ту же операцию во всех поддиректориях:
find. -name '*.txt' -print | xargs perl -pi -e's/Windows/Linux/ig' *.txtИли вы хотите сделать то же самое для на обычных файлов со множеством переносов строк и странных символов (файл — в другой кодировке):
find -type f -name '*.txt' -print0 | xargs --null perl -pi -e 's/Windows/Linux/'Сохраните немало времени и получите статус гуру Линкуса.
3. Исправить консоль
Сложность: легкаяПриложение: bash
Если использовать команду less или cat для просмотра файла, в конце которого — бинарные данные, то можно легко испортить консоль. Потому что в бинарных данных могут попасться любые сочетания управляющих кодов: компьютер будет издавать звуки «бип-бип», появятся прикольные символы, странные цветовые сочетания. В конце концов, шрифт изменится на какие-то иероглифы. Bash, очевидно, продолжает работать, но вы ничего не можете прочитать и не сделать. Просто наберите в консоли команду инициализации:
reset
и все будет хорошо.
4. Запуск множественных X-сессий
Сложность: простаяПриложение: Х
Если надо дать кому-нибудь доступ к Вашему компьютеру, то вы может откроете для себя, что это не всегда необходимо. Если предположить, что компьютер стартует в графическом режиме (runlevel 5), то, одновременно нажав Ctrl+Alt+
startx — :1
чтобы воити в графическое окружение. Чтобы вернуться в предыдущую сессию, нажмите Ctrl+Alt+
5. Ускорение серфинга
Сложность: простаяПриложение: KDE
В KDE есть малоизвестная, но полезная опция для ускорения веб-серфинга. Запустите KDE Control Center и выберите System > KDE performanсe. Вы можете включить предварительную загрузку Konqueror'а. То есть браузер загрузится при запуске системы в фоновом режиме. Когда он потребуется, то появится практически мгновенно. Совет: прочитайте еще 20 подсказок для ускорения KDE
6. Легкое резервное копирование
Сложность: простаяПриложение: Backups
Если надo сделать резервную копию папки и скопировать только изменившиеся файлы, то можно использовать для этого rsync (вам нужен аккаунт на удаленном компьютере):
rsync -vare ssh jono@192.168.0.2:/home/jono/importantfiles/* /home/jono/backup/Эта команда делает резервную копию всех файлов из /home/jono/backup/ в /home/jono/importantfiles/ на компьютере с IP-адресом 192.168.0.2
7. Поддерживать ваши часы в актуальном состоянии
Сложность: простаяПриложение: NTP
Если кажется, что ваши часы спешат или отстают, то используйте NTP для гарантированной синхронизации с очень высокой точностью. Необходимо установить NTP-пакет и потом произвести синхронизацию с сервером:
ntpdate ntp.blueyonder.co.ukСписок подходящих NTP-серверов можно найти на http://support.ntp.org/bin/view/Servers/NTPPoolServers. Добавьте эту команду в автозагрузку — и ваши часы всегда будут точными.
8. Поиск самых больших файлов
Сложность: низкаяПриложение: оболочка
Можно столкнуться с проблемой, когда надо удалить несколько больших файлов. Их можно найти в текущей директории с помощью команды:
ls -lSrhКлюч r означает, что большие файлы должны выводиться в конце. Следующей командой можно найти самые большие файлы MP3/MPEG:
ls -lSrh *.mp*Также можно найти самые большие директории:
du -kx | egrep -v "\./.+/" | sort -n
9. Оптимизация баз данных
Сложность: низкаяПриложение: MySQL
При любом изменении структуры базы данных или удалении больших объемов данных, файлы могут стать фрагментированными, что приводит к потере производительности. Просто запомните простое правило: запускать оптимизатор базы при любом изменении базы:
mysqlcheck -oВы можете заметить, что следует регулярно оптимизировать базы при использовании полей с типом VARCHAR: эти поля с переменной длиной особенно подвержены фрагментации.
10. Быстрые письма
Сложность: низкая
Приложение: KMail
Не можете позволить себе потерять 3 секунды на поиски вашего почтового клиента? Не устали от поиска указателя мыши среди всей красивой суматохи на вашем рабочем столе? Чтобы вы не делали в KDE, вас отделяет всего несколько нажатий клавиш от отправки письма. Нажмите Alt+F2 для открытия диалога 'Run command'. Наберите:
mailto:plop@ploppypants.comНажмите Enter — и KMail автоматически откроется. Вам даже необязательно набирать полный почтовый адрес. Этот трюк работает также и с Интернет-адресами: просто наберите www.hab.ru для запуска Konqueror'а.
11. Распараллеливание сборки
Сложность: низкаяПриложение: GCC
Если у вас многоядерная система с приличным количеством оперативной памяти, то можно значительно увеличить скорость при помощи параллельной сборки. Если сравнивать с последовательной сборкой, то прирост скорости в несколько раз. Для того, чтобы использовать два и более потока, добавьте ключ -j:
make -j4; make -j4 modules
12. Увеличение время работы батареи
Сложность: средняя
Приложение: hdparmВы вероятно сталкивались с hdparm для тюнинга жесткого диска, но это также может увелитчить время работы батареи вашего ноутбука и снизить шум вращающихся деталей.
hdparm -y /dev/hdb
hdparm -Y /dev/hdb
hdparm -S 36 /dev/hdb
Первая команда заставляет перейти в режим ожидания, вторая — в спящий режим, а последняя выставляет время автоматического выключения. Числовой параметр кратен 5.
13. Управление скоростью беспроводного подключения
Сложность: средняяПриложение: iwconfig
Скорость, на которой радио-приемник и передатчик могут взаимодействовать, зависит от силы сигнала. Для того, чтобы поддерживать связь при ухудшении сигнала, данные должны передаваться с меньшей скоростью. Обычно, радио пытается вычислить доступный сигнал и автоматически выбирает наибольшую скорость передачи.
В областях интерференции с недостаточным уровнем сигнала, пакеты могут самопроизвольно пропадать, при этом приемник и передатчик постоянно регулируют скорость. Если нельзя добавить антенны или переместить ваше оборудование для усиления сигнала, то надо уменьшить скорость синхронизации. Это означает меньшее количество переподключений и может быть значительно быстрей, чем триггерное (flip-flop) соединение. У каждой сетевой карты свой способ установки соединения. В Линуксе ограничение скорости можно задать через iwconfig:
iwconfig eth0 rate 2MЭта команда заставляет сетевую карту синхронизироваться только на скорости 2Mbps. Также можно выставить предельную скорость: сетевая карта автоматически синхронизируется на любой скорости меньше, но не быстрее:
iwconfig eth0 rate 5.5M autoИспользование директивы auto означает, что можно работать на любой скорости до 5.5Mbps. Чтобы снять ограничение скорости, просто наберите:
iwconfig eth0 rate autoСетевые карты могут работать на больших расстояниях при скорости 1Mbps, чем при скорости 11Mbps. Разница между 1Mbps и 11Mbps — 12 децибел для карт Orinocco, т.е., теоретически, можно увеличить максимальную дистанцию работы в 4 раза, уменьшив скорость передачи.
14. Список откртых портов
Сложность: средняяПриложение: nestat
Получить список открытых портов в состоянии Listen очень просто в Линуксе:
~# netstat -lnpВ этом примере видно, что процесс с PID'ом 698 — процесс интерпретатора Перл, который слушает порт 5280. Если вы не рут в системе, то система не покажет пути к программам.
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:5280 0.0.0.0:* LISTEN 698/perl
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 217/httpd
tcp 0 0 10.42.3.2:53 0.0.0.0:* LISTEN 220/named
tcp 0 0 10.42.4.6:53 0.0.0.0:* LISTEN 220/named
tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN 220/named
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 200/sshd
udp 0 0 0.0.0.0:32768 0.0.0.0:* 220/named
udp 0 0 10.42.3.2:53 0.0.0.0:* 220/named
udp 0 0 10.42.4.6:53 0.0.0.0:* 220/named
udp 0 0 127.0.0.1:53 0.0.0.0:* 220/named
udp 0 0 0.0.0.0:67 0.0.0.0:* 222/dhcpd
raw 0 0 0.0.0.0:1 0.0.0.0:* 7 222/dhcpd
15. Увеличение скорости работы жестких дисков
Сложность: высокаяПриложение: hdparm
hdarm можно использовать для повышения производительности. Будьте осторожны: изменение этих настроек может привести к потере данных, поэтому предварительно сделайте резервную копию данных. Тестирование скорости можно произвести следующей команды:
hdparm -Tt /dev/sdaРезультат будет выглядеть примерно так:
hdparm -Tt /dev/sdaЧтобы узнать текущие настройки, просто добавьте к hdparm имя устройства:
/dev/sda:
Timing cached reads: 1784 MB in 2.00 seconds = 892.56 MB/sec
Timing buffered disk reads: 82 MB in 3.04 seconds = 26.96 MB/sec
/dev/sda:В большинстве дистрибутивов выбраны безопасные настройки, подходящие для большинства жестких дисков. Для того, чтобы увеличить скорость, можно включить DMA-режим. Большинство компьютеров поддерживают 3 режим — 32-битная передача данных, что увеличивает скорость почти в два раза:
IO_support = 0 (default)
readonly = 0 (off)
readahead = 256 (on)
geometry = 4865/255/63, sectors = 78165360, start = 0
16. Удаленный доступ к вашем программ.
Сложность: низкаяПриложение: X
Если необходим удаленный доступ к графическим приложениям, то это можно сделать с помощью SSH. Во-первых, надо включить эту опцию в /etc/ssh/sshd_config:
X11Forwarding yesВо-вторых, теперь можно удаленно запустить GIMP:
ssh -X 192.168.0.2 gimp19. Более удобные маны
Сложность: низкая
Приложение: man
Если вы ищите информацию по определенной команде или тематике, то маны — хорошее место для начала поисков. Обычный доступ к манам — man
man -k loginПри чтении манов полезно использовать поиск: просто нажмите клавишу / и набирайте нужное слово.
17. Диаграмма взаимосвязи пакетов
Сложность: низкаяПриложение: Debian
Наиболее важная часть Debian'а — возможность устанавливать пакеты вместе со всеми зависимостями. Если вы хотите увидеть все взаимосвязи между пакетами, можно использовать пакет Graphiz из несвободного (non-free) репозитория Debian:
apt-cache dotty > debain.dotЭтот файл может быть загужен в dotty:
dotty debian.dot
18. Принудительное отключение занятых устройств
Сложность: низкаяПриложение: bash
Вам наверняка сталкивались с ситуацией, когда надо отмаунтить диск, но система при попытке отключения сообщает о том, что он занят. Одной командой можно узнать, какое приложение использует его:
lsof +D /mnt/windowsОна показывает PID и команду запуска любого процесса, использующего /mnt/windows.
19. Конвертирование кодировок текстовых файлов
Сложность: низкаяПриложение: recode
recode — маленькая утилита, которая упростит перенос текстовых файлов, созданных на разных платформах. Одна из главных причин — различие переносов строк. В некоторых системах используется символ переноса строки, в других — символ возврата каретки, в остальных — оба способа. В итоге, если вы переносете текст с одной платформы на другую, то вы, открыв файл, увидете множество (или, наоборот, мало) переносов строк и много странных символов.
Параметры утилиты немного запутаны, но это можно обойти задав алиасы:
alias dos2unix='recode dos/CR-LF..l1'Существуют множество опций: recode может конвертировать тексты между рядом кодировок.
alias unix2win='recode l1..windows-1250'
alias unix2dos='recode l1..dos/CR-LF'
20. Поиск измененных сегодня файлов
Сложность: низкаяПриложение: различные
Например, утром вы создали файл, который именно сейчас очень нужен. Однако, вы не можете вспомнить его название. Вручную перебирать домашнюю директорию бессмысленно, где скопилась не одна тысяча файлов. Но есть небольшой прием, показывающий эффективность пайпов и объединения нескольких комманд консоли:
ls -al --time-style=+%D | grep `date +%D`Параметры команды ls требуют вывода даты в определенном формате. Хитрость в том: то, что выдаст ls, идет на вход grep. Параметр grep сами по себе команда (заключена в обратные апострофы), которая подставляет текущую дату в шаблон для отсева. Ее легко модифицировать для поиска по другим датам, размеру файла и т.д.
Комментариев нет:
Отправить комментарий