GNU/Linux >> Znalost Linux >  >> Linux

Jak připojit USB flash disk jako uživatel bez oprávnění root s oprávněním k zápisu

Takže chcete použít USB klíčenku nebo USB pevný disk a nechcete je pokaždé připojovat jako root?

Proč to chcete udělat?

  • Připojování USB flash disku pomocí sudo je vždy obtížné – musíte zadat heslo uživatele root a musíte zadat všechny možnosti připojení pokaždé, když jej připojíte.
  • Oprávnění na FAT32 USB klíčence nebo jednotce neumožňují zapisovat jako vy, pouze root, takže musíte sudo jakékoli operace se soubory založené na zápisu na zařízení USB. Je to proto, že běžně používaný formát většiny USB disků je FAT32, protože má nejlepší kompatibilitu se stroji Windows a je podporován také na Mac OS a Linuxu, bohužel FAT32 nemá na rozdíl od EXT4 žádnou představu o oprávněních k souborům.

Další bod, který stojí za zmínku, pokud jste někdo, kdo používá nablýskaný, plnohodnotný desktop jako GNOME nebo KDE, pak pravděpodobně zjistíte, že věci jako vyměnitelná média USB jsou automaticky připojena za vás, takže je často dobré je používat v ta kapacita. Nicméně pro linuxové blázny a administrátory serverů, jako jsem já, to prostě neřeší, chci snadné připojení na uživatelské úrovni na příkazovém řádku, nebo krachu!

Dobře, rozhodli jste se, že chcete mít možnost připojit disk jako skutečný uživatel, ne jako root. Dobrá věc je, že je to opravdu rychlé.

Nejprve musíme vytvořit adresář, do kterého bude disk připojen. Pokud jste tak ještě neučinili, vytvořte tento adresář:

$sudo mkdir -p /media/<username>/usb
$sudo chown <username> /media/<username>/usb
$sudo chmod 0777 /media/<username>/usb

Je zřejmé, že přípojný bod můžete nazvat, jak chcete, právě jsem jej nazval usb a vložil ho do adresáře /media//usb (všimněte si, že je vaše vlastní uživatelské jméno). Poslední dva příkazy změní vlastnictví na „vy“ a nastaví oprávnění ke čtení a zápisu pro všechny uživatele (změňte toto, pokud chcete, aby bylo méně otevřené).

Dále musíme zjistit, který disk chcete připojit. Možná to už víte, ale pokud nevíte, co je položka /dev/ pro USB klíčenku, můžete to zjistit tak, že ji vložíte do USB portu na vašem počítači a spustíte dmesg:

$dmesg
[snip]
[95921.903363] usb-storage 1-2.2:1.0: USB Mass Storage device detected
[95921.903445] scsi host5: usb-storage 1-2.2:1.0
[95922.902013] scsi 5:0:0:0: Direct-Access USB DISK 2.0 PMAP PQ: 0 ANSI: 6
[95922.902347] sd 5:0:0:0: Attached scsi generic sg2 type 0
[95923.714434] sd 5:0:0:0: [sdc] 15133248 512-byte logical blocks: (7.74 GB/7.21 GiB)
[95923.714639] sd 5:0:0:0: [sdc] Write Protect is off
[95923.714642] sd 5:0:0:0: [sdc] Mode Sense: 23 00 00 00
[95923.714848] sd 5:0:0:0: [sdc] No Caching mode page found
[95923.714851] sd 5:0:0:0: [sdc] Assuming drive cache: write through
[95923.719842] sdc: sdc1
[95923.721331] sd 5:0:0:0: [sdc] Attached SCSI removable disk
[/snip]

Můžete vidět, že bylo zjištěno, že úložné zařízení USB na sdc a že oddíl, který vidí, se nazývá sdc1 (výše zvýrazněný tučně).

Nyní vše, co musíte udělat, je upravit soubor /etc/fstab a přidat tento řádek na konec:

$sudo vim /etc/fstab

/dev/sdc1 /media/usb auto user,umask=000,utf8,noauto 0 0

Odstraňte bit „noauto“, pokud chcete, aby byl připojen automaticky při spouštění, ale to je pravděpodobně špatný nápad, pokud jde o vyměnitelné zařízení!

To je všechna ta tvrdá práce, kterou jste udělali, a už byste to neměli dělat. Nyní vše, co potřebujete k připojení, kdykoli budete chtít, je zadat jednoduchý příkaz pro připojení:

$mount /dev/sdc1

nebo jej můžete připevnit pomocí bodu připojení. Ať tak či onak, na tom nezáleží 🙂

$mount /media/<username>/usb

Doufám, že vám to ušetří nějaké potíže!


Linux
  1. Samba Mount s výzvou k zadání hesla jako uživatel bez oprávnění root?

  2. Jak získat klíč USB k automatickému připojení?

  3. Jak vytvořit nového uživatele s přístupem Ssh?

  1. UNIX / Linux :Jak odstranit ekvivalentního uživatele root (uživatel jiného typu než root s UID 0)

  2. Jak mohu automaticky nastavit oprávnění k zápisu při připojení jednotky USB v linuxu?

  3. Jak zapsat obraz ISO na paměťovou kartu USB z příkazového řádku linuxu?

  1. Přidat uživatele do skupiny v Linuxu, jak na to (s příklady)

  2. Jak provést Chroot s jmennými prostory Linuxu?

  3. Automatické připojení USB disků pomocí systemd