strony www, sklepy internetowe, oprogramowanie

/var/lib/dpkg/lock – open (11: Zasoby chwilowo niedostępne)

2011/03/17 ; dodane przez lskowronski
E: Nie udało się uzyskać blokady /var/lib/dpkg/lock – open (11: Zasoby chwilowo niedostępne)
E: Nie udało się zablokować katalogu administracyjnego (/var/lib/dpkg/), czy inny proces go używa?

Zdarzyło się Wam kiedyś, że podczas instalacji pakietów w debianie nagle proces został przerwany, ale lock został i nie możecie powtórzyć instalacji ani rozpocząć nowej? Jeżeli tak, to przypuszczalnie zobaczycie komunikat podobny do tego poniżej:

E: Nie udało się uzyskać blokady /var/lib/dpkg/lock – open (11: Zasoby chwilowo niedostępne)

E: Nie udało się zablokować katalogu administracyjnego (/var/lib/dpkg/), czy inny proces go używa?

Co zrobić w takiej sytuacji? To proste:

  1. Kasujemy plik lock: sudo rm -f  /var/lib/dpkg/lock
  2. Naprawiamy problem związany z przerwaniem instalacji: sudo dpkg –configure -a
  3. Możemy przejść do ponownej instalacji pakietów

Bardzo szybki, prosty i skuteczny sposób.


Symfony 2 -You need to enable either the SQLite or PDO_SQLite extension for the profiler to run properly.

2011/03/17 ; dodane przez lskowronski

Jeżeli dopiero zaczynasz przygodę z Symfony 2 i trafisz na błąd o treści:

“You need to enable either the SQLite or PDO_SQLite extension for the profiler to run properly”

Oznacza to, że serwer z którego korzystasz nie ma zainstalowanej obsługi SQLite. Aby doinstalować obsługę SQLite w debianie korzystamy z instrukcji:

sudo apt-get install php5-sqlite

Po zainstalowaniu można przejść do dalszej nauki/pracy – powodzenia!

Podgląd svn update – dry run

2010/12/28 ; dodane przez mduszynski

Czasami zanim opublikujemy zmiany na serwerze, chcielibyśmy sprawdzić co zostanie zaktualizowane, a przede wszystkim czy nie będzie konfliktów.

Póki co nie ma w SVN polecenia na wzór:

svn update –dry-run

Ale z pomocą przychodzi polecenie svn merge, które ma opcje –dry-run

svn merge –dry-run -r BASE:HEAD .

I tak porównujemy “working copy” z najnowszą wersją w repozytorium.

Przekonfigurowanie pakietów

2010/11/02 ; dodane przez lskowronski

Czasami zdarza się, że podczas instalacji nowych pakietów .deb komputer odmówi nam posłuszeństwa lub nawet sami przypadkiem go zamkniemy, a po ponownym uruchomieniu nie jesteśmy w stanie zakończyć instalacji, ani przeinstalować pakietu poprzez apt-get .

Co wtedy zrobić? Należy skorzystać z polecenia:

defoma-reconfigure -f

które przekonfiguruje, w razie potrzeby przeinstaluje nasze pakiety tak, aby znowu wszystko było w porządku.

Opis ten dotyczy komputerów z zainstalowanymi Ubuntu/Debian

Usuwanie katalogów SVN – Ubuntu

2010/07/14 ; dodane przez lskowronski
Czasami zdarza nam się chcieć skopiować jakieś rozwiązanie znajdujące się już w innym projekcie.
Ponieważ wszystkie projekty są przechowywane w SVN, kopiując moduł kopiujemy i pliki SVN.
Aby takie dane zostały prawidłowo rozpoznane w nowym repozytorium musimy najpierw wyczyścić stare pliki SVN.
Aby to zrobić wchodzimy w linii komend do interesującej nas lokalizacji a następnie wywołujemy komendę:

rm -rf `find . -type d -name .svn`

Której zadaniem jest rekurencyjne przeszukanie katalogów i usunięcie tych które nazywają się ".svn" .

apache2: Could not reliably determine the server’s fully qualified domain name, using 127.0.0.1 for ServerName

2010/07/11 ; dodane przez lskowronski

Kolejny krótki wpis traktujący o konfiguracji Apache.

Jeżeli podczas restartu serwera Apache pojawia się komunikat:

apache2: Could not reliably determine the server’s fully qualified domain name, using 127.0.0.1 for ServerName

oznacza to, że musimy skonfigurować nasz ServerName. Aby to zrobić przechodzimy musimy dowiedzieć się jaki jest nasz hostname ( wywołujemy komendę hostname) a następnie przechodzimy do pliku httpd.conf (w ubuntu /etc/apache2/httpd.conf) i dodajemy/edytujemy w nim wpis ServerName tak aby był postaci “ServerName hostname” w naszym przypadku:

ServerName leadersmind

apr_sockaddr_info_get() failed

2010/07/11 ; dodane przez lskowronski

Krótki wpis rozwiązujący problem występujący przy restarcie Apache.

Gdy przy restarcie otrzymujemy komunikat typu:

apache2: apr_sockaddr_info_get() failed for leadersmind

gdzie “leadersmind” jest nazwą naszego lokalnego hosta

musimy w pliku hosts (/etc/hosts w przypadku ubuntu)  dodać hosta “leadersmind” do linijek opisujących localhost tak aby wyglądały one w następujący sposób:

127.0.0.1 localhost leadersmind

127.0.1.1 lukasz-laptop leadersmind

Plik zapisujemy i restartujemy serwer (/etc/init.d/apache2 restart). W ten banalny sposób rozwiązaliśmy nasz problem.

Rekompilacja PHP5 z pełnym GD

2010/03/24 ; dodane przez lskowronski

Opiszemy tutaj problem, na który możemy napotkać gdy posiadamy serwer dedykowany i sami musimy dbać o oprogramowanie na nim zainstalowane.

Omówimy problem w oparciu o architekturę Debiana, chyba najpopularniejszego systemu wykorzystywanego na serwerach dedykowanych.

Na czym polega nasz problem? Otóż gdy tworzymy skrypty oparte o PHP, których zadaniem jest modyfikowanie lub też tworzenie grafiki korzystamy z biblioteki GD, ale niestety jej wersja dostępna w łatwo instalowalnych paczkach .deb nie zawiera pełnej wersji tej biblioteki. Brakuje np popularnej funkcji: imagefilter

Co musimy zrobić, aby móc z niej skorzystać? Musimy przekompilować PHP, utworzyć paczkę deb i ją zainstalować. W tym artykule omówimy to krok po kroku.

Musimy doinstalować niezbędne pakiety. Robimy to poleceniem:

apt-get install build-essential debhelper fakeroot

Następnie przechodzimy do lokalizacji:

cd /usr/src

W której musimy umieścić źródła PHP, wykonujemy to poleceniem:

apt-get source php5

Gdy już wszystko zostanie pobrane musimy doinstalować wszystko co będzie potrzebne do skompilowania ze źródeł PHP. Załatwi to za nas kod:

apt-get build-dep php5

Następnie wchodzimy do katalogu o nazwie zbliżonej do:

cd php5-5.2.3

w którym musimy zedytować plik z lokalizacji

debian/rules

W nim odnajdujemy linię:

–with-gd=shared,/usr –enable-gd-native-ttf

i zamieniamy ją na:

–with-gd=shared –enable-gd-native-ttf

Po tych operacjach nadchodzi czas na kompilowanie i tworzenie paczek deb. Robimy to przy pomocy polecenia:

dpkg-buildpackage -rfakeroot

Proces ten może potrwać nawet kilka kodzin, musimy więc być cierpliwi. Gdy proces zakończy się,  wychodzimy katalog wyżej  i uruchamiamy paczkę deb w której znajduje się nasze GD przy pomocy polecenia zbliżonego do:

dpkg -i php5-gd_5.2.3-1ubuntu6.3_i386.deb

Po poprawnej instalacji pozostało nam tylko zrestartować apache poleceniem:

etc/init.d/apache2 restart

I możemy cieszyć się pełną bibliotekę GD w naszym systemie. Gratulujemy!

Web-usability – wstęp

2009/12/20 ; dodane przez lskowronski

Rozpoczynamy cykl artykułów traktujących o web-usability. Dowiemy się w nich dlaczego powinniśmy kierować się zasadami web-usability podczas tworzenia stron i całych interfejsów użytkowników. Zapraszamy do lektury i komentowania.

