Воскресенье, 19.05.2024, 06:35

Slackware Linux

Поиск
Меню сайта
Категории раздела
Наш опрос
Оцените мой сайт
Всего ответов: 10
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Форма входа
Главная » FAQ [ Добавить вопрос ]


Отформатировать диск в ext3 в Linux можно командой:

sudo mkfs -t ext3 /dev/sda5


Использовать slapt-get.

Качаем, устанавливаем, настраиваем: /etc/slapt-get/slapt-getrc

Добавляем источник обновления:

SOURCE=ftp://ftp.slackware.ru/slackware/slackware64-current/

Выполняем:

sudo slapt-get --update - обновляем базу доступных пакетов

sudo slapt-get --upgrade - качаем и устанавливаем новые версии пакетов


За цвета элементов mc отвечает секция [colors] в файле конфигурации `/.mc/ini' (то есть у каждого пользователя своя)

Синтаксис:

<элемент_интерфейса>=<цвет_текста>,<цвет_подложки>:

Какие элементы можно раскрасить.
1. В панелях: normal, selected, marked, markselect, errors, input, reverse, gauge
2. Пункты меню: menu, menusel, menuhot, menuhotsel
3. В окне диалога: dnormal, dfocus, dhotnormal, dhotfocus
4. В окне подсказки: helpnormal, helpitalic, helpbold, helplink, helpslink
5. В окне программы просмотра: viewunderline
6. Типов файлов: executable, directory, link, device, special, core
7. В окне редактора: editnormal, editbold, editmarked

В какие цвета можно раскрасить.
black, gray, red, brightred, green, brightgreen, brown, yellow, blue, brightblue, magenta, brightmagenta, cyan, brightcyan, lightgray и white.
Для прозрачного фона используются специальное ключевое слово default. Слово default можно использовать только при задании цвета подложки.

Например:

[Colors]

xterm=
color_terminals=
base_color=normal=,default:selected=,:marked=,default:markselect=,:menu=,:menuhot=,:menusel=,:
menuhotsel=,:dnormal=,:dfocus=,:dhotnormal=,:dhotfocus=,:input=,:reverse=,:executable=,default:
directory=,default:link=,default:device=,default:special=,:core=,:helpnormal=,:helplink=,:helpslink=,:
errors=red,default:marked=yellow,default:executable=brightgreen,default:
marked=yellow,default:link=grey,default:marked=yellow,default:device=brightmagenta,default:

cd путь/к/исходникам
mkdir build
cd build
cmake ..
make
sudo make install


Легко!

Пишем

$startx -- :1 //Запуск сервера на 8 консоли(CTRL+ALT+F8) -- :2 соответственно 9 и т.д.

Доступные WM:

startfluxbox

startkde

startx - Предыдущий сеанс по умолчанию

startxfce4


Воспользоваться ispell (http://www.gnu.org/software/ispell/ispell.html),
прикрутив к нему русские базы (
http://fmg-www.cs.ucla.edu/geoff/ispell-dictionaries.html#Russian-dicts ).
Базы просто скачиваются, распаковываются, make, make install. Вызывать их
следующим образом:
% ispell -d russian

Воспользоваться i2c/lm_sensors:
% tar zxvf ./i2c-2.8.0.tar.gz
% cd i2c-2.8.0
% make all
% make install


теперь непосредственно lm_sensors:
% tar zxvf ./lm_sensors-2.8.0.tar.gz
% cd lm_sensors-2.8.0
% make all
% make install


В стартовые скрипты добавить загрузку соответствующих модулей:
modprobe i2c-viapro
modprobe i2c-isa
modprobe eeprom
modprobe it87


это для чипа, установленного на моей материнской плате (Gigabyte
GA-7VA на KT400), для конкретной машины нужно подбирать модули (если
не хочется методом перебора, можно обратить внимание на комментарии в
исходниках). Считывать можно либо вручную, в моем случае - из
/sys/dev/sensors/it87-isa-0290/*, или же можно задействовать,
например, gkrellm для графического отображения текущих значений.

В /etc/X11/xorg.conf нужно прописать следующее:
Section "InputDevice"
Identifier "Mouse1"
Driver "mouse"
Option "Protocol" "IMPS/2"
Option "Device" "/dev/mouse"
Option "Buttons" "5"
Option "ZAxisMapping" "4 5"
EndSection

В стартовый скрипт (например, /etc/rc.d/rc.local) добавьте
следующее:
for tty in /dev/tty[0-9]*; do
setleds -D +num [ $tty
done


setup - измение конфигурации slackware
pkgtool - установка и удаление пакетов .tgz с программи
pppsetup - настройка телефонного PPP-соединения с провайдером
интернета
fontconfig - настройка шрифтов
netconfig - настройка сети

делаем от рута!
# iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j MASQUERADE
# echo 1 > /proc/sys/net/ipv4/ip_forward

man mount

1. Если совсем просто:
Код
mount /dev/sda1 /mnt/win_d

где: /dev/sda1 - адресс устройства которое мы монтируем, /mnt/win_d - директория в которую мы монтируем (директория в которой будут доступны файлы с примонтированного устройства).

Замечания:
1) если устройство - флэшка, как обозвалась флэшка в /dev/ при монтировании можно посмотреть заглянув в /var/log/messages. Например:

Цитата
[vasiliy@beezir ~]$ sudo tail -15 /var/log/messages
Nov 3 19:13:11 beezir kernel: Initializing USB Mass Storage driver...
Nov 3 19:13:11 beezir kernel: scsi2 : SCSI emulation for USB Mass Storage devices
Nov 3 19:13:11 beezir kernel: usbcore: registered new interface driver usb-storage
Nov 3 19:13:11 beezir kernel: USB Mass Storage support registered.
Nov 3 19:13:16 beezir kernel: scsi 2:0:0:0: Direct-Access T.sonic 610 0100 PQ: 0 ANSI: 4
Nov 3 19:13:16 beezir kernel: sd 2:0:0:0: [sdb] 501504 2048-byte hardware sectors (1027 MB)
Nov 3 19:13:16 beezir kernel: sd 2:0:0:0: [sdb] Write Protect is off
Nov 3 19:13:16 beezir kernel: sd 2:0:0:0: [sdb] Assuming drive cache: write through
Nov 3 19:13:16 beezir kernel: sd 2:0:0:0: [sdb] 501504 2048-byte hardware sectors (1027 MB)
Nov 3 19:13:16 beezir kernel: sd 2:0:0:0: [sdb] Write Protect is off
Nov 3 19:13:16 beezir kernel: sd 2:0:0:0: [sdb] Assuming drive cache: write through
Nov 3 19:13:16 beezir kernel: sdb: sdb1
Nov 3 19:13:16 beezir kernel: sd 2:0:0:0: [sdb] Attached SCSI removable disk
Nov 3 19:13:16 beezir kernel: sd 2:0:0:0: Attached scsi generic sg2 type 0


нас интересует выделенная строчка. т.е. монтировать мы должны /dev/sdb1.

2) точка монтирования может быть любой директорией в системе. традиционно это директории находящиеся в /media или /mnt, но вы можете создать директорию и смонтировать в нее в любое удобное место. (/home/user/fleshka is OK). Будьте осторожны, монтировать в директории типа /, /etc/usr, /var итп, которые имеют в системе специальное назначение можно, только если вы на 100% уверенны в том что вы делаете.
3) при монтировании предидущий контент директории будет недоступен. чтобы его увидеть нужно размонтировать то что смонтировано в директорию.
4) увидеть список смонтированных файловых систем можно:
- командой df:

Код
[vasiliy@beezir ~]$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 9.1G 6.8G 1.9G 79% /
tmpfs 220M 0 220M 0% /dev/shm
/dev/sda1 274M 216M 44M 84% /mnt/debian
/dev/sda9 40G 34G 4.6G 89% /home
debian:/music 233G 132G 102G 57% /music
/dev/sdb1 979M 956M 23M 98% /media/disk


- командой mount без параметров;
- командой cat /etc/mtab;

вывод будет несколько отличаться. выбирайте то что вам нужно, в зависимости от ситуации, я чаще всего использую df.

2. "я сделал все как ты сказал, но названия файлов вижу крякозябриками"
Код
mount -o codepage=866,iocharset=utf8 /dev/sda1 /mnt/win_d
mount -o codepage=866,utf8 /dev/sda1 /mnt/win_d


codepage=866 - останется неизменной,
iocharset=utf8 - зависит от локали. кодировку локали можно посмотреть из вывода команды locale. для все еще встречающихся ru_RU.KOI8-R, ru_RU.CP1251 значения iocharset будут koi8-r, cp1251 соответственно.

Вторая строка - просто сокращенная запись первой, для локали utf8

Обратите внимание, для ntfs опция iocharset считается устаревшей, вместо нее применяется опция nls, codepage для ntfs нет вообще.

3. "я сделал все как ты сказал, но я не могу писать на ФАТ-раздел простым пользователем, только рутом"
продолжаем читать man mount . ФАТ32 простая файловая система, прав доступа к файлам на уровне файловой системы не поддерживает. При монтировании можно задать для всех файлов на этой ФС: владельца, группу владельца, и маску. Например:
Код
[vasiliy@beezir ~]$ sudo mount -o uid=vasiliy,gid=users,umask=0002 /dev/sdb1 /media/test
[vasiliy@beezir ~]$ ls -l /media/test/ |head -2
total 58632
drwxrwxr-x 2 vasiliy users 8192 2007-05-15 21:30 Bjork - Volta (2007)
[vasiliy@beezir ~]$ ls -l /media/test/Bjork\ -\ Volta\ \(2007\)/ |head -2
total 58776
-rwxrwxr-x 1 vasiliy users 5839213 2007-05-15 21:30 01-bjork-earth_intruders_(co-produced_by_timbaland).mp3


uid - задает владельца, в нашем случае владельцем получился я, vasiliy
gid - задает группу владельца, в нашем случае users
umask - задает маску для прав на файлы. В нашем случае владелец и группа могут читать и писать везде куда захотят, все остальные могут просто послушать музыку (:. Про маску подробнее - man umask.

4. "Ура! Вроде все работает. Файлы по-русски, права нормальные. Я должен писать это каждый раз после загрузки системы, чтобы примонтировать свой второй винт с музыкой?!"

Нет. :-) man fstab. Если кратко: файл /etc/fstab содержит информацию о всех файловых системах которые должны быть смонтированы при загрузке (и о некоторых других, которые могут быть смонтированы позже).

Допустим у нас есть команда для монтирования:
Код
mount -o uid=vasiliy,gid=users,umask=0002 /dev/sdb1 /media/test


в fstab'е это будет выглядеть следующей строчкой:
Код
/dev/sdb1 /media/test vfat uid=vasiliy,gid=users,umask=0002 0 0
(что (куда (файловая (опции монтирования) (просто два нолика, в данном случае
монтируем) монтируем) система) именно так).

Если вывод в (графическую) консоль не очень объёмный, можно просто выдельть мышкой кусок и вставить его в сообщение щелчком средней кнопки.
В противном случае можно использовать перенаправление вывода в файл через "воронку", например так:

Код
some_command parameters > logfile.txt


UPD: чтобы видеть результат выполнения на экране, и одновременно писать в файл, можно воспользоваться командой tee:

Код
some_command parameters | tee -a logfile.txt



Цитата(MagTux @ Dec 12 2007, в 16:05)
Цитата
Команда

$ setterm -dump

создает "слепок" буфера текущей виртуальной консоли в виде простого текстового файла с именем по умолчанию - screen.dump. В качестве ее аргумента можно использовать номер консоли, для которой требуется сделать дамп. А добавление опции -file имя_файла перенаправит этот дамп в файл с указанным именем. Опция же -append присоединит новый дамп к уже существующему файлу - "умолчальному" screen.dump или поименованному опцией -file.


Т.е. после использования команды, например
Код
$ setterm -dump -file /root/screenlog

соответственно в файле /root/screenlog будет содержимое одной страницы консоли. Как сохранить весь буфер прокрутки пока не нашёл.


Цитата(MagTux @ Dec 12 2007, в 17:00)
Нашёл еще одно решение для копирования/вставки текста в текстовой консоли без мыши. Также можно копировать текст из буфера прокрутки (т.е. всё что на экране и выше за экраном). Чтобы лучше разобраться, читайте о консольном менеджере окон screen. Также может пригодиться увеличить размер буфера прокрутки.

1) Запускаем screen
Код
$ screen

2) Нажимаем Enter. Всё. Мы находимся в нулевом окне консоли.
3) Выполняем нужные команды, вывод которых необходимо скопировать.
4) Ctrl+A, Ctrl+[ - мы в режиме копирования. Ставим курсор на начало выделения, жмём пробел, потом ставим курсор на конец выделения, жмём пробел. Текст скопирован в буфер.
5) Ctrl+A, с - мы создали новое 1-е окно.
6) Ctrl+A, 1 - мы перешли на 1-е окно.
7) Открываем любой (?) текстовый редактор (я пробовал в mc), и жмём Ctrl+A, Ctrl+] - текст вставлен. Сохраняем.
8) Ctrl+A, Ctrl+0 - вернуться обратно в нулевое окно.

Цитата
Как увеличить буфер обратной прокрутки?

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

И такое средство есть, а называется оно 'framebuffer console', для краткости 'fbcon'. Это устройство имеет файл документации 'fbcon.txt'; если вы устанавливали документацию к ядру, то он у вас есть. Выискивайте его где-то в районе '/usr/share' ветви (я не могу указать точный путь из-за разницы в дистрибутивах).

На этом месте прошу прощения: мы должны сделать небольшое отступление и немного поговорить о видеобуфере (framebuffer).

Видеобуфер - это буфер между дисплеем и видеоадаптером. Его прелесть в том, что им можно манипулировать: он позволяет трюки, которые не прошли бы, будь адаптер связан напрямую с дисплеем.

Один из таких трюков связан с буфером прокрутки; оказывается, вы можете "попросить" видеобуфер выделить больше памяти буферу прокрутки. Достигается это через загрузочные параметры ядра. Сначала вы требуете framebuffer (видеобуфер); Затем запрашиваете больший буфер прокрутки.

Нижеследующий пример касается GRUB, но может быть легко адаптирован к LILO. В файле настройки GRUB - 'menu.lst'- найдите соответствующую ядру строчку, и затем:
Удалите опцию 'vga=xxx', если таковая присутствует.
Добавьте опцию 'video=vesabf' или то, что соответствует вашему "железу".
Добавьте опцию 'fbcon=scrollback:128'.
После этой процедуры, строка параметров ядра должна выглядеть приблизительно так:
'kernel /vmlinuz root=/dev/sdb5 video=radeonfb fbcon=scrollback:128'.

Спрашивается, зачем удалять опцию 'vga=xxx'? Из-за возможных конфликтов с видео-опцией. На своем ATI адаптере, я не могу изменить буфер прокрутки, если 'vga=xxx' присутствует в списке. Возможно в вашем случае это не так. Если вышеперечисленные опции работают - хорошо; но что, если вы хотите увеличить число строк, или установить более мелкий шрифт на экране? Вы всегда делали это при помощи опции 'vga=xxx' - а она-то и исчезла. Не переживайте - то же самое может быть достигнуто изменением параметров fbcon, как описано в файле 'fbcon.txt' (но не описано в данной статье). В Ubuntu и Debian есть более удобный способ: 'dpkg-reconfigure console-setup'. Эту команду стоит использовать также и потому, что она еще и корректирует 'initrd' на ваши новые настройки.

источник: rus-linux.net


С опцией fbcon=scrollback:128 у меня буфер прокрутки увеличился до 17 экранов (35 раз Shift+PgUp по полэкрана).
Кстати, 128 - это килобайт. Автор статьи утверждает, что больше установить нельзя. Я и не пробовал.



Цитата(broom @ Dec 12 2007, в 17:27)
Можно заюзать script.
Цитата
Script makes a typescript of everything printed on your terminal. It is useful for students who need a
hardcopy record of an interactive session as proof of an assignment, as the typescript file can be printed
out later with lpr(1).

Делаем
Код
script filename.log
, когда все нужные команды выполнены -
Код
exit
.
Все записано в filename.log



Цитата(SSDD @ Dec 17 2007, в 15:11)
во freeBSD есть замечательная утилита watch, которая позволяет мониторить терминалы, но как оказалось, в Linux она выполняет совсем иные функции =\ Стоит погуглить на эту тему, чего-нть да найдется...

Для любого WM/DE в файле /etc/X11/xorg.conf нужно отредактировать(из-под root'a) Section "InputDevice" для Клавиатуры, привести примерно в такой вид:

Код
Section "InputDevice"
Identifier "Generic Keyboard"
Driver "kbd"
Option "CoreKeyboard"
Option "XkbRules" "xorg"
Option "XkbModel" "pc104"
Option "XkbLayout" "us,ru(winkeys)"
# Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll"
Option "XkbOptions" "grp:caps_toggle,grp_led:scroll"

EndSection


XkbLayout задает языки между которыми необходимо переключатся, если языков больше - можно вписать больше, например, для русского, английского и украинского:
Option "XkbLayout" "us,ru(winkeys),ua(winkeys)"

XkbOptions в нашем случае задает способ переключения, и индикацию альтернативного языка: ctrl_shift_toggle - переключение по Ctl+Shift, caps_toggle - переключение нажатием Caps_Lock(Caps_Lock+Shift тогда будет делать то что в нормальной жизни делает Caps Lock), alt_shift_toggle переключение по Alt+Shift. grp_led:scroll - означает зажигать лампочку Scroll Lock на клавиатуре если включена альтернативная группа.

2. Если нужен индикатор языка в трее:
- для КДЕ можно воспользоваться kkbswitch ( kxkb - стандартный настройщик переключения раскладок в КДЕ должен быть выключен в настоящий момент - КДЕ 3.5.x он чаще всего глючит);
- для Gnome можно восползоваться стандартным Гномовским апплетом (http://muaddeep.googlepages.com/lang_gnome1.png; http://muaddeep.googlepages.com/lang_gnome.png );
- для других WM можно воспользоваться xxkb, мой конфиг xxkb(~/.xxkbrc) можно посмтреть: http://muaddeep.googlepages.com/xxkbrc
первые два варианта предусматривают возможность установить и свое сочетание клавиш для переключения языка, и сами варианты языков, не зависимо от настроек Х-ов(см. пп1);

3. В случае неработоспособности пп1, пп2 задавайте вопрос с вложением ваших конфига Х-ов /etc/X11/xorg.xonf; и лога Х-ов ( предположительно: /var/log/Xorg.0.log).

4. Дополнительно про настройку переключения раскладки в Х-ах читать в: топике: заметки на «полях» клавиатуры

Посмотрите вывод команды
free
в терминале. Он должен выглядеть примерно так:
Код

total used free shared buffers cached
Mem: 1032812 923608 109204 0 166928 290216
-/+ buffers/cache: 466464 566348
Swap: 898172 0 898172

Хотя кажется, будто свободно всего 109 мегабайт из гигабайта установленной оперативки, в действительности, большая часть памяти всего лишь распределена по буферам и кэширована ядром, и будет отдана приложениям, которые ее запросят. Буфферы и кэши поэтому можно приплюсовать к свободной памяти, при вычислении потребления памяти системой.

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

Если в Linux фрагментация и есть, то она незначительная и на производительности системы существенно не сказывается.
Никакой дефрагментации в нормальных условиях работы системы не требуется.

mount -o loop <имя файла>.iso <точка монтирования>
Например,

mount -o loop cdimage.iso /home/teddy/tmp

Метод 1: используем команду SET PASSWORD:

mysql -u root
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');

Метод 2: используем mysqladmin
mysqladmin -u root password "newpass"
Метод 3: используем UPDATE непосредственно в таблице пользователей
mysql -u root
mysql> use mysql;
mysql> UPDATE user SET Password = PASSWORD('newpass') WHERE User = 'root';
mysql> FLUSH PRIVILEGES;

Консоль
Раскладка по Ctrl+Shift

/etc/rc.d/rc.keymap
#!/bin/sh
# Load the keyboard map. More maps are in /usr/share/kbd/keymaps.
if [ -x /usr/bin/loadkeys ]; then
/usr/bin/loadkeys /usr/share/kbd/keymaps/i386/qwerty/ruwin_ct_sh-UTF-8.map.gz
fi
Шрифт, отображающий кириллицу

/etc/rc.d/rc.font
#!/bin/sh
setfont Cyr_a8x16.psfu.gz
Локаль

/etc/profile.d/lang.sh
#!/bin/sh

# en_US is the Slackware default locale:
#export LANG=en_US

# There is also support for UTF-8 locales, but be aware that
# some programs are not yet able to handle UTF-8 and will fail to
# run properly. In those cases, you can set LANG=C before
# starting them. Still, I'd avoid UTF unless you actually need it.
#export LANG=en_US.UTF-8
export LANG=ru_RU.UTF-8

# One side effect of the newer locales is that the sort order
# is no longer according to ASCII values, so the sort order will
# change in many places. Since this isn't usually expected and
# can break scripts, we'll stick with traditional ASCII sorting.
# If you'd prefer the sort algorithm that goes with your $LANG
# setting, comment this out.
export LC_COLLATE=C

# End of /etc/profile.d/lang.sh

Не забываем убедиться, что на выше приведенных файлах (rc.font, rc.keymap, lang.sh) установлен атрибут выполнения.

Поставить же его можно следующей командой:
chmod +x полный_путь_к_файлу
Lilo

В /etc/lilo.conf нужно исправить строчку:
append=" vt.default_utf8=0"
на:
append=" vt.default_utf8=1"
и выполнить команду:
lilo
HAL и X'ы
Раскладка

/usr/share/hal/fdi/policy/10osvendor/10-keymap.fdi

Правим строки с input.xkb, а именно options, layout, variant, задаем в них примерно следующее:




<deviceinfo version="0.2">
<device>
<match key="info.capabilities" contains="input.keymap">
<append key="info.callouts.add" type="strlist">hal-setup-keymap</append>
</match>

<match key="info.capabilities" contains="input.keys">

<merge key="input.xkb.options" type="string">
terminate:ctrl_alt_bksp,grp:ctrl_shift_toggle,grp_led:scroll
</merge>

<merge key="input.xkb.rules" type="string">base</merge>
<merge key="input.xkb.model" type="string">evdev</merge>
<merge key="input.xkb.layout" type="string">us,ru</merge>
<merge key="input.xkb.variant" type="string">,winkeys</merge>>

</match>
</device>
</deviceinfo>
NTFS

/etc/fstab
/dev/sdb1 /mnt/sdb1 ntfs-3g locale=ru_RU.utf8,umask=000 1 1

Наберите команду date, чтобы посмотреть текущие дату и время. Если необходимо изменить их, воспользуйтесь следующим форматом команды:
date MMDDhhmmCCYY.ss

MM — месяц, DD — день месяца, hh — часы, mm — минуты, CCYY — 4 цифры года, ss — секунды
Например:
date 100615352006.30

Эта команда установит текущие дату и время на 06 октября 2006 года, 15:35:30.
Обратите внимание: дату и время может изменять только root-пользователь.

Как и в прочих дистрибутивах запускаем утилитку netconfig и настраиваем то что не настроили при установке)

Так как сборки скайпа под 64-х разрядный линукс не существует(дебиановский пакет на оффсайте на самом деле 32-х разрядный) приходится извращаться и ставить обычный 32-х битный пакет.

После долгово гуглекопания я нашел самый быстрый, безопасный и простой способ которым с успехом сам пользуюсь на Slackware-current x64

Проблема решилась установкой библиотек совместимости и сборки с slacky.eu

Библиотеки:
aaa_elflibs32-12.2.0-x86_64_slamd64-1.tgz
alsa-lib32-1.0.17a-x86_64_slamd64-1.tgz
gcc-compat32-4.3.3-x86_64_slamd64-3.txz
glib2-32-2.18.4-i686_slamd64-1.tgz
xlibs32-7.3-x86_64_slamd64-6.tgz

http://mirror.yandex.ru/slamd64/slamd64-current/slamd64/c/

Сборка:

http://repository.slacky.eu/slackware-13.0/network/skype/

Вот собственно и все, я установил скайпу этой сборки и недостающие 32-х битные библиотеки и скайп запустился и с успехом работает.