liitän muistikun:
#dmesg
...
umass0: USB Flash Disk, rev 2.00/2.00, addr 2
da0 at umass-sim0 bus 0 target 0 lun 0
da0: Removable Direct Access SCSI-2 device
...
Opened disk da0 -> 6
..
# ls /dev|grep da
da0
Ja tämä kohta on erityisen mielenkiintoinen:
# mount_msdosfs /dev/da0 /mnt/stick
mount_msdosfs: /dev/da0: Invalid argument
# ls /dev | grep da
da0
da0s1
# mount_msdosfs -m 777 /dev/da0s1 /mnt/stick
#
miten tuo da0 pitäisi mountata, että se menisi ilman virheitä, näyttää tosin toimivan noinkin.
Siis, kun mounttaan tuon da0 -> antaa virheilmon, mutta kuitenkin sen jälkeen ilmestyy node da0s1, joka on ilmeisesti tikulla oleva osio(?).
ja umount:
# umount /mnt/stick
#
#ls /dev |grep da
da0
da0s1
eli miten voin poistaa turvallisesti tikun järjestelmästä?
Kun vain nappaat sen irti niin:
#dmesg:
...
mass0: at uhub2 port 3 (addr 2) disconnected
(da0:umass-sim0:0:0:0): lost device
(da0:umass-sim0:0:0:0): removing device entry
umass0: detached
...
# ls /dev | grep da
#
Ja kun kirjoitan tikulle, niin heittää jumalattomasti virheitä, mutta kuitenkin kirjoitus onnistuu:
$ mv tiedosto /mnt/stick
mv: utimes: /mnt/stick/tiedosto: Operation not permitted
mv: chmod: /mnt/stick/tiedosto: Operation not permitted
....
....
mv: /bin/cp: terminated with 1 (non-zero) status
#dmesg
...
umass0: USB Flash Disk, rev 2.00/2.00, addr 2
da0 at umass-sim0 bus 0 target 0 lun 0
da0: Removable Direct Access SCSI-2 device
...
Opened disk da0 -> 6
..
# ls /dev|grep da
da0
Ja tämä kohta on erityisen mielenkiintoinen:
# mount_msdosfs /dev/da0 /mnt/stick
mount_msdosfs: /dev/da0: Invalid argument
# ls /dev | grep da
da0
da0s1
# mount_msdosfs -m 777 /dev/da0s1 /mnt/stick
#
miten tuo da0 pitäisi mountata, että se menisi ilman virheitä, näyttää tosin toimivan noinkin.
Siis, kun mounttaan tuon da0 -> antaa virheilmon, mutta kuitenkin sen jälkeen ilmestyy node da0s1, joka on ilmeisesti tikulla oleva osio(?).
ja umount:
# umount /mnt/stick
#
#ls /dev |grep da
da0
da0s1
eli miten voin poistaa turvallisesti tikun järjestelmästä?
Kun vain nappaat sen irti niin:
#dmesg:
...
mass0: at uhub2 port 3 (addr 2) disconnected
(da0:umass-sim0:0:0:0): lost device
(da0:umass-sim0:0:0:0): removing device entry
umass0: detached
...
# ls /dev | grep da
#
Ja kun kirjoitan tikulle, niin heittää jumalattomasti virheitä, mutta kuitenkin kirjoitus onnistuu:
$ mv tiedosto /mnt/stick
mv: utimes: /mnt/stick/tiedosto: Operation not permitted
mv: chmod: /mnt/stick/tiedosto: Operation not permitted
....
....
mv: /bin/cp: terminated with 1 (non-zero) status
Vastaukset 13
Vanhimmat
Onko /etc/fstab kunnossa? Tyyppinä msdosfs vai auto? Auttaako
#mount -t msdosfs /dev/da0 /mnt/stick ?
Ei ole kokemusta noista usb-laitteista, että enempää en osaa neuvoa.
FreeBSD:ssä komento mount_msdosfs x vastaa linuxin komentoa mount -t msdosfs x, tietääkseni.
fstabissa ei ole mitään aiheeseen liittyen, koska ei tarvitse(?).
Tikun tiedostojärjestelmä on msdosfs (eli fat-mikälie).
tuo da0 ole koko tikku ja da0s1 partitio sillä. Kokeiles
mount_msdosfs /dev/da0s1 /mnt/stick
ja käytön jälkeen
umount /mnt/stick
Ne virheilmoitukset voi tulla tuon stick-hakemiston oikeuksista. Tsekkaa, että kaikilla on kaikki oikeudet.
Stickin oikeudet näyttäs olevan kunnossa.
$ls -l
..
drwxr-xr-x 2 root wheel 512 Jan 30 11:47 stick
ja siis:
"tuo da0 ole koko tikku ja da0s1 partitio sillä. Kokeiles
mount_msdosfs /dev/da0s1 /mnt/stick "
Aivan näin. Ennen kuin saa tuon osion näkyviin pitää mountata da0
ja se antaa siis virheilmon:
# mount_msdosfs /dev/da0 /mnt/stick
mount_msdosfs: /dev/da0: Invalid argument
tämän jälkeen tulee /dev esiin uusi node ad0s1
jonka mounttaus sujuu ongelmitta
# mount_msdosfs -m 777 /dev/da0s1 /mnt/stick
jossa -m 777 meinaa umaskia.
Ihan aluperin kysymys oli, miten pitää mountata tuo da0, ilman virheilmoja?
umount /mnt/stick toimii ok, mutta tikkuun jää sen jälkeen vielä valo vilkkumaan, eli se ei todellisuudessa ole "poistettu" järjestelmästä.
Winukassahan se pitää aina poistaa "turvallisesti", jonka jälkeen tikussa ei vilku valo, tarvitseeko samaa tehdä *nixissä? Uskoisin näin.
http://www.freebsd.org/cgi/man.cgi?query=mount&sektion=8
Voitko antaa vielä neuvoja linkkisi tueksi? Tiedän kyllä kuinka mount komento toimii.
Tuohan linkkisi ratkaisee varmaan ongelmani? ;)
Man-sivujen pitäisi ratkaista KAIKKI ongelmat:)
Onko usbd asennettu, kerneli generic vai muokattu-tuki usbille jne? Man-sivujen lukemiseksi menee, jos ei tuolta löydy ratkaisua:
http://www.bsdforums.org/forums/forumdisplay.php?s=8f344db8e9f06cf46a2fcb91335061aa&f=17
Kerneli on siis käännetty usb ja scsi tuella, daa? :P
Mutta, tiedätkös mitä, ratkaisin yhden ongelman googgelilla, mutta en tajua miksi se ratkeaa näin.
Siis, kun laitan tikun kiinni, niin tulee node da0, no, sitä ei tarvitse ilmeisesti mountata ollenkaan vaan riittää #true > /dev/da0 , jonka jälkeen ilmestyy node da0s1, jonka mounttaus sujuu ilman hammasten kiristystä.
Edelleen on kuitenkin ongelmana, miten saan poistettua muistitikun turvallisesti järjestelmästä?
Lukeisepas tuo äskeinen viestini:)
Umounttaa ne molemmatr osiot.
olisi tälle oikea palsta?
"ja umount:
# umount /mnt/stick"
mitenkäs #umount /dev/da0 ?
#fdisk /dev/da0
Näyttää kaksi osiota, ensisijaisen ja laajennetun, eikö? Silloin irroitus:
#umount /dev/da0
#umount /dev/da0s1 ?
Mounttausvirheet johtunevat siitä, että se da0 ei ole msdosfs-partitio, vaan tyhjä- näin ollen invalid argument mount_msdosfs:ää käytettäessä.
"mitenkäs #umount /dev/da0 ?"
# umount /dev/da0
umount: /dev/da0: unknown file system
# fdisk /dev/da0
******* Working on device /dev/da0 *******
parameters extracted from in-core disklabel are:
cylinders=250 heads=64 sectors/track=32 (2048 blks/cyl)
parameters to be used for BIOS calculations are:
cylinders=250 heads=64 sectors/track=32 (2048 blks/cyl)
Media sector size is 512
Warning: BIOS sector numbering starts with sector 1
Information from DOS bootblock is:
The data for partition 1 is:
sysid 6 (0x06),(Primary 'big' DOS (>= 32MB))
start 32, size 511456 (249 Meg), flag 80 (active)
beg: cyl 0/ head 0/ sector 33;
end: cyl 30/ head 213/ sector 54
The data for partition 2 is:
The data for partition 3 is:
The data for partition 4 is:
# fdisk /dev/da0s1
******* Working on device /dev/da0s1 *******
parameters extracted from in-core disklabel are:
cylinders=249 heads=64 sectors/track=32 (2048 blks/cyl)
parameters to be used for BIOS calculations are:
cylinders=249 heads=64 sectors/track=32 (2048 blks/cyl)
Media sector size is 512
Warning: BIOS sector numbering starts with sector 1
Information from DOS bootblock is:
The data for partition 1 is:
sysid 118 (0x76),(unknown)
start 168689509, size 1853457483 (905008 Meg), flag 4c
beg: cyl 377/ head 101/ sector 54;
end: cyl 360/ head 105/ sector 50
The data for partition 2 is:
sysid 132 (0x84),(OS/2 hidden C: drive)
start 1835101801, size 1634495585 (798093 Meg), flag 6e
beg: cyl 372/ head 105/ sector 51;
end: cyl 353/ head 32/ sector 48
The data for partition 3 is:
sysid 97 (0x61),(SpeedStor)
start 1886422126, size 1953393028 (953805 Meg), flag 20
beg: cyl 372/ head 106/ sector 47;
end: cyl 288/ head 105/ sector 46
The data for partition 4 is:
sysid 0 (0000),(unused)
start 0, size 3367808000 (1644437 Meg), flag 84
beg: cyl 0/ head 13/ sector 10;
end: cyl 0/ head 0/ sector 0
# diskinfo /dev/da0
/dev/da0 512 262144000 512000 250 64 32
# diskinfo /dev/da0s1
/dev/da0s1 512 261865472 511456 249 64 32
# umount /dev/da0s1
onnistuu ok, mutta tikku vilkkuu ja
# ls /dev|grep da
da0
da0s1
ohjelmaa, jolla saisit kontrolloitua koneen virrankäyttöä? Joku pieni koodi, jolal saisit kytkettyä virran pois päältä usbliittimistä tai jtn?