Zanim zaczniemy uściślijmy definicję web-usability. Wikipedia podaje następującą definicję:

Web-usability – nauka zajmująca się ergonomią interaktywnych urządzeń oraz aplikacji. Ergonomia w ich przypadku skupia się na:

  • intuicyjnej nawigacji,
  • ułatwieniu dostępu do poszukiwanej informacji,
  • zapewnieniu zrozumiałej dla użytkownika komunikacji.

Definicję tą możemy rozszerzyć sami, stawiając sobie pytanie: Po co nam web-usability?

Odpowiedzi jest kilka, oto one:

  • zwiększenie łatwości obsługi serwisu już przy pierwszym wejściu
  • zwiększenie szybkości wykonywania zadań użytkowników przebywających na stronie
  • zmniejszenie czasu nauki nawigacji
  • zmniejszenie lub całkowite wyeliminowanie błędów w nawigacji użytkowników
  • zwiększenie satysfakcji korzystania z serwisu

Wszystkie odpowiedzi w zasadzie prowadzą do zaoszczędzenia czasu użytkowników i zwiększenia ich zadowolenia co przekłada się na sukces i częstsze odwiedzanie naszej strony.

Analiza potrzeb

Web-usability związane jest z analizą potrzeb odbiorców. Każda strona www, czy też oprogramowanie jest skierowane do konkretnej grupy odbiorców, dlatego też musimy przeanalizować czego dany odbiorca oczekuje. Świetnym przykładem są sklepy internetowe. Faktem jest iż rzadko kiedy użytkownik wraca do jednego sklepu internetowego częściej niż raz do roku. Najczęściej wchodzimy, zakładamy konto, kupujemy i zapominamy. Co stanie się, gdy po roku czasu wrócimy do tego samego sklepu? Na pewno nie będziemy pamiętać hasła, a niektórzy nawet nie będą pamiętać, na jaki e-mail było założone konto co będzie prowadzić tylko do frustracji przy próbie ponownej rejestracji. Dlatego też zapoznając się z zasadami web-usability możemy otrzymać kilka rad dotyczących rozwiązania tego problemu.

  1. Umożliwmy dokonanie zakupów bez rejestracji
  2. Budując formularz najpierw wyświetlmy pola potrzebne do nadania przesyłki, a dopiero na samym końcu pola potrzebne do rejestracji
  3. Umieśćmy dobrze widoczny i zrozumiały komunikat o tym, że aby dokonać zakupów nie musimy się rejestrować

Takie podejście z pewnością spodoba się klientowi, a poza tym oszczędzi z pewności wielu nerwów potencjalnym klientom.

Poznaliśmy już wiedzę teoretyczną na temat web-usability oraz jeden praktyczny przykład. Przejdźmy dalej.

Jak poznać czy nasza strona jest przyjazna dla użytkownika czy też nie ?

Pomóc w tym może nam kilka pytań, które jasno określą co jeszcze musimy poprawić lub też pozwolą stwierdzić, że strona spełnia oczekiwania.

Czy będąc na stronie jesteśmy w stanie szybko stwierdzić:

  1. co to jest za strona?
  2. jaka jest nazwa strony?
  3. jakie są główne kategorie strony?
  4. jakie mamy opcje wyboru na obecnym poziomie struktury?
  5. czy mogę coś wyszukać?
  6. czy widoczne jest oznaczenie ” Tutaj jesteś: ” (czyli pasek nawigacji) ?

Pytania te chociaż proste, testują budowę całości naszej strony. Jeżeli na nie wszystkie pytania odpowiedź brzmiała “Tak” zapraszam do czytania dalszych części cyklu.

O czym jeszcze będziemy pisać w kolejnych częściach?

  • budowa strony głównej
  • budowanie treści na stronie
  • budowanie stopki
  • zasady nawigacji
  • omówienie wyszukiwarki
  • budowa formularzy ( temu zagadnieniu poświęcimy bardzo dużo uwagi)

Zapraszamy!

Zaczynamy!

2009/11/21 ; dodane przez admin

Rozpoczynamy działalność naszego DevBlog’a . Firma Leader’s Mind postanowiła dzielić się informacjami na temat rozwiązywania problemów technicznych oraz ciekawych rozwiązań z których przyszło nam korzystać. Zapraszamy do regularnego odwiedzania naszego bloga.