[+] Bash, montowanie partycji NTFS z pomoc

Potrzebujesz pomocy z C, C++, perl, python, itp.
szasza
Posty: 9
Rejestracja: 30 stycznia 2011, 16:12

[+] Bash, montowanie partycji NTFS z pomocą skryptu

Post autor: szasza »

Witam!

Chciałem napisać skrypt, który będzie montował mi sda1 i sda5 - partycje NTFS.
Napisałem tak:

Kod: Zaznacz cały

#!/bin/bash

su -
mount -r -t ntfs /dev/sda1 /mnt/sys
mount -r -t ntfs /dev/sda5 /mnt/dane
Problem w tym, że uruchomienie skryptu przez:

Kod: Zaznacz cały

./m.sk
Nie powoduje zamontowania tych dysków.
Proszę o pomoc i pozdrawiam!
Awatar użytkownika
lun
Beginner
Posty: 266
Rejestracja: 01 lutego 2010, 22:06
Lokalizacja: Warszawa

Post autor: lun »

Kod: Zaznacz cały

su -
Raczej spyta Cię o hasło logowania na roota.

Debian ma domyślnie obsługę NTFS?
Poza tym jakiś komunikat by się przydał coś w stylu /var/log/message
szasza
Posty: 9
Rejestracja: 30 stycznia 2011, 16:12

Post autor: szasza »

Witam.
Oczywiście najpierw pyta o hasło, ponieważ chciałem uruchomić ten skrypt z poziomu zwykłego użytkownika. Nie wiem, czy Debian ma domyślną obsługę NTFS ale chyba tak - wszakże wpisanie w terminalu

Kod: Zaznacz cały

mount -r -t ntfs /dev/sda1 /mnt/sys
powoduje pomyślne zamontowania dysku w /mnt/sys.
Masz pomysł jak napisać ten skrypt?
Awatar użytkownika
lun
Beginner
Posty: 266
Rejestracja: 01 lutego 2010, 22:06
Lokalizacja: Warszawa

Post autor: lun »

Szczerze mówiąc to nie widzę w tym skrypcie nic złego. Jeśli nie masz żadnego komunikatu błędu to może te dyski jednak Ci się montują. Po wykonaniu skryptu wklej wynik

Kod: Zaznacz cały

mount
szasza
Posty: 9
Rejestracja: 30 stycznia 2011, 16:12

Post autor: szasza »

Kod: Zaznacz cały

/dev/sda3 on / type ext3 (rw,errors=remount-ro)
tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
procbususb on /proc/bus/usb type usbfs (rw)
udev on /dev type tmpfs (rw,mode=0755)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)
/dev/sdf1 on /media/disk type vfat (rw,nosuid,nodev,uhelper=hal,shortname=lower,uid=1000)

Kod: Zaznacz cały

fdisk -l

Kod: Zaznacz cały

Disk /dev/sda: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x017013c3

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1        6374    51199123+   7  HPFS/NTFS
/dev/sda2            6375       13028    53448255    f  W95 Ext'd (LBA)
/dev/sda3           13029       19457    51640942+  83  Linux
/dev/sda5            6375       12748    51199123+   7  HPFS/NTFS
/dev/sda6           12749       13028     2249068+  82  Linux swap / Solaris

Disk /dev/sdf: 4026 MB, 4026531840 bytes
147 heads, 48 sectors/track, 1114 cylinders
Units = cylinders of 7056 * 512 = 3612672 bytes
Disk identifier: 0xc3072e18

   Device Boot      Start         End      Blocks   Id  System
/dev/sdf1   *           1        1115     3932136    c  W95 FAT32 (LBA)
Awatar użytkownika
DaVidoSS
Junior Member
Posty: 875
Rejestracja: 06 marca 2010, 11:26
Lokalizacja: ~/

Post autor: DaVidoSS »

Jeśli koniecznie musisz uzyskać w skrypcie uprawnienia root zamiast jak powinno to być - uruchomić skrypt z uprawnieniami root, to użyj sudo zamiast su.

Kod: Zaznacz cały

#!/bin/bash
sudo mount -r -t ntfs /dev/sda1 /mnt/sys
sudo mount -r -t ntfs /dev/sda5 /mnt/dane
Wtedy uruchom skrypt poleceniem :

Kod: Zaznacz cały

sh m.sk
Albo:

Kod: Zaznacz cały

#!/bin/bash
mount -r -t ntfs /dev/sda1 /mnt/sys
mount -r -t ntfs /dev/sda5 /mnt/dane
i uruchamiaj:

Kod: Zaznacz cały

sudo sh m.sk
lub

Kod: Zaznacz cały

su
sh m.sk
szasza
Posty: 9
Rejestracja: 30 stycznia 2011, 16:12

Post autor: szasza »

Dziękuję pomogło usunięcie su- ze skryptu. Pozdrawiam
ODPOWIEDZ