Настройка Linux Ubuntu Server

Статья-шпаргалка, для себя.
Настройка сетевых интерфейсов:

  • команда ifconfig показывает информацию о сетевых интерфейсах
  • sudo infonfig eth0 up запускает интерфейс eth0. Тут 7 примеров использования.
  • sudo /etc/init.d/networking restart перезапускает сетевую службу и применяются все настройки
  • настройки сетевых интерфейсов находятся в файле /etc/network/interfaces

Разное:

  • настройки ДНС кроме файла /etc/network/interfaces находятся в файле /etc/resolv.conf
  • текстовые редакторы: vi, nano, pico
  • для удаленного управления использую putty
  • aptitude search <имя_пакета> или aptitude search <имя_пакета> — поиск пакета для установки когда не знаешь его точное название.
  • sudo apt-get install <имя_пакета> — установка пакета.
  • dpkg --get-selections > installed-software получить список установленных пакетов
  • cat /etc/passwd — список пользователей, показывает в какой группе пользователь
  • dpkg-reconfigure имя_пакета — переконфигурация пакета, если при инсталле неверно отконфигурировался
  • lshw — команда выведет полную информацию о железе, следует выполнять с правами root’а (sudo lshw).
  • hwinfo — вывод информации о железе. Предварительно требуется установить утилиту (sudo apt-get install hwinfo).
  • uname -a — вывод информации о системе, версии ядра, дистрибутиве и архитектуре (32/64 бита).
  • lsb_release -a — выведет название и версию используемого дистрибутива.
  • cat /etc/*release* — аналогично предыдущей команде, плюс информация о базовом дистрибутиве (например, для Linux Mint 9 выведет еще и Ubuntu 10.04, как базовый дистрибутив).
  • ls -clt / | tail -n 1 | awk ‘{ print $7, $6, $8 }’ — с помощью этой команды можно узнать дату и время установки системы.
  • ls -dl /var/log/installer/ — аналогично предыдущей команде (но немного иного принципа), позволяет узнать дату и время установки системы.
  • Добавить скрипт или команду в автозагрузку можно добавив запуск скрипта или команды в файл /etc/rc.local

Тонкий клиент на базе Linux Xubuntu

Давно хотел попробовать бесплатную ОС для работы в терминале. Выбирал между Lubuntu и Xubuntu. остановил свой выбор на последней, т.к. Lubuntu еще не входит в список основных дистрибутивов Ubuntu, а это значит что в нем еще что-то не устраивает команду одного из самых дружественных Linux.
Итак, конфигурация компьютера:

  • Процессор Pentium-III 500Mhz
  • ОЗУ 384Mb
  • HDD есть какой-то :)

Да, тонкий клиент получился чуть толстоват, но зато можно локально работать в интернете и при желании даже с офисными документами.
После установки ОС, обновления пакетов и установки rdesktop всё работает отлично.
Добавляем rdesktop в автоматическую загрузку, получаем просто отличнейший тонкий клиент для терминального доступа к Windows серверу на базе бесплатной ОС Linux Xubuntu.

Восстановление реестра Windows XP

Случается, что реестр Windows повреждается. Сопровождается это различными сообщениями, подобными этому:

Не удается запустить Windows из-за испорченного или отсутствующего файла:
\WINDOWS\SYSTEM32\CONFIG\SYSTEM

Читать далее

Как отключить автозапуск дисков в Windows

Как и обещал в статье о Лечение “вируса” usb.wsf опишу метод гарантированного отключения автозапуска (autorun) съемных и сетевых дисков в Windows.
Для чего это надо? Во-первых, для меня это изначально было сомнительным удобством, я бы даже сказал напрягало всегда то, что после ставки диска/флэшки появлялось окно с выбором действий или просто молча поверх остальных окон появлялось окно с содержимым диска/флэшки. Во-вторых, с появлением различных autorun-вирусов это стало реальной проблемой, особенно если есть локальная сеть.
Можно через редактор реестра, а можно через импорт в реестр этого файла.
Этот файл в реестре меняет следующие строки:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\IniFileMapping\Autorun.inf]
@="@SYS:DoesNotExist"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer]
"NoDriveTypeAutoRun"=dword:000000DF

Первая строка

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\IniFileMapping\Autorun.inf]
@="@SYS:DoesNotExist"

заменяет в реестре значение файла Autorun.inf на значение «не существует» и система просто не воспринимает эти файлы.

Вторая строка

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer]
"NoDriveTypeAutoRun"=dword:000000DF

отключает автозапуск всем дискам, кроме CD-ROM’a
Значение DF формируется из следующих данных:

0x01 (DRIVE_UNKNOWN) — привод, тип которого не может быть определен
0x02 (DRIVE_NO_ROOT_DIR) — диск с невалидным корнем (сетевые “шары”?)
0x04 (DRIVE_REMOVABLE) — съемный диск (дискеты, флешки)
0x08 (DRIVE_FIXED) — несъемный диск (жесткий диск)
0x10 (DRIVE_REMOTE) — сетевой диск
0x20 (DRIVE_CDROM) — CD-привод
0x40 (DRIVE_RAMDISK) — виртуальный диск (RAM-диск)
0x80 (DRIVE_FUTURE) — будущие типы устройств

Сумма всех этих значений равна 0xFF, но 0xFF0x20 = 0xDF и таким образом оставляем автозапуск для CD-привода.

Лечение «вируса» usb.wsf

Не знаю даже толком вирус это или нет, т.к. вредных действий не заметил за ним, но то, что он сам распространяется без спроса и трудно «выводится» в сети предприятия говорит о том, что это вирус.
автор этого скрипта утверждает, что это решение проблемы вирусов-авторанеров с флэшек и других съемных дисков.
Очень хорошо про этот скрипт и его лечение написано тут.
У меня в сети Касперский никак не реагирует на этот вирус. А мой Avast его определяет как VBS:Malware-gen.
В отличие от приведенного по ссылке описания его действий, у меня он в "Program Files" создает папку "Съемный диск" и в него помещает файл usb.wsf. В реестре прописывается в автозагрузку
[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\Съемный диск].
Лечение простое, если компьютер не в сети.
Как вылечить один комп можно посмотреть по ссылке выше.
Вкратце:

  1. Удаляем процесс wscript.exe
  2. Удаляем папку "Съемный диск" в "Program Files"
  3. Удаляем сами файл autorun.inf и usb.wsf в корне флэшки или сетевого диска, или вообще где их увидим :)
  4. Удаляем запись в реестре [HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\Съемный диск]

Это казалось бы всё. Но тут одно НО. Windows такая штука, что авторан всё равно не отключен и этот вирус моментально появится при открытии флэшки, например.
Поэтому надо отключить этот autorun.
Как отключить autorun я опишу в следующей записи.

Как создать файл с именем равным текущей дате и времени

Чтобы создать из командной строки файл с именем равным текущей дате и времени создадим cmd файл с таким содержимым:

rem @echo off

set dd=%DATE%
set tt=%TIME%

set /a ddd=%dd:~0,2%
IF %ddd% LSS 10 (
  SET day=0%ddd%) else (
  SET day=%ddd%)
set month=%dd:~3,2%
set year=%dd:~6,4%

set /a ttt=%tt:~0,2%

IF %ttt% LSS 10 (
  SET hour=0%ttt%) else (
  SET hour=%ttt%)

SET minute=%tt:~3,2%
SET sec=%tt:~6,2%

echo %day% %month% %year% %hour% %minute% %sec%

copy nul %day%%month%%year%_%hour%%minute%%sec%.txt

Необходимо помнить, что получение даты и времени зависит от региональных настроек Windows. Поэтому первая строка закомментирована для возможности смотреть на результат каждой команды.
Рассмотрим команды.

  • В переменные dd и tt получаем текущую дату и время.
  • В переменную ddd из переменной с датой dd получаем теекущее число. Команда %dd:~0,2% значит взять из переменной dd 2 символа с начала строки (0 это первый символ строки). Например, на моем компьютере числа всегда двучначные и я не нуждаюсь в такой проверке и эта конструкция у меня заменяется на команду set day=%dd:~0,2%
  • Далее с 7 по 9 строку кода идет проверка текущего числа. Если число меньше 10, то начале числа добавляем символ 0. Это надо на случай если у нас дата выглядит например так: 1.12.2010. Чтобы все составляющие даты были одинаковой длины. Тут же получаем готовую переменную day, в которой хранится значение текущего числа
  • Строка 10. В переменную month из dd получаем текущий месяц. Берем два символа, начиная с третьего. Здесь можно так же как и с числом сделать проверку на меньше или больше 10. Но у меня почему-то на всех компах месяц всегда двузначный. Но этот момент надо учитывать.
  • Строка 11. В переменную year из dd получаем текущий год. Для этого берем 4 символа, начиная с шестого. Вообще с какого символа брать и сколько символов надо брать, легко отследить после команд из 3 и 4 строк кода. После выполнения cmd файла смотрим какие строки выдает ОС и отсчитываем с какого символа идет число, месяц и год.
  • Со строки 13 по 20 описаны аналогичные действия по получению текущего времени в переменные hour, minute и sec.

Приготовления закончены, команда в строке 22 выводит полученные значения. Если всё выводится корректно, то можно приступить к созданию файла.
Команда

copy nul %day%%month%%year%_%hour%%minute%%sec%.txt

создает пустой текстовый файл 09092010_102428.txt
Для создания архивов я обычно делаю чтобы год был в начале имени файла, затем месяц, а уже потом число. Это удобно для сортировки архивов.

copy nul %year%%month%%day%_%hour%%minute%%sec%.txt

Результат такой команды: 20100909_102441.txt

Ускоряем запуск FireFox

Заметил, что спустя некоторое время после установки, Firefox начинает долго запускаться. Здесь наткнулся на подробное описание проблемы и метода ее решения. Перепечатаю у себя на случай утери источника.

И так узкое место при запуске это загрузка .sqlite, базы данных вашего профиля. При интенсивной работе с Фоксом, базы разрастаются, в них появляются «пустые места», ну и главный недостаток, файл базы данных становится сильно фрагментированными. Для решения подобной проблемы существует специальная команда «очистки», точнее операция пересоздаёт файл базы, но уже без пустых мест. Для этого нужно проделать следующее:

  1. Cкачайте тут последнюю версию консольного SQLite под вашу ОС или поставьте из репозитория пакет sqlite3.

    Скачать для windows (246 KB) | Положить в директорию системы ака C:\Windows
  2. Для Windows

    Cоздать bat файлик, со следующим скриптиком:

    cd /D "%APPDATA%\Mozilla"
    for /r %%i in (*.sqlite) do echo VACUUM; | sqlite3 "%%i"
    cd /D "%HOMEPATH%\Local Settings\Application Data\Mozilla"
    for /r %%i in (*.sqlite) do echo VACUUM; | sqlite3 "%%i"


    Для Linux систем

    Выполнить с командной строки или создать sh скриптик на будущее сами решайте:

    cd ~/.mozilla/firefox/*.default/
    for i in *.sqlite; do echo "VACUUM;" | sqlite3 $i ; done


    … или ещё один вариант в одну строчку, от rojer:

    find ~/.mozilla/firefox/ -name *.sqlite -exec sqlite3 {} VACUUM \;

    Для MAC
    (спасибо, avanes)

    find ~/Library/Application\ Support/Firefox/Profiles -name '*.sqlite' -exec sqlite3 {} VACUUM \;

  3. Завершаем работу браузера, и выполняем команду/запускаем bat’ник.

    Теперь у нас значительно похудевшие и дефрагментированные базы, есть значительные прирост к скорости запуска. Но есть ещё один момент для оптимизации, правда воспользоваться им можно в версиях FF 3.5 и выше. Необходимо включите jit-прекомпиляцию для интерфейса. Для скриптов на страницах она уже включена по-умолчанию. Для этого идём в about:config, вводим jit(в строку поиска) и ставим значение(javascript.options.jit.chrome) в true. (У меня после перезапуска, фокс долго не хотел стартовать, но потом ожил)

    После этих двух простых действий FF значительно прибавил в скорости. Странно, что Mozilla не предусмотрела подобные манипуляции над базой.

    После этих двух простых действий FF значительно прибавил в скорости. Странно, что Mozilla не предусмотрела подобные манипуляции над базой.