স্ন্যাপগুলিকে কীভাবে / সামডিরকে অ্যাক্সেস দেওয়া যায়


20

আমি স্ন্যাপ দিয়ে আমার পা ভেজাচ্ছি। আমি ভিএলসি ইনস্টল করেছি এবং এটি ব্যবহারের চেষ্টা করতে চাই। আমার সমস্ত মিডিয়া /storeএকটি এনএফএস মাউন্টের অধীনে ইনস্টল করা আছে । এবং স্ন্যাপগুলি সেই ডিরেক্টরিটিতে অ্যাক্সেসের অনুমতি দেয় না।

Googling পর আমি বুঝতে যে আমি অধীনে ফাইলগুলি অ্যাক্সেস করতে পারবেন এসেছ /home/peterজন্য :homeইন্টারফেস এবং /mediaজন্য :removable-mediaইন্টারফেসগুলি।

তবে আমি আসলে পছন্দ করি /storeএবং এটিকে /media/storeবা /home/peter/storeঅন্য কিছু হতে চাই না /store

আমার স্ন্যাপগুলিতে (বা সম্ভবত কেবল ভিএলসি) অ্যাক্সেসের অনুমতি দেওয়ার জন্য স্ন্যাপ পাওয়ার কী উপায় আছে /store, তাই স্ন্যাপটি আমার নামকরণের সম্মেলনে মেনে চলে নাকি আমি স্ন্যাপের পছন্দগুলিতে রূপান্তর করতে বাধ্য হই?

এটি খুব জটিল বলে মনে হচ্ছে এবং আমি আশা করছি যে আমি এখানে কিছু মিস করেছি।


1
আপনি স্ন্যাপটি অপসারণ করার চেষ্টা করতে পারেন ( sudo snap remove vlc) তারপরে ক্লাসিক বিকল্পটি দিয়ে পুনরায় ইনস্টল করুন। সাহায্য পারে, নাও হতে পারে .. ( sudo snap install vlc --classic)
ডগ

1
ধন্যবাদ। আমি চেষ্টা করেছিলাম --classicএবং --devmode- উভয়ই কাজ করেনি। তবে আমি স্পষ্টভাবে অ্যাক্সেস দিতে চাই /storeতবে সমস্ত কিছুর নয়/supersecret
পিটার ভি।

2
স্ন্যাপের জন্য কি কোনও টিকিট / বাগ / বৈশিষ্ট্য-অনুরোধ খোলা আছে? আমিও সেই বৈশিষ্ট্যটি চাই!
ক্রাভেমির

1
আমি স্ন্যাপগুলির জন্য সত্যিকারের ঘৃণা পাচ্ছি।
স্টিফেন বোস্টন

উত্তর:


9

