نشر موصّل أنظمة الملفات في Microsoft Windows

يمكنك إعداد Google Cloud Search لعرض نتائج من مشاركات Microsoft Windows الخاصة بمؤسستك بالإضافة إلى محتوى Google Workspace. يمكنك استخدام موصّل "أنظمة الملفات" في Google Cloud Search وإعداده للوصول إلى مشاركات Windows المحدّدة. يمكن أن يتوافق مثيل موصّل واحد مع مشاركات Microsoft Windows متعددة.

اعتبارات مهمة

تحديثات تلقائية مستمرة

بشكلٍ تلقائي، يراقب الموصل مسارات البدء (القيم من fs.src في ملف إعدادات الموصل) باستمرار عند بدء تشغيل الموصل. عندما يُبلغ نظام الملفات عن تغييرات في المحتوى أو عناصر التحكّم في الوصول، يتم تفعيل الموصل لإعادة الزحف إلى نظام الملفات. قد تكون عملية إعادة الزحف هذه مكلفة من حيث الموارد. لإيقاف مراقبة نظام الملفات، اضبط fs.monitorForUpdates على false. يمكنك تقليل استخدام موارد الموصل بشكل كبير، ولكن سيتم تأخير الوقت الذي يعكس فيه الموصل التغييرات. مزيد من المعلومات

التحكّم في الوصول إلى نظام الملفات الموزّعة (DFS)

يفرض نظام DFS التحكّم في الوصول إلى الروابط، وعادةً ما يكون لكل رابط DFS قائمة تحكّم بالوصول خاصة به. إحدى الآليات التي تستخدمها DFS هي التعداد المستند إلى إذن الوصول (ABE)، والتي يمكنها تقييد روابط DFS التي يتم عرضها للمستخدم. قد يحصل المستخدمون على مجموعة فرعية فقط من روابط DFS، أو حتى رابط واحد فقط عندما تعزل ميزة ABE أدلة المنازل المستضافة. عندما يتنقّل الموصل في نظام DFS، يلتزم الموصل بقائمة التحكّم بالوصول (ACL) الخاصة برابط DFS وقائمة التحكّم بالوصول الخاصة بالمشاركة في المستند الهدف، وتتضمّن قائمة التحكّم بالوصول الخاصة بالمشاركة قائمة التحكّم بالوصول الخاصة بنظام DFS.

القيود المعروفة

  • نظام الملفات: لا يتوافق موصّل "نظام الملفات" مع محركات الأقراص التي تم ربطها ومحركات الأقراص المحلية.
  • نظام الملفات الموزّع: لا يعمل محرك الأقراص الذي تم ربطه بنظام الملفات الموزّع (DFS) الذي يستخدم اصطلاح التسمية العام (UNC) بشكل صحيح. لا تتم قراءة بعض قوائم التحكّم بالوصول بشكل صحيح.
  • يتوافق موصّل "أنظمة الملفات" مع مساحات أسماء ونطاقات نظام الملفات الموزّع (DFS). ومع ذلك، لا يتيح الموصل استخدام روابط DFS إلا في مساحة اسم DFS، وليس في المجلدات العادية في مساحة اسم DFS.
  • لا يمكن النقر على روابط الملفات التي يتم عرضها في cloudsearch.google.com. لا يمكن أيضًا النقر على روابط الملفات التي تعرضها Query API في معظم المتصفّحات.

متطلبات النظام

متطلبات النظام
نظام التشغيل
  • Windows Server 2016
  • Windows Server 2012
  • Windows Server 2008 R2
البرامج
  • تثبيت Java JRE 1.8 على الكمبيوتر الذي سيتم تشغيل موصّل "أنظمة الملفات" في Google Cloud Search عليه
بروتوكولات نظام الملفات
  • مجموعة رسائل الخادم (SMB) - SMB1
  • مجموعة رسائل الخادم (SMB) - SMB2
  • نظام الملفات الموزّعة (DFS)

غير متوافق: أنظمة ملفات Windows المحلية أو Sun Network File System (NFS) 2.0 أو Sun Network File System (NFS) 3.0 أو نظام ملفات Linux المحلي

نشر الموصّل

المتطلبات الأساسية

قبل نشر موصّل "أنظمة الملفات" في Cloud Search، تأكَّد من أنّ بيئتك تتضمّن جميع المكوّنات الأساسية التالية:

أذونات حساب Microsoft Windows المطلوبة

