Вот решил накатать статейку о том, как можно из серверной ОС сделать вполне удобный десктоп. Установку операционки здесь я описывать не буду, потому что в хэндбуке этой теме посвящен целый раздел. Могу только сказать пару слов по поводу разбивки разделов на жестком диске, для десктопа: /(корень) - 1-го гига вполне хватит; swap - не жалейте место под этот раздел, особенно если у вас мало оперативной памяти, поэтому 2-4 гига это нормально; /var - под этот раздел хватит 1-2 гигов, /tmp - сюда можно выделить побольше места, потому что для временных файлов большинство программ использует именно этот раздел, поэтому 4 гига, отданные под него, роскошью считаться не будут; /usr - сюда тупо выделяйте все оставшееся пространство. Так же, не помешало бы провести первоначальную настройку системы, о которой можно прочитать здесь.
Все действия я буду проводить на FreeBSD 8.2. Итак, приступим...
В первую очередь обновляем порты. Далее устанавливаем Xorg. Все предлагаемые параметры при сборке пакетов можно оставить по умолчанию - этого вполне достаточно, но некоторые можно и отключить (например, при сборке мета-порта xorg-drivers можно отключить не нужные драйверы устройств).
- # cd /usr/ports/x11/xorg
- # make install clean
Следом, после установки иксов, ставим KDE. Я выбрал третью версию, так как ее возможностей для меня хватает, а все эффекты, которые есть в четвертой версии мне ни к чему, да и памяти она меньше лопает.
Опции, которые будут доступны при сборке мета-порта kde3.
- KDEACCESS - приложения для людей с ограниченными возможностями
- KDEADMIN - приложения для администрирования системы
- KDEARTWORK - дополнительные темы, звуки, картинки, стили
- KDEDEVELOP - мощная IDE для разработки приложений на Qt
- KDEEDU - коллекция образовательных приложений
- KDEGAMES - игрушки (сапер, карты и еще куча всего)
- KDEGRAPHICS - приложения для работы с графикой
- KDEMULTIMEDIA - проги для работы со звуком
- KDENETWORK - проги для работы с сетью
- KOFFICE - мощный текстовый редактор
- KDEPIM - почта, новости, календарь
- KDESDK - в помощь разработчику под KDE
- KDETOYS - дополнительные приложения
- KDEUTILS - утилиты (kedit, kark, kcal и др.)
- KDEWEBDEV - проги для разработки сайтов
Опции, которые выбрал я - подчеркнуты.
- # cd /usr/ports/x11/kde3
- make install clean
Поставим русский язык для кед, а так же шрифты, чтобы русские буквы отображались в более красивом виде:
- # cd /usr/ports/russian/kde3-i18n
- # make install clean
- # cd /usr/ports/x11-fonts/webfonts
- # make install clean
Если у вас видеокарта от nvidia, то рекомендую установить драйвера от производителя (в зависимости от установленной видеокарты, выберите нужную версию):
- /usr/ports/x11/nvidia-driver
- /usr/ports/x11/nvidia-driver-173
- /usr/ports/x11/nvidia-driver-96
- /usr/ports/x11/nvidia-driver-71
Итак, теперь когда необходимый минимум установлен, переходим к настройке...
Добавляем сервисы, необходимые для работы X - сервера в автозагрузку и запускаем их:
- # echo 'dbus_enable="YES"' >> /etc/rc.conf
- # echo 'hald_enable="YES"' >> /etc/rc.conf
- # service dbus start
- # service hald start
Настраиваем Xorg - от рута выполняем команду Xorg -configure, после чего в домашнем каталоге появится файл xorg.conf.new. Его нужно подправить под ваши нужды и поместить в /etc/X11 под именем xorg.conf. Протестить конфигурационный файл можно запустив сервер и указав сам файл командой - Xorg -config xorg.conf.new -retro (если на экране появится серый фон с указателем мыши в виде крестика, значит конфиг рабочий, иначе смотрите лог файл - /var/log/Xorg.0.log), чтобы закрыть сервер, нужно нажать комбинацию клавиш ctrl+alt+backspace. У меня конфиг выглядит так:
- Section "ServerLayout"
- Option "AllowEmptyInput" "On" # когда включена, сервер игнорирует секции устройств ввода
- Option "AutoAddDevices" "On" # автоматически добавлять новые устройства (работает, если сервер собран с поддержкой HAL)
- Identifier "X.org Configured"
- Screen 0 "Screen0" 0 0
- InputDevice "Mouse0" "CorePointer"
- InputDevice "Keyboard0" "CoreKeyboard"
- EndSection
- Section "Files"
- ModulePath "/usr/local/lib/xorg/modules"
- FontPath "/usr/local/lib/X11/fonts/misc/"
- FontPath "/usr/local/lib/X11/fonts/TTF/"
- FontPath "/usr/local/lib/X11/fonts/OTF"
- FontPath "/usr/local/lib/X11/fonts/Type1/"
- FontPath "/usr/local/lib/X11/fonts/100dpi/"
- FontPath "/usr/local/lib/X11/fonts/75dpi/"
- FontPath "/usr/local/lib/X11/fonts/webfonts/" # этот путь добавьте обязательно, если установите порт webfonts
- FontPath "/usr/local/share/apps/konsole/fonts/" # шрифты, установленные с кедами
- EndSection
- Section "Module"
- Load "extmod"
- Load "record"
- Load "dbe"
- Load "glx"
- Load "dri2"
- Load "type1"
- Load "freetype"
- EndSection
- Section "InputDevice"
- # эта секция проигнорируется, если включено автоматическое добавление устройств
- Identifier "Keyboard0"
- Driver "kbd"
- Option "XkbModel" "pc105"
- Option "XkbLayout" "us,ru"
- Option "XkbOptions" "grp:ctrl_shift_toggle"
- Option "XkbRules" "xorg"
- Option "XkbVariant" "basic,winkeys"
- EndSection
- Section "InputDevice"
- # эта секция проигнорируется, если включено автоматическое добавление устройств
- Identifier "Mouse0"
- Driver "mouse"
- Option "Protocol" "auto"
- Option "Device" "/dev/ums0"
- Option "ZAxisMapping" "4 5 6 7"
- EndSection
- Section "Monitor"
- Option "DPMS"
- Identifier "Monitor0"
- VendorName "Monitor Vendor"
- ModelName "Monitor Model"
- # по поводу Modeline, получить его можно с помощью программы gtf:
- # например, gtf 1280 1024 85
- Modeline "1280x1024_85.00" 159.36 1280 1376 1512 1744 1024 1025 1028 1075 -HSync +Vsync
- EndSection
- Section "Device"
- # тут все настройки взяты из руководства поставляемом вместе с драйверами nvidia
- # найти его можно тут - /usr/local/share/doc/NVIDIA_GLX-1.0
- Option "AddARGBGLXVisuals" "On"
- Option "UseEdidDpi" "False"
- Option "DPI" "96 x 96"
- Identifier "Card0"
- Driver "nvidia"
- VendorName "nVidia Corporation"
- BoardName "G84 [GeForce 8600GT]"
- BusID "PCI:2:0:0"
- EndSection
- Section "Screen"
- # ну собственно секция настройки экрана (разрешение, глубина цвета...)
- Identifier "Screen0"
- Device "Card0"
- Monitor "Monitor0"
- DefaultDepth 24
- SubSection "Display"
- Viewport 0 0
- Depth 24
- Modes "1280x1024_85.00"
- EndSubSection
- EndSection
Теперь самое время настроить HAL и PolicyKit. Если в конфиге X сервера вы отключили автоматическое добавление устройств, то HAL настраивать не требуется. Так же если вы установили четвертую версию кед, то ни HAL, ни PolicyKit вам настраивать не нужно, там работает все из коробки :) В другом случае HAL надо настроить для того, чтобы при добавлении нового устройства передать необходимые параметры X серверу. Чтобы настроить устройства ввода, нужно отредактировать файл - /usr/local/etc/hal/fdi/policy/x11-input.fdi. Вот содержимое моего файла (настраивается раскладка клавиатуры, комбинация клавиш переключения раскладки):
- <?xml version="1.0" encoding="ISO-8859-1"?>
- <deviceinfo version="0.2">
- <device>
- <match key="info.capabilities" contains="input.keyboard">
- <merge key="input.x11_options.XkbModel" type="string">pc105</merge>
- <merge key="input.x11_options.XkbLayout" type="string">us,ru</merge>
- <merge key="input.x11_options.XkbOptions" type="string">grp:ctrl_shift_toggle</merge>
- <merge key="input.x11_options.XkbRules" type="string">xorg</merge>
- <merge key="input.x11_options.XkbVariant" type="string">basic,winkeys</merge>
- </match>
- </device>
- </deviceinfo>
PolicyKit необходимо настроить, чтобы обычные пользователи в кедах могли монтировать устройства. Редактируем файл /usr/local/etc/PolicyKit/PolicyKit.conf ($USER - надо заменить на реального пользователя в системе):
- <?xml version="1.0" encoding="UTF-8"?> <!-- -*- XML -*- -->
- <!DOCTYPE pkconfig PUBLIC "-//freedesktop//DTD PolicyKit Configuration 1.0//EN"
- "http://hal.freedesktop.org/releases/PolicyKit/1.0/config.dtd">
- <!-- See the manual page PolicyKit.conf(5) for file format -->
- <config version="0.1">
- <match user="root">
- <return result="yes"/>
- </match>
- <define_admin_auth group="wheel"/>
- <match user="$USER">
- <match action="org.freedesktop.hal.storage.*">
- <return result="yes"/>
- </match>
- <match action="hal-storage-mount-fixed-extra-options">
- <!-- for internal devices mounted with extra options like a wished mount point -->
- <return result="yes" />
- </match>
- <match action="hal-storage-mount-removable-extra-options">
- <!-- for external devices mounted with extra options like a wished mount point -->
- <return result="yes" />
- </match>
- </match>
- </config>
Так же необходимо убрать или закомментировать в /etc/fstab строку, связанную с приводом, чтобы дать возможность обычным пользователям монтировать диски (иначе кеды попытаются смонтировать диск по указанному пути в /etc/fstab, и если к той папке у него не будет доступа - получит отказ):
- /dev/cd0 /cdrom cd9660 ro,noauto 0 0
Ну вот, тот самый необходимый минимум установлен и настроен, теперь можно запускать кеды. Хотя нет, еще ведь нужно подключить драйвер для звуковой карты:). Если вы не знаете какая у вас стоит звуковая карта или какой модуль подходит для вашей звуковой карты, то можно загрузить все модули разом и посмотреть какой подошел, например, так:
- # kldload snd_driver
- # cat /dev/sndstat
- FreeBSD Audio Driver (newpcm: 64bit 2009061500/amd64)
- Installed devices:
- pcm0: <HDA Realtek ALC887 PCM #0 Analog> (play/rec) default
- pcm1: <HDA Realtek ALC887 PCM #1 Analog> (play/rec)
- pcm2: <HDA Realtek ALC887 PCM #2 Digital> (play/rec)
- # echo 'snd_hda_load="YES"' >> /boot/loader.conf
- sysctl dev.pcm.0.play.vchans=8
- ttyv8 "/usr/local/bin/xdm -nodaemon" xterm off secure
- ttyv8 "/usr/local/bin/kdm -nodaemon" xterm on secure
- # kill -1 1
- Заходите в "Центр управления" - "Региональные и специальные возможности" - "Раскладка клавиатуры". Ставите галочку напротив "Включить переключение раскладок клавиатуры", добавляете нужные языки в "Используемые раскладки". Далее жмете на раскладку "Russia", ставите вариант раскладки в winkeys и ставите галочку напротив "Включить латинскую раскладку". Потом переходите во вкладку "Параметры XCB", там ставите галочку напротив "Использовать переключатели XCB", выбираете нужную комбинацию клавиш и нажимаете применить.
- Заходите в "Центр управления" - "Региональные и специальные возможности" - "Комбинации клавиш", ищете там пункт "Переключиться на следующую раскладку клавиатуры". Пробуете установить нужную вам раскладку, ага, косяк, вместо нужной получаем - "Ctrl+ISO_Prev_Group". Жмете применить и в удобном для вас редакторе открываете файл - ~/.kde/share/config/kdeglobals. Ищете строку "Switch to Next Keyboard Layout" и пишете нужную вам комбинацию клавиш (я использую ctrl+shift, поэтому у меня эта строчка имеет такой вид - Switch to Next Keyboard Layout=Ctrl+Shift_L).
- Снова заходите в "Центр управления" - "Региональные и специальные возможности" - "Раскладка клавиатуры", убираете галочку с "Включить переключение раскладок клавиатуры", жмете применить, а потом снова ее включаете.
- # cd /usr/ports/graphics/djvulibre
- # make install clean
- Ставим порт qtcurve-gtk2:
- # cd /usr/ports/x11-themes/qtcurve-gtk2
- # make install clean
- Далее в корне домашней папки пользователя, под которым вы работаете в кедах, создаем файл ".(точка вначале)gtkrc-2.0 " такого содержания:
- include "/usr/local/share/themes/QtCurve/gtk-2.0/gtkrc"
- style "user-font" {
- font_name = "Verdana 10"
- }
- widget_class "*" style "user-font"
- gtk-font-name="Verdana 10"
- gtk-theme-name = "qtcurve"
- gtk-icon-theme-name = "Tango"
- # cd /usr/ports/sysutils/k3b
- # make install clean
- # cd /usr/ports/misc/k3b-i18n
- # make install clean
- # kldload atapicam
- # echo 'atapicam_load="YES"' >> /boot/loader.conf
- # camcontrol rescan all
- [system=10]
- add path 'cd*' mode 666
- add path 'pass*' mode 666
- add path 'xpt0' mode 666
- или (если хотите дать права определенной группе)
- [system=10]
- add path 'cd*' mode 660 group operator
- add path 'pass*' mode 660 group operator
- add path 'xpt0' mode 660 group operator
- devfs_system_ruleset="system"
- # service devfs restart
- KOffice - офисный пакет от разработчиков KDE (/usr/ports/editors/koffice-kde3)
- OpenOffice - аналог MIcrosoft Office (/usr/ports/editors/openoffice.org-3)
- Pidgin - поддерживает кучу протоколов: icq, jabber,msn... (/usr/ports/net-im/pidgin)
- licq - клиент ICQ (/usr/ports/net-im/licq)
- gajim - джаббер клиент (/usr/ports/net-im/gajim)
- Audacious - хороший плеер, интерфейс как у winamp, в добавок поддерживает скины от того же winamp,а (/usr/ports/multimedia/audacious)
- Amarok - этот плеер имеет большой функционал для каталогизации музыки (/usr/ports/audio/amarok)
- VLC - хороший медиаплеер, поддерживает кучу различных видео форматов. Можно использовать в качестве сервера для трансляции потока аудио/видео по сети (/usr/ports/multimedia/vlc)
- Kaffeine - хорошая морда для библиотеки xine-lib. Сама же библиотека держит тучу видео форматов (/usr/ports/multimedia/kaffeine)
- GIMP - мощный редактор, имеет много возможностей обработки изображений (/usr/ports/graphics/gimp)
- VirtualBox - виртуальная машина от Oracle, есть GUI, поддерживает большинство современных ОС, умеет пользоваться аппаратными механизмами виртуализации (/usr/ports/emulators/virtualbox-ose)
- qemu - программа с открытым исходным кодом для эмуляции аппаратного обеспечения различных платформ (/usr/ports/emulators/qemu)
- Opera - бесплатный браузер от Opera Software, шустрый, безопасный и не лопает много ресурсов (/usr/ports/www/opera)
- Firefox - бесплатный браузер с открытым исходным кодом (/usr/ports/www/firefox-36)
- Thunderbird - бесплатная, кроссплатформенная, свободно распространяемая программа для работы с электронной почтой и группами новостей. Имеет богатый функционал для работы с почтой (/usr/ports/mail/thunderbird3)
- //tmp_user@srv-home.local/distrib /mnt/distrib smbfs ro,late 0 0
- //tmp_user@srv-home.local/video /mnt/video smbfs ro,late 0 0
- //tmp_user@srv-home.local/music /mnt/music smbfs ro,late 0 0
- //tmp_user@srv-home.local/wallpapers /mnt/wallpapers smbfs ro,late 0 0
- [default]
- workgroup=HOME
- [SRV-HOME.LOCAL]
- charsets=utf-8:cp866
- addr=192.168.7.250
- [SRV-HOME.LOCAL:TMP_USER]
- password=1234
вс, 15/01/2012 - 17:14
сб, 17/03/2012 - 01:14
пн, 03/12/2012 - 20:41
чт, 26/04/2018 - 18:36
чт, 26/04/2018 - 21:37
вс, 15/01/2012 - 16:39
Если честно меня уже бесят такое большое количество ресурсов как поднять мускул на фрихе или PostgresSQL. Но почему-то ни одного толкого ресурса посвященного исключительно настройке десктопа на FreeBSD. Лично мне хочется очень удобный и красивый интерфейс. Однако я новичок во фрихе и только только делаю первые шаги. О чем это я? О том что было бы круто если бы появился проект направленный исключительно на настройку десктопа!!!
По статье:
1) Нету ни одной ссылки
2) Не приведена ни одна книга
Т.е. если чел получит траблы, то где ему искать помощь?