Di bawah Windows, sebagian besar aplikasi dan data aplikasi disimpan dalam direktori khusus yang dikenal sebagai C:\Program Files
(dan kadang-kadang C:\Program Files (x86)
). Apa yang setara dengan Ubuntu / Linux untuk jalur ini? Apakah ada satu?
filesystem
Kaz Wolfe
sumber
sumber
Jawaban:
/bin
dan di/usr/bin
sinilah skrip memulai program. Setara langsung dari "Program Files" mungkin/usr/share
( lihat Filesystem Hierarchy Standard ). Direktori itu berisi berbagai file dukungan untuk sebagian besar program.Namun, mungkin tidak ada padanan langsung, karena, misalnya, file perpustakaan dibagi di seluruh sistem (dalam
/lib
) dan opsi ditentukan oleh pengguna (dalam direktori home pengguna) atau secara universal terletak di/etc
.Jadi menginstal program melalui file deb, repositori, atau build kemungkinan akan menempatkan file di semua lokasi ini.
[EDIT] Dan seperti orang lain dicatat, ada juga
/sbin
dan/usr/sbin
. Plus/usr/local/bin
,/opt/bin
dan bahkan/usr/games/
. Jadi jelas bukan perbandingan langsungc:\program files
!sumber
/opt
? Saya telah melihat bahwa memegang banyak (biasanya sumber tertutup atau aplikasi berbasis) program sebelumnya dalam cara yang mirip denganProgram Files
./opt
direktori itu./usr/local/bin
adalah lokasi semi-umum untuk perangkat lunak yang mungkin tidak umum digunakan oleh pengguna / perusahaan.Jawaban Terlambat - Saya telah membuat peta jalan untuk diikuti oleh pemula. Jika mereka mencari file tetapi tidak tahu ke mana harus mencari, mereka dapat menggunakan peta untuk navigasi sekitar. Anda dapat mengunduh PNG hi-res di sini . Anda dapat menemukan pos terkait di sini . Saya akan terus memperbarui file dan posting ketika waktu mengizinkan, memasukkan komentar yang bermanfaat.
sumber
EDIT: Lihat juga jawaban d4nyll di bawah ini untuk peta yang sangat bagus dan ramah-pemula!
Baca jawaban saya di bawah ini untuk info lebih lanjut tentang
PATH
variabel lingkungan apa,.desktop
file apa itu, dan bagaimana menemukan program tertentu menggunakan berbagai perintah linux.Jawaban asli:
Tidak ada jawaban yang mudah.
/bin
,,/usr/bin
dan/usr/share
Seperti yang disebutkan dalam jawaban lain, Anda dapat menemukan sebagian besar file executable di bawah
/bin
atau/usr/bin
, dan file dukungan diinstal di/usr/share
./usr/local
dan/opt
Namun ada lebih banyak direktori di mana Ubuntu menginstal aplikasi. The
PATH
variabel, yang menentukan di mana untuk mencari perintah masuk, mungkin memberikan petunjuk, saya terlihat seperti (echo $PATH
di terminal):Seperti yang Anda lihat, beberapa perangkat lunak diinstal
/usr/local
dan memiliki direktori sendiri danbin
. Tempat lain di mana banyak program diinstal adalah/opt
. Properti dari lokasi ini dijelaskan oleh Filesystem Hierarchy Standard , yang merupakan bacaan yang sangat bagus. Sayangnya, perbedaan antara/opt
dan/usr/local
tidak dijelaskan dengan sangat baik, seseorang di unix stackexchange memiliki penjelasan yang lebih rumit:/usr/local
adalah tempat untuk menginstal file yang dibangun oleh administrator, biasanya dengan menggunakan perintah make. Idenya adalah untuk menghindari bentrokan dengan file yang merupakan bagian dari sistem operasi yang akan ditimpa atau menimpa yang lokal. misalnya./usr/bin/foo
adalah bagian dari OS sementara/usr/local/bin/foo
merupakan alternatif lokal,/opt
adalah direktori untuk menginstal paket tidak terikat masing-masing dalam subdirektori mereka sendiri. Mereka sudah membangun seluruh paket yang disediakan oleh distributor perangkat lunak pihak ketiga yang independen. Sebagai contohsomeapp
akan diinstal di/opt/someapp
, salah satu perintahnya akan di/opt/someapp/bin/foo
[dan kemudian biasanya link simbolik dibuat di salah satubin
direktori diPATH
, atau program dipanggil dari file desktop (lihat di bawah)].Menemukan program atau perintah tertentu
.desktop
fileUntuk mengetahui di mana program tertentu diinstal, Anda dapat melakukan sejumlah langkah. Pertama, Anda perlu mencari
.desktop
file -nya . File desktop serupa dengan cara pintas di Windows, dan untuk aplikasi sistem mereka berada di/usr/share/applications
. File desktop untuk aplikasi yang hanya tersedia untuk pengguna saat ini ada di~/.local/share/applications
. Ambil contoh Google Chrome, yang memiliki file desktop/usr/share/applications/google-chrome.desktop
dan cari baris yang dimulai denganExec=
, ini menentukan cara memulai Google Chrome. Ia mengatakan:Jadi, Anda tahu ada Google Chrome
/opt
.Sekarang untuk Mozilla Firefox yang terletak di
/usr/share/applications/firefox.desktop
. Itu hanya mengatakanPada awalnya ini tampaknya tidak banyak membantu, tetapi kemudian Anda menyadari bahwa itu
firefox
harus ada dalam direktori yang ada dalamPATH
variabel (kemungkinan besar abin
), dan kita dapat mencarinya (lihat di bawah).Mencari perintah
Untuk mencari perintah Anda dapat menggunakan satu atau lebih hal berikut:
type
,which
danwhereis
(saya telah menyertakan link ke halaman manual online mereka).ketik : itu menggambarkan perintah, dan menunjukkan bagaimana itu akan ditafsirkan jika digunakan sebagai nama perintah. Jenis yang mungkin untuk suatu perintah adalah:
(ketik itu sendiri adalah shell builtin, coba dengan
type type
: P)Eksekusi
type firefox
memberi kitayang ingin kami ketahui
Jika suatu perintah adalah file (yang Anda periksa
type
), Anda dapat juga menggunakan:yang : menunjukkan path lengkap dari perintah,
Eksekusi
which firefox
memberi kitawhereis : temukan file biner, sumber, dan halaman manual untuk sebuah perintah.
Eksekusi
whereis firefox
memberi kitaBonus
Anda dapat memeriksa
/usr/bin/firefox
lebih dekat denganls -l /usr/bin/firefox
dan ini memberi:Tampaknya
/usr/bin/firefox
'hanya' tautan simbolis ke skrip/usr/lib/firefox/firefox.sh
. Jika Anda memeriksa skrip Anda menemukan bahwa skrip panggilan/usr/lib/firefox/firefox
.Anda dapat beristirahat dengan tenang sekarang :)
sumber
Tidak ada direktori tunggal yang sama persis dengan folder Program Files . Cara Linux mengatur banyak hal berbeda dari Windows.
Di windows, setiap program yang kami instal mendapat direktori sendiri di dalam direktori Program Files. Dalam direktori itu, sub-direktori lebih lanjut dibuat untuk berbagai jenis file. Tidak ada struktur tetap untuk sub-direktori. Program memutuskan sendiri apa yang ingin mereka panggil setiap direktori dan di mana mereka ingin meletakkan apa.
Tetapi di Linux ketika suatu program diinstal, berbagai jenis file disalin ke lokasi yang berbeda. File executable disalin ke / usr / bin , file perpustakaan ke / usr / lib , dokumentasi untuk satu atau lebih dari / usr / man , / usr / info dan / usr / doc . Jika ada file konfigurasi, mereka biasanya di direktori home user atau di / etc .
sumber
The
C:\Program Files
folder akan/usr/bin
di Ubuntu./bin
lebih miripC:\windows
.Dari halaman manual hirarki sistem file :
Ubuntu memiliki struktur yang berbeda dari windows. Ubuntu menempatkan hampir semua aplikasi dalam satu direktori, katakanlah
/usr/bin
. Windows akan membuat folder baru, katakanMozilla Firefox
, dan tambahkan konfigurasi, executable, DLL, gambar, dll di dalamnya. Ubuntu membaginya, executable masuk/usr/bin
, konfigurasi seluruh sistem dalam/etc
, objek bersama/usr/lib
, gambar dalam/usr/share
, ...sumber
'Program Files' Linux ada di seluruh hierarki. Bisa jadi pada
/usr/bin
,/bin
,/opt/...
, atau dalam direktori lain.Saya pikir Anda akan menemukan beberapa file yang terkait dengan aplikasi Anda. Lalu, saya punya ide tentang cara melihat file yang diinstal pada instalasi program.
synaptic
dengan mengeluarkansudo apt-get install synaptic
pada terminal.Properties
.Installed File
tab. Hasilnya sama dengandpkg -L package_name
.Itu karena linux memindahkan file yang diinstal ke direktori secara terpisah berdasarkan tipenya.
/usr/bin
atau/bin
./usr/share/icons
atau aktif~/.local/share/icons
untuk lokal./opt
./usr/share/applications
atau aktif~/.local/share/applications
/usr/share/doc
/usr/lib
Dan banyak direktori lainnya. (CMIIW, menerima koreksi)
sumber
Dalam jawaban ini ketika saya mengatakan Unix saya maksud Unix dan juga sistem operasi seperti Unix.
Ubuntu tidak benar-benar memiliki folder program yang berisi semua data untuk setiap program. Dalam sistem operasi Unix dan Unix-like, SEMUA adalah file, bahkan perintah terminal. Mereka juga file. Cara Unix menangani program bisa sangat kacau, dan terorganisir pada saat yang sama.
Ikon untuk program disimpan di / usr / share / icons / *, program executable biasanya disimpan di / usr / bin, / bin, dan tempat-tempat lain dengan direktori bin (bin adalah obv kependekan dari binary). Perpustakaan yang bergantung pada program ada di / lib.
Jadi Anda berakhir dengan bukan direktori yang berisi semua data untuk satu program, tetapi data untuk program menyebar. Meskipun pada awalnya ini tampak sangat tidak teratur, ini memungkinkan untuk berbagi hal-hal standar seperti perpustakaan dan ikon.
Berkat izin untuk setiap file, ide segalanya menjadi file sangat brilian untuk jujur. Itu membuat Unix JAUH lebih aman daripada sistem operasi lain.
sumber
Cara menginstal program Linux dan Windows sangat berbeda.
Pola umum pada Windows adalah untuk suatu program; atau banyak program, dari satu vendor masuk ke sub direktori sendiri di C: \ programs \ vendor atau yang serupa.
Di Linux, file Anda dibagi antara sub direktori tertentu tergantung fungsinya. Ada direktori untuk perpustakaan, ikon, halaman manual, Log file, konfigurasi, dan sebagainya. Anda dapat menggunakan beberapa dari mereka, tetapi sistem akan mengatur semuanya. Mereka tidak digabungkan bersama, tetapi ada bersama dengan file yang serupa dari program lain.
Jadi tidak ada yang setara dengan struktur direktori Windows dalam implementasi Linux reguler.
sumber
Jika Anda menginstal program sendiri, saya sarankan 1 folder:
sumber
Lihat di
/bin
,/usr/bin
, dan hal lain yang mengatakanbin
.sumber