bagaimana saya bisa memberikan akses tulis folder ke semua pengguna di linux?
<p>saya menginstal apache2 di ubuntu sekarang, dan memperhatikan bahwa folder/var/www dilindungi. saya hanya bisa <code>sudo</code> semuanya tetapi saya lebih suka memberikannya akses tulis.</p><p>bagaimana saya bisa melakukan ini?</p><p>saya mencoba <code>sudo chmod 7777 /var/www</code> tetapi tidak berhasil.</p>
<p>untuk membagikan yang terbaik kepada banyak pengguna yang seharusnya bisa menulis dalam <code>/var/www</code>, itu harus ditetapkan sebagai grup umum. misalnya grup default untuk konten web di ubuntu dan debian adalah <code>www-data</code>. pastikan semua pengguna yang membutuhkan akses tulis ke <code>/var/www</code> berada di grup ini.</p><pre><code>sudo usermod -a -g www-data &lt;some\_user&gt; </code></pre><p>kemudian atur izin yang benar di/var/www.</p><pre><code>sudo chgrp -r www-data /var/www sudo chmod -r g+w /var/www </code></pre><p>selain itu, anda harus membuat direktori dan semua direktori di bawahnya "set gid", sehingga semua <em> baru </em> file dan direktori yang dibuat dengan <code>/var/www</code> dimiliki oleh <code>www-data</code> kelompok.</p><pre><code>sudo find /var/www -type d -exec chmod 2775 {} \; </code></pre><p>temukan semua file di <code>/var/www</code> dan tambahkan izin baca dan tulis untuk pemilik dan grup:</p><pre><code>sudo find /var/www -type f -exec chmod ug+rw {} \; </code></pre><p>anda mungkin harus keluar dan masuk kembali untuk dapat membuat perubahan jika anda mengedit izin untuk akun anda sendiri.</p>
<p>saya menemukannya: <a href="http://www.linuxquestions.org/questions/linux-desktop-74/applying-default-permissions-for-newly-created-files-within-a-specific-folder-605129/">menerapkan izin default</a> </p><p>dari artikel:</p><pre><code>chmod g+s &lt;directory&gt; //set gid setfacl -d -m g::rwx /&lt;directory&gt; //set group to rwx default setfacl -d -m o::rx /&lt;directory&gt; //set other </code></pre><p>selanjutnya kita dapat memverifikasi:</p><pre><code>getfacl /&lt;directory&gt; </code></pre><p>keluaran:</p><pre><code># file: ../&lt;directory&gt;/ # owner: &lt;user&gt; # group: media # flags: -s- user::rwx group::rwx other::r-x default:user::rwx default:group::rwx default:other::r-x </code></pre> <p>saya rasa saya menemukannya. sepertinya ada satu langkah tambahan.</p><pre><code>global $user; $user\_full = user\_load($user-&gt;uid); // user\_load(uid) returns the complete array var\_dump($user\_full); </code></pre><p>saya sekarang memiliki akses ke bidang profil khusus saya melalui $ user\_full</p> <p>anda memiliki root, tetapi anda masih perlu melakukan remount/sistem untuk dapat dibaca/ditulis</p><pre><code>$ adb shell $ su $ mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system </code></pre><p>buka di sini untuk informasi lebih lanjut: <a href="http://android-tricks.blogspot.com/2009/01/mount-filesystem-read-write.html">pasang sistem file baca-tulis</a> .</p> <p>ada 2 cara, yang biasanya saya gunakan</p><p>opsi 1: sebelum mem-boot ubuntu, di dalam virtualbox ubuntu vm pengaturan, tentukan folder share. kemudian setelah masuk ke ubuntu, buat direktori baru misalnya <code>/media/vboxshared</code> dan pasang drive itu menggunakan perintah <code>sudo mount -t vboxsf sharename /media/vboxshared</code>. masukkan kata sandi anda saat diminta kata sandi.</p><p>opsi 2: sebelum mem-boot ubuntu, tambahkan adapter jaringan baru dan pilih 'bridged adapter'. kemudian setelah masuk ke ubuntu, jalankan perintah <code>ifconfig -a | more</code> untuk mendapatkan alamat ip adaptor jaringan baru itu. di windows, gunakan winscp atau filezilla untuk mentransfer file ke ubuntu</p> <p>kedengarannya seperti yang anda inginkan bukan redirect tetapi sebenarnya proxy. lihat informasi yang ditemukan di <a href="http://httpd.apache.org/docs/2.2/mod/mod\_proxy.html">mod\_proxy config halaman</a> . anda harus berakhir dengan sesuatu seperti:</p><pre><code>proxypass /app http://example.com:8080/app proxypassreverse /app http://example.com:8080/app </code></pre> <p>pasang disk menggunakan udev. tempatkan aturan dari ini <a href="http://wiki.archlinux.org/index.php/udev#mount\_under\_.2fmedia.3b\_use\_partition\_label\_if\_present.3b\_support\_luks\_encryption">wiki</a> ke <code>/etc/udev/user.rules</code> dan reboot (atau sambungkan kembali hdd usb). ada beberapa bantuan aturan di wiki (itulah sebabnya saya tidak mencantumkannya di sini), pilih salah satu yang paling sesuai dengan kebutuhan anda (mis. anda memerlukan pengguna normal tertentu untuk dapat melepasnya).</p><p>membaca dengan teliti <code>/lib/udev/rules.d/80-udisks.rules</code> akan membantu anda memahami apa yang udev lakukan terhadap <strong> hard disk </strong> anda.</p><p>selain aturan udev yang saya sebutkan di atas saya pikir ada pendekatan lain yang dapat anda ambil: menginstruksikan udisks (melalui udev) untuk meninggalkan disk anda sendiri dan kemudian memasangnya melalui fstab.</p><p>kode ini berfungsi di sistem saya</p><pre><code>action!="add|change", goto="my\_udisks\_end" subsystem!="block", goto="my\_udisks\_end" env{id\_type}!="disk", goto="my\_udisks\_end" env{id\_bus}!="ata", goto="my\_udisks\_end" env{devtype}!="partition", goto="my\_udisks\_end" kernel=="sd*|hd*", env{udisks\_presentation\_nopolicy}="1" label="my\_udisks\_end" </code></pre><p>tetapi generik dan mencakup semua partisi. untuk dapat menargetkan hdd/partisi khusus anda gunakan <code>udevadm info --query=all -n /dev/sdx</code> dan kemudian cocokkan dengan beberapa atribut tertentu dalam aturan udev.</p><p>sumber yang bagus untuk membantu anda dalam hal ini adalah <a href="http://reactivated.net/writing\_udev\_rules.html">menulis aturan udev</a> . sayangnya itu berisi beberapa info yang ketinggalan zaman (<code>udevinfo</code> digantikan oleh <code>udevadm indo</code>). saya yakinkan anda, meskipun, ini adalah bacaan yang bermanfaat - udev adalah bagian utama dari arsitektur saat ini dan anda dapat mencapai banyak hal dengan menggunakannya. ini juga cukup fleksibel.</p><p>mudah juga untuk membuat kesalahan dalam aturan udev :). gunakan <code>udevadm test $(udevadm info -q path -n /dev/sdx)</code> untuk mengintip apa yang udev lakukan.</p> <p>dari <a href="https://github.com/zolrath/wemux">https://github.com/zolrath/wemux</a> :</p><blockquote> <p>wemux meningkatkan tmux untuk membuat multi-user terminal multiplexing menjadi lebih mudah dan lebih kuat. hal ini memungkinkan pengguna untuk host server wemux dan klien bergabung:</p> <p>mode cermin memberi klien (pengguna ssh lain di mesin anda) akses hanya baca ke sesi, memungkinkan mereka melihat anda bekerja, atau</p> <p>pair mode memungkinkan klien dan anda sendiri untuk bekerja di terminal yang sama (kursor bersama)</p> <p>rogue mode memungkinkan klien untuk memasangkan atau bekerja secara independen di jendela lain (kursor terpisah) dalam sesi tmux yang sama.</p> <p>ini fitur dukungan multi-server serta daftar pengguna dan pemberitahuan ketika pengguna melampirkan/melepaskan.</p> </blockquote><p>ini adalah pembungkus shellscript di atas tmux - tidak perlu dikompilasi.</p> <p>anda dapat menggunakan <a href="http://opendb.iamvegan.net/wiki/index.php?title=main\_page">opendb</a> . anda harus meng-host-nya sendiri, tetapi harus mudah dijalankan di komputer dasar apa pun yang dapat digunakan oleh apache + php. godaddy juga menawarkannya sebagai aplikasi yang dapat diinstal pada paket hosting mereka.</p> <p><b>peningkatan utama grub 2 atas yang asli grub termasuk:</b></p><ul> <li>struktur file konfigurasi baru</li> <li>dukungan penulisan termasuk pernyataan dan fungsi kondisional</li> <li>memuat modul dinamis</li> <li>mode penyelamatan</li> <li>tema</li> <li>dukungan menu boot grafis dan peningkatan kemampuan splash</li> <li>boot ubuntu livecd dan beberapa gambar iso lainnya langsung dari hard drive</li> <li>dukungan platform non-x86 (seperti powerpc)</li> <li>dukungan universal untuk uuid (bukan hanya ubuntu)</li> <li>peningkatan internasionalisasi, termasuk dukungan untuk karakter non-ascii</li> </ul> <p>"penerusan ip" adalah sinonim untuk "perutean." ini disebut "kernel ip forwarding" karena ini adalah fitur dari kernel linux.</p><p>router memiliki beberapa antarmuka jaringan. jika lalu lintas masuk pada satu antarmuka yang cocok dengan subnet dari antarmuka jaringan lain, router lalu meneruskan lalu lintas itu ke antarmuka jaringan lainnya.</p><p>jadi, katakanlah anda memiliki dua nic, satu (nic 1) ada di alamat 192.168.2.1/24, dan yang lainnya (nic 2) adalah 192.168.3.1/24. jika penerusan diaktifkan, dan sebuah paket masuk pada nic 1 dengan "alamat tujuan" 192.168.3.8, router akan mengirim ulang paket itu dari nic 2.</p><p>biasanya router berfungsi sebagai gateway ke internet untuk memiliki rute default di mana setiap lalu lintas yang tidak cocok dengan nic akan melalui nic rute default. jadi dalam contoh di atas, jika anda memiliki koneksi internet di nic 2, anda akan menetapkan nic 2 sebagai rute default anda dan lalu lintas apa pun yang masuk dari nic 1 yang bukan t ditakdirkan untuk sesuatu pada 192.168.2.0/24 akan melalui nic 2. mudah-mudahan ada router lain melewati nic 2 yang dapat merutekannya lebih lanjut (dalam kasus internet, lompatan berikutnya adalah anda router isp, dan kemudian penyedianya router hulu, dll.)</p><p>mengaktifkan <code>ip\_forward</code> memberi tahu sistem linux anda untuk melakukan ini. agar menjadi bermakna, anda memerlukan dua antarmuka jaringan (2 atau lebih kartu kabel nic, kartu wifi atau chipset, ppp tautan melalui modem atau serial 56k, dll.).</p><p>saat melakukan perutean, keamanan adalah penting dan di situlah filter paket linux, <code>iptables</code>, terlibat. jadi anda memerlukan konfigurasi <code>iptables</code> yang konsisten dengan kebutuhan anda.</p><p>perhatikan bahwa mengaktifkan penerusan dengan <code>iptables</code> dinonaktifkan dan/atau tanpa memperhitungkan firewall dan keamanan dapat membuat anda terbuka terhadap kerentanan jika salah satu nic menghadap ke internet atau subnet yang tidak dapat anda kendalikan.</p>