يجب أن يكون لدى حساب Microsoft Windows الذي يتم تشغيل الموصل ضمنه أذونات كافية لتنفيذ الإجراءات التالية:

  • عرض محتوى المجلدات
  • قراءة محتوى المستندات
  • قراءة سمات الملفات والمجلدات
  • أذونات القراءة (قوائم التحكم بالوصول) لكل من الملفات والمجلدات
  • أذونات كتابة السمات الأساسية

يمنح الانضمام إلى إحدى المجموعات التالية حساب Windows الأذونات الكافية التي يحتاجها الموصل:

  • المشرفون
  • المستخدمون المتمرّسون
  • مشغّلو الطباعة
  • مشغّلو الخوادم

الخطوة 1: تثبيت موصّل Google Cloud Search File Systems

  1. احصل على مستودع الموصل من GitHub وأنشئه.

    لاستخدام git على خادم Windows، اتّبِع الخطوات التالية:

    1. استنسِخ المستودع:

      > git clone https://github.com/google-cloudsearch/windows-filesystems-connector.git
      > cd windows-filesystems-connector
    2. اطّلِع على الإصدار المطلوب من الموصل:

      > git checkout tags/v1-0.0.3

    لتنزيل التطبيق من GitHub مباشرةً، اتّبِع الخطوات التالية:

    1. انتقِل إلى https://github.com/google-cloudsearch/windows-filesystems-connector.
    2. انقر على استنساخ أو تنزيل تنزيل ملف zip.
    3. فكّ ضغط الحزمة.
    4. انتقِل إلى الدليل الجديد:
      > cd windows-filesystems-connector
  2. أنشئ الموصّل. إذا لزم الأمر، ثبِّت Apache Maven.

    > mvn package

    لتخطّي الاختبارات عند إنشاء الموصل، شغِّل mvn package -DskipTests بدلاً من mvn package.

  3. انسخ ملف zip الخاص بالموصل إلى دليل التثبيت المحلي:

    > cp target/google-cloudsearch-windows-filesystems-connector-v1-0.0.3.zip installation-dir
    > cd installation-dir
    > unzip google-cloudsearch-windows-filesystems-connector-v1-0.0.3.zip
    > cd google-cloudsearch-windows-filesystems-connector-v1-0.0.3

الخطوة 2: إنشاء ملف إعدادات الموصّل

  1. في الدليل نفسه الذي تم فيه تثبيت أداة الربط، أنشِئ ملفًا وسمِّه connector-config.properties.

  2. أضِف المَعلمات كأزواج مفتاح/قيمة إلى محتوى الملف، كما في المثال التالي:

    ### File system connector configuration ###
    
    # Required parameters for Cloud Search data source and identity source access
    api.serviceAccountPrivateKeyFile=/path/to/file.json
    api.sourceId=0123456789abcde
    api.identitySourceId=a1b1c1234567
    
    # Required parameters for file system access
    fs.src=\\\\host\\share;\\\\dfshost\\dfsnamespace;\\\\dfshost\\dfsnamespace\\link
    
    # Optional parameters for file system monitoring
    traverse.abortAfterExceptions=500
    fs.monitorForUpdates = true
    fs.preserveLastAccessTime = IF_ALLOWED
    

    للحصول على أوصاف تفصيلية لكل مَعلمة، انتقِل إلى مرجع مَعلمات الإعداد.

  3. (اختياري) اضبط مَعلمات الموصل الأخرى، حسب الحاجة. لمعرفة التفاصيل، انتقِل إلى مَعلمات الموصل التي توفّرها Google.

الخطوة 3: تمكين التسجيل

  1. أنشئ مجلدًا باسم logs في الدليل الذي يحتوي على الملف الثنائي للموصل.
  2. أنشئ ملف ASCII أو UTF-8 باسم logging.properties في الدليل الذي يحتوي على ملف الموصّل الثنائي وأضِف المحتوى التالي:

    handlers = java.util.logging.ConsoleHandler,java.util.logging.FileHandler
    # Default log level
    .level = WARNING
    com.google.enterprise.cloudsearch.level = INFO
    com.google.enterprise.cloudsearch.fs.level = INFO
    
    # uncomment line below to increase logging level to enable API trace
    #com.google.api.client.http.level = FINE
    java.util.logging.ConsoleHandler.level = INFO
    java.util.logging.FileHandler.pattern=logs/connector-fs.%g.log
    java.util.logging.FileHandler.limit=10485760
    java.util.logging.FileHandler.count=10
    java.util.logging.FileHandler.formatter=java.util.logging.SimpleFormatter
    

