برنامه نویسی

مهاجرت plex از ویندوز به لینوکس (قطعات گمشده)

تعمیرات اساسی سرور خانگی

  • من در حال مهاجرت از تنظیم سرور Hybrid Windows / HyperV Ubuntu ، به یک خوشه Kubernetes مبتنی بر Debian هستم.
  • تنها برنامه باقی مانده در ویندوز PLEX بود ، به دلیل مهاجرت دشوار همه ابرداده به لینوکس.
  • تمام راهنماهایی که من به صورت آنلاین پیدا کردم اطلاعات جزئی دارند ، اما همه چیز لازم را برای تهیه یک سرور کاملاً مهاجر PLEX در دستگاه لینوکس خود نداشتم!

توجه داشته باشید که من از نصب ویندوز ساده به نصب Linux Containerized مهاجرت می کردم ، اما برای این راهنما ، این اطلاعات مهم نیست.

راهنمای رسمی

  • این بیشتر از همه چیز شما نیاز دارد: https://support.plex.tv/articles/201370363-move-anstall-to-another-system/
  • با این حال ، توجه داشته باشید که این یک راهنمای صریح برای مهاجرت به یک دستگاه جدید است با استفاده از همان سیستم عاملبشر
  • دو مرحله اضافی در زیر وجود دارد که باید در بخش “کپی سرور سرور از سیستم منبع” انجام شود:
    • به روزرسانی مسیرها از ویندوز به لینوکس در پایگاه داده Plex SQLite.
    • کپی کردن تنظیمات برگزیده از Windows Registry به File XML Linux.
  • پس از دنبال کردن مراحل اضافی ذکر شده در اینجا ، باید ماکت دقیقی از نصب PLEX که از آن مهاجرت کرده اید داشته باشید!

مسیرهای پرونده SQLite را به روز کنید

  1. برای اولین بار از پایگاه داده SQLite خود برای Plex ، واقع در اینجا تهیه کنید:
C:\Users\YOURUSER\AppData\Local\Plex Media Server\Plug-in Support\Databases\com.plexapp.plugins.library.db"
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

  1. پوسته sqlite plex را وارد کنید
"C:\Program Files\Plex\Plex Media Server\Plex SQLite.exe" "C:\Users\YOURUSER\AppData\Local\Plex Media Server\Plug-in Support\Databases\com.plexapp.plugins.library.db"
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

توجه داشته باشید که Plex از اجرای سفارشی SQLite استفاده می کند … مرورگرهای استاندارد ممکن است پرونده شما را فاسد کنند ، یا فقط کار نمی کنند.

  1. Backslash Windows را با Linux Forward Slash جایگزین کنید
