Salah satu perintah pertama yang saya pelajari di Linux adalah touch
perintah yang membuat file menggunakan baris perintah.
Jika Anda pernah mencoba membuat, misalnya, file teks, yang harus Anda lakukan hanyalah mengetik touch filename.txt
, tekan Enter, dan file dibuat untuk Anda di direktori tempat Anda berada. Kemudian Anda dapat menulis apa pun yang Anda inginkan di dalamnya menggunakan editor file pilihan Anda.
Namun, dalam hal membuat skrip, semuanya bisa menjadi sedikit lebih rumit. Mengapa demikian?
Mari saya coba tunjukkan ini dengan contoh lain. Misalkan Anda ingin membuat skrip menggunakan sentuhan. Ketik touch example.sh
, tekan Enter, dan di sana Anda memilikinya. Sekali lagi, Anda dapat menulis di dalamnya menggunakan editor file.
Dengan semuanya siap, yang tersisa untuk dilakukan adalah mengujinya. Anda mengetik ./sample.sh
dan tekan Enter untuk melihat skrip Anda beraksi dan…tetapi apa yang dikatakan pesan ini kepada saya?
Mengapa kami membutuhkan izin?
saya adminnya! Kenapa saya tidak memiliki izin untuk menjalankan skrip yang saya tulis sendiri beberapa detik yang lalu?
Sebenarnya ada alasan untuk itu – dan, sejujurnya, sebagian besar pengguna harus berterima kasih untuk itu, karena tidak dapat menjalankan skrip tanpa mengetahui apa yang Anda lakukan sering kali mencegah Anda dari membahayakan sistem Anda.
Mari kita mengobrol singkat tentang izin terlebih dahulu. Kemudian kita akan melanjutkan untuk menemukan cara mengubahnya.
Untuk mendapatkan beberapa informasi lebih lanjut tentang file Anda, kami akan menggunakan perintah yang mencantumkan file dalam direktori:ls
.
Setelah mengetik ls
dan menekan Enter, inilah yang kita dapatkan di baris perintah:
Apa yang dilakukannya adalah membuat daftar semua file yang terlihat di direktori tempat Anda berada saat ini. Dengan menambahkan bendera -l
untuk itu, ini memberi Anda lebih banyak informasi tentang file di direktori. Ini adalah hasil ketika kita mengetik ls -l
dan tekan Enter:
Kami melihat file yang sama, tetapi dengan banyak informasi sebelumnya. Untuk memulainya, kami memiliki urutan sepuluh tanda hubung dan huruf yang mungkin tampak tidak berarti pada awalnya. Ini sebenarnya pemetaan izin yang dimiliki file Anda.
Karakter pertama dapat berupa tanda hubung (-
, untuk file umum), a d
(untuk direktori), atau l
(untuk tautan lunak). Demi kesederhanaan, saya akan fokus pada file sederhana, meskipun izin berlaku untuk semua jenis file/folder ini.
Setelah karakter pertama, 9 lainnya dapat dibagi menjadi tiga kelompok. Trio pertama menunjukkan izin untuk pengguna saat ini. Berikutnya menunjukkan izin untuk grup ini. Tiga yang terakhir adalah izin untuk semua pengguna yang tidak sesuai dengan kategori ini.
Untuk penjelasan kami, mari fokus pada tiga izin pertama, karena kami tidak akan mengubah grup atau semacamnya.
Trio pertama mengatakan rw-
.
Saatnya untuk memahami apa ini. Ada tiga hal yang biasanya dapat Anda lakukan dengan file:membacanya, menulis di dalamnya, dan menjalankannya. Itulah, pada dasarnya, apa arti huruf-huruf itu.
r
pertama singkatan dari izin membaca. Kemudian kita memiliki w
untuk izin menulis. Terakhir, tanda hubung, artinya apa saja yang seharusnya ada tidak ada. Yang seharusnya ada adalah x
, singkatan dari eXecutable.
Jadi, berbicara tentang pengguna saat ini (saya), izin yang saya miliki untuk file ini adalah izin membaca dan menulis. Namun, saya tidak dapat menjalankan sample.sh
mengajukan. Itu sebabnya, ketika mencoba mengeksekusi file tersebut, saya mendapat pesan 'permission ditolak'.
Bagaimana saya bisa, kemudian, mengeksekusi file ini? Di situlah chmod
perintah ikut bermain.
Apa yang dilakukan chmod?
Yah, saya sudah menyebutkan 'izin' sejak awal artikel. Mari kita perpanjang penjelasan ini sedikit untuk mengatakan bahwa itu adalah 'izin untuk mengakses file dalam mode tertentu . Artinya r
menunjukkan izin untuk mengakses file dalam mode membaca, w
menunjukkan izin untuk mengakses file dalam mode penulisan, dan x
menunjukkan izin untuk mengakses file dalam mode yang dapat dieksekusi.
Mengapa saya mengatakan itu? Karena perintah, artikel ini membahas semuanya. chmod
singkatan dari 'ubah mode'. Dengan kata lain, saat Anda menggunakan perintah ini, Anda mengubah mode file ke mode apa pun yang ingin Anda gunakan.
Cara Menggunakan Operator dengan cmod
Perlu menggunakan operator dengan perintah chmod. Ini berfungsi untuk menentukan jenis perubahan yang ingin Anda lakukan pada izin.
Misalnya, +
adalah operator yang Anda gunakan untuk menambahkan izin ke yang sudah dimiliki file. -
menghapus izin dari daftar. Ada juga =
operator, yang menyetel ulang izin sehingga Anda dapat menentukannya lagi.
Dalam kasus kami, dengan mengetikkan chmod -w sample.sh
, apa yang saya minta perintah lakukan adalah menghapus izin menulis. Jadi yang harus saya lakukan untuk menambahkan izin yang dapat dieksekusi adalah mengetikkan chmod +x sample.sh
.
Jika sekarang saya mencoba mengeksekusi file, apa pun yang saya masukkan ke dalam skrip sekarang akan dieksekusi.
Menggunakan ls -l
, inilah yang akan saya miliki sekarang.
Siapa yang mendapat izin?
Hal lain yang perlu ditunjukkan adalah siapa yang mendapatkan izin ini. Anda akan melihat bahwa 'x' diberikan kepada semua pengguna, pemilik file, grup, dan lainnya. Jika ini bukan tujuan Anda, mungkin ada baiknya untuk menghapus izin yang dapat dieksekusi lagi dengan chmod -x sample.sh
.
Untuk mengaktifkan izin hanya untuk pemilik file (saya, dalam hal ini), kita harus menambahkan 'u' sebelum '+x', seperti ini:
chmod u+x sample.sh
Mengetik ls -l
, itulah yang Anda miliki:
Jika Anda ingin memberikan izin untuk pemilik dan grupnya, maka perintahnya adalah chmod ug+x sample.sh
.
Besar! Saya pikir ini mencakup apa yang ingin saya tunjukkan kepada Anda. Ada hal lain yang mungkin menarik bagi Anda, seperti cara menggunakan chmod dengan nilai oktal atau biner untuk mewakili izin. Tapi ini adalah mode yang kami gunakan untuk mendapatkan hasil yang sama dan saya yakin huruf adalah cara yang lebih mudah untuk mencapai hasil ini.
Jika Anda menginginkan informasi lebih lanjut tentang perintah tersebut, satu hal yang dapat Anda lakukan adalah mengetikkan chmod --help
, yang akan memberi Anda pengarahan tentang apa yang dapat dilakukan perintah. Deskripsi yang lebih detail dapat diperoleh dengan mengetikkan man chmod
.
Saya harap artikel ini bermanfaat bagi Anda. Untuk artikel lebih lanjut tentang perintah Linux, periksa freecodecamp.org/news.
Selamat mengkode!