אחסון קבצים יכול להיות נושא בעיתי ממספר סיבות.
- חוסר מקום אחסון פיזי על המחשב
- פתרונות ענן דורשות דרכים מוזרות כדי לגשת לקבצים שלך מתוך אפליקציות, או הורדת הקבצים, שממנה רצינו להיפטר
ניתן להיפטר מהבעיה דרך מערכות קבצים ווירטואליות במערכות הפעלה Unix-like. הן יכולות לתת גישה לקבצים בדיוק כאילו הם קבצים רגילים על הכונן שלך. מערכת הקבצים הווירטואלית שעניינה אותי היא sshfs.
בפרויקט הזה אני אפתח שירות רשת שתשמור קבצים ולקוח לשירות זו שתשמש כשרת ssh/sftp (v6) וכשרת https שיוכל לתת גישה לקבצים אלו דרך אתר אינטרנט.
-
Files
- fileId: uuid (primary key)
- physicalLocation: string
- name: string
- virtualLocationId: uuid (foreign key to
Directories) - permissions: short int (2 bytes)
- fileOwner: int
- fileGroup: int
-
Directories
- dirId: uuid (primary key)
- ownerId (foreign key to
Users) - name: string
- virtualLocationId: uuid | null (foreign key to
Directories) - permissions: short int (2 bytes)
- dirOwner: int
- dirGroup: int
-
Users
- id: uuid (primary key)
- username: string
- passwordHash: byte array of length 64
-
SshKeys
- key: string
- userId: uuid (foreign key to
Users)
-
FileAccess
- fileAccessId: uuid (primary key)
- fileId: uuid (foreign key to
Files) - targetUserId (foreign key to
Users) - expiratoinDate: DateTime | null