Modyfikacja znaku zachęty w OpenBSD

Po instalacji OpenBSD powita Cię mało motywujący do pracy znak zachęty, a mianowicie $ dla standardowego użytkownika lub # dla roota (zakładając, że pracujemy w domyślnym ksh). Naturalnie modyfikacja jest możliwa, wystarczy użyć jednej komendy.

Jako przykład użyję aktualnego znaku zachęty w swoim serwerze domowym:

ksx4system@eon2kpuffy:[~]$

aby uzyskać taką kombinacje należy wpisać w terminalu komendę

$ export PS1=”\u@\h:[\w]\\$ “

spowoduje to wyświetlanie przed znakiem zachęty kolejno loginu aktualnie zalogowanego użytkownika, hostname i katalog, w którym się znajdujemy (“~” to nasz katalog domowy, np. /home/ksx4system).

Jeśli chcesz uzyskać inne kombinacje możesz wykorzystać następujące zmienne:

\e – wstawia znak ASCII escape.
\h – hostname ale bez domeny.
\H – pełny hostname, włącznie z domeną.
\n – wstawia znak nowej linii.
\t – aktualny czas 24-godzinny, w formacie GG:MM:SS.
\u – nazwa aktualnie zalogowanego użytkownika.
\w – aktualnie otwarty katalog (domowy opisywany jest jako “~”).
\W – nazwa bazowa dla aktualnie otwartego katalogu.
\$ – wyświetla znak zachęty ($ dla użytkownika, # dla roota).

oczywiście można wykorzystać niektóre znaki specjalne np. kwadratowe nawiasy.

Aby utrwalić modyfikację należy dopisać komendę do pliku .profile w katalogu domowym użytkownika i /etc/profile.

Jabber, wiele zasobów i transporty

Załóżmy, że masz jeden JID, transporty do innych popularnych komunikatorów (AIM, ICQ, Gadu-Gadu) i więcej niż jedno urządzenie, na którym możesz uruchomić komunikator zgodny z Jabberem. Przy zachowaniu standardowej konfiguracji gdy zostawisz jedną sesję (np. komputer stacjonarny w domu – jankowalski@jabber.org/macmini), a następnie podłączysz kolejną (np. z laptopa – jankowalski@jabber.org/powerbook) transporty przełączą się do chronologicznie najświeższej sesji.

Czy da się podłączyć więcej niż jedną sesję tak, aby wszystkie były połączone z transportami? Oczywiście, że tak! Jest to dość proste, wymaga tylko oprogramowania całkowicie zgodnego z Jabberem (np. wspaniały komunikator Psi dla komputerów, nowsze wersje komunikatora Bombus dla komórek z obsługą Javy). Jako przykład pokażę konfiguracje dla trzech sesji.

  1. Zdecyduj, która sesja ma mieć najwyższy priorytet, a która najniższy. W przypadku komputera stacjonarnego, laptopa i komórki prawdopodobnie najwygodniejsze dla Ciebie będzie ustawienie priorytet rosnąco (np. kolejno 5, 3 i 1).
  2. Ustaw priorytet zasobów na komputerach. Aby zrobić to w Psi dla MacOS X kliknij na belce kolejno General, Account Setup, w nowo otwartym oknie zaznacz konto, którego właściwości chcesz zmienić i kliknij Modify. W kolejnym oknie przejdź do zakładki Misc. i ustaw priorytet. Konfiguracja dla innych systemów jest bardzo podobna.
  3. Ustaw priorytet zasobu w komórce. Aby to zrobić w Bombusie (wersja 0.7.1429M) wejdź kolejno w Options, Status i edytuj dowolny status zaznaczając opcje “for all status types”.

Przy konfiguracji priorytetu zasobów opisanej w punkcie pierwszym sesja podłączona z laptopa będzie ważniejsza (tj. będzie główną) od tej na komputerze stacjonarnym, a sesja z komórki ważniejsza od obu powyższych. Wszystkie sesje będą prawidłowo połączone z transportami.

Redukcja zużycia pamięci w serwerach Linuksowych

Bolączką wszystkich osób posiadających low-end’owe serwery (stare komputery stojące gdzieś w piwnicach, energooszczędne terminale po przeróbkach i najtańsze VPSy) są braki zasobów. O ile problemu słabego procesora raczej nie uda się ominąć, o tyle optymalizacja pamięci jest jak najbardziej możliwa. Co trzeba zrobić? Zmniejszyć rozmiar stosu pamięci.

Sposób pierwszy (działa wszędzie):

  1. Otwórz terminal, a następnie wpisz i zatwierdź co następuje:

    localhost~# ulimit -s 256

    To polecenie zmniejszy stos pamięci z domyślnych 8Mb do 256kb (32-krotnie!).

  2. Zrestartuj aplikacje generujące największe obciążenie (najprawdopodobniej Apache i MySQL).

    localhost~# /etc/init.d/mysql restart

    localhost~# /etc/init.d/apache2 restart

Sposób drugi (zalecany):

  1. Otwórz terminal, a następnie uruchom edytor tekstu:

    localhost~# nano /etc/security/limits.conf

    teraz dodaj na końcu pliku lecz przed linią

    # End of file

    następującą linię, po czym zapisz go:

    www-data hard stack 256

  2. Ponownie uruchom edytor tekstu i otwórz ten plik:

    localhost~# nano /etc/pam.d/common-session

    po czym dodaj na końcu pliku lecz przed linią

    # end of pam-auth-update config

    następującą linię, po czym zapisz plik:

    session required pam_limits.so

  3. Zrestartuj serwer (tak, cały system operacyjny).

Poniższe rozwiązania zostały przetestowane na dystrybucji Ubuntu Server Edition 9.10 jednak powinny działać także na wielu innych dystrybucjach (z bardzo popularnym Debianem włącznie).

edycja z dnia 13/02/2010:

Niestety, sposób drugi sprawia problemy w Ubuntu. Jeśli jednak korzystasz z dystrybucji CentOS lub Fedora, to wciąż możesz bez problemów go używać.