wtorek, 26 sierpnia 2008

Konwerter pdf

Ostatnio szukałem jakiegoś programu do zmiany formatu plików na pliki pdf. Chciałem przekonwertować plik formatu doc. Szukałem jakiegoś programu, który byłby dostępny w repozytorium Debiana. Rozwiązanie okazało się jednak bardzo proste. Wystarczyło użyć pakietu Open Office, który posiada odpowiednią funkcję. W tym przypadku to był Open Office Writer. Zmiana formatu na pdf dostępna jest w menu głównym - Plik > Eksportuj jako PDF... W nowym oknie wciskamy "Eksportuj" zmieniając ewentualnie podane parametry.



W następnym oknie podajemy nazwę i miejsce pliku na dysku i też wciskamy "Eksportuj".



Aby zmienić format pliku należy oczywiście najpierw otworzyć dany plik w Open Office. Inne moduły Open Office (np. Open Office Calc) też posiadają funkcję zmiany formatu na pdf, więc można przekonwertować także inne pliki niż tekstowe np. arkusz kalkulacyjny.

piątek, 22 sierpnia 2008

Spolszczenie Open Office

Open Office, który został zainstalowny przy instalacji Debiana miał u mnie menu w języku angielskim. Aby spolonizować menu Open Office wystarczy doinstalować pakiet - openoffice.org-l10n-pl.

# aptitude install openoffice.org-l10n-pl

Polecenie wydajemy w konsoli po zalogowaniu się na konto roota (polecenie: $ su (plus hasło administratora)).

Warto też zainstalować pakiet - openoffice.org-help-pl. W ten sposób będziemy mieli także pomoc programu w języku polskim.

# aptitude install openoffice.org-help-pl

Po zainstalownaiu tych dwóch pakietów zarówno menu jak i pomoc programu powinny być w języku polskim. Open Office, którego używam to wersja 2.4.1

sobota, 9 sierpnia 2008

Prawa plików (nadawanie i zmiana praw)

W linuksie każdy utworzony plik posiada określone prawa. Można je sprawdzić za pomocą polecenia ls -l, które listuje zawartość katalogu. Dla przykładowo utworzonego pliku, polecenie ls - l daje u mnie następujący wynik:

$ ls -l

-rw-r--r-- 1 sebastian sebastian 27 sie 9 15:47 przykład

Pierwszy znak oznacza rodzaj pliku. W tym przypadku jest to myślnik oznaczający zwykły plik. Na przykład "d" w tym miejscu oznacza katalog a "l" dowiązanie symboliczne. Następne dziewięć znaków oznacza prawa pliku. Dalej można odczytać właściciela pliku, grupę pliku, czas ostatniej modyfikacji i nazwę pliku.
Te dziewieć znaków określa prawa pliku dla właściciela pliku, grupy przypisanej do pliku i pozostałych użytkowników (wszystkich tych którzy nie są ani właścicielem pliku ani nie należą do grupy pliku). Prawa każdej z tych trzech "grup" (właściciel, grupa, pozostali użytkownicy) określają trzy znaki. Pierwsze trzy określają prawa właściciela pliku, kolejne trzy prawa grupy natomiast ostatnie trzy określają prawa pozostałych użytkowników.
W powyższym przykładzie właścicielem pliku jest sebastian, grupa pliku też się nazywa sebastian. Prawa pliku są natomiast następujące (pierwszy myślnik pomijamy bo oznacza on rodzaj pliku):

rw- dla właściciela pliku (sebastian)
r-- dla grupy pliku (sebastian)
r-- dla pozostałych użytkowników

Litera r (od słowa read - ang. czytać) oznacza prawa do odczytu pliku natomiast litera w (od słowa write - ang. pisać) oznacza prawo do zapisu czyli zaminy zawartości pliku. Oprócz tych dwóch praw może się jeszcze pojawić prawo wykonywania pliku - litera x (od słowa execute - ang. wykonywać). Myślnik oznacza brak danego prawa. Wracając do przykładu można powiedzieć, że właściciel pliku (sebastian) może odczytać plik i zmienić jego zawartość (rw). Użytkownicy należący do grupy sebastian mogą tylko odczytać plik (r), podobnie jak wszyscy pozostali użytkownicy pliku (r). Natomiast gdyby wszyscy użytkownicy posiadali prawa do odczytu i zapisu pliku, wówczas prawa pliku wyglądałyby następująco:

-rw-rw-rw-