আমার বিস্ময়ের জন্য, এটি দেখতে সত্যিই /homeহার্ডকডযুক্ত। মাউন্ট-সাপোর্ট.সি রয়েছে:

    const struct sc_mount mounts[] = {
        {"/dev"},   // because it contains devices on host OS
        {"/etc"},   // because that's where /etc/resolv.conf lives, perhaps a bad idea
        {"/home"},  // to support /home/*/snap and home interface
    ...

কি দারুন. আমাকে অবাক করে দেয়। তবে ওখানে তোমার আছে।

সম্পাদনা করুন: লঞ্চপ্যাড ইস্যুটি 1643706 দেখুন


1
আরে, এখানে কোডটির জন্য দায়ী স্ন্যাপড বিকাশকারী। আপনার বিস্ময়ের জন্য এটি আসলে সঠিক জিনিস। আমরা হোস্ট ফাইল সিস্টেম এবং এটিতে থাকতে পারে এমন কোনও এলোমেলো ডিরেক্টরিকে প্রতিলিপি করতে পারি না। আপনি যখন / ব্যবহার করতে পারেন অন্য কেউ / স্ট্যাশ বা / যা কিছু ব্যবহার করতে পারেন এবং সেই কাজটি সাধারণভাবে করার কোনও উপায় নেই। আমার প্রস্তাবটি হ'ল / হোম / ... অথবা / মিডিয়াতে আপনার পছন্দসই স্থানে আপনার মিডিয়াটি মাউন্ট করা। তারপরে এটি বিদ্যমান সিস্টেমগুলির অধীনে আসবে যা সেই ডেটা পরিচালনা করে এবং জিনিসগুলি সঠিকভাবে কাজ করা উচিত।
জাইগমুন্ট ক্রিনিকিকি 25'18

@ জাইগমুন্ট ক্রাইনিকি বা এমএনটি-র অধীনে, যদি স্ন্যাপটির জন্য অপসারণযোগ্য-মিডিয়া ইন্টারফেস সংযুক্ত করা থাকে।
জার্নো

5
@ ZygmuntKrynicki- কে অবরুদ্ধ আমিও অবাক হয়েছি। ডিফল্ট মাউন্ট পয়েন্টগুলি একটি কনফিগার ফাইলের মাধ্যমে কনফিগার করা উচিত এবং প্রয়োগ করা হয় না।
মার্খোর

3
@ জাইগমুন্ট ক্রাইনিকি পপিং এবং ব্যাখ্যা করার জন্য আপনাকে ধন্যবাদ যে কোডটি আপনার ইচ্ছায় যা করে তা করে। আপনার লেখার সাথে আমি সম্মানের সাথে এবং সম্পূর্ণরূপে একমত নই। হার্ড-কোডিং পাথগুলি অত্যন্ত দুর্বল অনুশীলন এবং সুরক্ষার নামে এমনকি অর্থপূর্ণভাবে ন্যায়সঙ্গত হতে পারে না। এটি কেবলমাত্র মৌলিক জটিলতা।
স্টাফেন গ্যারিচন

1

সুতরাং উপরের আমার মিনি-উত্তরটি প্রসারিত করার জন্য, এটি সাধারণ, নিরাপদ এবং সুরক্ষিত কোনও উপায় নেই। আমি জানি সবাই নিজের ফাইল সিস্টেমটি কাস্টমাইজ করতে পছন্দ করেন তবে এর কিছুটা ব্যয় হয় এবং এটি তাদের মধ্যে একটি।

অবশেষে, এক্সডিজি পোর্টালগুলির মাধ্যমে কিছু অ্যাপ্লিকেশন (বিশেষত গ্রাফিকাল অ্যাপ্লিকেশনগুলি) স্বেচ্ছাসেবী জায়গায় ফাইলগুলিতে অ্যাক্সেস পেতে পারে if যদি অ্যাপ্লিকেশনগুলি সম্প্রতি চালু করা কিছু জিটিকে এপিআই ব্যবহার করে। এটি, বন্দিদণ্ডের আওতায় চলাকালীন, কোনও বিশ্বস্ত সহায়িকার কাছে পৌঁছাবে, ফাইল পিকারের মতো দেখতে পাওয়া বিশ্বস্ত ইউআইকে পপ আপ করবে, / রান / তে বিশেষ জিনিস হিসাবে ফাইলটি (যে কোনও স্থানেই হোক) এক্সপোজার করার জন্য একটি বিশেষ FUSE ফাইল সিস্টেমের সাথে কথা বলবে। .. কোথাও যাতে অ্যাপ্লিকেশনটি দেখে এবং জিনিসগুলি ভাল কাজ করে।

এটি মিডিয়া প্লেয়ার বা শব্দ সম্পাদকদের মতো ফাইল-চয়নকারী বন্ধুত্বপূর্ণ জিনিসের জন্য ডিজাইন করা হয়েছে। হোস্ট করা আপনার লিনাক্স ট্রি /codezএত ভাল কাজ করবে না।


2
হাই জাইগমুন্ট, উত্তর দেওয়ার জন্য ধন্যবাদ। আমার বিস্ময় দাঁড়িয়ে আছে। আপনি বলেছেন: "আমি জানি সবাই নিজের ফাইল সিস্টেমটি কাস্টমাইজ করতে পছন্দ করেন তবে এর কিছুটা ব্যয় হয় এবং এটি তাদের মধ্যে একটি।" ঠিক তাই আমি বুঝতে পেরেছি: আপনি বুঝতে পেরেছেন তবে উপেক্ষা করতে চান যে এটি করা একটি সাধারণ জিনিস? আমি গত 15 বছর ধরে এই নামকরণ সম্মেলনের জন্য অন্য কোনও ব্যয় সম্পর্কে অবগত নই।
পিটার ভি।

3
কোন কারণে এক মত একটি লাইন না করা হতে পারে কি extradirs=/store:/other/locationবা কিছু /etc/snapd.confবা /etc/snapd/conf.d/vlc.conf। ঠিক অনেক টাকার মতো অন্যান্য লিনাক্স অ্যাপ্লিকেশন out উদাহরণস্বরূপ ডকারের জন্য এটি দুর্দান্ত কাজ করছে বলে মনে হচ্ছে। এটি অ্যাপাচি হার্ড কোড ছিল DocumentRoot /var/www
পিটার ভি।

1
আমি যাইহোক, জাইগমুন্ট এখানে লেখার জন্য আপনার সময় দেওয়ার সত্যই প্রশংসা করি। ধন্যবাদ.
পিটার ভি।

এটা এত সহজ নয়। মূল সমস্যাটি অ্যাপমর্ম নয় বরং এটি সত্য যে রানটাইমের সময় অ্যাপ্লিকেশনটি একটি ভিন্ন রুট ফাইল সিস্টেমে চলছে। প্রক্রিয়া দৃষ্টিকোণ থেকে / স্টোরের অস্তিত্ব নেই - এটি যে এটি মাউন্ট করা হয়নি তা নয়, এটি কেবল কোনও ডিরেক্টরি নয়। স্ন্যাপ-সীমানা যা করছে তা হ'ল সিস্টেম থেকে অ্যাপ্লিকেশন মাউন্ট নেমস্পেসে কিছু পথ আনছে । যেহেতু স্ন্যাপগুলিতে মূল ফাইল সিস্টেমটি কেবল পঠিত হয় আমরা সহজেই নতুন মাউন্ট পয়েন্টগুলি ইনজেক্ট করতে পারি না (যেমন / স্টোরের জন্য)।
জাইগমুন্ট ক্রিনিকিকি

@ পিটারভি.মার্চ আপনি এই ফাইলগুলি / mnt এর আওতায় মাউন্ট বা সরাতে পারবেন, স্ন্যাপটির জন্য অপসারণযোগ্য-মিডিয়া ইন্টারফেস সংযুক্ত হয়েছে কিনা তা নিশ্চিত করুন এবং আপনি চাইলে মূল অবস্থানগুলিতে সিমলিংক তৈরি করতে পারেন।
জার্নো

1

লক্ষ্য ডিরেক্টরিটি মাউন্ট করার ক্ষেত্রে/home/*/snap/ একটি বিকল্প হিসাবে উল্লেখ করা হয়; একটি সরল বিন্দু মাউন্ট আমার পক্ষে কাজ করে নি, হার্ডলিঙ্ক বা প্রস্তাবিত স্ন্যাপ ডিরেক্টরি বা তার কোনও উপ-ডিরেক্টরিতে টার্গেট ফাইল বা ডিরেক্টরিগুলির একটি সিমলিংকও ব্যবহার করে নি। /home/*/ডিরেক্টরিটির বাইরে বিদ্যমান টার্গেট ফাইলগুলির কারণে এই সীমাবদ্ধতাটি হতে পারে , আমি /home/*/প্রিফিক্স গ্লোবের মধ্যে থাকা ফাইলগুলিতে মাউন্ট / হার্ড / সিমলিঙ্ক পরীক্ষা করিনি ।

তবে, ওয়ার্কআরাউন্ড: সম্পূর্ণ ফাইলের একটি অনুলিপি /home/<myuser>/snap/<appname>/<somenewdirectory>আমার পক্ষে কাজ করে। পুরো ডেটাসেটের অনুলিপিগুলি বজায় রাখা এখনও আমার পক্ষে অসম্ভব, তবে এই জাতীয় সীমাবদ্ধতা মোকাবেলায় সহায়তা করার জন্য প্রচুর সরঞ্জাম রয়েছে; স্ন্যাপটি ব্যবহার করার আগে ম্যানুয়াল পুনরাবৃত্তির অনুলিপি করা, এবং পরে সংশোধিত ফাইলগুলি অনুলিপি করা যদি আপনার ডাটাবেসটি ছোট বা এমনকি পারমাণবিক হয় তবে একটি বিকল্প

আপনাকে সহায়তা করতে পারে এমন কয়েকটি ফাইল অনুলিপি ব্যবহারকারীর নামকরণ করতে:

  • cp --verbose --archive --recursive /somedir ~/snap/somedir, এবং উত্স / লক্ষ্য তদ্বিপরীত
  • tar -C / -c somedir | tar -C ~/snap/ -xv একটি টার-ভিত্তিক ফাইল কপির উদাহরণ
  • rsync --archive /somedir ~/snap/somedir, আরএসসিএনসি জনপ্রিয় এবং এতে অনেকগুলি মোড়ক / এক্সটেনশন রয়েছে

  • যে কোনও ফাইল ভিত্তিক ব্যাকআপ ইউটিলিটি (গ্রাফিকাল উদাহরণ grsync:) ব্যবহারযোগ্য হবে কারণ পুরো লক্ষ্যটি প্রয়োজন হিসাবে ডেটাসেটটি এগিয়ে এবং পিছনে নকল করা

  • গিট ক্লোনস, সম্ভবত, তবে ডিফল্টরূপে স্থানীয় ক্লোনগুলি হার্ডলিঙ্কগুলি ব্যবহার করে তাই যদি আপনি ফাইল সিস্টেমটি আইও একটি স্ন্যাপে পরিচালনা করতে গিট ব্যবহার করেন তবে ক্লোন সময়ে হার্ড লিঙ্কগুলি অক্ষম না করেই এই গিট ক্লোনটি অপ্রয়োজনীয় হতে পারে এমন সম্ভাবনা সম্পর্কে সতর্ক হন।


1
এটি কোনও এনএফএস-মাউন্টযুক্ত মাল্টি-টেরাবাইট এনএএস ড্রাইভের সাধারণ ব্যবহারের ক্ষেত্রে কাজ করবে না।
পিটার ভি।

1

আমার যথেষ্ট খ্যাতি নেই বলে আমি কোনও মন্তব্য পোস্ট করতে পারি না, তবে আমি উত্তর পোস্ট করতে পারি ..?

যাইহোক, এটি আসল সমস্যা নয়, তবে আমার মতো অন্য কেউ যদি স্ন্যাপগুলিতে / মিডিয়াতে কীভাবে অ্যাক্সেস দেবেন তা সন্ধান করতে পেলেন (উদাহরণস্বরূপ ডার্কটেবল ব্যবহার করা, যা এটি ব্যতীত মূলত অকেজো) আপনি এটি করতে পারেন হয় স্ন্যাপ-স্টোর ইন্টারফেসের মাধ্যমে, অথবা কমান্ড লাইনে আপনার স্ন্যাপ অ্যাপে অপসারণযোগ্য-মিডিয়া 'প্লাগ' যুক্ত করে। কিছু ডক্স এখানে: https://snapraft.io/docs/interface-management


1
হ্যালো এবং উসুন্টুকে জিজ্ঞাসা করুন! কেবলমাত্র লিঙ্কের উত্তরগুলি নিরুৎসাহিত করা হয়েছে কারণ ভবিষ্যতে লিঙ্কটির মেয়াদ শেষ হলে তারা অচল হয়ে যেতে পারে। আমি কি আপনাকে আপনার পোস্টে কিছু বিশদ যুক্ত করার পরামর্শ দিতে পারি (উদাহরণস্বরূপ ব্যবহারের পদক্ষেপ / প্রশংসা সংক্ষেপ করে)?
ফ্লোট
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.