अनाम तारकोल


11

तारकोल में मेरे उपयोगकर्ता नाम को एनकोड करता है। क्या मैं इसे पूरी तरह से गुमनाम टारबॉल बनाने के लिए मजबूर कर सकता हूं?

--owner rootमेरे उपयोगकर्ता नाम के केवल कुछ उदाहरण बदलता है। जोड़ना USER=root: USER=root tar c --owner root dataकोई प्रभाव नहीं है।

संक्षेप में, मेरी इच्छा है:

echo hello world > data; tar c --owner root data | grep "$USER"

करने के लिए नहीं मेल खाते हैं।

जवाबों:


14

जो मुझे याद आ रहा था वह --group=rootइसके अलावा था --owner=root।

tar -c --{owner,group}=root

(संभवतः एक वैकल्पिक के साथ --numeric-owner) पूरी तरह से संग्रह को गुमनाम कर देता है।


6
बैश ब्रेस का विस्तार {a,b}काफी भ्रामक हो सकता है। --{owner,group}=root का विस्तार किया जाएगा--owner=root --group=root
— सान्या_जोल

9

आप उपयोग कर सकते हैं --numeric-owner, जो आपके यूआईडी (1000 या कुछ इसी तरह के सिस्टम पर समान) को फाइल में डाल देगा। से man tar:

 --numeric-owner
       always use numbers for user/group names

धन्यवाद। यह काम करता है, हालांकि केवल आंशिक रूप से। Cpio की तरह दिखता है (जो हमेशा संख्यात्मक रूप से uids को सांकेतिक शब्दों में बदलना लगता है) --ownerस्विच के माध्यम से अपने अभिलेखागार को पूरी तरह से गुमनाम कर सकता है ।
— PSkocik

1
IIRC --owner केवल निष्कर्षण / पास-थ्रू पर काम करता है। अगर मैं गलत हूँ तो आप -Hसीधे tar files लिखने के लिए cpio के विकल्प का उपयोग कर सकते हैं ।
— एंथन

यह काम करने के लिए -oभी प्रतीत होता है। मैंने एक सरल संग्रह बनाने की कोशिश की --owner root:rootऔर उसके बिना और फिर अपने संबंधित हेक्सडंप को अलग किया। क्या बदल गए दो दो-बाइट अनुक्रम थे जो कि $UIDक्रमशः छोटे-एंडियन-डिकोड किए गए थे 0 और मेरे ।
— PSkocik

1
@PSkocik यह दिलचस्प है, मैं बस की जाँच की man cpioऔर cpio --helpऔर वे दोनों इस बात की पुष्टि है कि मैं क्या करने से पहले टिप्पणी की। संभवतः स्रोत को अपडेट किया गया था, लेकिन प्रलेखन नहीं था (GNU cpio 2.11)
— एंथॉन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.