[ Penafian : tidak ada niat jahat untuk pertanyaan ini, saya mencoba memahami perintah ln -s untuk proyek sekolah]
Katakanlah saya memiliki sistem file dengan folder rumah saya /home/anna
,. /home/bob
adalah folder yang tidak dapat saya akses, dengan file yang tidak dapat saya akses,foo.txt
Bisakah saya berhasil menjalankan ln -s /home/bob/foo.txt
di folder rumah saya? Apakah benar berasumsi bahwa jika saya bisa, itu akan menghasilkan tautan yang tidak dapat saya akses (dengan izin yang sama seperti foo.txt
)?
Bagaimana jika saya tidak memiliki hak baca foo.txt
, tidak hanya akses /home/bob
?
Bagaimana dengan case terbalik, di mana saya bisa mengakses /home/bob
tetapi tidak membaca foo.txt
?
permissions
symlink
MyStackRunnethOver
sumber
sumber
ls
biasanya akan menunjukkan hal itulrwxrwxrwx
, jadi sedikit salah untuk berbicara tentang izin tautan.Jawaban:
Ya, Anda dapat membuat tautan simbolis ke lokasi mana pun .
Benar. Batasan akses dari file target berlaku. Jika Anda membuat symlink ke sumber daya terbatas, Anda tidak akan dapat mengaksesnya. Bahkan tidak diharuskan bahwa file target benar-benar ada.
Demo:
Jika Anda tidak memiliki izin pada direktori induk, Anda tidak dapat mengakses file yang ada . Jadi dengan symlink Anda masih tidak dapat mengaksesnya. Membuat symlink tidak memengaruhi izin.
Sekali lagi, Anda dapat membuat symlink untuk itu, tetapi tidak mengakses file.
sumber
/home
dan dimasukkan ke dalam grup dengan nama yang sama dengan nama pengguna mereka, yaitu pengguna bob berada di grup bob, sampai ia ditambahkan ke orang lain untuk mencegah pengguna membaca satu sama lain file. Di masa lalu, semua pengguna milik pengguna grup, yang memungkinkan niat jahat yang Anda singgung. Agar Anna dapat melihat file bob, bob harus menambahkannya ke grup bob.