mwiacek.com | ColorColor | Mobile |
English
App - APN App - Gammu App - Gammu+ » Gammu+ internals App - ISTQB Glossary App - MyGnokii App - Sobieski App - True Fenix
Facebook (priv)
Chrome code (new/Gerrit)
Firefox Preview c/i Polski App - APN App - Bryły App - Historia polska App - Poczytaj mi tato App - Przepisy drogowe App - Słownik ISTQB App - Sobieski App - Straż
Artykuły i pliki
Praca dyplomowa
App Store Categories Acer (4) AMD (13) Android (84) APN (5) Apple (28) App Store (6) benchmark.pl (19) chip.pl (7) CHM (5) Chrome (5) dobreprogramy.pl (95) drogowe (40) English (130) English article (23) English blog (99) EPUB (7) Firefox OS (3) Fizyka (4) Gammu (62) Gammu+ (49) GSM (151) Hyperbook (10) ISTQB (3) jQuery (3) jQuery Mobile (3) książka 1 (6) książka 4 (97) License (4) Linux (33) Linux+ (1) MyGnokii (6) Nokia (30) NTFS (2) OS (41) PDF (5) poczytaj (1) poem (3) Polski (233) polski (239) Polski artykuł (58) polski blog (238) Polski blog (176) rysunki (2) S.F. (14) salon24.pl (180) Sobieski (8) Spider's Web (17) Straż (7) Tizen (5) TrueFenix (4) Ubuntu (5) Vista (5) WAT (1) wiersz (94) Windows (61) Windows 7 (11) x86 (115) Top 10 N82 review (2008) (201320) Przepisy drogowe (2012-2021) (153239) English articles and files (148873) Polskie artykuły i pliki (145474) Timeline 2024-08 (1) 2024-01 (1) 2023-12 (1) 2023-11 (1) 2023-03 (5) 2023-02 (1) 2023-01 (13) 2022-12 (9) 2022-11 (10) 2022-10 (12) 2022-09 (14) 2022-08 (4) 2022-07 (3) 2022-06 (4) 2022-05 (3) 2022-04 (9) 2022-03 (11) 2022-02 (9) 2022-01 (5) 2021-12 (6) 2021-11 (13) 2021-10 (11) 2021-09 (11) 2021-08 (4) 2021-07 (5) 2021-06 (12) 2021-05 (3) 2021-04 (4) 2021-03 (4) 2021-02 (5) 2021-01 (4) 2020-12 (4) 2020-11 (5) 2020-10 (1) 2020-09 (9) 2020-08 (5) 2020-07 (2) 2020-06 (1) 2020-05 (6) 2020-04 (3) 2020-03 (2) 2020-02 (2) 2020-01 (8) 2019-12 (2) 2019-11 (11) 2019-10 (1) 2019-09 (3) 2019-06 (1) 2019-05 (1) 2017-12 (2) 2017-11 (2) 2017-10 (2) 2016-01 (1) 2015-09 (2) 2015-08 (1) 2015-06 (1) 2015-05 (1) 2015-04 (1) 2015-03 (2) 2015-01 (1) 2014-10 (1) 2014-09 (2) 2014-07 (2) 2014-06 (5) 2014-05 (7) 2014-04 (3) 2014-03 (9) 2014-02 (5) 2014-01 (8) 2013-12 (7) 2013-11 (4) 2013-10 (10) 2013-09 (5) 2013-08 (9) 2013-07 (5) 2013-06 (1) 2013-05 (2) 2013-04 (3) 2013-02 (3) 2013-01 (7) 2012-12 (5) 2012-11 (5) 2012-10 (7) 2012-09 (2) 2012-08 (2) 2012-07 (2) 2012-06 (1) 2012-05 (2) 2012-04 (4) 2012-03 (6) 2012-02 (2) 2012-01 (3) 2011-12 (1) 2011-11 (1) 2011-04 (2) 2011-02 (2) 2011-01 (3) 2010-12 (5) 2010-11 (1) 2010-10 (2) 2010-08 (1) 2010-07 (2) 2010-06 (3) 2010-05 (9) 2010-04 (11) 2010-03 (14) 2009-12 (4) 2009-11 (2) 2009-10 (2) 2009-05 (1) 2009-03 (1) 2009-02 (1) 2009-01 (1) 2008-07 (1) 2008-05 (1) 2008-04 (1) 2007-12 (3) 2007-11 (2) 2007-10 (2) 2007-09 (3) 2007-08 (1) 2007-07 (2) 2007-06 (4) 2007-05 (4) 2007-04 (2) 2007-03 (5) 2007-02 (3) 2007-01 (6) 2006-12 (5) 2006-11 (5) 2006-10 (4) 2006-09 (2) 2006-08 (1) 2006-07 (6) 2006-06 (3) 2006-05 (2) 2006-04 (5) 2006-02 (1) 2006-01 (2) 2005-12 (1) 2005-09 (1) 2005-07 (1) 2003-11 (1) 2003-09 (5) 2002-11 (2) 2002-10 (14) 2001-07 (1) 2001-05 (2) 2001-01 (1) 2000-10 (1) 2000-07 (1) 2000-06 (1) 2000-03 (1) 1999-06 (2) 1999-04 (2) | Podane na twardym talerzu (2003) Polski Polski artykuł Windows x86 Linux Podane na twardym talerzu
Wielu użytkowników ma w swoich komputerach zainstalowane kilka systemów operacyjnych. Bardzo ważne jest dla nich, aby móc bezproblemowo wymieniać między nimi pliki. W tym artykule postaramy sie uporządkować informacje na temat tego, co i jak należy ustawić, aby móc korzystać z tych samych danych w Linux i Windows. Zastanowimy się też nad różnymi możliwościami związanymi z obsługą plików w Linuxie. Co wybrać ? Na początku zajmiemy się systemami plików. Od nich zależy bowiem wygoda używania naszego komputera i jego możliwości. Wskażemy, które z nich mogą być problemem dla naszego systemu operacyjnego. Zaczniemy od tego, czego używa się z dyskami twardymi, dyskietkami i pamięciami flash. Podstawowym systemem plików Linuxa przez długi czas był ext2. Jest on standardowo proponowany podczas instalacji wielu dystrybucji, ma jednakże trochę wad. Najpoważniejszą z nich jest brak tzw. kronikowania (journalingu). Dla przeciętnego użytkownika oznacza to, że w przypadku niespodziewanego wyłączenia lub zawieszenia się komputera zwiększa się prawdopodobieństwo utraty danych. W takich sytuacjach trzeba dodatkowo przy starcie systemu sprawdzić szczegółowo cały system plików, co może bardzo długo trwać (bez tego możemy mieć błędy logiczne na dysku). Jego zaletą jest znany format i dostępność wielu programów narzędziowych (kilka z nich do Windows podano w ramce obok). <ramka> Obsługa systemów Linuksowych w Windows </ramka> Rozszerzeniem systemu ext2 jest ext3. Dodano w nim kronikowanie. Jeżeli poprawnie wyłączyliśmy komputer używający ext3, do jego odczytania można użyć narzędzi projektowanych dla jego poprzednika. Kolejnym systemem często używanym w Linuxie z opcją kronikowania jest Reiserfs charakteryzujący się szybszą obsługą katalogów z dużą ilością (małych) plików. W przypadku dysków zapisywanych w DOS możemy się spotkać z systemami FAT12 i FAT16. Są one przestarzałe. Ich cechą charakterystyczną jest brak możliwości ustalenia jakichkolwiek praw dostępu oraz szybkie pojawianie się defragmentacji plików i związane z tym wydłużanie się długości ich odczytu. Wraz z Windows 95 OSR2 Microsoft wprowadził FAT32. Pojawiła się w nim możliwość obsługi większych dysków i umieszczania dowolnej ilości plików w głównym katalogu, jednakże nie wyeliminowano głównych wad znanych z poprzedników. Windows 95 był pierwszym popularnym systemem Microsoftu z możliwością korzystania z długich nazw plików. Użyto rozszerzenia systemów FAT nazwanego VFAT. Tak określa się też wspólnie trzy systemy FAT w Linuxie. Nie ma on żadnych problemów z ich obsługą (odczytem i zapisem). Jeżeli wykorzystujemy Windows NT 4.0 lub nowsze, które wywodzą się z niego (tzn. edycję 2000/XP/2003), możemy mieć zapisane dyski z użyciem NTFS. Jest on w ogóle nieobsługiwany przez "okienka" 95/98/ME, również Linux nie zawsze sobie z nim radzi. Każda nowa wersja Windows dodawała bowiem do niego kolejne rozszerzenia, na temat których Microsoft nie udostępniał pełnej dokumentacji. W chwili obecnej (Linux oparty na jądrze 2.4.x) można stwierdzić, że nie będzie kłopotów z odczytem tego systemu, o ile nie zastosowaliśmy w nim żadnych rozszerzeń typu kompresja czy szyfrowanie plików. Opcja zapisu jest zaznaczona jako niebezpieczna. Sytuacja powinna się zmienić na lepsze dopiero wraz z nową generacją 2.6.x jąder. W przypadku płyt na pewno spotkamy się z określeniem ISO9660. Jest to nazwa podstawowego i najstarszego systemu plików dla krążków. Każdy współczesny system operacyjny zapewnia jego obsługę. Z czasem pojawiła się konieczność zapisania długich nazw plików na płytach. Jednym z rozszerzeń jest stworzony przez Microsoft system Jouliet. Linux potrafi też w sposób niewidzialny dla użytkownika korzystać z tzw. tablic translacji - na płycie są umieszczane nazwy plików zgodne z ISO9660, natomiast system pokazuje użytkownikowi długie nazwy plików zawarte w plikach trans.tbl. Nośniki optyczne (np. CD-RW) mogą być zapisane w coraz bardziej popularnym trybie pakietowym UDF (pozwala on na korzystanie z płyty jak z dużej dyskietki). Linux nie ma z nim problemu. Powyższy przegląd zawiera informacje o zaledwie kilku z wielu obsługiwanych przez "pingwina" systemów. Nie piszemy o innych, ponieważ są one albo już nieużywane (mowa tutaj np. o systemie używanym w protoplaście Linuxa o nazwie Minix, a następnie początkowo w samym Linuxie "przed" ext2) albo dotyczą innych platform sprzętowych (np. system znany z komputera Commodore Amiga). Chcieliśmy w tym miejscu przypomnieć o jednym szczególe, o którym nie pamięta wielu początkujących użytkowników - sterownik głównego systemu plików (np. ext2 lub ext3) nie może być skompilowany jako moduł jądra. System musi bowiem "wiedzieć", jak czytać partycję z plikami zawierającymi moduły po to, aby móc je w ogóle załadować. <ramka> Opcje jądra 2.4.x Poniżej przedstawiono nazwy wymaganych opcji kerneli 2.4.x Linuxa wymaganych do obsługi wymienionych systemów lub urządzeń Systemy plików na dyskach twardych, dyskietkach i dyskach flash Ext2 - File systems | Second extended fs support Ext3 - File systems | Ext3 journalling file system support VFAT - File systems | DOS FAT fs support, File systems | MSDOS fs support, File systems | VFAT (Windows 95) fs support NTFS - File systems | NTFS file system support Reiserfs - File systems | Reiserfs support Systemy plików na CD-ROM, CD-RW i DVD-ROM File systems | ISO 9660 CDROM file system support, File systems | Microsoft Joliet CDROM extensions, File systems | Transparent decompression extension, File systems | UDF file system support Obsługa pamięci USB SCSI support | SCSI support, File systems | /proc file system support, USB support | Support for USB, USB support | Preliminary USB device filesystem, USB support | EHCI/UHCI/OHCI (w zależności od posiadanego kontrolera USB), USB support | USB Mass Storage Support Inne Supermount - File systems | Supermount removable media support Loopback - Block devices | Loopback device support </ramka> Nazwy urządzeń Oprócz znajomości użytego systemu plików musimy dodatkowo podać Linuxowi informację, w jakim urządzeniu jest on wykorzystany. Sprawa jest stosunkowo prosta: kolejne urządzenia IDE podłączane do płyty głównej są oznaczane jako /dev/hda i kolejne (ostatnia literka "a" zamienia się na "b", "c" lub "d"). Jeżeli mamy dodatkowy kontroler IDE (oraz sterownik do niego w jądrze), jego napędom zostaną przydzielone urządzenia logiczne /dev/hde, /dev/hdf, itd. Zgodnie z tymi zasadami, przykładowy napęd CD-ROM podłączony jako master do pierwszego kanału na płycie głównej będzie w Linuxie nazwany /dev/hda. Określenie partycji na dyskach twardych zawiera określenie dysku wraz z dodatkową cyfrą - np. /dev/hdb1 to pierwsza partycja na dysku /dev/hda używanym jako slave w pierwszym kanale IDE. Podobnie zresztą określa się partycje na urządzeniach podłączanych do USB - np. /dev/sda1 to pierwsza partycja pierwszego urządzenia USB. Stacja dyskietek to z kolei /dev/fd0. Montowanie urządzeń Zgodnie z zasadą przyjętą w Linuxie jest tylko jeden logiczny system plików, do którego można podłączać (montować) fizycznie oddzielne urządzenia. Pozwala to np. na to, aby konta użytkowników (zawartość /users) znajdowały się na innym dysku twardym niż sam system, stacja dystkietek była widoczna w katalogu /mnt/floppy, a CD-ROM w katalogu /cdrom. Do montowania służy polecenie mount. Oto jego przykładowe użycie (z poziomu roota): mount -t iso9660 -o noexec,ro /dev/hdc /mnt/cdrom Zawartość płyty z urządzenia /dev/hdc zostanie umieszczona w katalogu /mnt/cdrom. Będzie ona dostępna w trybie tylko do odczytu (parametr ro). Wykorzystany zostanie system plików iso9660. Jeżeli wykonanie polecenia się nie powiodło, powodów może być kilka:
Montowanie na skróty Możemy sobie zautomatyzować całą procedurę i nie podawać za każdym razem wszystkich niezbędnych parametrów procedurze mount. W tym celu wymyślono plik /etc/fstab. Poniżej przykładowa jego zawartość:
Można powiedzieć, że każda linijka składa się z następujących części:
Widzimy też informację o głównym systemie plików Linuxa (pierwsza linijka pliku) oraz wiersze rozpoczynające się od none. Zawarte są w tych ostatnich informacje o systemach tzw. pseudoplików. Jądro jest bowiem w stanie w czasie swej pracy przekazywać programom różne informacje w postaci dynamicznie tworzonych plików. Aby było wiadomo, gdzie i jak ma je składować, potrzebne są właśnie wpisy w /etc/fstab: katalog /proc zawierać będzie dane o aktualnie działających w systemie programach (system plików proc). Jest on wymagany do działania innego systemu pseudoplików (usbdevfs) umieszczonego w /proc/bus/usb i niezbędnego do pracy różnym programom do obsługi USB. Oddzielnego wyjaśnienia wymaga system plików supermount. Standardowo bowiem po włożeniu płyty lub dyskietki konieczne jest jest zamontowanie. Kosztem bezpieczeństwa systemu (nie jest bowiem bezpieczne automatyczne dołączanie i udostępnianie czegokolwiek, co mogłoby np. zawierać wirusa) można to ominąć. Wystarczy tylko zainstalować w jądrze sterownik do supermount i system sam zadba o właściwe podłączenie płyty albo (tak jak to zostało zrobione w podanym przykładzie) dyskietki. Należy pamiętać, że oryginalne jądro Linuxa nie zawiera obsługi tego systemu i trzeba ją do niego dodać w formie łaty (autorzy niektórych dystrybucji - np. Mandrake - robią to za nas i "ich" jajka mają już wewnątrz wymagany kod). Jeżeli chcemy zmienić któryś z wpisów w /etc/fstab tak, aby dotyczył supermounta, musimy pamiętać o trzech zasadach:
mount /mnt/cdrom Każdemu według jego praw Początkujący użytkownicy zastanawiają się zapewne, jak ustalane są prawa dostępu podczas podłączania "obcych" systemów plików ? Ogólnie mówiąc, jeżeli montujemy jakieś urządzenie w określonym katalogu, prawa dostępu do tego katalogu są zmieniane na te, które zostały podane jako parametr polecenia mount (lub wpisane w /etc/fstab). W przypadku, gdy dany system plików nie ma możliwości ich ustalania, pliki i katalogi "wewnątrz" również je "przejmą". Opiszemy teraz po kolei, jakich poleceń możemy użyć do ustalenia własnych praw: Komendy gid=xxx i uid=xxx (gdzie xxx to wartości numeryczne) pozwolą ustawić odpowiednio grupę i użytkownika zbiorów. Należy pamiętać, że nie działają one z systemem supermount. Jeżeli wykorzystaliśmy parametr ro, wykasowana zostanie możliwość zapisu (przeciwieństwiem ro jest komenda rw pozwalająca na zapis i odczyt). Standardowo wszystkie pliki będą miały atrybut wykonywalności - zapobiegamy temu korzystając np. z noexec (atrybut będzie zawsze wykasowany) lub showexec (atrybut wykonywalności będą miały pliki z rozszerzeniem exe, com, bat). Możemy też użyć komendy umask=xxx. Jej parametrem jest wartość numeryczna mówiąca, które atrybuty plików i katalogów system ma wyzerować. Szerzej o atrybutach plików piszemy w ramce obok. Należy zajrzeć do pokazanej tam tabeli, zsumować wartości atrybutów do wyzerowania i podać tutaj jako parametr. Przykładowo, aby wykasować możliwość zapisu i odczytu dla innych użytkowników (nie będących właścicielami ani nie należących do grupy przypisanej do pliku/katalogu), powinniśmy tutaj użyć wartości 2 + 4 = 6 i wpisać umask=6. <ramka> Numeryczne prawa dostępu W systemach unixowych (również Linuksie) przyjęto zasadę, iż każdy plik i katalog posiada oddzielne prawa dostępu dla trzech kategorii użytkowników:
Możemy to też wyrazić w formie numerycznej. Wystarczy zajrzeć do tabeli poniżej i zsumować wartości ustawionych atrybutów podane w drugiej kolumnie, a następnie zamienić otrzymaną liczbę z systemu ósemkowego na dziesiętny (np. prawa dostępu "rwx---r--" będą określone ósemkowo jako 400+200+100+4 = 704, czyli 452 w formie dziesiętnej)
</ramka> Jak już wspomnieliśmy, domyślne prawa dostępu będzie można zmieniać w pewnym zakresie - takim, na jaki pozwalają możliwości użytego systemu plików (np. nie będzie można zmienić właściciela plików komendą chown na dysku z vfat, natomiast nie będzie problemu ze zrobieniem tego na partycji ext2). Polskie literki Jak z kolei uzyskać polskie literki w nazwach plików na partycjach fat i ntfs ? W tym wypadku w obu wypadkach musimy podać parametr iocharset=xxx (gdzie xxx to nazwa używanego przez nas zestawu znaków w Linuxie - najczęściej iso8859-2), natomiast systemy fat wymagają dodatkowo komendy codepage=852 (Linux wymaga podania strony kodowej, jaka była oryginalnie używana w Windows przy zapisie plików na partycję). Odmontowywanie Jeżeli teraz chcielibyśmy "odłączyć" dane zamontowane urządzenie, należy wydać komendę: umount /mnt/cdrom Należy pamiętać, że dopiero zrobienie tego pozwoli nam wyjąć płytę z napędu (alternatywnie można użyć polecenia eject /mnt/cdrom, który odmontuje i otworzy tackę urządzenia). Możemy sobie sprawdzić, które partycje pozostały zamontowane w systemie, wydając komendę df. Kto to może montować ? Domyślnie dane urządzenie może być dołączane i odłączane przez administratora (roota). Jeżeli użyjemy parametru user, to montować urządzenie będzie mógł każdy użytkownik, natomiast odmontować tylko ten sam użytkownik, który je zamontował. Z kolei komenda users pozwoli na montowanie i odmontowywanie systemu dowolnemu użytkownikowi. Oczywiście podawanie wymienionych tutaj poleceń nie ma sensu z supermountem. Dyskietki bez bólu W Linuxie istnieje także inna możliwość korzystania z dyskietek zapisanych w DOS nie wymagająca ustawiania niczego w systemie. Stworzono bowiem pakiet mtools udostępniający szerzeg komend analogicznych do tych z MS-DOS (o podobnej składni i nazwie poprzedzonej literą "m"). Oto kilka przykładów ich użycia: mdir a: - pokazuje zawartość dyskietki mcopy file a: - kopiuje plik file na dyskietkę mcopy a:\file - kopiuje plik file z dyskietki do bieżącego katalogu mformat a: - formatuje dyskietkę mlabel a: - nadaje dyskietkę nazwę Więcej można poczytać w pomocy systemowej (man mtools) Łączymy się z flashem Chcielibyśmy się teraz zająć coraz częściej używanymi pamięciami flash ze złączem USB. Jeżeli mamy włączone w jądrze opcje wymienione w ramce obok, system powinien zarejestrować nowe urządzenie blokowe sd po podłączeniu naszego urządzenia (do sprawdzenia tego nadaje się polecenie cat proc/devices). Możemy się również upewnić o poprawności ustawień patrząc na wynik działania komendy cat /proc/scsi/scsi - powinniśmy zobaczyć informację o tym, co podłączyliśmy. Jeżeli wszystko zadziałało prawidłowo, kolejnym krokiem będzie wykorzystanie znanej już komendy mount (w przykładzie podłączy ona pierwszą partycję pierwszego dołączonego dysku do katalogu /mnt/usb): mount -t vfat /dev/sda1 /mnt/usb i można już korzystać z tego, co dołączyliśmy (alternatywnie użyjmy systemu supermount po to, aby cała operacja montowania była wykonywana automatycznie). Należy jednak pamiętać, że część opcji dostępnych w przypadku tych urządzeń w Windows (np. szyfrowanie zawartości partycji) może być niedostępna. Powinniśmy też być przygotowani na ewentualne problemy, gdy nasza pamięć ma blokadę zapisu w formie programowej. Przygotowania do pracy Umiemy już korzystać z dysków i innych nośników. Aby je jednak przygotować do pracy, potrzebne jest formatowanie. O ile w przypadku dyskietek jest to stosunkowo łatwe (można użyć komendy mformat lub jednego z programów działających w XWindows), w przypadku dysków twardych lub pamięci USB sprawa się trochę komplikuje. Najczęściej konieczne będzie skorzystanie z narzędzi tekstowych oraz zachowanie maksymalnej ostrożności. Omówimy sprawę na przykładzie pamięci USB. Ponieważ wpierw wymagane może być podzielenie nowego urządzenia na partycje, skorzystamy z komendy fdisk: fdisk /dev/sda Command (m for help):Naciskamy p Disk /dev/sda: 129 MB, 129740800 bytesNa naszym urządzeniu mamy już jedną partycję /dev/sda1 zajmującą całą przestrzeń (cylindry 1 - 223) sformatowaną w systemie FAT32 (prawdopodobnie przez producenta). Chcielibyśmy ją wykasować. W tym celu używamy komendy d Command (m for help): di ponownie wyświetlamy informację o podziale na partycje (komenda p): Command (m for help): pZgodnie z oczekiwaniami na urządzeniu się teraz nic nie znajduje. Dodamy teraz nową partycję (komenda n): Command (m for help): nJak widać, konieczne było podanie typu partycji (podstawowa czy rozszerzona), jej numeru oraz początkowego i końcowego cylindra. Teraz zmienimy typ utworzonej partycji na Linuksową ext3 (komenda t): Command (m for help): ti wyświetlimy sobie ostateczną informację o naszym urządzeniu: Command (m for help): pWydawać by się mogło, że wszystko poszło zgodnie z oczekiwaniami. Należy jednak sprawdzić wypisane dane kilka razy. Jeżeli tworzyliśmy nową partycję na dysku twardym, mogliśmy bowiem przez przypadek wykasować lub zmienić dane partycji już istniejących. Dopiero wtedy, gdy upewnimy się, że podzieliśmy dysk zgodnie z oczekiwaniami i nie zrobiliśmy błędu, wciskamy w i fdisk zapisze zmiany. Teraz musimy wykonać właściwy format nowej partycji: mkfs.ext3 /dev/sda1 Oczywiście, jeżeli utworzyliśmy właśnie partycję w systemie fat, powinniśmy zamiast mkfs.ext3 użyć mkfs.vfat. Po takim przygotowaniu do pracy możemy już zamontować nową partycję i jej używać. Sprawdź się Czasami zachodzi potrzeba ręcznego sprawdzenia danego systemu plików pod względem poprawności zapisu danych. Aby to zrobić w odniesieniu do dysków z ext2 lub ext3, można wykorzystać komendę fsck: fsck.ext2 /dev/sda1 fsck.ext3 /dev/sda2 Polecenia te z powodzeniem spełnią rolę analogiczną do chkdsk z Windows Malujemy i oglądamy obrazy Istnieje jeszcze jedna funkcja Linuxa, o której warto wspomnieć. Możemy sobie zrobić kopię określonej partycji dysku twardego, płyty CD lub dyskietki, a następnie jej używać dokładnie tak samo samo, jakbyśmy to robili z oryginałem. Zaczniemy od utworzenia obrazu: dd of=/dev/sda1 of=/home/marcin/plik 252818+ records inPolecenie odczytało wszystko z /dev/sda1 i zapisało do pliku /home/marcin/plik. Operacja zakończyła się sukcesem (liczby w obu wierszach oznaczające ilość odczytanych i zapisanych danych są takie same). Następnie konfigurujemy jedno z urządzeń loop: losetup /dev/loop0 /home/marcin/plik i odtąd możemy z nim pracować tak samo jak z partycjami dysków twardych czy dyskietkami. Oto przykład montowania takiego urządzenia: mount -t ext2 -o rw /dev/loop0 /mnt/katalog Należy jedynie pamiętać, aby po zakończeniu pracy (odmontowaniu) urządzenie loop jeszcze dodatkowo odłączyć: losetup -d /dev/loop0 Istnieje też inna metoda tworzenia plików, które następnie mogą być montowane w charakterze urządzeń, niż używanie komendy dd. Wystarczy bowiem użyć polecenia mkisofs: mkisofs -o plik katalog Program ten przeczyta zawartość katalogu katalog i na tej podstawie utworzy obraz w pliku o nazwie plik. Sekwencje wymienionych poleceń (np. mkisofs, a następnie losetup i mount) wykorzystuje się dosyć często po to, aby zobaczyć, jak dokładnie będzie wyglądać nagrana płyta CD (plik z obrazem może bowiem później bez problemu służyć jako źródło, z którego nagrywane są płyty). Partycje i pliki wymiany Chcieliśmy jeszcze wspomnieć o bezpłatnym rozszerzaniu pamięci operacyjnej komputera w postaci plików i partycji wymiany. Idea jest prosta - jeżeli komputer ma za mało RAM, można w jej charakterze wykorzystać znacznie wolniejszy, ale większy dysk twardy. Najczęściej podczas instalacji różnych dystrybucji Linuxa tworzy się tzw. partycje wymiany, które spełniają właśnie tę rolę. Oto przykładowy wpis do /etc/fstab związany z taką partycją: /dev/hdc3 none swap swMoże się zdarzyć, że chcielibyśmy, aby rolę tę pełnił plik. Nic prostszego. Utworzymy taki o rozmiarze 16 MB: dd if=/dev/zero of=plik bs=1024 count=16384 mkswap plik 16384 sync i go podłączymy: swapon plik Możemy sobie dodać ostatnią komendę do /etc/rc.d/rc.local i plik wymiany będzie uaktywniany przy każdym starcie naszego pingwina (analogicznie komenda swapoff plik w pliku /etc/rc.d/init.d/halt będzie go "wyłączać" przy zamykaniu systemu). Nic nie stoi na przeszkodzie, aby plik wymiany znalazł się na tej samej partycji i nazywał się tak samo jak plik wymiany systemu Windows. Dzięki temu oszczędzimy miejsce na dysku. |