Trzy ostatnie myślniki to są miejsca gdzie może pojawić się x jeśli zostaną nadane prawa wykonywania pliku dla właściciela, grupy, pozostałych użytkowników lub wszystkich naraz. Jeżeli wszyscy w tym wypadku posiadaliby prawa wykonywania pliku, wówczas wszyscy posiadaliby pełne prawa do pliku (odczyt, zapis, wykonywanie). Wtedy prawa pliku wyglądałby następująco:

-rwxrwxrwx

To są pełne prawa do pliku dla wszystkich. Jeżeli jakiegoś prawa nie ma, wtedy pojawia się zamiast litery myślnik. Stąd te myśliniki w pierwszym przykładzie. Wyżej wspomniano co oznaczają poszczególne prawa dla plików. Co oznaczają one natomiast dla katalogów ? Dla katalogu prawo odczytu - r oznacza prawo do przeszukania zawartości katalogu, prawo zapisu - w oznacza prawo do zmiany zawartości czyli prawo do tworzenia i usuwania plików w katalogu, natomiast prawo wykonywania - x dla katalogu oznacza prawo wejścia do niego.

Podsumowując:

prawo odczytu - r - dla pliku oznacza odczyt zawartości pliku, dla katalogu odczyt zawartości katalogu
prawo zapisu - w - dla pliku oznacza zamianę zawartości pliku, dla katalogu prawo do tworzenia i usuwania plików w katalogu
prawo wykonywania - x - dla pliku oznacza uruchomienie pliku jako programu, dla katalogu oznacza prawo wejścia do katalogu

Do zmiany/nadawania praw służy polecenie chmod. Można go używać w dwojaki sposób: za pomocą liter i znaków lub za pomocą liczb.
Jeżeli używamy liter i znaków składania jego polecenia jest następująca.

chmod <kogo dotyczy zmiana praw><w jaki sposób prawa będą zmieniane><jakie prawa> nazwa_pliku

kogo dotyczy zamiana praw - tu używamy następujących liter, które oznaczają:

u - (user - ang. użytkownik) - oznacza właściciela pliku
g - (group - ang. grupa) - oznacza grupę użytkowników pliku
o - (others - ang. inni) - oznacza pozostałych użytkowników pliku
a - (all - ang. wszyscy) - oznacza wszystkich użytkowników

w jaki sposób prawa będą zmieniane - tu używamy trzech znaków, które oznaczają:

+ - dodanie praw (dodanie kolejnych praw do już istniejących)
- - odebranie praw (odjęcie praw od istniejących)
= - nadanie praw (te które były wcześniej są kasowane)

jakie prawa - tu używa się liter praw omówionych wcześniej czyli:

r - prawo do odczytu
w - prawo do zapisu
x - prawo wykonywania

Dla katalogów znaczenie jest takie jak omówiono.

Weźmy na przykład plik o nazwie tomek, który posiada następujące prawa:

-rw-r--r--

Widać, że właściciel ma prawo do zapisu i odczytu a pozostali tylko do odczytu. Chcemy nadać grupie i pozostałym użytkownikom prawo do zapisu. Używamy więc polecenia:

chmod go+w tomek

(go+w jest pisane ciągiem bez spacji). Teraz prawa pliku będą wyglądały następująco:

-rw-rw-rw-

Wszyscy posiadają takie same prawa, mogą czytać i zmieniać zawartość pliku. Ten sam efekt można byłoby uzyskać wydając polecenie: chmod go=rw tomek. Wtedy prawa grupy i pozostałych użytkowników zostałyby zmienione na rw (stare są kasowane). Efekt jest ten sam. Załóżmy, że chcemy teraz wszystkim odebrać prawo do zapisu pliku. Można użyć polecenia:

chmod a-w tomek

lub

chmod ugo-w tomek

Wtedy prawa pliku wyglądałyby następująco:

-r--r--r--

Jak widać te same prawa można nadawać w różny sposób. Parametry ugoa jak i rwx można łączyć ze sobą (pisze się je łącznie bez spacji). Jeżeli chcemy teraz nadać wszystkim pełne prawa do pliku możemy użyć:

chmod a=rwx tomek

chmod ugo=rwx tomek

chmod ugo+wx tomek

Drugim sposobem nadawania praw jest użycie polecenia chmod przy pomocy liczb. Poszczególne prawa odpowiadają następującym liczbom:

r - odczyt - 4
w - zapis - 2
x - wykonanie - 1

Łączne prawa odpowiadają sumom liczb. Na przykład 6 oznacza prawo do odczytu i zapisu. Wszystkie prawa można przedstawić za pomocą następujących cyfr:

0 - brak praw (---)
1 - prawo do wykonywania (--x)
2 - prawo do zapisu (-w-)
3 - prawo do zapisu i wykonania (-wx)
4 - prawo do odczytu (r--)
5 - prawo do odczytu i wykonania (r-x)
6 - prawo do zapisu i odczytu (rw-)
7 - prawo do zapisu, odczytu i wykonania - pełne prawa (rwx)

Polecenie chmod z użyciem liczb działa jak chmod z użyciem = tzn. nadaje prawa zastępując stare nowymi. Używamy go w następujący sposób:

chmod xxx nazwa_pliku

gdzie xxx to trzycyfrowa liczba (niekoniecznie musi być trzycyfrowa) składająca się z cyfr od 0 do 7. Pierwsza cyfra opisuje prawa właściciela pliku, druga cyfra odpowiada za prawa grupy a ostatnia za prawa pozostałych użytkowników.

Na przykład polecenie:

chmod 664 bartek

nada plikowi bartek prawa do odczytu i zapisu dla właściciela pliku, prawa do odczytu i zapisu dla grupy pliku i prawa do odczytu dla pozostałych użytkowników (-rw-rw-r--), przy czym nie ma znaczenia jakie prawa plik miał wcześniej. Z kolei polecenie:

chmod 777 bartek

nada temu samemu plikowi pełne prawa dla wszystkich użytkowników (-rwxrwxrwx). Polecenie:

chmod 700 aneta

nadaje pełne prawa dla właściciela pliku aneta i żadnych praw pozostałym użytkownikom (-rwx------). Polecenie:

chmod 666 tomek

nadaje wszystkim prawa do zapisu i odczytu pliku tomek (-rw-rw-rw-).

Liczba użyta w poleceniu chmod może być także czterocyfrowa. Wtedy pierwsza cyfra odpowiada za prawa specjalne pliku, a trzy następne nadają prawa tak jak liczba trzycyfrowa. Na przykład w poleceniu chmod 1770 tomek jedynka ustawia tzw. lepki bit a 770 nadaje pełne prawa dla właściciela i grupy i żadnych praw dla pozostałych użytkowników. Tzw. lepki bit na przykład dla katalogów oznacza, że pliki w takim katalogu może usunąć tylko właściciel katalogu lub właściciel danego pliku.

Więcej na temat praw plików i praw specjalnych w man chmod i info chmod.

piątek, 1 sierpnia 2008

Edytory html

Jakiś czas temu postanowiłem zainstalować jakiś edytor html. Pod windowsem używałem kED. Szukałem czegoś podobnego dla Debiana. Wybrałem dwa, które są dostępne w repozytorium Debiana, oparte na Gtk+ - Screem i Bluefish. Na pierwszy rzut oka prostszy i łatwiejszy w obsłudze wydał mi się Screem. Posiada on łatwe w obsłudze kreatory. Przy tworzeniu nowej strony wystarczy w kreatorze podać typ dokumentu, kodowanie, tytuł, opis, słowa kluczowe a program automatycznie wstawi w nagłówku strony odpowiednie meta znaczniki. Ze Screemem miałem jednak jeden problem, którego nie udało mi się jeszcze rozwiązać. W trakcie pracy potrafi się bez powodu zamknąć nie zapisując danych. Zdarzyło mi się to kilkakrotnie. Z konieczności więc zamieniłem go na Bluefisha. Bluefish na początku wydawał się trudniejszy w obsłudze, ale po bliższym poznaniu z programem coraz lepiej mi się w nim pracuje. Na początku nie mogłem w nim znaleźć analogicznego kreatora strony jaki ma Screem. Bluefish ma podobny kreator tylko w innym miejscu. W Screemie kreator strony można znaleźć w menu Plik > Utwórz > Nowy dokument, natomiast w Bluefishu kreator znajduje się w menu Okna dialogowe > Ogólne > Szybki start. Tylko trzeba uważać na to jakie meta znaczniki wstawia kreator. W Bluefishu kreator domyślnie wstawia znacznik <meta name="ROBOTS" content="NOINDEX, NOFOLLOW">. Jest to informacja dla robotów sieciowych, aby nie indeksowały takiej strony i nie podążały za linkami na stronie. Trzeba więc zwracać na to uwagę. Roboty sieciowe domyślnie indeksują strony, więc jeśli chcemy mieć zaindeksowane strony wystarczy po prostu ten znacznik pominąć lub zamiast "NOINDEX" i "NOFOLLOW" wstawić "INDEX" i "FOLLOW".
Jak już napisałem oba edytory dostępne są w repozytorium Debiana. Pakiety do zainstalowania to bluefish i screem:

# aptitude install bluefish

# aptitude install screem

Poniżej znajdują się zrzuty ekranu obu programów:

Bluefish




Screem