Linux'ta bir USB sürücüsünü monte etmek için otomatik olarak yazma izinlerini nasıl ayarlayabilirim?


18

Linux'a (CentOs4) harici bir usb sürücü taktığımda, izinler varsayılan olarak salt okunur olarak ayarlanır. Bilgisayarda harici sürücüyü kullanması gereken birden fazla kullanıcı olduğundan, herkesin rwtüm sürücü için izin almasını istiyorum . Ayrıca, bilgisayar yanlışlıkla kapatıldıysa sürücüyü monte edebilmelerini de istiyorum. Onlar kullanabilirsiniz sudo mountsürücüyü bağlamak için, ama bu sadece onlara okuma izni verecek ve ben açıkçası izin vermek istemiyoruz sudo chmod.

Her yeni harici usb diskin otomatik olarak rwizin alması için değiştirebileceğim varsayılan bir ayar var mı ?

Yanıtlar:


17

Herkesin rw erişimini etkinleştirmek için, komut bağlanma umask = 0 seçeneğidir.

sudo mount -o umask=0,uid=nobody,gid=nobody /dev/something /mnt/somewhere

umask = 0 yeterlidir, sadece netlik için uid ve gid, bu yüzden zorunlu olarak daha fazla 'kök' sahibi göremezsiniz.


@ Tom'un yanıtı (yazma / etc / fstab girişi) atlamanıza izin verir sudove ek seçenek olarak umask = 0 yazarsanız, her iki dünyanın da en iyisini elde edersiniz:

Bunu / etc / fstab içinde bulundurmak:

/dev/something /mnt/somewhere auto users,noatime,umask=0 0 0

sadece koşmana izin verir

mount /dev/something

ve herkesin tüm dosyalara erişimi vardır.


Detayları öğrenmek isterseniz teknik not:

As man mountdiyor 'umask = 0' hiçbir ek kurallar dosya erişim modu için geçerli olmasını sağlayacaktır. FAT dosya sistemlerinde (en çok USB disklerde kullanılır), depolanmış erişim modu yoktur. Ancak mevcut işleminizde bazı umask değeri ayarlanmış, sadece umaskterminalde çalıştırıyorsanız görebilirsiniz . mountbunu varsayılan olarak kullanır ve bağlı diskteki tüm dosyalardan umask değerinizin erişim modunu kaldırır. En yaygın kullanılan umask değerleri (sekizli) 022 - grup ve diğer yazma yok ve 027 - grup yazma yok, başka erişim yok.


umask=0 0 0Fstab dosyasına giriş olarak eklersem 'kötü seçenek' hatası alıyorum . Does umaskson giriş olmak -Giriş gerek? managed=0 0 0Giriş şu anda en son ne yapıyor ?
Jonas

1
FWIW, umask seçeneği yalnızca VFAT seçeneğidir, yani USB bellek VFAT dosya sistemini kullandığı sürece (bu benim durumum olmadı) çözüm yardımcı olur.
Tomislav Nakic-Alfirevic

2
Teşekkür ederim. Ama çalışmasını sağlamak için değiştirmek zorunda kaldım: sudo mount -o umask=0,uid=nobody /dev/something /mnt/somewhereSadece gid parametresini ayarlamadan çalışır.
Nippey

2

/ Etc / fstab dosyasına bir girdi ekleyin. Seagate USB sürücüm için sadece birkaç saat önce eklediğim bir giriş:

UUID = 4ACC734ECC733375 / media / Linux ext3 hataları = remount-ro, varsayılanlar, kullanıcılar, noatime, nodiratime 0 0

Buradaki anahtar, kullanıcıların sürücüyü takıp çıkarmalarını sağlayan "kullanıcılar" girdisidir.

Düzenleme: Bu belirli sürücüler için çalışır - tek bir girişi olan tüm sürücüler için etkinleştirilip etkinleştirilemeyeceğini bilmiyorum .


Bir kullanıcı sürücüyü bağlarsa, diğer tüm kullanıcılar da rwizin alır mı?
Jonas

1

Tür mount. Bu, bulunduğunuz yeri verecektir. İşte çıktı.

rick@rick-Main ~ $ mount
/dev/sda4 on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/cgroup type tmpfs (rw)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
none on /run/user type tmpfs (rw,noexec,nosuid,nodev,size=104857600,mode=0755)
none on /sys/fs/pstore type pstore (rw)
/dev/sda6 on /media/DATA1 type vfat (rw,uid=1000,utf8,umask=077)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,noexec,nosuid,nodev)
systemd on /sys/fs/cgroup/systemd type cgroup (rw,noexec,nosuid,nodev,none,name=systemd)
gvfsd-fuse on /run/user/1000/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,user=rick)
/dev/sdf1 on /media/usb0 type vfat (rw,noexec,nodev,sync,noatime,nodiratime)

Sonuncusu ise Linux Mint tarafından üretilen USB sürücüm.

Şimdi yazın

sudo umount /dev/sdf1

bu sürücünün bağlantısını kesecek

şimdi doğru şekilde yeniden takın.

sudo mount -t vfat /dev/sdf1 /media/usb0 -o rw,users,umask=0
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.