Ulkoisien muistilaitteiden (kamerat, tikut, usb kovot) liittäminen voi tapahtua monella tapaa linuxissa. Törmäsin tilanteeseen Gentoo linuxissa jossa muistitikku liittyi automaattisesti väärin, siten että tavallisen käyttäjän oikeuksilla sieltä ei voinut lukea eikä kirjoittaa. Mikä ohjelma liitti tikun? cat /proc/mounts näytti että…
/dev/sdd2 /mnt/usb/6Y160P0 ntfs ro,sync,dirsync,nosuid,uid=0,gid=0,umask=077,nls=iso8859-1,errors=continue,mft_zone_multiplier=1 0 0
/dev/sdd1 /mnt/usb/6Y160P0 ntfs ro,sync,dirsync,nosuid,uid=0,gid=0,umask=077,nls=iso8859-1,errors=continue,mft_zone_multiplier=1 0 0
ja kernelin viesteistä ei taas selvinnyt muuta kuin että…
jarkko@DUALCORE ~ $ dmesg
usb-storage: device found at 7
usb-storage: waiting for device to settle before scanning
scsi 9:0:0:0: Direct-Access Maxtor 6Y160P0 YAR4 PQ: 0 ANSI: 2
sd 9:0:0:0: [sdd] 320173056 512-byte hardware sectors (163929 MB)
sd 9:0:0:0: [sdd] Write Protect is off
sd 9:0:0:0: [sdd] Mode Sense: 53 00 00 08
sd 9:0:0:0: [sdd] Assuming drive cache: write through
sd 9:0:0:0: [sdd] 320173056 512-byte hardware sectors (163929 MB)
sd 9:0:0:0: [sdd] Write Protect is off
sd 9:0:0:0: [sdd] Mode Sense: 53 00 00 08
sd 9:0:0:0: [sdd] Assuming drive cache: write through
sdd: sdd1 sdd2
sd 9:0:0:0: [sdd] Attached SCSI disk
sd 9:0:0:0: Attached scsi generic sg3 type 0
usb-storage: device scan complete
NTFS volume version 3.1.
NTFS-fs error (device sdd1): load_system_files(): Volume is dirty. Mounting read-only. Run chkdsk and mount in Windows.
NTFS volume version 3.1.
NTFS-fs error (device sdd2): load_system_files(): Volume is dirty. Mounting read-only. Run chkdsk and mount in Windows.
NTFS-fs warning (device sdd2): load_system_files(): $LogFile is not clean. Will not be able to remount read-write. Mount in Windows.
NTFS-fs warning (device sdd1): load_system_files(): $LogFile is not clean. Will not be able to remount read-write. Mount in Windows.
usb 1-6: new high speed USB device using ehci_hcd and address 8
usb 1-6: configuration #1 chosen from 1 choice
scsi10 : SCSI emulation for USB Mass Storage devices
Surffailtuani netissä törmäsin sivuun joka käsitteli samaa asiaa. Minulla vain on käytössä KDE eikä Gnome joten tästä ei apua löytynyt. #gentoo -kanavalla neuvottiin että udev laitehallintaohjelma liittäisi tikun automaattisesti. Udev:in dokumentaation tutkiminen oli tuskallisempaa kuin Päivi Hietasen C++ ja Olio Ohjelmointi kirjan tunkeminen anukseen joten luovutin heti.
Googletin automount sanalla jonkin aikaa mikä ei tuottanut tulosta. Ehkä Gentoosta löytyisi jokin asetustiedosto missä tämä automaattinen liittäminen asetetaan.
jarkko@DUALCORE ~ $ locate automount
/etc/hotplug.d/block/automount.hotplug
/usr/kde/3.5/include/kautomount.h
/usr/src/linux-2.6.22-gentoo-r8/Documentation/filesystems/automount-support.txt
/usr/src/linux-2.6.18-gentoo-r6/Documentation/filesystems/automount-support.txt
/usr/sbin/automount
/usr/share/man/man8/automount.8.bz2
/usr/portage/net-fs/autofs/files/automount.diff
/usr/portage/sys-fs/lufs/files/lufs-automount-port.diff
Komennon ensimmäisestä rivistä löytyi heti syyllinen. automount.hotplug -skripti liittää automattisesti koneen USB pistokkeeseen tökätyt muistit siten, että se luo uuden kansion /mnt/usb kansioon laitteen nimellä ja liittää osion siihen.
Minun tapauksessani LACIE USB kovo liitettiin kansioon /mnt/usb/6Y160P0
/etc/hotplug.d/block/automount.hotplug -skriptin lopusta löytyi komennot jotka liittävät löydetyt osiot:
# These options should prevent abuse and make it writeable for the
# console user.
MOUNTOPTS="-s -osync,nosuid,umask=077,uid=$3,gid=$4"
mesg Mounting $DEVICE on $MOUNTPATH, options $MOUNTOPTS
mount $MOUNTOPTS $DEVICE $MOUNTPATH
Skripti laittaa käyttöoikeksiksi ro,sync,dirsync,nosuid,uid=0,gid=0,umask=077 ja tämähän ei toimi Jarkko käyttäjällä. Mutta kun rivin muuttaa esimerkiksi muotoon:
MOUNTOPTS="-s -osync,dirsync,nosuid,umask=000,uid=1000"
niin silloin käyttäjätkin pääsevät lukemaan liitettyä tikkua. Linuxin harvinaisuuden vuoksi USB kovo on alustettu NTFS tiedostojärjestelmälle ja nyt osion ollessa “dirty” liitettiin se vain-luku tilaan.
TODO: skriptin muokkaus siten että kaikki osiot liitetään omiin kansioihinsa eikä päällekkän
TODO2: Liitettäessä täytyy aueta uusi ikkuna kuten wintoosassakin olen kuullut tapahtuvan
TODO3: pelata hiukan MOHAAta että saa liikuntaa
ZIZZOZ!
Törmäsin tuohon virheeseen kun yritin saada salasanat muutetua
Boot-linuxksilla. (Wintoosa XP Pro nappasi salasanat päälle kun boottasin)
LINUX antaa just tuon imoituksen: ja kone on pannukakkuna.
Miten piru tuo voi korjata?
Tässä kokonaan se kuulutus:
Mounting from /dev/sda1. with filesystem type NTFS NTFS volme version 3.1.
NTFS-fs warning /device sda1.): load_system_files() : Unsupported flags 0000 encountered.
NTFS-fs warning /device sda1.): load_system_files() : Volume has unsupported flags ????et.
Mounting read – only. Run chkdsk and mount in WINDOWS
NTFS-fs warning /device sda1.): load_system_files() : $LogFile is not clean
WIndows not be able to remount read-write. Mount in Windows.
** MOUNT NTFS FOR WRITING FAILED!
** If disk is dirty or has unknown flags
** Release reboot Windows into SAFE MODE and SHUT DOWN properly TWICE
** then come back here and try again.
Se joka kysyy, on hetken tyhmä.
Se joka ei kysy, on tyhmä lopun ikäänsä.
¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨
Susi Harmaasusi