الخطوة 4: (اختياري) ضبط أنواع الوسائط

بشكلٍ تلقائي، يحاول الموصّل رصد نوع الوسائط لكل ملف باستخدام عملية رصد نوع الوسائط التي توفّرها حزمة تطوير البرامج (JDK). في Microsoft Windows، يعتمد JDK على سجلّ Windows لتحديد أنواع الوسائط للملفات. يمكن أن يؤدي عدم توفّر إدخال في السجلّ إلى ظهور نوع وسائط فارغ لبعض الملفات.

إذا لزم الأمر، يمكنك تحديد نوع وسائط يحلّ محلّ أي عمليات ربط حالية أو يمنع نوع الوسائط الفارغ.

  1. في دليل الموصل، أنشئ ملفًا مشفّرًا باستخدام Latin-1 باسم mime-type.properties.
  2. أدخِل امتدادات الملفات وأنواع الوسائط المقابلة لها كما في الأمثلة التالية:

    xlsx=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
    one=application/msonenote
    txt=text/plain
    pdf=application/pdf
    

الخطوة 5: تشغيل موصّل "أنظمة الملفات"

بعد تثبيت موصّل "أنظمة الملفات" وضبطه، شغِّل أمرًا مشابهًا للمثال التالي لتشغيله على الجهاز المضيف:

> java -jar google-cloudsearch-windows-filesystems-connector-v1-0.0.3.jar -Djava.util.logging.config.file=logging.properties[ -Dconfig=my.config]

حدِّد مسار ملف الإعداد إذا كان مختلفًا عن المسار التلقائي (في الدليل نفسه الذي يحتوي على الملف الثنائي بالاسم connector-config.properties).

مرجع مَعلمات الإعداد

الوصول إلى مصدر البيانات

الإعداد المَعلمة
رقم تعريف مصدر البيانات api.sourceId=1234567890abcdef

مطلوب. رقم تعريف مصدر Google Cloud Search الذي أعدّه مشرف Google Workspace

مسار ملف المفتاح الخاص لحساب الخدمة api.serviceAccountPrivateKeyFile=./PrivateKey.json

مطلوب. ملف مفتاح حساب خدمة Google Cloud Search لإمكانية الوصول إلى موصّل "أنظمة ملفات Google Cloud Search"

رقم تعريف مصدر الهوية api.identitySourceId=x0987654321

مطلوب. معرّف مصدر الهوية في Cloud Search الذي أعدّه مشرف Google Workspace لمزامنة هويات Active Directory باستخدام GCDS

الوصول إلى نظام الملفات

الإعداد المَعلمة
أنظمة ملفات المصدر fs.src=path1[,path2, ...]

مطلوب. حدِّد أنظمة الملفات المصدر كواحد أو أكثر من مصادر UNC مفصولة بالمحدّد الذي تم ضبطه بواسطة fs.src.separator. إذا كنت تستخدم أحرفًا غير متوفرة في Latin1، عليك ترميزها باستخدام رموز إلغاء Java Unicode.

حرف فاصل المسار

الإعداد المَعلمة
حرف فاصل المسار fs.src.separator=separator-character

الفاصل التلقائي هو ";". إذا كانت مسارات المصدر تحتوي على فواصل منقوطة، يمكنك ضبط فاصل مختلف، مثل الفاصلة (",")، الذي لا يتعارض مع الأحرف في مساراتك وغير محجوز بواسطة بنية ملف الخصائص نفسها.

إذا كانت قيمة fs.src.separator سلسلة فارغة، سيتم التعامل مع قيمة fs.src كمسار واحد.

سلوك الموصّل

الإعداد المَعلمة
نطاق Windows fs.supportedDomain=domain

مطلوب للسماح للمستخدمين الذين تم إعدادهم باستخدام GCDS بالوصول إلى المستندات من خلال Cloud Search. حدِّد اسم نطاق NetBIOS واحدًا لـ Active Directory.

تضمين الحسابات في قوائم ACL fs.supportedAccounts=account-1[, account-2,...]

قائمة مفصولة بفواصل للحسابات التي سيتم تضمينها في قوائم التحكم بالوصول بغض النظر عمّا إذا كانت حسابات مضمّنة.

القيمة التلقائية هي BUILTIN\\Administrators,Everyone,BUILTIN\\Users, BUILTIN\\Guest,NT AUTHORITY\\INTERACTIVE, NT AUTHORITY\\Authenticated Users