UPDATE media_parts SET file=REPLACE(file, '\', '/');
UPDATE section_locations SET root_path=REPLACE(root_path, '\', '/');
UPDATE media_streams SET url=REPLACE(url, '\', '/') WHERE url LIKE 'file://%';
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

  1. مسیرهای ریشه کتابخانه را جایگزین کنید
// First get all of your library root locations
SELECT root_path FROM section_locations;

// For each location, replace with the correct path
UPDATE section_locations SET root_path=REPLACE(root_path, 'D:/Path/To/Library1', '/data/library1');
UPDATE section_locations SET root_path=REPLACE(root_path, 'D:/Path/To/Library2', '/data/library2');
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

  1. مسیرهای قسمت رسانه ای را جایگزین کنید
// Inspect the format of the file paths
SELECT file FROM media_parts LIMIT 20;

// For each library above, ensure you correctly set the path here
UPDATE media_parts SET file=REPLACE(file, 'D:/Path/To/Library1', '/data/library1');
UPDATE media_parts SET file=REPLACE(file, 'D:/Path/To/Library2', '/data/library2');
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

  1. مسیرهای جریان رسانه را جایگزین کنید
// Note here we possibly have double and triple slash prefixes that must be replaced
UPDATE media_streams SET url=REPLACE(url, 'file://D:/Path/To/Library1', 'file:///data/library1');
UPDATE media_streams SET url=REPLACE(url, 'file:///D:/Path/To/Library1', 'file:///data/library1');
UPDATE media_streams SET url=REPLACE(url, 'file://D:/Path/To/Library2', 'file:///data/library2');
UPDATE media_streams SET url=REPLACE(url, 'file:///D:/Path/To/Library2', 'file:///data/library2');
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

  1. مسیرهای ابرداده_یتم را جایگزین کنید
UPDATE metadata_items SET guid=REPLACE(guid, 'file:///D:/Path/To/Library1', 'file:///data/library1');
UPDATE metadata_items SET guid=REPLACE(guid, 'file:///D:/Path/To/Library2', 'file:///data/library2');
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

  1. چک های نهایی
// Check for any corruption
PRAGMA integrity_check;
// If errors, try a reindex
REINDEX;

// Vacuum db
VACUUM;

// Exit
.quit
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

ترجیحات مهاجرت

رجیستری ویندوز

  • ویندوز آن را ترجیحات plex در رجیستری نگه می دارد.
  • برای دسترسی به مقادیر ، ابزار را باز کنید مجدداً
  • حرکت به مسیر: Computer\HKEY_CURRENT_USER\SOFTWARE\Plex, Inc.\Plex Media Server
  • مقادیر مهاجرت را بازرسی کنید. برخی از موارد مهم عبارتند از:
    • PlexOnlineXXX مقادیر (برای حساب plexpass)
    • XXXMachineIdentifer ارزش ها
    • customConnections در صورت استفاده ، برای پیکربندی پروکسی معکوس بگویید
    • allowedNetworks در صورت استفاده
  • جزئیات اضافی را می توان در اینجا یافت: https://support.plex.tv/articles/201105343-Advanced-tidden-server-settings/

ترجیحات لینوکس

  • لینوکس تمام این مقادیر را در یک قرار می دهد Preferences.xml پرونده
  • ابتدا نمونه جدید PLEX خود را راه اندازی کرده و خاموش کنید.
  • در Preferences.xml پرونده در فهرست ریشه “Plex Media Server” ایجاد می شود.
  • ترجیحات را با مقادیر از رجیستری ویندوز اصلاح کنید:


  allowedNetworks="127.0.0.1,192.168.90.11"
  autoEmptyTrash="0"
  secureConnections="1"
  sendCrashReports="1"
  customConnections="https:/your.custom.domain:443"
  AcceptedEULA="1" 
  AnonymousMachineIdentifier="xxx-xxx"
  CertificateUUID="xxx-xxx"
  CertificateVersion="3"
  CloudSyncNeedsUpdate="0"
  DatabaseCacheSize="4000"
  DisableTLSv1_0="1"
  DlnaEnabled="0"
  DvrIncrementalEpgLoader="0"
  EnableIPv6="0"
  FSEventLibraryPartialScanEnabled="0"
  FSEventLibraryUpdatesEnabled="0"
  FriendlyName="Name-Of-Your-Plex-Server"
  GlobalMusicVideoPathMigrated="1"
  LanNetworksBandwidth="192.168.90.11/24"
  LanguageInCloud="1"
  LastAutomaticMappedPort="0"
  LogVerbose="0"
  MachineIdentifier="xxx-xxx"
  ManualPortMappingMode="1"
  ManualPortMappingPort="32400"
  MergedRecentlyAdded="0"
  MetricsEpoch="1"
  MinutesAllowedPaused="30"
  OldestPreviousVersion="legacy"
  PlexOnlineHome="0"
  PlexOnlineMail="your@email.com"
  PlexOnlineToken="token_from_previous_install"
  PlexOnlineUsername="your_plex_username"
  PreferredNetworkInterface="eth0"
  ProcessedMachineIdentifier="xxx-xxx"
  PubSubServer="xxx"
  PubSubServerPing="xx"
  PubSubServerRegion="lhr"
  PublishServerOnPlexOnlineKey="1"
  PushNotificationsEnabled="1"
  RelayEnabled="0"
  ScannerLowPriority="1"
  ScheduledLibraryUpdateInterval="86400"
  ScheduledLibraryUpdatesEnabled="0"
  TranscodeCountLimit="3"
  TranscoderCanOnlyRemuxVideo="0"
  TranscoderH264BackgroundPreset="medium"
  TranscoderQuality="0"
  TranscoderTempDirectory="/tmp/transcode"
  TranscoderThrottleBuffer="1800"
  WanPerUserStreamCount="2"
  WanTotalMaxUploadRate="20000"
  WebHooksEnabled="0"
/>
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا