Dihapus / tmp secara tidak sengaja

9

Tanpa sengaja, saya berlari sudo rm -r /tmp, apakah itu masalah?
Saya membuatnya kembali menggunakan sudo mkdir /tmp, apakah itu memperbaiki masalah?

Setelah saya membuat ulang direktori, Di bagian tempat di sidebar di nautilus di Ubuntu 14.04 saya dapat melihat / tmp, yang sebelumnya tidak ada di sana .. Apakah itu masalah?

Satu hal lagi, apakah saya harus berlari sudo chown $USER:$USER /tmpagar dapat diakses seperti sebelumnya .. Apakah ada efek samping setelah ini?

Omong-omong, saya mendapatkan kesalahan yang tampaknya terkait ini ketika saya mencoba menggunakan pelengkapan otomatis bash

bash: tidak dapat membuat file temp untuk dokumen-sini: Izin ditolak

Amr Ayman
sumber

Jawaban:

12

/tmpdapat dianggap sebagai direktori khas dalam banyak kasus. Anda dapat membuatnya kembali, memberikannya ke root ( chown root:root /tmp) dan mengatur 1777izin sehingga semua orang dapat menggunakannya ( chmod 1777 /tmp). Operasi ini akan menjadi lebih penting jika Anda /tmpberada di partisi yang terpisah (yang membuatnya menjadi titik pemasangan).

Ngomong-ngomong, karena banyak program mengandalkan file sementara, saya akan merekomendasikan reboot untuk memastikan bahwa semua program melanjutkan seperti biasa. Bahkan jika sebagian besar program dirancang untuk menangani situasi ini dengan benar, beberapa mungkin tidak.

John WH Smith
sumber
2
/tmptidak perlu memiliki partisi, meskipun bisa. /tmpjuga bisa menjadi sistem file tipe tmpfsatau ramfsmenyimpan file tmp di memori. Seseorang perlu memutuskan antara ram atau perangkat tergantung pada penggunaan, ukuran data, dll.
bsd
Info terakhir adalah: drwxrwxrwt 5 root root 4096 أغس 12 20:21 tmp/.. Apakah itu baik-baik saja?
Amr Ayman
@ArAyman Ini adalah /tmpizin khusus , ya. rwxdi mana-mana sehingga semua orang dapat membaca dan menulis untuk itu, dan sedikit lengket ( t) untuk memastikan kepemilikan / izin file individual di dalamnya /tmp. Lihat di sini untuk info lebih lanjut.
John WH Smith
4

Direktori /tmpharus memiliki izin 1777 = rwxrwxrwt, yaitu semua orang dapat membaca, menulis, dan mengakses file dalam direktori, dan ( t= bit sticky) file hanya dapat dihapus oleh pemiliknya. Banyak hal akan berhenti bekerja jika ini tidak terjadi, kadang-kadang dengan cara yang aneh.

sudo mkdir -m 1777 /tmp

atau

sudo mkdir /tmp && sudo chmod 1777 /tmp

/tmpharus milik root. Jangan ubah kepemilikannya ke pengguna lain.

Program yang menggunakan file sementara pada saat Anda menghapusnya mungkin agak membingungkan. Beberapa latar belakang program menyimpan soket di /tmpdan akan perlu di-restart. Yang utama adalah server X: setelah menghapus /tmp/.X11-unix/X0, Anda tidak akan lagi dapat memulai aplikasi GUI. Anda harus keluar dan kembali untuk memperbaikinya (perbaiki izin terlebih dahulu!).

Gilles 'SANGAT berhenti menjadi jahat'
sumber
bukan chmod?
Ramesh