استبعاد الحسابات المضمّنة من قوائم التحكّم بالوصول fs.builtinGroupPrefix=prefix

تحديد بادئة الحسابات المضمّنة يُعدّ الحساب الذي يبدأ بهذه البادئة حسابًا مضمّنًا وسيتم استبعاده من قوائم التحكم بالوصول.

القيمة التلقائية هي BUILTIN\\

السماح بفهرسة الملفات والمجلدات المخفية fs.crawlHiddenFiles=boolean

اضبط القيمة على true للسماح للموصل بالزحف إلى الملفات والمجلدات المخفية (في أنظمة ملفات Windows، يُعد الملف أو المجلد مخفيًا إذا تم ضبط سمة DOS المخفية). القيمة التلقائية هي false.

السماح بفهرسة قوائم المجلدات التي تم الزحف إليها وعمليات تعداد مساحة اسم نظام الملفات الموزّعة (DFS) fs.indexFolders=boolean

عند ضبطها على true (القيمة التلقائية)، عندما يزحف الموصّل إلى مجلد، ينشئ الموصّل عنصر CONTAINER_ITEM. عند ضبط القيمة على "خطأ"، ينشئ الموصّل عنصر VIRTUAL_CONTAINER_ITEM بدلاً من ذلك.

تفعيل مراقبة تغييرات نظام الملفات fs.monitorForUpdates=boolean

عند ضبط القيمة على true (القيمة التلقائية)، تؤدي التغييرات في المحتوى أو عناصر التحكّم في الوصول إلى إعادة الزحف بواسطة أداة الربط. عند إيقاف المراقبة (ضبطها على false)، يمكنك تقليل استخدام موارد الموصل بشكل كبير، ولكن سيتم تأخير الوقت الذي يعكس فيه الموصل التغييرات.

ضبط الحد الأقصى لحجم ذاكرة التخزين المؤقت للأدلة fs.directoryCacheSize=number-of-entries

الحد الأقصى لحجم ذاكرة التخزين المؤقت للأدلة يستخدم الموصل ذاكرة التخزين المؤقت لتحديد المجلدات المخفية لتجنُّب فهرسة الملفات والمجلدات في المجلدات المخفية.

القيمة التلقائية هي 50,000 إدخال، ما يستهلك عادةً من 10 إلى 15 ميغابايت من ذاكرة الوصول العشوائي.

الحفاظ على الطوابع الزمنية والتحكّم في الزحف

الإعداد المَعلمة
الاحتفاظ بالطابع الزمني لآخر وصول fs.preserveLastAccessTime=value

عندما يزحف الموصل إلى الملفات والمجلدات، يمكنه تغيير الطابع الزمني لآخر وصول إلى الملفات والمجلدات إلى وقت الزحف. عندما لا يتم الاحتفاظ بأوقات آخر وصول، قد لا تنقل أنظمة النسخ الاحتياطي والأرشفة الملفات والمجلدات المناسبة إلى مساحة التخزين الثانوية بسبب زيارة الروبوت الزاحف.

يحاول الموصل تلقائيًا الاحتفاظ بوقت آخر وصول (fs.preserveLastAccessTime تم ضبطه على ALWAYS). قد يتعذّر على الموصل استعادة وقت آخر وصول للملف عندما لا يكون لدى مستخدم التجوال امتيازات كافية لكتابة سمات الملف. عند ضبط القيمة على ALWAYS، يرفض الموصل طلبات الزحف إلى نظام الملفات حتى لا يغيّر الطوابع الزمنية لآخر وصول إلى الملفات.

القيم المتاحة:

  • ALWAYS: يحاول الموصل الحفاظ على وقت آخر وصول أثناء الزحف إلى الملفات والمجلدات. في المرة الأولى التي يتعذّر فيها على الموصّل الاحتفاظ بوقت الوصول الأخير، يرفض الموصّل جميع طلبات الزحف اللاحقة لنظام الملفات لمنع تغيير الطوابع الزمنية لوقت الوصول الأخير.
  • IF_ALLOWED: يحاول الموصل الحفاظ على وقت آخر وصول أثناء الزحف إلى الملفات والمجلدات. ويستمر في الزحف حتى إذا تعذّر الاحتفاظ ببعض الطوابع الزمنية.
  • NEVER: لا يحاول الموصل الاحتفاظ بوقت آخر وصول أثناء الزحف إلى الملفات والمجلدات.
