Baru-baru ini saya mengetahui bahwa ada setumpuk dokumentasi di /usr/share/doc
.
Sepertinya banyak yang di-gzip sehingga tidak dapat diakses secara langsung tanpa hak administratif:
$ gunzip examples/letter.tex.gz
gzip: examples/letter.tex: Permission denied
Sementara satu solusi untuk ini adalah untuk setiap pengguna untuk menduplikasi setiap item di direktori home mereka hanya untuk membacanya, pengaturan ini tampaknya tidak kondusif untuk browsing biasa.
Bagaimana orang normal membaca dokumentasi ini?
Saya tidak cenderung percaya bahwa pengguna biasa diharapkan menginstal dan memelihara server web hanya untuk membaca dokumentasi teks lokal.
documentation
usability
ændrük
sumber
sumber
/usr/share/doc
umum dan dengan perhatian khusus pada pengamatan bahwa sebagian besar disimpan dalam format terkompresi. Jika kebetulan ada dokumentasi yang disimpan sebagai un-typeset LaTeX, saya belum menemukannya. Contoh khusus yang saya rujuk di atas adalah template LaTeX dari pakettexlive-latex-extra-doc
.Jawaban:
Sebagian besar telah dikatakan dan dijelaskan dengan sangat baik oleh jgbelacqua untuk digunakan di terminal. Hanya menambahkan ini untuk orang-orang yang ada di desktop manager:
Dari desktop grafis (di sini GNOME) cara termudah untuk membaca dokumen
/usr/share/doc
adalah dengan (klik dua kali) membuka file zip dengan manajer arsip standar Anda (di sini File Roller) dari mana Anda dapat (double-) klik buka dan membacanya di editor standar Anda (di sini Gedit). Tidak diperlukan izin menulis selama Anda tidak mengekstrak file.sumber
Setidaknya ada dua masalah di sini:
Untuk # 1 , ada sejumlah aplikasi yang akan mengatasi file yang di-gz dengan mulus. Pasangan yang bisa Anda gunakan adalah
less
danvim
.view
adalah alias untukvim -R
, yang hanya mengatakan untuk membuka file read-only.Di masa lalu, sebelum lebih sedikit diinstal pada sistem saya, saya akan menggunakan
gzcat
dan menyalurkan output ke utilitas lain. Rupanya, itu hanya dipanggilzcat
sekarang di Ubuntu, tetapi Anda akan menggunakannya seperti ini, misalnya:zcat masih tersedia, dan menggunakannya untuk menyalurkan konten terkompresi di suatu tempat dapat berguna dalam beberapa kasus. (Untuk situasi dengan file .bz2,
bzcat
tersedia.)Untuk # 2 , semua file yang saya lihat di bawah / usr / share / doc ada di direktori dengan izin + rx lainnya, yang berarti bahwa semua pengguna dapat mencari direktori (misalnya, daftar isi) dan membaca file di dalamnya. Apa yang tidak dapat Anda lakukan (karena hanya root yang memiliki izin menulis secara default), adalah membuat file. Karena Anda mencoba membuka zip ke direktori itu, saya kira itu memberi Anda izin ditolak karena Anda telah membaca tetapi tidak menulis izin secara default.
Untuk # 3, saya kira Anda menggunakan file .tex lebih dari saya. Tapi di sini ada satu cara untuk menghadapinya tanpa menyalin ke rumah atau file temp. Untuk ini, Anda akan membuat pipa bernama, tetapi Anda dapat menggunakannya kembali untuk kebutuhan pemipaan dan pemrosesan tex lainnya. Seharusnya seperti ini:
pipey
)Anda jelas dapat mengubah langkah-langkah ini jika Anda menggunakan utilitas yang berbeda atau lebih baik daripada yang ada di sini.
Contoh saya akan menggunakan
mkfifo
utilitas untuk membuat pipa bernamapipey
,. File target untuk diproses adalah/usr/share/doc/gdb/refcard.tex.gz
. Anda akan membutuhkan dua baris perintah shell yang tersedia (via terminal, Alt + F2, atau bagaimanapun).Anda akan mengetikkan terminal satu:
mkfifo pipey
Anda sekarang memiliki pipa bernama persisten. Anda bisa menggunakannya
ls -l
untuk mengintipnya.zcat /usr/share/doc/gdb/refcard.tex.gz | tex > pipey
Perhatikan bahwa perintah ini tidak akan kembali sampai Anda melakukan sesuatu dengan output yang pergi ke pipa bernama.
Sekarang, di terminal dua, Anda akan mengetik:
tex pipey | xdvi
Dan itu berhasil (baik, di sini pula). Prosesnya dapat disempurnakan untuk menghasilkan keluaran yang lebih cantik, tetapi jika Anda mencari yang cepat dan relatif tidak berantakan, itu salah satu cara untuk melakukannya.
sumber
<Directory "/usr/share/doc/">
deklarasi direktori Apache (biasanya dalam/etc/apache2/sites-enabled/000-default
) dan saya percaya dekompresi ditangani oleh browser sendiri. (AddEncoding x-gzip gz tgz
danAddType text/plain .gz
).less
. Ini memiliki keuntungan tambahan karena diinstal secara default pada setiap sistem * nix modern. Untuk pengguna yang mengetahui file ada di sana dan ingin merujuk mereka lebih dari beberapa kali dalam setahun, menginstal sesuatu seperti dwww terdengar seperti solusi hebat. Saya sendiri, dalam keadaan darurat, saya mungkin tidak ingat dwww, tapi saya akan mengingat perintah dasar seperti 'kurang'. Atau, seperti yang dikatakan Takkat, Nautilus / fileroller / dll.Mungkin itu sudah terlambat untuk dijawab, tetapi saya telah menemukan solusi terbaik (baik kemudahan penggunaan maupun kelengkapan)
Aktifkan modul CGI, yang tidak lagi diaktifkan secara default di Ubuntu / Apache baru-baru ini:
Buka browser Anda dan arahkan ke: http: // localhost / dwww /
Selesai!
Semua
info
halaman Anda ,man
halaman,/usr/share/doc
file dan deskripsi paket di satu tempat! Situs web dokumentasi pribadi Anda!sumber
gunzip file.gz
upaya untuk uncompressfile.gz
untukfile
, menghapusfile.gz
. Itulah sebabnya Anda mendapatkan kesalahan "Izin ditolak", Anda tidak diizinkan menulis/usr/share/doc
. Untuk mendapatkan konten file, gunakangunzip -c file.gz
atauzcat file.gz
.Membaca file teks yang dikompresi gzip dapat dilakukan dengan
zless
. Seperti namanya, itu hanyaless
, tetapi untuk file yang dikompresi gzip.Contoh penggunaan:
The
.gz
akhiran dapat dihilangkan juga:sumber
zless
, karenaless
akan menanganinya secara otomatis.LESSOPEN
danLESSCLOSE
lingkungan.Pertama instal apache2
apache2-doc
adalah kasus khusus di sini. Ini memungkinkan Anda untuk menelusuri dokumentasi/usr/share/doc/
Anda melalui browser web Anda. mondar-mandirhttp://localhost/doc/
.Namun ini tidak berhasil. Anda perlu mengubah konfigurasi Apache agar dapat melakukan dekompresi dan memperlihatkan file * .gz sebagai teks biasa.
Saya memposting di Stack Overflow untuk mendapatkan cara menggunakan Apache untuk menunjukkan konten * .gz dokumen dalam
/usr/share/doc/
direktori. Inilah yang diposting sebagai solusi yang mungkin.Berikut ini instruksi singkatnya. Ini memberitahu Apache bagaimana menangani file .gz untuk memprosesnya sebagai teks biasa dan mengirimkannya ke browser sebagai teks biasa.
Pergi ke bagian bawah file dan temukan bagian dengan
Alias /doc/ "/usr/share/doc/"
dan mengubahnya agar terlihat seperti ini.Kemudian restart Apache:
sumber
AddEncoding x-gzip gz tgz AddType text/plain .gz
saya<Directory "/usr/share/doc/">
dan saya percaya dekompresi sebenarnya ditangani di sisi klien.yelp
mungkin?) Memiliki setiap keluar-kotak cara untuk membaca dokumentasi.sudo service apache2 restart
demi standartisasi. Last but not least, reades menyadari membuntuti "/": itu harus menjadi localhost / doc / , localhost / doc tidak akan bekerja.Anda seharusnya tidak membaca file .tex! Ini dalam format yang dapat dibaca manusia, tetapi dirancang untuk diproses sebelum permintaan ulang. Anda dapat menggunakan alat tex2pdf untuk mengubahnya menjadi .pdf.
sumber
pdflatex
. 3) Ini bersinggungan dengan masalah perlunya merapikan file sebelum membacanya.