PERINGATAN - DO NOT RUN THE DISEBUTKAN COMMAND
Jadi sepertinya saya melakukan sesuatu yang sangat bodoh di sini untuk membuatnya lebih halus. Saya mencoba untuk mengubah izin untuk beberapa file dalam direktori yang semuanya dimulai dengan .
membaca / menulis untuk sudo / root saja.
Upaya saya mengubah beberapa file sekaligus tampaknya telah melakukan sesuatu yang sangat global. Saat berada di dalam direktori (bukan di direktori root) saya berlari sudo chmod 600 .*
dan saya memposting ini dari ponsel saya sekarang ... Saya masih memiliki jendela terminal terbuka saat ini, tapi saya cukup yakin jika laptop berjalan untuk tidur saya sudah selesai. Riang itu berarti ada sedikit urgensi untuk pertanyaan ini.
Oh dan ini tampaknya telah mengubah izin sialan di dekat mana-mana yang saya duga. Aku bahkan tidak bisa menjalankan ls
atau cd ..
perintah. Upaya cd /home/brian
atau cd ~
memberikan kesalahan bash: cd: /home/brian: Permission Denied
dan setiap upaya sudo
perintah hanya mengatakanbash: /usr/bin/sudo: Permission Denied
Saya takut mem-boot ulang, tidak ada petunjuk apakah ada pemulihan dari sesuatu yang bodoh ini, tetapi saya pikir saya akan mencoba bertanya di sini sebelum memperburuk keadaan. Saya Linux yang cukup baru sebagai OS utama saya dikonversi dan telah mengadvokasi untuk itu akhir-akhir ini, tapi aduh, ini agak menyengat. Pikiran apa pun untuk dicoba akan sangat dihargai.
EDIT: Saya ingin memberikan klarifikasi tentang bagaimana / di mana perintah ini dijalankan. Ini dijalankan dari /.atx $
, hanya direktori arbitrer, tetapi rincian lebih lanjut di bawah ini.
Saat masuk sebagai nama pengguna biasa brian
, saya memiliki terminal terbuka /.atx
yang berisi tiga file teks saja jenis konfigurasi. Setiap nama file dimulai dengan a .
. Direktori / nama / file-file itu bukan bagian dari paket yang umum, hanya satu set konfigurasi yang sewenang-wenang yang secara pemrograman saya pindahkan. File berisi beberapa info string koneksi server SQL dan hanya ingin mereka semi-dikaburkan.
sumber
/root
bukan/
ketika Anda melakukan ini (dari apa yang saya lihat dalam pertanyaan Anda) yang berarti folder.*
glob glob diambil/root
sendiri (.
referensi ke direktori kerja saat ini) bersama dengan semua file / direktori yang dimulai dengan titik terkemuka. Tidak yakin apakah ada cara untuk mengubahnya dari sistem Anda, tetapi Anda mungkin bisa boot dari USB langsung dan membatalkan hal-hal dari sana. Jangan menganggapnya sebagai jawaban 100%, hanya sebuah pemikiran..*
dalam perintah Anda diperluas untuk memasukkan..
, direktori induk dari direktori tempat Anda berada. Jika Anda berada di, misalnya/home/brian
maka izin/home
akan diatur ke 600 dan Anda tidak akan memiliki izin untuk melihat ke/home
direktori. Bisakah Anda mengeksekusi terminal terbuka Andals -ld /*
Jawaban:
Wah, pemulihan di sini sebenarnya lebih mulus dari yang saya harapkan dan semuanya Tampak dalam kondisi yang cukup baik lagi.
Terima kasih banyak kepada @CharlesGreen untuk penjelasan tentang bagaimana perintah itu memperluas direktori. Juga terima kasih kepada @Panther untuk info tentang masuk ke mode pemulihan untuk masalah yang agak terkait. (jika Anda berdua ingin membagikan kembali komentar Anda sebagai jawaban, saya akan menambahkannya)
Untungnya, tidak seperti posting yang ditautkan, ini tampaknya memiliki perbaikan yang sangat mudah. Tampaknya ketika saya menjalankan
sudo chmod 600 .*
perintah hanya dari satu direktori di/
bawahnya memperluas.*
porsi UP ke direktori root yang benar mengubah izin.
dari/
menyebabkan setiap izin lainnya jatuh."Memperbaiki" untuk ini adalah boot ke mode pemulihan, memasang kembali drive sebagai baca / tulis, pergi ke root utama (
cd /
), dan kemudianchmod +rx .
. Setelah reboot, semuanya tampak kembali normal.Moral dari cerita ini, menjalankan perintah pada
.*
setidaknya bisa berdampak pada direktori DI ATAS arus. Saya bermaksud hanya mempengaruhi file yang dimulai dengan.
... oops.Terima kasih banyak untuk semua orang yang berkomentar dan membantu.
sumber
..
cocok dengan.*
glob..
atau..
dalam perluasan.*
secara default.Hanya untuk memperjelas bagi pembaca masa depan yang mungkin menemukan ini sebagai jawaban yang diterima, ada kekhawatiran dengan
chmod +x
solusi sebagai solusi umum. Pertanyaan spesifik ini tampaknya merupakan direktori home pengguna sehingga beberapa masalah di bawah ini mungkin rendah, tetapi jika ini diterapkan pada server bisnis dan memengaruhi banyak pengguna atau direktori data lainnya, solusinya tidak disarankan.Di sisi positif , langkah ini akan memungkinkan pengguna untuk mendapatkan kembali akses ke file sehingga mereka dapat disalin ke media cadangan untuk mencegah kehilangan lebih lanjut. Dan pada akhirnya, itulah tujuan utama selama upaya pemulihan data.
Kekhawatiran terbesar adalah bahwa file asli mungkin memiliki izin khusus yang diterapkan yang sekarang hilang. Beberapa program - khususnya ssh - menegakkan izin file untuk memastikan keamanannya lebih lanjut dan tidak akan berfungsi jika
+rw
izin ditetapkan pada folder dan file-nya.Kekhawatiran lain adalah jika ini diterapkan pada
/
folder root ( ) secara rekursif, akan ada file lain yang mungkin terbuka bagi siapa saja di sistem untuk melihat dan memodifikasi. Dalam pengaturan bisnis di mana server mungkin berisi data sensitif (PCI / keuangan, atau informasi kesehatan / HIPAA) akses ini dapat mengarah pada temuan audit dan dampaknya.Dalam lingkungan pribadi / rumah, pemulihan ini mungkin dapat diterima. Catat saja bahwa beberapa hal mungkin secara diam-diam rusak atau bertindak aneh.
Dalam lingkungan bisnis, menggunakan pemulihan ini untuk mendapatkan kembali akses ke data dapat digunakan, tetapi pada akhirnya setiap perubahan dramatis seperti ini harus diselesaikan dengan menginstal ulang server dan memulihkan dari cadangan.
( Anda punya cadangan saat ini, bukan? ;-) )
sumber
/
dan tidak mengalir secara rekursif ke direktori lain. Juga patut dicatat, ini hanya ada di laptop pribadi saya dan meskipun saya mungkin kehilangan sebagian pekerjaan sehari (belum melakukan git push), itu akan menjadi masalah dan gangguan besar untuk menginstal ulang "pengguna" saya yang terkait aplikasi. Seandainya itu server dalam bentuk apa pun, secara umum saya akan setuju, lebih sedikit waktu dan upaya untuk hanya menghapus / membangun kembali.