الزحف إلى الملفات التي تم الوصول إليها بعد تاريخ معيّن فقط fs.lastAccessedDate=YYYY-MM-DD

الزحف إلى المحتوى فقط إذا كان آخر وقت للوصول إليه بعد التاريخ المحدّد تكون القيمة التلقائية disabled.

حدِّد التاريخ بتنسيق ISO8601: YYYY-MM-DD. على سبيل المثال، إذا كانت القيمة 2010-01-01، لن يزحف الموصل إلا إلى المحتوى الذي تم الوصول إليه بعد بداية عام 2010.

في حال تحديد fs.lastAccessedDate، لا يمكنك أيضًا ضبط قيمة fs.lastAccessedDays.

الزحف إلى الملفات التي تم الوصول إليها خلال عدد الأيام السابقة فقط fs.lastAccessedDays=number-of-days

الزحف إلى المحتوى فقط إذا كان آخر وقت للوصول إليه ضمن عدد الأيام قبل الوقت الحالي تكون القيمة التلقائية disabled.

استخدِم هذه السمة لإزالة المحتوى الذي تمت فهرسته سابقًا ولم يتم الوصول إليه منذ فترة. على سبيل المثال، اضبط القيمة على 365 يومًا لكي يتم الزحف إلى المحتوى فقط إذا تم الوصول إليه خلال العام الماضي.

في حال تحديد fs.lastAccessedDays، لا يمكنك أيضًا ضبط قيمة fs.lastAccessedDate.

الزحف إلى الملفات التي تم تعديلها بعد تاريخ معيّن فقط fs.lastModifiedDate=YYYY-MM-DD

الزحف إلى المحتوى فقط إذا كان وقت آخر تعديل بعد التاريخ المحدّد تكون القيمة التلقائية disabled.

حدِّد التاريخ بتنسيق ISO8601: YYYY-MM-DD. على سبيل المثال، إذا كانت القيمة 2010-01-01، سيزحف الموصل فقط إلى المحتوى الذي تم تعديله بعد بداية عام 2010.

في حال تحديد fs.lastModifiedDate، لا يمكنك أيضًا ضبط قيمة fs.lastModifiedDays.

الزحف إلى الملفات التي تم تعديلها خلال عدد الأيام السابقة فقط fs.lastModifiedDays=number-of-days

الزحف إلى المحتوى فقط إذا كان وقت آخر تعديل ضمن عدد الأيام قبل الوقت الحالي تكون القيمة التلقائية disabled.

استخدِم هذه السمة لإزالة المحتوى الذي تمت فهرسته سابقًا ولم يتم تعديله منذ فترة. على سبيل المثال، اضبط القيمة على 365 للزحف إلى المحتوى فقط إذا تم تعديله خلال العام الماضي.

في حال تحديد fs.lastModifiedDays، لا يمكنك أيضًا ضبط قيمة fs.lastModifiedDate.

تخطّي عناصر التحكّم في الوصول إلى مشاركة الملفات

تحافظ الوصلة تلقائيًا على سلامة التحكّم بالوصول عند إرسال قوائم التحكّم بالوصول (ACL) إلى واجهة برمجة التطبيقات للفهرسة، بما في ذلك قوائم التحكّم بالوصول إلى مشاركة الملفات. ومع ذلك، في بعض الإعدادات، قد لا يكون لدى الموصل أذونات كافية لقراءة قائمة التحكّم بالوصول (ACL) الخاصة بالمشاركة. في هذه الحالات، لا يعرض الموصل أي ملفات يتم الاحتفاظ بها في مشاركة الملفات هذه ضمن نتائج البحث.

يمكنك ضبط الموصّل على تجاهل قائمة التحكّم بالوصول الخاصة بالمشاركة لضمان عرض المحتوى دائمًا في نتائج البحث. في هذه الحالة، تتلقّى واجهة برمجة التطبيقات Indexing API قائمة ACL للمشاركة تتضمّن أذونات كاملة، بدلاً من قائمة ACL الفعلية للمشاركة.

الإعداد المَعلمة
تخطّي عناصر التحكّم في الوصول إلى مشاركة الملفات fs.skipShareAccessControl=boolean

اضبط القيمة على false (تلقائي) لفرض قوائم التحكّم بالوصول الخاصة بالمشاركة. اضبط القيمة على true لتجاهل قوائم التحكّم بالوصول الخاصة بالمشاركة.