Hari ini saya kembali dengan tip lain yang, secara pribadi, banyak saya gunakan: dapat memiliki direktori bersama di antara beberapa pengguna di Linux. Saya menempatkan mereka dalam situasi, dengan istri saya di rumah, kami berdua menggunakan PC yang sama Arch Linux tetapi masing-masing memiliki penggunanya sendiri. Jadi, kami melihat masalah dengan folder yang kami bagikan seperti musik atau foto, karena masing-masing memiliki file sendiri, menduplikasi sesuatu.
Saat itulah kami berpikir buat folder bersama, tapi itu masalah izin. Jika folder itu milik saya dia tidak melihatnya, jika file yang saya buat, dia tidak menghapusnya dan seterusnya. Pada awalnya, tambalannya adalah kami memberikan 777 izin ke file-file itu setiap kali kami mengedit sesuatu untuk diakses orang lain sampai kami menemukan solusinya, Izin grup!
Apa itu izin grup?
Itu yang terbaik, menetapkan direktori bersama itu dan semua isinya ke grup khusus dengan izin baca dan tulis, yang dengannya semua anggota grup akan memiliki akses ke direktori tersebut. Ini kemudian memungkinkan hanya dengan menambahkan pengguna kita ke grup itu kita sudah bisa berinteraksi di direktori itu.
Dan bagaimana cara mengkonfigurasinya?
Ini adalah bagian terbaik dan saya melanjutkan untuk memberi tahu Anda bagaimana saya melakukannya dengan istri saya. Hal pertama adalah membuat direktori itu, yang sebagai contoh akan saya sebut «dibagikan".
sudo mkdir /home/compartido
Saya membuatnya di dalam / rumah dan di luar akun kami, untuk menghindari direktori atas mengganggu izin mereka sendiri. Sekarang kita harus membuat grup, yang akan kita tempatkan «berbagi»
sudo groupadd compartidos
Dan kami menetapkan grup ini ke direktori yang kami buat sebelumnya dan kami juga mengubah izin, sehingga semua yang kami buat di dalamnya, apakah itu direktori atau file, juga termasuk dalam grup ini.
sudo chgrp -R compartidos /home/compartido
sudo chmod g+s dirname
Selain itu, kami harus menambahkan pengguna kami ke dalamnya. Kemudian kita harus mengulangi perintah ini untuk masing-masing:
sudo usermod -G compartido sebastian
sudo usermod -G compartido mimujer
Sejauh ini, kami memiliki direktori «/ home / shared»Yang termasuk dalam grup«berbagi«, Dengan apa yang dapat diakses oleh semua pengguna anggota yang sama dan semua yang dibuat dalam direktori, akan menjadi bagian dari grup dengan apa yang dapat dilihat oleh salah satu dari kita.
Sekarang kita hanya memerlukan satu langkah terakhir, yang mungkin opsional, tetapi mengubah umask pengguna, untuk memastikan bahwa setiap file baru yang kita buat dapat dimodifikasi oleh anggota lain dalam grup. Ini mempengaruhi seluruh pengguna, bukan hanya direktori, jadi mereka harus melihat apakah itu berfungsi untuk mereka atau tidak. Dalam kasus saya, karena hanya saya dan istri saya yang menggunakan sistem, itu tidak mengganggu kami dan kami menetapkan umask 002 untuk diri kami sendiri, yang berarti bahwa setiap file yang dibuat dimulai dengan 775 izin.
Mengedit umask
Untuk mengedit umask, setiap pengguna harus mengedit file .profile atau .bashrc yang ada di dalam rumah pengguna dan mengubah nilai umask dengan angka yang diinginkan. Jika opsi tidak ada, kita harus menambahkannya.
Jadi, di konsol kami meletakkan:
sebastian@multivacs ~> vim .profile
Dan kita akan melihat sesuatu seperti ini:
Jadi, kita pergi ke baris yang mengatakan umask, kita tekan hurufnya i untuk mengedit dan menghapus # untuk menghapus komentar. Kami mengubah nomor menjadi 002. Jika garis tidak muncul, mereka harus menambahkannya.
Setelah selesai, kita tekan tombolnya Esc untuk keluar dari mode edit dan kemudian kami menulis :+q+w. Apa yang membuat kami menyimpan perubahan dan keluar dari Vi.
Ini akan terlihat seperti gambar ini:
Selesai! Jika mereka menutup sesi pengguna dan membukanya kembali, perubahan akan diambil, yang dengannya direktori bersama sudah akan berfungsi.
Tip bagus.
Ramah.
Beberapa tahun yang lalu saya melihat kebutuhan untuk melakukan ini sendiri, yang tidak saya ketahui adalah umask ... Saya malah meletakkan tugas di crontab 🙂
Terima kasih atas tipnya
Ya, crontabnya juga enak. Apa yang Anda masukkan, untuk menetapkan 775 izin ke konten?
Tip bagus .. .. disimpan jika perlu;) ..
Ok, Anda membuat folder / home / shared dan menetapkan grup "shared" untuk itu tapi
Siapa pengguna folder itu? Dengan kata lain, siapa pemiliknya? Saya, orang lain, atau pengguna root yang akunnya dinonaktifkan sejak saya menggunakan sudo?
Di sisi lain, saya memiliki masalah berikut: File yang saya buat tidak dapat dihapus oleh orang lain dan file yang dibuat oleh orang lain tidak dapat saya hapus sendiri.
Apa kesalahan yang telah aku perbuat?
Saat membuat folder dengan sudo, Anda harus memiliki root sebagai pemilik. Anda juga dapat mengubahnya dengan perintah chown untuk menetapkan pengguna lain.
Di sisi lain, periksa apakah file yang Anda buat melakukannya dengan 775 izin (yang memberi umask 002). Jika mereka tidak memiliki izin tersebut, mungkin ada beberapa pengaturan yang salah.
Demikian juga, perlu diklarifikasi bahwa umask memengaruhi setiap file baru yang dibuat di dalam direktori, tetapi jika mereka memindahkan atau menyalin konten dari tempat lain, izin asli dipertahankan dan bukan yang kita setel ke direktori.
Hei! Kamu benar.
Saya telah mencari dan masalahnya disebabkan oleh hal terakhir yang Anda katakan: Saat memindahkan file dari lokasi lain ke folder bersama, izin asli dipertahankan.
Apakah ada solusi untuk ini?
Saya bisa menggunakan mutiara.
Dalam hal ini, hal terbaik adalah meletakkan crontab seperti yang dikatakan KZKG ^ Gaara, di mana Anda dapat meletakkan perintah untuk menetapkan grup dan izin ke konten folder setiap X kali.
Artinya, mengatakan sesuatu seperti ini di crontab:
sudo chgrp -R compartidos /home/compartido/*
chmod -R 775 /home/compartido/*
Untuk segala sesuatu yang baru, pindah ke grup Bersama dengan izin 775.
Abaikan * di akhir setiap baris, saya sedang memikirkan hal lain ketika saya meletakkannya 😛
Terima kasih teman.
Posting yang sangat bagus, tetapi saya lebih suka memiliki partisi terpisah, di mana saya dapat meletakkan semua yang ingin saya bagikan. Saya memiliki disk 500 GB yang murah hati, di mana saya menggunakan 100GB dengan Linux dan partisi 400GB (ntfs) di mana semua musik, foto, dll ... Di pc saya, kami adalah dua pengguna dan masing-masing dapat mengakses partisi ntfs dan letakkan serta hapus apa yang kita inginkan, saat kita mau. Jika saya tidak ingin membagikan apa pun, saya memiliki beberapa hal di nama pengguna saya. 🙂
Sekarang, ini adalah cara lain untuk melakukannya tetapi masalahnya bukan di mana harus meletakkan file tetapi untuk mengkonfigurasi izin dan mengontrol akses dari pengguna yang berbeda.
Anda dapat memilikinya di partisi NTFS, benar tetapi Anda juga memiliki fragmentasi, lebih lambat dari EXT4 dan keamanan yang lebih rendah, meskipun jika baik bagi Anda untuk memilikinya dengan cara itu sama validnya.
Baik! Tip bagus, tetapi saya masih akan menambahkan tugas untuk mengubah izin ke 775 file baru di setiap login, dan menyelesaikan masalah file yang dipindahkan dari folder lain.
Juga, terima kasih banyak telah berbagi!
Menarik, terima kasih!
Saya mengangkat sesuatu yang berhubungan dengan grup berbagi utama dari beberapa distribusi gnu / linux. Beberapa distro membuat pengguna dengan pengguna grup utama dan tidak menggunakan grup utama yang sama dengan nama pengguna.
Perbedaannya adalah bahwa menggunakan pengguna grup utama, secara default semuanya dibagikan dengan pengguna grup di mana semua pengguna yang dibuat di distro itu akan berada, jika sebaliknya mereka dibuat dengan grup yang sama dengan nama pengguna, secara default tidak ada yang akan dibagikan.
Contoh:
$ ls -l /home/user/*.txt
-rw-r - r– 1 carlos carlos 126 25 Mar 2012 notes.txt
$ ls -l /home/user/*.txt
-rw-r - r– 1 carlos pengguna 126 25 Mar 2012 notes.txt
Saya tidak menyarankan menggunakan pengguna grup utama, lebih baik untuk membuat grup utama Anda sendiri saat membuat pengguna.
#groupadd carlos
# useradd -g carlos -G lp, wheel, uucp, audio, cdrom, cdrw, usb, lpadmin, plugdev -m -s / bin / bash carlos
-G carlos menunjukkan untuk menggunakan carlos grup induk.
Anda dapat mengubah grup utama pengguna dengan # usermod -g tetapi itu tidak akan mengubah grup utama dari semua file dan folder yang sudah ada di / home / carlos, Anda harus mengubah semuanya.
Contoh: ubah pengguna grup utama dari carlos pengguna ke carlos grup utama lalu ubah
semua izin file dan folder dari pengguna Carlos sehingga mereka tetap ada pada Carlos Carlos.
#groupadd carlos
# usermod -g pengguna carlos
# cd / home
# chown -R carlos: carlos carlos
Mengenai berbagi, Anda dapat membuat pengguna yang disebut bersama dengan grup utama bersama Anda, dan agar tidak ada masalah izin saat menyalin, Anda mengubah pengguna terlebih dahulu
dengan "$ su - shared" maka yang Anda inginkan akan disalin ke / home / shared, dengan ini dan hak akses dari apa yang disalin akan menjadi pengguna bersama.
Jika sudah ada file salin milik pengguna lain dan grup utama, Anda harus mengubah semuanya.
# cd / home
# chown -R dibagikan: dibagikan dibagikan
Hanya ada sesuatu yang tersisa dalam limbo, yang saya tidak tahu bagaimana cara menyalin secara grafis sebagai pengguna bersama, yaitu, tanpa harus melakukan $ su - dibagikan
Sangat konyol untuk menyalin secara grafis, hehe, saya menggunakan pcmanfm di sini di openbox, tetapi Anda dapat menggunakan manajer file yang Anda miliki atau inginkan, itu hanya dijalankan sebagai pengguna bersama dan bukan sebagai pengguna root.
$ su - dibagikan
$pcmanfm
$ lumba-lumba
$mc
dll
Saya baru saja akan menjawabnya. Jika tidak, yang lainnya adalah crontab yang mengubah pemilik file setiap x kali dengan file
chown -R compartido:compartido compartido
Tampak bagi saya bahwa perintah "usermod -G thenewgroup theuser" yang dilakukannya pada dasarnya adalah mengubah grup pengguna menjadi "grup baru". Untuk menambahkan pengguna yang ada ke grup baru, saya rasa hal yang benar adalah "usermod -aG elnuevogrupo elusuario"
Hal lain adalah yang saya lihat di sini bahwa beberapa orang merekomendasikan melakukan "chmod -R 775" tetapi itu tidak hanya mempengaruhi direktori, tetapi juga semua file (membuatnya dapat dieksekusi), yang menimbulkan risiko yang tidak perlu. Lebih baik melakukan sesuatu seperti «find / home / shared -type d -print0 | xargs -0 chmod 755 "dan jika perlu dengan berkas Anda dapat melakukan sesuatu yang serupa tetapi menggunakan" -type f "dan memberikan izin 664.
Terakhir, salah satu cara untuk membuat beberapa akun memiliki akses ke file atau folder terlepas dari siapa pemilik atau grupnya adalah dengan menggunakan perintah "setfacl" yang ada dalam paket acl (jika saya ingat dengan benar). Penggunaannya dijelaskan dengan baik di halaman manual.
Saya memiliki masalah berikut. Saya telah membuat 4 pengguna (web1, web2, web3, web4) dan saya ingin membuat folder grup akses untuk pengguna grup web. Ketika saya membuat file .htaccess, saya tahu bahwa saya harus memasukkan require-valid-user, tetapi, jika saya membutuhkan valid-user web1 web2 web3 web4 sehingga mereka dapat mengakses folder dengan kata sandi mereka, ketika saya mencoba mengakses folder itu menanyakan saya untuk pengguna dan kata sandi masing-masing. Bagaimana saya hanya diminta untuk nama pengguna dan kata sandi orang yang ingin masuk? karena diasumsikan bahwa yang satu tidak mengetahui kata sandi yang lain.
Hola.
Terminal ke-4 harus memiliki jamak "bersama":
sudo usermod -G membagikan sebastian
sudo usermod -G membagikan mywoman
Salam.
Gustavo
Bersulang :
Kami sedang bermigrasi dari Windows Server ke CentOs 6 dan kami masih dalam proses adaptasi. Pertanyaan saya: Apakah ada antarmuka grafis di CentO untuk berbagi folder dan memberikan akses kepada pengguna untuk mengubah, mengedit dan / atau menghapus file?
Terima kasih atas bantuannya
Saya juga menginstal centos 6 dan saya ingin menggunakannya dengan samba yang memungkinkan saya untuk berbagi file dari linux dan windows, saya tahu sedikit, saya tidak banyak menggunakan linux, tetapi di tempat kerja saya telah ditanya, bagaimana saya bisa melakukannya untuk berbagi folder tetapi dalam mode grafis ??.
Hai. Tolong bantu saya! ... Ternyata dengan melakukan ini di benak pengguna saya di linux, sekarang saya kehilangan hak istimewa. Saya tidak bisa menjalankan hal seperti sudo. Saya mendapatkan pesan berikut "Maaf, pengguna" nama pengguna "tidak diizinkan untuk menjalankan" command_to_run "sebagai root di" nama pengguna ""
Saya pikir ketika saya mengubah pengguna saya ke grup bersama, saya mengambil hak istimewa, dan sekarang bagaimana cara memulihkannya ???
Hai teman apakah ada cara untuk melakukan hal yang sama tetapi berbagi file dengan orang lain di LAN Internet
Untuk ini, Anda harus menggunakan SAMBA sebagai File Server. Bersulang
Hai. Ketika saya mendapatkan perintah sudo chmod g + s dirname, itu memberi tahu saya bahwa file atau direktori tidak ada. Tahukah Anda apa masalahnya?
Bagaimana cara membuat grup di grup lain?
Garis:
sudo usermod -G membagikan sebastian
seharusnya:
sudo usermod -a -G membagikan sebastian
cara pertama menghapus grup pengguna lainnya.
dan jika Anda berkeringat, Anda kehilangan hak istimewa Anda